div.gform_confirmation_message {
    color: var(--wp--custom--color--valid) !important;
    font-size: var(--wp--custom--font-size--m) !important;
    font-weight: bold !important;
}

.gform-theme--foundation.gform-theme--framework {
    form {
        .gfield{
            margin-bottom: var(--wp--preset--spacing--xxl);

        }
        .gform-body.gform_body .gform_fields {
            row-gap: var(--wp--preset--spacing--m);
        }

        .gfield_label, .gsection_title {
            font-weight: 400;
            font-size: var(--wp--preset--font-size--xxl);
            font-weight: var(--wp--custom--font-weight--bold);
            color: var(--wp--preset--color--black);
            margin-bottom: var(--wp--preset--spacing--xxs);
        }
        .little_label{
            margin-bottom: 0;
            .gfield_label{
                font-size: var(--wp--preset--font-size--m);
                font-family: var(--wp--preset--font-family--secondary);
                font-weight: var(--wp--custom--font-weight--light);
            }
        }
        .bottom_space{
            margin-bottom: var(--wp--preset--spacing--xxl);
        }

        .little_label + .gfield--type-section{
            margin-top: var(--wp--preset--spacing--xxl);
        }

        legend.gfield_label{
            color:var(--wp--preset--color--black);
            font-weight: var(--wp--custom--font-weight--bold);
            font-size: var(--wp--preset--font-size--xxl);
            margin-bottom: var(--wp--preset--spacing--s);
        }
        .gfield--type-section{
            border-bottom: 0;
            margin-bottom: 0;
        }
        .gsection_title{
            margin-bottom:0;
        }

        .gfield_description{
            font-size: var(--wp--preset--font-size--m);
            margin-bottom: var(--wp--preset--spacing--s);
        }

        .gform-field-label--type-inline {
            width: calc(100% - 20px) !important;
            color: var(--wp--preset--color--black);
            font-size: var(--wp--preset--font-size--m);
            font-weight: var(--wp--custom--font-weight--light);
        }

        /*radiobox, checkbox*/
        .gfield-choice-input{
            border:2px solid var(--wp--preset--color--black);
            &:checked{
                border:2px solid var(--wp--preset--color--secondary);
            }
            &::before{
                background: var(--wp--preset--color--secondary);
                width:10px;
                height:10px;
                content:"";
            }
        }
        .gfield--input-type-datepicker.gfield--datepicker-default-icon .ginput_container_date::after{
            color:var(--wp--preset--color--primary);
        }


        .ginput_container {
            input[type='text'], input[type='email'], input[type='url'], input[type='number'], input[type='tel'], select, textarea {
                font-family: var(--wp--preset--font-family--primary);
                font-size: var(--wp--preset--font-size--m);
                color: var(--wp--preset--color--black);
                padding: var(--wp--preset--spacing--xxs) var(--wp--preset--spacing--m);
                border-radius: var(--wp--custom--radius--s);
                border:none;
                background: var(--wp--preset--color--quaternary);
                box-sizing: border-box;
                height: auto;
                color-scheme: light;
                width:100%;
                max-width: 460px;
            }
        }

        .gfield_validation_message {
            font-family: var(--wp--preset--font-family--secondary);
        }

        .gform-footer {
            :is(input, button)[type='submit'].gform_button.button {
                font-size: 14px;
                padding: var(--wp--preset--spacing--s)  var(--wp--preset--spacing--l) !important;
            }
        }

        .gfield_required{
            font-size:var(--wp--preset--font-size--l);
        }



        .gform-page-footer{
            button.gform-custom-next.gform-button-next,
            button.gform-custom-previous.gform-button-previous,
            button.gform-custom-submit.gform-button-submit{
                border-radius: var(--wp--custom--radius--full);
                background: var(--wp--preset--color--primary);
                color:var(--wp--preset--color--white);
                padding: var(--wp--preset--spacing--s) var(--wp--preset--spacing--l);
                font-weight: var(--wp--preset--font-weight--regular);
                font-family: var(--wp--preset--font-family--secondary);
                font-size:14px;
                column-gap:0;
                &::before {
                    content: "";
                    display: inline-flex;
                    position: inherit;
                    top: inherit;
                    left: inherit;
                    width: 12px;
                    height: 12px;
                    box-sizing: border-box;
                    border: 2px solid var(--wp--preset--color--white);
                    background: var(--wp--preset--color--white);
                    transform: inherit;
                    border-radius: var(--wp--custom--radius--full);
                    margin-right: var(--wp--preset--spacing--xs);
                    transition: background 0.2s ease-out;
                }

                &:hover, &:focus {
                    background: var(--wp--preset--color--black);
                    &::before {
                        background: transparent;
                    }
                }
            }
            button.gform-custom-previous.gform-button-previous {
                background: var(--wp--preset--color--tertiary);
                &:hover, &:focus {
                    background: var(--wp--preset--color--black);
                }
                &::before {
                    display: none;
                }
            }
        }
    }

    /*newsletter*/
    form#gform_1 {
        position: relative;
        .gform-footer{
            margin-block-start : 0;
        }
        .champsNewsletter{
            width: 100%;
        }
        .ginput_container {
            input[type='email'] {
                font-size: var(--wp--preset--font-size--l);
                font-weight: var(--wp--custom--font-weight--light);
                font-family: var(--wp--preset--font-family--primary);
                color: var(--wp--preset--color--black);
                padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--xl);
                border-radius: var(--wp--custom--radius--full);
                border:none !important;
                color-scheme: light;
                background: var(--wp--preset--color--white);
                max-width: 100%;
            }
        }

        :is(input, button)#gform_submit_button_1{
            position:absolute;
            top:12px;
            right:12px;
            border-radius: var(--wp--custom--radius--full) !important;
            background: var(--wp--preset--color--tertiary)!important;
            color: var(--wp--preset--color--white)!important;
            font-family: var(--wp--preset--font-family--secondary);
            font-size: 14px!important;
            padding: var(--wp--preset--spacing--xs) var(--wp--preset--spacing--l)!important;
            letter-spacing: 0.03em!important;
            &:hover, &:focus{
                background: var(--wp--preset--color--black)!important;
            }

            @media screen and (max-width: 479px) {
                position:relative;
                top:inherit;
                right:inherit;
                margin: var(--wp--preset--spacing--s) auto 0;
            }
        }
    }

    .gform_validation_errors {
        font-family: var(--wp--preset--font-family--secondary);
        border-radius: var(--wp--custom--radius--s);

        .gform_submission_error {
            font-size: var(--wp--preset--font-size--l);
        }

    }
}

/*gestion erreur formulaire Newsletter*/
.is-style-group-primary{
    .gform-theme--foundation.gform-theme--framework{
        .gform_validation_errors{
            background: var(--wp--preset--color--white);
        }
        .gfield_description{
            background: var(--wp--preset--color--white);
        }
    }
}


.gform-theme--framework .gfield_list_group_item::before:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework .gform-field-label:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)) {
    font-weight: 400;
    width: 100%;

}

.gform-theme--framework .gfield:where(.gfield--type-multiselect,.gfield--input-type-multiselect) .chosen-container-multi:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework .gfield:where(.gfield--type-select,.gfield--input-type-select) .chosen-search input[type=text]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework .gfield:where(.gfield--type-select,.gfield--input-type-select) .chosen-single:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework .gform-theme-field-control:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework input[type]:where(:not(.gform-text-input-reset):not([type=hidden])):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework select:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework select[multiple]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework textarea:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework.gform-theme.gform_wrapper .button:where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework.gform-theme.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework.gform-theme.gform_wrapper :where(:not(.mce-splitbtn)) > button:not([id*=mceu_]):not(.mce-open):where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework.gform-theme.gform_wrapper button.button:where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework.gform-theme.gform_wrapper input:is([type=submit],[type=button],[type=reset]).button:where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework.gform-theme.gform_wrapper input:is([type=submit],[type=button],[type=reset]):where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme--framework.gform-theme.gform_wrapper input[type=submit].button.gform_button:where(:not(.gform-theme-no-framework)):where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)) {
    /*border : 1px solid var(--wp--preset--color--white);*/

    &:focus {
        outline-width: 0;
        border-color: var(--wp--preset--color--primary);
    }
}

form :is(input, button).gform_button.button {
    border-radius: var(--wp--custom--radius--full) !important;
    background: var(--wp--preset--color--secondary) !important;
    padding: var(--wp--preset--spacing--s) var(--wp--preset--spacing--m) !important;
    color: var(--wp--preset--color--white) !important;
    font-size: var(--wp--preset--font-size--xl);

    &:hover, &:focus {
        background: var(--wp--preset--color--primary) !important;
        color: var(--wp--preset--color--white) !important;
    }
}


.gform_required_legend {
    display: none;
}

.sousTitreForm {
    font-size: var(--wp--preset--font-size--xl);
    font-weight: 500;
}

/*étapes*/
.gform-theme--foundation.gform-theme--framework{
    .gf_page_steps{
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap : 0;
        @media screen and (max-width: 600px) {
            display: none;
        }
        .gf_step{
            flex:1;
            position:relative;
            border-color: var(--wp--preset--color--secondary);
            padding-right: var(--wp--preset--spacing--s);
            &:last-child{
                padding-right: 0;
            }
            .gf_step_number{
                flex-shrink: 0;
                border-color: var(--wp--preset--color--secondary);
            }
            .gf_step_label{
                position: relative;
                display: flex;
                align-items: center;
                justify-content: center;
                width: 100%;
                height: 100%;
                &::before{
                    position: absolute;
                    top:calc(50% - 1px);
                    left:0;
                    right:0;
                    width:100%;
                    content: "";
                    height:2px;
                    background:var(--wp--preset--color--secondary);
                }
                &::after{
                    position: absolute;
                    top:50%;
                    right:-2px;
                    transform: translateY(-50%);
                    content: "";
                    background: transparent url("../../img/chevron.svg") no-repeat center center;
                    display: block;
                    width: 17px;
                    height: 28px;
                    background-size: contain;
                }
            }

            .gf_step_picto_fin{
                flex-shrink: 0;
                background: transparent url("../../img/coupe.svg") no-repeat center center;
                display: block;
                width: 35px;
                height: 35px;
                background-size: contain;
            }
        }

        .gf_step_completed{
            .gf_step_number{
                border-color: var(--wp--preset--color--secondary);
                &::after{
                    width: 40px;
                    height: 40px;
                    background:var(--wp--preset--color--secondary);
                    color: var(--wp--preset--color--black);
                    border-color: var(--wp--preset--color--secondary);
                }
            }
        }
        .gf_step_pending{
            opacity: 0.3;
            border-color: var(--wp--preset--color--secondary);
        }
        .gf_step_number{
            width: 40px;
            height: 40px;
            display: flex;
            align-items: center;
            justify-content: center;
            background:var(--wp--preset--color--secondary);
        }
    }
}
/* ─────────────────────────────────────────────────────────────────────────
   Formulaires « standards » — alignés sur le design system
   (labels JetBrains Mono, champs bordés radius 0, bouton = bouton de base).
   Appliqué à TOUS les formulaires SAUF la newsletter (id 1), qui conserve son
   style propre — d'où le :not(#gform_wrapper_1).
   ───────────────────────────────────────────────────────────────────────── */
.gform_wrapper:not(#gform_wrapper_1) {

    /* Labels : JetBrains Mono, petit, majuscules, tracké */
    .gfield_label {
        font-family: var(--wp--preset--font-family--tertiary);
        font-size: var(--wp--preset--font-size--xxs);
        font-weight: var(--wp--custom--font-weight--regular);
        letter-spacing: 0.08em;
        text-transform: uppercase;
        color: var(--wp--preset--color--primary);
        margin-bottom: var(--wp--preset--spacing--xs);
    }

    /* Champs : bordure fine, angles vifs, fond blanc cassé */
    .ginput_container input[type='text'],
    .ginput_container input[type='email'],
    .ginput_container input[type='url'],
    .ginput_container input[type='number'],
    .ginput_container input[type='tel'],
    .ginput_container select,
    .ginput_container textarea {
        border: 1px solid var(--wp--custom--color--gris-bordure);
        border-radius: 0;
        background: var(--wp--preset--color--tertiary);
        font-family: var(--wp--preset--font-family--secondary);
        max-width: 100%;
    }

    .ginput_container input:focus,
    .ginput_container select:focus,
    .ginput_container textarea:focus {
        border-color: var(--wp--preset--color--primary);
        outline: none;
    }

    /* Bouton d'envoi : identique au bouton de base (doré, texte foncé, radius 0) */
    :is(input, button).gform_button.button {
        background: var(--wp--preset--color--secondary) !important;
        color: var(--wp--preset--color--primary) !important;
        border: 1.5px solid var(--wp--preset--color--secondary) !important;
        border-radius: 0 !important;
        padding: 12px 22px !important;
        font-family: var(--wp--preset--font-family--secondary) !important;
        font-size: var(--wp--preset--font-size--s) !important;
        font-weight: 600 !important;
        letter-spacing: 0.18em !important;
        text-transform: uppercase !important;
        cursor: pointer !important;
        transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
    }

    :is(input, button).gform_button.button:hover,
    :is(input, button).gform_button.button:focus {
        background: var(--wp--custom--color--or-hover) !important;
        border-color: var(--wp--custom--color--or-hover) !important;
        color: var(--wp--preset--color--primary) !important;
        transform: translateY(-2px);
        box-shadow: 0 6px 16px rgba(193, 154, 107, .45);
    }
}
