.elementor-509 .elementor-element.elementor-element-bc87173{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:120px;--padding-bottom:80px;--padding-left:100px;--padding-right:100px;}.elementor-509 .elementor-element.elementor-element-bc87173:not(.elementor-motion-effects-element-type-background), .elementor-509 .elementor-element.elementor-element-bc87173 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-509 .elementor-element.elementor-element-4b5cd95{--display:flex;--justify-content:flex-start;--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );color:var( --e-global-color-primary );}.elementor-509 .elementor-element.elementor-element-68e9ba0 .elementor-heading-title{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );color:var( --e-global-color-secondary );}.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 );line-height:var( --e-global-typography-text-line-height );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-509 .elementor-element.elementor-element-d512a7c{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );color:var( --e-global-color-text );}.elementor-509 .elementor-element.elementor-element-fa2eb34{--display:flex;--gap:5px 5px;--row-gap:5px;--column-gap:5px;--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-509 .elementor-element.elementor-element-fa2eb34:not(.elementor-motion-effects-element-type-background), .elementor-509 .elementor-element.elementor-element-fa2eb34 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-509 .elementor-element.elementor-element-18f0a42 .elementor-heading-title{font-family:var( --e-global-typography-68ff848-font-family ), Sans-serif;font-size:var( --e-global-typography-68ff848-font-size );font-weight:var( --e-global-typography-68ff848-font-weight );text-transform:var( --e-global-typography-68ff848-text-transform );line-height:var( --e-global-typography-68ff848-line-height );color:var( --e-global-color-f127655 );}.elementor-509 .elementor-element.elementor-element-084ad81 .elementor-heading-title{font-family:var( --e-global-typography-5fbf30c-font-family ), Sans-serif;font-size:var( --e-global-typography-5fbf30c-font-size );font-weight:var( --e-global-typography-5fbf30c-font-weight );line-height:var( --e-global-typography-5fbf30c-line-height );color:var( --e-global-color-secondary );}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-509 .elementor-element.elementor-element-b800928{--divider-border-style:solid;--divider-color:var( --e-global-color-d8bcf42 );--divider-border-width:1px;}.elementor-509 .elementor-element.elementor-element-b800928 .elementor-divider-separator{width:100%;}.elementor-509 .elementor-element.elementor-element-b800928 .elementor-divider{padding-block-start:12px;padding-block-end:12px;}.elementor-509 .elementor-element.elementor-element-5d16f82 .elementor-heading-title{font-family:var( --e-global-typography-68ff848-font-family ), Sans-serif;font-size:var( --e-global-typography-68ff848-font-size );font-weight:var( --e-global-typography-68ff848-font-weight );text-transform:var( --e-global-typography-68ff848-text-transform );line-height:var( --e-global-typography-68ff848-line-height );color:var( --e-global-color-f127655 );}.elementor-509 .elementor-element.elementor-element-b10f1df .elementor-heading-title{font-family:var( --e-global-typography-5fbf30c-font-family ), Sans-serif;font-size:var( --e-global-typography-5fbf30c-font-size );font-weight:var( --e-global-typography-5fbf30c-font-weight );line-height:var( --e-global-typography-5fbf30c-line-height );color:var( --e-global-color-secondary );}.elementor-509 .elementor-element.elementor-element-cfb1ccc{--display:flex;}.elementor-509 .elementor-element.elementor-element-5ebba09{--display:flex;--min-height:500px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--overlay-opacity:0.5;--padding-top:0px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-509 .elementor-element.elementor-element-5ebba09:not(.elementor-motion-effects-element-type-background), .elementor-509 .elementor-element.elementor-element-5ebba09 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://lucienmagnin.dev-ddesign.fr/wp-content/uploads/2026/09/LucienMagnin-bureaunature.jpg");background-position:center center;background-size:cover;}.elementor-509 .elementor-element.elementor-element-5ebba09::before, .elementor-509 .elementor-element.elementor-element-5ebba09 > .elementor-background-video-container::before, .elementor-509 .elementor-element.elementor-element-5ebba09 > .e-con-inner > .elementor-background-video-container::before, .elementor-509 .elementor-element.elementor-element-5ebba09 > .elementor-background-slideshow::before, .elementor-509 .elementor-element.elementor-element-5ebba09 > .e-con-inner > .elementor-background-slideshow::before, .elementor-509 .elementor-element.elementor-element-5ebba09 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-primary );--background-overlay:'';}:root{--page-title-display:none;}@media(max-width:1280px){.elementor-509 .elementor-element.elementor-element-bc87173{--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:50px 50px;--row-gap:50px;--column-gap:50px;--padding-top:100px;--padding-bottom:80px;--padding-left:30px;--padding-right:30px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-509 .elementor-element.elementor-element-68e9ba0 .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-509 .elementor-element.elementor-element-d512a7c{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-509 .elementor-element.elementor-element-18f0a42 .elementor-heading-title{font-size:var( --e-global-typography-68ff848-font-size );line-height:var( --e-global-typography-68ff848-line-height );}.elementor-509 .elementor-element.elementor-element-084ad81 .elementor-heading-title{font-size:var( --e-global-typography-5fbf30c-font-size );line-height:var( --e-global-typography-5fbf30c-line-height );}.elementor-widget-divider .elementor-divider__text{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-509 .elementor-element.elementor-element-5d16f82 .elementor-heading-title{font-size:var( --e-global-typography-68ff848-font-size );line-height:var( --e-global-typography-68ff848-line-height );}.elementor-509 .elementor-element.elementor-element-b10f1df .elementor-heading-title{font-size:var( --e-global-typography-5fbf30c-font-size );line-height:var( --e-global-typography-5fbf30c-line-height );}.elementor-509 .elementor-element.elementor-element-5ebba09{--min-height:400px;--padding-top:0px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}}@media(max-width:767px){.elementor-509 .elementor-element.elementor-element-bc87173{--padding-top:100px;--padding-bottom:30px;--padding-left:20px;--padding-right:20px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-509 .elementor-element.elementor-element-68e9ba0 .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-509 .elementor-element.elementor-element-d512a7c{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-509 .elementor-element.elementor-element-18f0a42 .elementor-heading-title{font-size:var( --e-global-typography-68ff848-font-size );line-height:var( --e-global-typography-68ff848-line-height );}.elementor-509 .elementor-element.elementor-element-084ad81 .elementor-heading-title{font-size:var( --e-global-typography-5fbf30c-font-size );line-height:var( --e-global-typography-5fbf30c-line-height );}.elementor-widget-divider .elementor-divider__text{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-509 .elementor-element.elementor-element-5d16f82 .elementor-heading-title{font-size:var( --e-global-typography-68ff848-font-size );line-height:var( --e-global-typography-68ff848-line-height );}.elementor-509 .elementor-element.elementor-element-b10f1df .elementor-heading-title{font-size:var( --e-global-typography-5fbf30c-font-size );line-height:var( --e-global-typography-5fbf30c-line-height );}.elementor-509 .elementor-element.elementor-element-5ebba09{--min-height:300px;--padding-top:0px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}}@media(min-width:768px){.elementor-509 .elementor-element.elementor-element-4b5cd95{--width:35%;}.elementor-509 .elementor-element.elementor-element-cfb1ccc{--width:65%;}}@media(max-width:1280px) and (min-width:768px){.elementor-509 .elementor-element.elementor-element-4b5cd95{--width:100%;}.elementor-509 .elementor-element.elementor-element-cfb1ccc{--width:100%;}}/* Start custom CSS for shortcode, class: .elementor-element-74d5198 *//* ============================================================
   LUCIEN MAGNIN — Gravity Forms Contact
   Base client conservée intacte + ajouts uniquement
   MODIF (frise mobile) : labels toujours visibles, 2 lignes
   au lieu du mécanisme "masqué sauf étape active"
   MODIF (bouton Envoyer) : traité comme Continuer, au-dessus
   de Précédent sur mobile
   ============================================================ */


/* ════════════════════════════════
   CSS BASE CLIENT (inchangé)
════════════════════════════════ */

.elementor-509 .elementor-element.elementor-element-74d5198 .gform_heading {
    display: none;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gform_fields {
    row-gap: 20px;
}

.elementor-509 .elementor-element.elementor-element-74d5198 label, .elementor-509 .elementor-element.elementor-element-74d5198 .gform-field-label__text {
    font-family: var(--e-global-typography-accent-font-family), Sans-serif;
    font-size: var(--e-global-typography-accent-font-size);
    font-weight: var(--e-global-typography-accent-font-weight);
    line-height: var(--e-global-typography-accent-line-height);
    color: var(--e-global-color-text);
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gfield_required_asterisk {
    display: none;
}

.elementor-509 .elementor-element.elementor-element-74d5198 input, .elementor-509 .elementor-element.elementor-element-74d5198 textarea {
    background-color: #FFFFFF0F;
    font-family: var(--e-global-typography-accent-font-family), Sans-serif;
    font-size: 14px;
    font-weight: var(--e-global-typography-accent-font-weight);
    line-height: var(--e-global-typography-accent-line-height);
    color: var(--e-global-color-text);
    box-shadow: none;
    border: 1px solid #666666;
    border-radius: 0;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gform-footer {
    margin-top: 40px;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gform_button {
    width: 100% !important;
    border: none;
    background-color: var(--e-global-color-secondary) !important;
    font-family: var(--e-global-typography-accent-font-family), Sans-serif !important;
    font-size: 16px !important;
    font-weight: var(--e-global-typography-accent-font-weight) !important;
    color: var(--e-global-color-primary) !important;
    border-radius: 0px !important;
    transition: transform 0.5s ease-in-out, background-color 0.5s ease-in-out !important;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gform_button:hover {
    background-color: #F5F5F3 !important;
    transform: translate(0, -1px) !important;
}


/* ════════════════════════════════
   AJOUTS — Descriptions & notes
════════════════════════════════ */

.elementor-509 .elementor-element.elementor-element-74d5198 .gfield_description {
    font-family: var(--e-global-typography-accent-font-family), Sans-serif;
    font-size: 12px;
    font-weight: var(--e-global-typography-accent-font-weight);
    color: var(--e-global-color-text);
    opacity: 0.5;
    line-height: 1.6;
    margin-top: 6px;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gfield_description.instruction {
    opacity: 0.4;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .ginput_container_number .gfield_description.instruction {
    display: none;
}


/* ════════════════════════════════
   AJOUTS — Barre d'étapes
════════════════════════════════ */

.elementor-509 .elementor-element.elementor-element-74d5198 .gf_page_steps {
    column-gap: 10px;
    display: flex;
    align-items: stretch;
    margin-bottom: 30px;
    padding-top: 10px;
    border-bottom: 1px solid #333333;
    overflow-x: auto;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gf_page_steps::-webkit-scrollbar {
    display: none;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gf_step {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    flex: 1 1 0;
    min-width: 0;
    padding: 0 6px 18px;
    border-bottom: 2px solid transparent;
    margin-bottom: -1px;
    transition: border-color 0.3s ease-in-out;
}

/* ── Numéro — rond parfait, pas de fond ── */
.elementor-509 .elementor-element.elementor-element-74d5198 .gf_step_number {
    width: 28px;
    height: 28px;
    min-width: 28px;
    min-height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--e-global-typography-accent-font-family), Sans-serif;
    font-size: 12px;
    font-weight: var(--e-global-typography-accent-font-weight);
    line-height: 1;
    border: 1px solid #444444;
    background: transparent;
    color: #444444;
    transition: border-color 0.3s ease-in-out, color 0.3s ease-in-out;
    box-sizing: border-box;
}

/* ── Label — 2 lignes autorisées, toujours visible ── */
.elementor-509 .elementor-element.elementor-element-74d5198 .gf_step_label {
    font-family: var(--e-global-typography-accent-font-family), Sans-serif;
    font-size: 10px;
    font-weight: var(--e-global-typography-accent-font-weight);
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #444444;
    text-align: center;
    line-height: 1.4;
    white-space: normal;
    word-break: break-word;
    overflow-wrap: break-word;
    transition: color 0.3s ease-in-out;
}

/* ── Completed ── */
.elementor-509 .elementor-element.elementor-element-74d5198 .gf_step_completed {
    border-bottom-color: #555555;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gf_step_completed .gf_step_number {
    border-color: #ffffff;
    color: #ffffff;
    font-size: 0;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gf_step_completed .gf_step_number::after {
    content: '✓';
    font-size: 11px;
    font-weight: 600;
    color: #ffffff;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gf_step_completed .gf_step_label {
    color: #666666;
}

/* ── Active ── */
.elementor-509 .elementor-element.elementor-element-74d5198 .gf_step_active {
    border-bottom-color: #ffffff;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gf_step_active .gf_step_number {
    border-color: #ffffff;
    color: #ffffff;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gf_step_active .gf_step_label {
    color: #ffffff;
}


/* ════════════════════════════════
   AJOUTS — Boutons nav intermédiaires
════════════════════════════════ */

.elementor-509 .elementor-element.elementor-element-74d5198 .gform-page-footer,
.elementor-509 .elementor-element.elementor-element-74d5198 .gform_page_footer {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 40px;
    padding-top: 28px;
    border-top: 1px solid #333333;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gform_next_button {
    flex: 1;
    border: none !important;
    background-color: var(--e-global-color-secondary) !important;
    font-family: var(--e-global-typography-accent-font-family), Sans-serif !important;
    font-size: 16px !important;
    font-weight: var(--e-global-typography-accent-font-weight) !important;
    color: var(--e-global-color-primary) !important;
    border-radius: 0px !important;
    padding: 15px 28px !important;
    cursor: pointer;
    transition: transform 0.5s ease-in-out, background-color 0.5s ease-in-out !important;
    box-shadow: none !important;
    order: 2;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gform_next_button:hover {
    background-color: #F5F5F3 !important;
    transform: translate(0, -1px) !important;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gform_previous_button {
    flex: 0 0 auto;
    background-color: transparent !important;
    color: var(--e-global-color-text) !important;
    border: 1px solid #444444 !important;
    border-radius: 0px !important;
    font-family: var(--e-global-typography-accent-font-family), Sans-serif !important;
    font-size: 13px !important;
    font-weight: var(--e-global-typography-accent-font-weight) !important;
    letter-spacing: 0.06em !important;
    padding: 14px 22px !important;
    cursor: pointer;
    transition: border-color 0.3s ease-in-out, color 0.3s ease-in-out !important;
    box-shadow: none !important;
    order: 1;
    white-space: nowrap;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gform_previous_button:hover {
    border-color: #ffffff !important;
    color: #ffffff !important;
    background-color: transparent !important;
    transform: none !important;
}

/* MODIF — Envoyer : même traitement que Continuer
   (order 2, padding, pas d'ombre). Remplace l'ancienne règle :has() */
.elementor-509 .elementor-element.elementor-element-74d5198 .gform_button[type="submit"] {
    flex: 1;
    width: auto !important;
    order: 2;
    padding: 15px 28px !important;
    box-shadow: none !important;
    cursor: pointer;
}


/* ════════════════════════════════
   AJOUTS — Consent
════════════════════════════════ */

.elementor-509 .elementor-element.elementor-element-74d5198 .ginput_container_consent {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.elementor-509 .elementor-element.elementor-element-74d5198 input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
    margin-top: 3px;
    padding: 0 !important;
    background: transparent !important;
    border: 1px solid #666666 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    flex-shrink: 0;
    cursor: pointer;
    accent-color: var(--e-global-color-secondary);
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gfield_consent_label {
    font-family: var(--e-global-typography-accent-font-family), Sans-serif !important;
    font-size: 13px !important;
    font-weight: var(--e-global-typography-accent-font-weight) !important;
    color: var(--e-global-color-text) !important;
    opacity: 0.6;
    text-transform: none !important;
    letter-spacing: 0 !important;
    line-height: 1.65;
    cursor: pointer;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gfield_consent_description {
    font-family: var(--e-global-typography-accent-font-family), Sans-serif;
    font-size: 11px;
    color: var(--e-global-color-text);
    opacity: 0.35;
    line-height: 1.6;
    margin-top: 8px;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gfield--type-honeypot {
    display: none !important;
}


/* ════════════════════════════════
   RESPONSIVE
════════════════════════════════ */

@media (max-width: 900px) {

    .elementor-509 .elementor-element.elementor-element-74d5198 .gf_step_label {
        font-size: 9px;
    }

    .elementor-509 .elementor-element.elementor-element-74d5198 .gf_step {
        padding: 0 4px 16px;
        gap: 6px;
    }
}

@media (max-width: 600px) {

    /* Labels toujours visibles, resserrés pour tenir sur 2 lignes
       (remplace l'ancien "display: none" + label actif seul en position absolute) */
    .elementor-509 .elementor-element.elementor-element-74d5198 .gf_step_label {
        font-size: 8px;
        letter-spacing: 0.04em;
        line-height: 1.25;
    }

    .elementor-509 .elementor-element.elementor-element-74d5198 .gf_page_steps {
        margin-bottom: 30px;
        border-bottom: none;
        gap: 0px;
    }

    .elementor-509 .elementor-element.elementor-element-74d5198 .gf_step {
        padding: 0 2px 14px;
        gap: 4px;
        border-bottom: 2px solid transparent;
    }

    .elementor-509 .elementor-element.elementor-element-74d5198 input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
    .elementor-509 .elementor-element.elementor-element-74d5198 textarea {
        font-size: 16px !important;
    }

    .elementor-509 .elementor-element.elementor-element-74d5198 .gfield--width-half {
        grid-column: 1 / -1 !important;
    }

    /* Mobile : boutons empilés pleine largeur,
       Continuer / Envoyer (order 2) AU-DESSUS de Précédent (order 1) */
    .elementor-509 .elementor-element.elementor-element-74d5198 .gform-page-footer,
    .elementor-509 .elementor-element.elementor-element-74d5198 .gform_page_footer {
        flex-direction: column-reverse;
        gap: 8px;
    }

    .elementor-509 .elementor-element.elementor-element-74d5198 .gform_next_button,
    .elementor-509 .elementor-element.elementor-element-74d5198 .gform_previous_button,
    .elementor-509 .elementor-element.elementor-element-74d5198 .gform_button[type="submit"] {
        width: 100% !important;
        flex: none !important;
    }
}

/* ============================================================
   PATCH — checkmark centré + H2/paragraphes fond noir
   ============================================================ */

.elementor-509 .elementor-element.elementor-element-74d5198 .gf_step_completed .gf_step_number {
    border-color: #ffffff;
    color: transparent;
    position: relative;
    font-size: inherit;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gf_step_completed .gf_step_number::after {
    content: '✓';
    font-size: 12px;
    font-weight: 600;
    color: #ffffff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    line-height: 1;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gfield--type-html h2,
.elementor-509 .elementor-element.elementor-element-74d5198 .gfield--type-html h2 strong,
.elementor-509 .elementor-element.elementor-element-74d5198 .gfield--type-html h3,
.elementor-509 .elementor-element.elementor-element-74d5198 .gfield--type-html p {
    color: var(--e-global-color-text) !important;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gfield--type-html p:first-child {
    opacity: 0.5;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gfield--type-html p:last-child {
    opacity: 0.65;
}

/* Spinner Gravity Forms masqué */
.gform_wrapper .gform-loader,
.gform_wrapper .gform_ajax_spinner {
  display: none !important;
}

/* ============================================================
   RETOURS LUCIEN oct. 2026 — frise : étapes non franchies lisibles,
   mots toujours entiers (MAINTENANT ne se coupe plus)
   ============================================================ */

.elementor-509 .elementor-element.elementor-element-74d5198 .gf_step:not(.gf_step_completed):not(.gf_step_active) .gf_step_label {
    color: #8c8c8c;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gf_step:not(.gf_step_completed):not(.gf_step_active) .gf_step_number {
    border-color: #777777;
    color: #8c8c8c;
}

.elementor-509 .elementor-element.elementor-element-74d5198 .gf_step_label {
    word-break: normal;
    overflow-wrap: normal;
    hyphens: none;
}

@media (max-width: 600px) {
    .elementor-509 .elementor-element.elementor-element-74d5198 .gf_step {
        flex: 1 1 auto;
        min-width: min-content;
    }
}/* End custom CSS */