.elementor-375 .elementor-element.elementor-element-2df9d88{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:48px;--padding-bottom:72px;--padding-left:24px;--padding-right:24px;}.elementor-375 .elementor-element.elementor-element-1c852dd{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-375 .elementor-element.elementor-element-1092f8d .jet-form-builder-row{margin-top:0px;margin-bottom:16px;}.elementor-375 .elementor-element.elementor-element-1092f8d .jet-form-builder__label{text-align:left;}.elementor-375 .elementor-element.elementor-element-1092f8d .jet-form-builder__desc{text-align:left;}.elementor-375 .elementor-element.elementor-element-1092f8d .jet-form-builder__fields-group{gap:0.7em 0.7em;}.elementor-375 .elementor-element.elementor-element-1092f8d .jet-form-builder__field-wrap.checkradio-wrap span{gap:8px;}.elementor-375 .elementor-element.elementor-element-1092f8d .jet-form-builder__field:not(.checkradio-field):not(.range-field):not(.jet-form-builder-repeater):not(.wysiwyg-field):not([role="switch"]){margin:0px 0px 16px 0px;}.elementor-375 .elementor-element.elementor-element-1092f8d .jet-form-builder input{color-scheme:normal;}.elementor-375 .elementor-element.elementor-element-1092f8d .jet-form-builder-repeater__row-remove{align-self:flex-start;}.elementor-375 .elementor-element.elementor-element-1092f8d .jet-form-builder__action-button{transition:all 0.3s;}.elementor-375 .elementor-element.elementor-element-1092f8d .jet-form-builder__next-page-wrap{text-align:left;}.elementor-375 .elementor-element.elementor-element-1092f8d .jet-form-builder-message--success{text-align:center;}.elementor-375 .elementor-element.elementor-element-1092f8d .jet-form-builder-message--error{text-align:center;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:767px){.elementor-375 .elementor-element.elementor-element-2df9d88{--padding-top:32px;--padding-bottom:48px;--padding-left:16px;--padding-right:16px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );}}/* Start custom CSS *//* === gacct-jfb-forms (copie adaptée du kit révision, généré par script) === */
.jet-form-builder-row {

    padding: 0px!important;

}
.form-row,
.jet-form-builder-row:is(.field-type-text-field, .field-type-select-field, .field-type-number-field, .field-type-textarea):not(:has(#remember_me)):not(:has(#terms)) {
    position: relative;
    display: flex;
    flex-direction: column;
}

.form-row label,
.jet-form-builder-row:is(.field-type-text-field, .field-type-select-field, .field-type-number-field, .field-type-textarea):not(:has(#remember_me)):not(:has(#terms)) .jet-form-builder__label {
    line-height: 1;
    position: absolute;
    z-index: 10;
    pointer-events: none;
    left: 13px;
    top: 17px;
    transform: none;
    margin: 0;
    transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
}

.form-row.textarea-row label,
.jet-form-builder-row.field-type-textarea:not(:has(#remember_me)):not(:has(#terms)) .jet-form-builder__label {
    top: 18px;
    transform: none;
}

.form-row label,
.jet-form-builder-row:not(:has(#remember_me)):not(:has(#terms)) .jet-form-builder__label-text {
    color: #999;
    font-size: 15px;
    font-weight: 600;
    line-height: 1;
    background: transparent;
    transition: inherit;
}

.form-row:is(:has(input:focus), :has(textarea:focus), :has(select:focus), :has(.select2-container--focus), :has(input:not(:placeholder-shown)), :has(textarea:not(:placeholder-shown))) label,
.jet-form-builder-row:is(.field-type-text-field, .field-type-select-field, .field-type-number-field, .field-type-textarea):not(:has(#remember_me)):not(:has(#terms)):is(
    :has(input:focus), 
    :has(textarea:focus), 
    :has(.select2-container--focus), 
    :has(input:not(:placeholder-shown)), 
    :has(textarea:not(:placeholder-shown)),
    :has(input:-webkit-autofill),
    :has(.select2-selection__rendered:not(:empty))
) .jet-form-builder__label {
    top: 6px;
    transform: none;
}

.form-row:is(:has(input:focus), :has(textarea:focus), :has(input:not(:placeholder-shown)), :has(textarea:not(:placeholder-shown))) label,
.jet-form-builder-row:is(.field-type-text-field, .field-type-select-field, .field-type-number-field, .field-type-textarea):not(:has(#remember_me)):not(:has(#terms)):is(
    :has(input:focus), 
    :has(textarea:focus), 
    :has(.select2-container--focus), 
    :has(input:not(:placeholder-shown)), 
    :has(textarea:not(:placeholder-shown)),
    :has(input:-webkit-autofill)
) .jet-form-builder__label-text {
    color: #EC672C;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.form-row input:not(#remember_me):not(#terms), 
.form-row select, 
.form-row textarea,
.jet-form-builder-row .jet-form-builder__field:not(#remember_me):not(#terms),
.jet-form-builder-row .select2-selection--single {
    width: 100% !important;
    font-family: 'Nunito Sans', sans-serif !important;
    font-size: 14px !important;
    color: #1a1a1a !important;
    border: 1.5px solid rgba(0, 0, 0, 0.12) !important;
    border-radius: 8px !important;
    padding: 20px 13px 7px !important;
    background: #fff !important;
    outline: none !important;
    transition: all 150ms ease !important;
    appearance: none !important;
    box-sizing: border-box !important;
    height: auto !important;
    min-height: 52px !important;
}

.jet-form-builder-row .jet-form-builder__field:not(#remember_me):not(#terms):focus,
.jet-form-builder-row .select2-selection--single:focus,
.jet-form-builder-row:has(.select2-container--focus) .select2-selection--single {
    border-color: #EC672C !important;
    box-shadow: 0 0 0 3px rgba(236, 103, 44, 0.1) !important;
}

.jet-form-builder-row.field-type-textarea:not(:has(#remember_me)):not(:has(#terms)) .jet-form-builder__field {
    min-height: 100px !important;
    padding-top: 24px !important;
}

.jet-form-builder-row input:not(#remember_me):not(#terms)::placeholder,
.jet-form-builder-row textarea::placeholder {
    color: transparent !important;
}

.jet-form-builder__action-button.jet-form-builder__submit {
    width: 100% !important;
    background: #EC672C !important;
    color: #1a1a1a !important;
    font-family: 'Nunito Sans', sans-serif !important;
    font-weight: 800 !important;
    font-size: 15px !important;
    padding: 14px !important;
    border-radius: 8px !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 150ms ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 10px;
}

.jet-form-builder__action-button.jet-form-builder__submit:hover {
    background: #C4501B !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(236, 103, 44, 0.2);
}

.jet-form-builder__action-button.jet-form-builder__submit:active {
    transform: translateY(0);
}

.field-error, .error-message{
    color:var(--status-error)!important;
    font-size: 13px!important;
}









/* === ar-login (page 28 — généré par script, ne pas éditer à la main) === */
/* Maquette Claude Design « Login - Demande d'intervention.html ».
   Le style des champs (floating labels, focus teal, bouton jaune) vient du bloc
   JetFormBuilder global plus haut : on ne pose ici que ce qui est propre à la page. */

.ar-login { justify-content: center; }
.ar-login .ar-login-card { width: 100%; max-width: 420px; margin: 0 auto; }
/* Le rythme vertical est exprimé en margin-top : Elementor remet à zéro le
   margin-bottom des widgets quand la gouttière du conteneur vaut 0. */

/* ── Titre + accroche ── */
.elementor-widget-heading.ar-login-title .elementor-heading-title {
  font-size: 32px; font-weight: 900; line-height: 1.15; letter-spacing: -0.025em;
  color: #1a1a1a; text-align: center;
}
.ar-login .ar-login-sub { margin-top: 12px; }
.ar-login .ar-login-form { margin-top: 40px; }
.ar-login .ar-login-sub p { font-size: 14px; line-height: 1.6; color: #666; text-align: center; margin: 0; }
.ar-login .ar-login-sub em { font-style: normal; font-weight: 700; color: #EC672C; }

/* ── Formulaire (JFB 592) ── */
/* « Se souvenir de moi » : la case remonte avant son libellé (row-reverse), et
   l'interrupteur JetFormBuilder redevient une case à cocher comme sur la maquette. */
.ar-login-form .jet-form-builder-row.field-type-switcher {
  display: flex; flex-direction: row-reverse; flex-wrap: nowrap;
  justify-content: flex-end; align-items: center; gap: 8px;
}
.ar-login-form .jet-form-builder-row.field-type-switcher .jet-form-builder__label {
  position: static; margin: 0; padding: 0; line-height: 1; width: auto; flex: 0 1 auto;
}
.ar-login-form .jet-form-builder-row.field-type-switcher .jet-form-builder__label-text {
  font-size: 13px; font-weight: 500; color: #4a4748; cursor: pointer; line-height: 1.3;
}
.ar-login-form .jet-form-builder-row.field-type-switcher input.jet-form-builder__field[role="switch"][type="checkbox"] {
  appearance: none; -webkit-appearance: none; display: block; position: relative;
  inline-size: 18px; block-size: 18px; min-height: 0; flex: 0 0 auto;
  margin: 0; padding: 0; box-sizing: border-box; cursor: pointer;
  border: 1.5px solid rgba(0,0,0,0.2); border-radius: 4px; background: #fff;
  transition: background-color 150ms, border-color 150ms;
}
.ar-login-form .jet-form-builder-row.field-type-switcher input.jet-form-builder__field[role="switch"][type="checkbox"]:checked {
  background: #EC672C; border-color: #EC672C;
}
.ar-login-form .jet-form-builder-row.field-type-switcher input.jet-form-builder__field[role="switch"][type="checkbox"]::before {
  content: none;
}
.ar-login-form .jet-form-builder-row.field-type-switcher input.jet-form-builder__field[role="switch"][type="checkbox"]:checked::after {
  content: ""; position: absolute; left: 5px; top: 1px; width: 4px; height: 9px;
  border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg);
}

/* Œil « afficher le mot de passe » : le remplissage de l'input est imposé en
   !important par le bloc JFB global, il faut donc réserver la place de l'icône ici. */
.ar-login-form .jet-form-builder__field-wrap.has-eye-icon .jet-form-builder__field { padding-right: 44px !important; }
.ar-login-form .jfb-eye-icon { right: 12px; color: #999; transition: color 150ms; }
.ar-login-form .jfb-eye-icon:hover { color: #EC672C; }
.ar-login-form .jfb-eye-icon svg { width: 22px; height: 22px; }

.ar-login-form .jet-form-builder__action-button.jet-form-builder__submit {
  background: linear-gradient(135deg, #EC672C 0%, #C4501B 100%) !important;
  box-shadow: 0 4px 16px rgba(236,103,44,0.2) !important;
  margin-top: 0 !important;
}
.ar-login-form .jet-form-builder__action-button.jet-form-builder__submit:hover {
  box-shadow: 0 6px 24px rgba(236,103,44,0.3) !important;
}

/* Message de retour (identifiants refusés, connexion réussie) : la boîte rouge
   par défaut de JetFormBuilder est reprise dans le langage graphique du site. */
.ar-login-form .jet-form-builder-message {
  margin-top: 16px; padding: 12px 14px; border: 0; border-radius: 8px;
  font-size: 13px; font-weight: 600; line-height: 1.5; text-align: left;
}
.ar-login-form .jet-form-builder-message--error { background: #fdecec; color: #c0392b; }
.ar-login-form .jet-form-builder-message--success { background: #e9f8f8; color: #148483; }

/* ── Séparateur « Ou continuer avec » ── */
.ar-login .ar-login-div { margin-top: 40px; }
.elementor-widget-heading.ar-login-div .elementor-heading-title {
  display: flex; align-items: center; gap: 12px; line-height: 1; white-space: nowrap;
  font-size: 12px; font-weight: 600; letter-spacing: 0.05em; text-transform: uppercase; color: #999;
}
.ar-login .ar-login-div .elementor-heading-title::before,
.ar-login .ar-login-div .elementor-heading-title::after {
  content: ""; flex: 1 1 0; height: 1px; background: rgba(0,0,0,0.1);
}

/* ── Boutons Nextend Social Login ── */
.ar-login .ar-login-social { margin-top: 32px; }
.ar-login-social div.nsl-container { margin: 0; padding: 0; }
.ar-login-social div.nsl-container .nsl-container-buttons {
  display: grid; grid-template-columns: 1fr; gap: 12px; padding: 0; width: 100%;
}
.ar-login-social div.nsl-container .nsl-container-buttons a { margin: 0; width: 100%; }
.ar-login-social div.nsl-container .nsl-button {
  display: flex; align-items: center; justify-content: center; gap: 10px;
  width: 100%; padding: 11px 12px; border-radius: 8px;
  border: 1.5px solid rgba(0,0,0,0.12); box-shadow: none;
  transition: border-color 150ms, background-color 150ms;
}
.ar-login-social div.nsl-container .nsl-button:hover { border-color: rgba(0,0,0,0.22); background-color: #f9f9f9 !important; }
.ar-login-social div.nsl-container .nsl-button-svg-container { padding: 0; }
.ar-login-social div.nsl-container svg { width: 18px; height: 18px; }
.ar-login-social div.nsl-container .nsl-button-default div.nsl-button-label-container {
  margin: 0; padding: 0; flex: 0 1 auto;
  font-family: 'Nunito Sans', sans-serif; font-size: 14px; font-weight: 700;
  letter-spacing: 0; line-height: 1.3; color: #1a1a1a;
}

/* ── Pied de carte « Pas encore de compte ? » ── */
.ar-login .ar-login-foot { margin-top: 28px; border-top: 1px solid rgba(0,0,0,0.07); padding-top: 20px; }
.ar-login .ar-login-foot p { font-size: 13px; color: #666; text-align: center; margin: 0; }
.ar-login .ar-login-foot a { color: #EC672C; font-weight: 700; letter-spacing: normal; text-decoration: none; transition: color 150ms; }
.ar-login .ar-login-foot a:hover { color: #C4501B; text-decoration: underline; }

@media (max-width: 600px) {
  .elementor-widget-heading.ar-login-title .elementor-heading-title { font-size: 24px; }
  .ar-login .ar-login-form { margin-top: 32px; }
  .ar-login .ar-login-div { margin-top: 40px; }
}
/* === /ar-login === */


/* === ar-login-forgot (07/08/2026, généré par script) === */
.ar-login .ar-login-forgot { margin-top: 10px; }
.ar-login .ar-login-forgot p { font-size: 13px; text-align: right; margin: 0; }
.ar-login .ar-login-forgot a { color: #666; text-decoration: underline; transition: color 150ms; }
.ar-login .ar-login-forgot a:hover { color: #ec672c; }/* End custom CSS */