/* Statut form (#form-status) en ligne avec le bouton — Montserrat, alignement vertical sur le texte du bouton */
.contact-form .form-submit-row {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 24px !important;
    margin-top: 16px !important;
}
.contact-form .form-submit-row > #form-status {
    flex: 1 1 auto !important;
    margin: 0 !important;
    min-height: 0 !important;
    text-align: left !important;
    font-family: Montserrat, "Montserrat Fallback", Karla, ui-sans-serif, system-ui, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: rgb(91, 80, 70);
}
.contact-form .form-submit-row > #form-status.is-success { color: #1A0F08; }
body .contact-form .form-submit-row > .form-submit,
body.home-front-page .contact-form .form-submit-row > .form-submit,
body.page-id-150 .contact-form .form-submit-row > .form-submit {
    margin-top: 0 !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
}
body .contact-form .form-submit-row .form-submit .btn,
body.home-front-page .contact-form .form-submit-row .form-submit .btn,
body.page-id-150 .contact-form .form-submit-row .form-submit .btn {
    width: auto !important;
    min-width: 0 !important;
    padding: 1em 2em !important;
}

/* Équilibre l'espace au-dessus et au-dessous du bouton Envoyer */
.home-front-page .contact-form { padding: 28px 28px 14px !important; }
.home-front-page .contact-form > .form-group { margin-bottom: 0 !important; }
.home-front-page .contact-form #form-status:empty {
    display: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}
.home-front-page .contact-form .form-submit { margin-top: 14px !important; }

/* Grid formulaire contact — accueil + page contact, >=982px (memes proportions) */
@media (min-width: 982px) {
    body:is(.home-front-page, .page-id-150) .contact-grid { grid-template-columns: .65fr 1fr !important; }
}

/* <=981 : page contact stack vertical, formulaire au-dessus, coordonnees au-dessous */
@media (max-width: 981px) {
    body.home-front-page.home-front-page .contact-grid,
    body.page-id-150.page-id-150 .contact-grid { grid-template-columns: 1fr !important; gap: 48px !important; }
    body.page-id-150 .contact-grid .contact-form { order: 1 !important; }
    body.page-id-150 .contact-grid .contact-text { order: 2 !important; }
}

/* 586-981 : coordonnees sur une seule ligne row centree, icones au-dessous centrees */
@media (min-width: 586px) and (max-width: 981px) {
    body.page-id-150 .contact-text { text-align: center !important; }
    body.page-id-150 .contact-coords {
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-around !important;
        align-items: flex-start !important;
        flex-wrap: nowrap !important;
        gap: 16px !important;
    }
    body.page-id-150 .contact-coord {
        text-align: left !important;
        flex: 1 1 0 !important;
        min-width: 0 !important;
        justify-content: center !important;
    }
    body.page-id-150 .contact-coord-text { min-width: 0 !important; }
    body.page-id-150 .contact-social {
        display: flex !important;
        justify-content: center !important;
        margin-top: 28px !important;
    }
}

/* Mobile <=585 : clone du form HOME (transparent, padding 18/16, inputs cream, bouton compact a droite) */
@media (max-width: 585px) {
    body.page-id-150.page-id-150 .contact--page {
        padding-top: 28px !important;
        padding-bottom: 58px !important;
    }
    body.page-id-150.page-id-150 .contact-grid { gap: 32px !important; }
    body.page-id-150.page-id-150 .contact-form {
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding: 18px 16px !important;
        background-color: transparent !important;
        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: rgba(20, 22, 23, 0.2) 0 0 64px -12px !important;
    }
    body.page-id-150.page-id-150.page-id-150 .contact-form input[type="text"],
    body.page-id-150.page-id-150.page-id-150 .contact-form input[type="email"],
    body.page-id-150.page-id-150.page-id-150 .contact-form input[type="tel"],
    body.page-id-150.page-id-150.page-id-150 .contact-form textarea {
        padding: 10.5px 12.6px !important;
        border: 0 !important;
        border-radius: 3px !important;
        font-size: 14px !important;
        line-height: 22.4px !important;
        background-color: rgb(243, 239, 230) !important;
        background: rgb(243, 239, 230) !important;
        color: rgb(26, 15, 8) !important;
        box-shadow: rgba(184, 146, 74, 0) 0 0 0 0.5px inset, rgb(243, 239, 230) 0 0 0 1000px inset !important;
        -webkit-box-shadow: rgba(184, 146, 74, 0) 0 0 0 0.5px inset, rgb(243, 239, 230) 0 0 0 1000px inset !important;
    }
    body.page-id-150.page-id-150.page-id-150 .contact-form input[type="text"]:hover,
    body.page-id-150.page-id-150.page-id-150 .contact-form input[type="email"]:hover,
    body.page-id-150.page-id-150.page-id-150 .contact-form input[type="tel"]:hover,
    body.page-id-150.page-id-150.page-id-150 .contact-form textarea:hover,
    body.page-id-150.page-id-150.page-id-150 .contact-form input[type="text"]:focus,
    body.page-id-150.page-id-150.page-id-150 .contact-form input[type="email"]:focus,
    body.page-id-150.page-id-150.page-id-150 .contact-form input[type="tel"]:focus,
    body.page-id-150.page-id-150.page-id-150 .contact-form textarea:focus {
        border: 0 !important;
        box-shadow: 0 0 0 0.5px rgba(184, 146, 74, 0.5) inset, rgb(243, 239, 230) 0 0 0 1000px inset !important;
        -webkit-box-shadow: 0 0 0 0.5px rgba(184, 146, 74, 0.5) inset, rgb(243, 239, 230) 0 0 0 1000px inset !important;
        outline: 0 !important;
    }
    body.page-id-150.page-id-150 .contact-form .form-row {
        flex-direction: column !important;
        gap: 12px !important;
        margin-bottom: 12px !important;
    }
    body.page-id-150.page-id-150 .contact-form .form-group {
        margin-bottom: 0 !important;
    }
    body.page-id-150.page-id-150 .contact-form .form-submit .btn {
        width: auto !important;
        min-width: 0 !important;
        padding: 10.4px 24.7px !important;
        letter-spacing: 1.04px !important;
    }
    body.page-id-150.page-id-150 .contact-form .form-submit {
        text-align: right !important;
        margin-top: 16px !important;
    }
    body.page-id-150.page-id-150 .contact-social { justify-content: center !important; }
}

/* Champs au hover/focus — bordure fine (0.5px, couleur page commande) sans decaler le layout */
body:is(.home-front-page, .page-id-150) .contact-form input[type="text"],
body:is(.home-front-page, .page-id-150) .contact-form input[type="email"],
body:is(.home-front-page, .page-id-150) .contact-form input[type="tel"],
body:is(.home-front-page, .page-id-150) .contact-form textarea {
    border-radius: 3px !important;
    box-shadow: rgba(184, 146, 74, 0) 0 0 0 0.5px inset, 0 0 0 1000px #f3efe6 inset !important;
    -webkit-box-shadow: rgba(184, 146, 74, 0) 0 0 0 0.5px inset, 0 0 0 1000px #f3efe6 inset !important;
    transition: box-shadow .3s ease-in-out, color .3s ease-in-out !important;
}
body:is(.home-front-page, .page-id-150) .contact-form input[type="text"]:hover,
body:is(.home-front-page, .page-id-150) .contact-form input[type="email"]:hover,
body:is(.home-front-page, .page-id-150) .contact-form input[type="tel"]:hover,
body:is(.home-front-page, .page-id-150) .contact-form textarea:hover {
    box-shadow: 0 0 0 0.5px rgba(184, 146, 74, 0.5) inset, 0 0 0 1000px #f3efe6 inset !important;
    -webkit-box-shadow: 0 0 0 0.5px rgba(184, 146, 74, 0.5) inset, 0 0 0 1000px #f3efe6 inset !important;
    outline: 0 !important;
    transition: box-shadow .3s ease-in-out .15s, color .3s ease-in-out .15s !important;
}
body:is(.home-front-page, .page-id-150) .contact-form input[type="text"]:focus,
body:is(.home-front-page, .page-id-150) .contact-form input[type="email"]:focus,
body:is(.home-front-page, .page-id-150) .contact-form input[type="tel"]:focus,
body:is(.home-front-page, .page-id-150) .contact-form textarea:focus {
    box-shadow: 0 0 0 0.5px rgba(184, 146, 74, 0.5) inset, 0 0 0 1000px #f3efe6 inset !important;
    -webkit-box-shadow: 0 0 0 0.5px rgba(184, 146, 74, 0.5) inset, 0 0 0 1000px #f3efe6 inset !important;
    outline: 0 !important;
    transition: box-shadow .3s ease-in-out, color .3s ease-in-out !important;
}

/* Champs autofille : force la couleur texte (Chrome bypass 'color' sur autofill) — ne s'applique QUE quand le champ est autofille */
body:is(.home-front-page, .page-id-150) .contact-form input:-webkit-autofill,
body:is(.home-front-page, .page-id-150) .contact-form textarea:-webkit-autofill {
    -webkit-text-fill-color: #1A0F08 !important;
    caret-color: #1A0F08 !important;
}
body:is(.home-front-page, .page-id-150) .contact-form input:-webkit-autofill:focus,
body:is(.home-front-page, .page-id-150) .contact-form textarea:-webkit-autofill:focus {
    -webkit-text-fill-color: rgba(42, 26, 8, 0.8) !important;
}



/* Page Contact (ID 150) — overrides ciblés */
body.page-id-150 .contact--page .contact-form::before,
body.page-id-150 .contact--page .contact-form::after {
    display: none !important;
}
body.page-id-150 .contact-coord-label {
    font-family: var(--ff-serif) !important;
    font-size: 20px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: var(--ink) !important;
    line-height: 1.2 !important;
    margin-bottom: 2px !important;
}
body.page-id-150 .contact-coord-value {
    font-family: var(--ff-caps) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: var(--text) !important;
    letter-spacing: 0.02em !important;
    line-height: 1.55 !important;
}
/* Hero — margins internes reduites pour compacter */
body.page-id-150 .page-header-eyebrow {
    margin-bottom: 4px !important;
    font-weight: 600;
    letter-spacing: 0.1em; }
body.page-id-150 .page-header-title { margin-bottom: 12px !important; }
body.page-id-150 .page-header-intro { margin-bottom: 22px !important; }
body.page-id-150 .page-header { padding-bottom: 12px !important; }
/* Section contact — air autour : 48/92 ordi+tablettes, 28/58 mobile (sous 585) */
body.page-id-150 .contact--page {
    padding-top: 0px !important;
    padding-bottom: 92px !important;
}
/* Form — alignement accueil (padding uniforme + margin-top bouton identique) */
body.page-id-150 .contact-form { padding: 28px !important; }
body.page-id-150 .contact-form .form-submit { margin-top: 28px !important; }
body.page-id-150 .contact-form .form-submit .btn { line-height: 1.6 !important; }
/* Couleur des champs — alignement accueil au repos et au focus */
body.page-id-150 .contact-form input,
body.page-id-150 .contact-form textarea { color: #1A0F08 !important; }
body.page-id-150 .contact-form input:focus,
body.page-id-150 .contact-form textarea:focus { color: rgba(42, 26, 8, 0.8) !important; outline: 0 !important; border: 0 !important; }
/* Placeholder (champs vides) — alignement accueil */
body.page-id-150 .contact-form input::placeholder,
body.page-id-150 .contact-form textarea::placeholder { color: rgba(42, 26, 8, 0.45) !important; opacity: 1 !important; }
/* Form-group + form-status — supprimer l'air parasite entre textarea et bouton */
body.page-id-150 .contact-form > .form-group { margin-bottom: 0 !important; }
body.page-id-150 .contact-form #form-status:empty {
    display: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* Textarea bloc (sans inline baseline gap de 8px) */
body.page-id-150 .contact-form textarea { display: block !important; }
/* Social — clone footer (cercle 36, svg 22, hover subtil sans translate) */
body.page-id-150 .contact-social a {
    width: 36px !important;
    height: 36px !important;
    transition: background 0.3s, color 0.3s !important;
}
body.page-id-150 .contact-social svg {
    width: 22px !important;
    height: 22px !important;
}
body.page-id-150 .contact-social a:hover {
    background: rgba(184, 146, 74, 0.18) !important;
    color: rgb(139, 117, 60) !important;
    border-color: var(--gold-border) !important;
    transform: none !important;
}