#gform_fields_2 input[type="text"],
#gform_fields_2 input[type="email"],
#gform_fields_2 textarea {
    display: flex;
    /* Flex OK pour input/textarea */
    padding: 12px;
    align-items: center;
    gap: var(--petit, 12px);
    align-self: stretch;
    border-radius: var(--micro, 6px);
    border: 1px solid var(--Gris-moyen, #D9D9D9);
    background: var(--Blanc-0, #FFF);

    /* Corps sans */
    color: var(--Gris-fonc, #616161);
    font-family: "VendSans", sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 145%;
    /* 23.2px */
    width: 100%;
    box-sizing: border-box;
}

/* ==== Placeholder ==== */
#gform_fields_2 input::placeholder,
#gform_fields_2 textarea::placeholder {
    color: var(--Gris-fonc, #616161);
    font-family: "VendSans", sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 145%;
}

/* ==== Focus ==== */
#gform_fields_2 input:focus,
#gform_fields_2 textarea:focus,
#gform_fields_2 select:focus {
    outline: none;
    outline-offset: none;
}

#gform_fields_2 #input_2_6 {

    padding: 12px var(--grand, 36px) 12px var(--petit, 12px);
    color: var(--Noir-100, #000);
    font-family: "VendSans", sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 110%;
    border-radius: var(--micro, 6px);
    border: 1px solid var(--Gris-moyen, #D9D9D9);

}

/* ==== Style pour le label newsletter ==== */
#gform_fields_2 #label_2_8_1 {
    color: var(--Noir-100, #000);

    /* Typographie */
    font-family: "VendSans", sans-serif;
    font-size: 17px;
    font-style: normal;
    font-weight: 450;
    line-height: 140%;
    /* 23.8px */
    letter-spacing: 0.17px;
}

/* ==== Style description newsletter ==== */
#gform_fields_2 #gfield_description_2_8 {
    color: var(--Gris-fonc, #616161);

    /* Typographie */
    font-family: "VendSans", sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%;
    /* 18.2px */

    /* Marges et espacement */
    margin: 4px 0 0 0;
}

/* ==== Style checkbox "newsletter" ==== */
#gform_fields_2 #choice_2_8_1.gfield-choice-input {
    display: flex;
    width: 24px;
    height: 24px;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    border: 2px solid black;
    border-radius: 4px;
    /* optionnel : coins légèrement arrondis */
    background-color: #fff;
    /* fond blanc */
    cursor: pointer;
}

#gform_fields_2 #choice_2_8_1.gfield-choice-input::before {
    color: black;
}

/* ==== Bouton Envoyer Gravity Forms ==== */
#gform_submit_button_2.btn-submit-inactive {
    background-color: #F7F7F7 !important;
    border-color: #919191;
    color: #919191;
    cursor: default;
}

#gform_submit_button_2.btn-submit-inactive:hover,
#gform_submit_button_2.btn-submit-inactive:focus,
#gform_submit_button_2.btn-submit-inactive:focus-visible {
    box-shadow: none !important;
    outline: none !important;
    color: #919191 !important;
    border: 1px solid #919191 !important;
}

#gform_submit_button_2 {
    border-radius: var(--micro, 6px);
    border: 1px solid #919191;

    /* Typographie / Corps sans */
    font-family: "VendSans", sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 110%;
    color: #919191;

    /* Dimensions et affichage */
    padding: 12px 24px;
    width: 100%;
    box-sizing: border-box;
    cursor: default;

    /* Transition */
    transition: border-color 0.2s ease, color 0.2s ease, box-shadow 0.1s ease, translate 0.1s ease;
}

/* État actif : tous les champs obligatoires remplis */
#gform_submit_button_2.btn-principal-transparent {
    border-color: #004352;
    color: #004352;
    cursor: pointer;
    translate: -3px -3px;
    box-shadow: 6px 6px 0 0 #000;
}

#gform_submit_button_2.btn-principal-transparent:hover,
#gform_submit_button_2.btn-principal-transparent:focus {
    border-color: #004352;
    background-color: #F4FFF8 !important;
}

#gform_submit_button_2.btn-principal-transparent:active {
    translate: 0px 0px;
    box-shadow: none;
}

.page-contact.btn-besoin.has-background {
    background-color: #ffffff !important;
}

.page-contact {
    .btn-besoin img {
        filter: invert(18%) sepia(95%) saturate(650%) hue-rotate(162deg) brightness(94%) contrast(108%);
    }

    .btn-besoin .faq-contact img {
        filter: none;
    }

    .btn-besoin.active {
        background-color: #004352 !important;

        p,
        a {
            color: white !important;
        }

        img {
            filter: brightness(0) invert(1);
        }
    }
}

.btn-besoin {
    position: relative;
    cursor: pointer;
}

/* Messages d'erreur champs contact */
.vert-field-error {
    display: none;
    color: #D63600 !important;
    font-family: "VendSans", sans-serif;
    font-size: 14px !important;
    font-weight: 400;
    line-height: 1;
    margin-top: 3px !important;
    top: 9px !important;
    position: relative !important;
}

/* Overlay transparent capturant les clics sur le bouton disabled */
.vert-submit-overlay {
    position: absolute;
    inset: 0;
    cursor: default;
    z-index: 10;
}