/* ===== En-tête de la page contact =====
       Auparavant : un bandeau « Contact / Espace contact » suivi d'un
       paragraphe d'intro puis du formulaire — trois blocs empilés sans
       hiérarchie. Ici : un seul bandeau qui porte le titre, l'accroche et
       les accès directs (téléphone, e-mail, itinéraire, essai). */
    .chero{margin-top:var(--header-h);background:var(--emerald-900,#0e3a2f);color:var(--text-on-dark,#eaf3ee);padding:clamp(1.8rem,4vw,3.2rem) 0 clamp(1.6rem,3.5vw,2.4rem)}
    .chero__wrap{width:min(100% - 3rem,1180px);margin-inline:auto}
    .chero__eyebrow{display:inline-block;color:var(--green-electric,#78faae);font-family:var(--font-display);font-weight:600;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;margin-bottom:14px}
    .chero__title{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.1rem);font-weight:700;line-height:1.06;margin:0;color:#fff}
    .chero__sub{margin:10px 0 0;font-weight:300;line-height:1.6;color:rgba(234,243,238,.84)}
    .chero__quick{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
    .chero__pill{display:inline-flex;align-items:center;gap:9px;padding:11px 18px;border-radius:1000px;border:1px solid rgba(234,243,238,.28);color:#fff;text-decoration:none;font-size:.92rem;font-weight:500;line-height:1;transition:background-color .2s ease-out,border-color .2s ease-out}
    .chero__pill svg{width:17px;height:17px;flex:0 0 auto}
    .chero__pill:hover{background:rgba(255,255,255,.1);border-color:rgba(234,243,238,.5);color:#fff}
    .chero__pill--cta{background:var(--green-electric,#78faae);border-color:var(--green-electric,#78faae);color:#161718;font-weight:700}
    .chero__pill--cta:hover{background:#5ee096;border-color:#5ee096;color:#161718}
    @media (max-width:560px){.chero__quick{flex-direction:column;align-items:stretch}.chero__pill{justify-content:center}}

    /* ===== Espace contact ===== */
    .contact{background:var(--off-white,#f4f6f5);padding:0 0 72px}
    .contact__wrap{width:min(100% - 3rem,1180px);margin-inline:auto;padding-top:clamp(1.4rem,3vw,2.2rem)}
    .contact__back{display:inline-block;margin-bottom:24px}
    .contact__title{font-family:var(--font-display);font-size:clamp(1.7rem,4vw,2.3rem);font-weight:700;color:#161718;margin:0 0 16px;text-transform:uppercase;letter-spacing:.01em}
    .contact__intro{color:var(--grey-700,#4a5551);line-height:1.7;margin:0 0 16px}
    .contact__deaf{font-weight:600;color:#161718;margin:0 0 6px}
    .contact__layout{display:grid;grid-template-columns:1fr 320px;gap:40px;align-items:start;margin-top:0}
    .contact__form{min-width:0}
    .contact__block{margin:0 0 34px;border:0;padding:0}
    .contact__h2,.contact__legend{font-family:var(--font-display);font-size:1.15rem;font-weight:700;color:#161718;margin:0 0 16px;padding:0;text-transform:uppercase;letter-spacing:.02em}
    .contact__radio{display:flex;align-items:flex-start;gap:10px;padding:6px 0;color:#161718;cursor:pointer;line-height:1.45}
    .contact__radio input{margin-top:3px;accent-color:var(--emerald-900,#0e3a2f)}
    .contact__fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
    .contact__field{display:flex;flex-direction:column;min-width:0}
    .contact__field--full{grid-column:1 / -1}
    .contact__field input,.contact__field textarea{width:100%;font:inherit;padding:14px 16px;border:1px solid #cfd4d2;border-radius:6px;background:#fff;color:#161718}
    .contact__field input::placeholder,.contact__field textarea::placeholder{color:#8a938f}
    .contact__field input:focus,.contact__field textarea:focus{outline:none;border-color:var(--green-accent,#0aa14a);box-shadow:0 0 0 3px rgba(10,161,74,.18)}
    .contact__field textarea{resize:vertical;min-height:190px}
    .contact__hint,.contact__field small{color:var(--grey-600,#6a7570);font-size:.82rem;line-height:1.5;margin-top:6px}
    .contact__hint{margin:0 0 16px}
    .contact__file{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#161718;margin-bottom:10px;font-size:.9rem;line-height:1.45}
    .contact__file>span{font-weight:400}
    /* bouton natif au gabarit de marque : pilule émeraude, texte à la bonne échelle */
    .contact__file input[type=file]{font:inherit;font-size:.85rem;color:var(--grey-600,#6a7570)}
    .contact__file input[type=file]::file-selector-button{font:inherit;font-size:.82rem;font-weight:700;letter-spacing:.04em;border:0;border-radius:1000px;padding:10px 18px;margin-right:12px;background:var(--emerald-900,#0e3a2f);color:#fff;cursor:pointer;transition:background-color .25s ease-out}
    .contact__file input[type=file]::file-selector-button:hover{background:#14483a}
    .contact__empty{color:var(--grey-600,#6a7570);font-size:.9rem}
    /* colonne : le bloc de consentement occupe la largeur, le bouton reste à sa taille
       (en ligne, le bouton était étiré sur toute la hauteur des cases RGPD) */
    .contact__actions{display:flex;flex-direction:column;align-items:flex-end;gap:14px;margin-top:8px}
    .contact__actions .rgpd-consent{width:100%;margin:0}
    .contact__actions .btn{flex:0 0 auto;align-self:flex-end;width:auto;min-width:200px}
    .contact__req{color:var(--grey-600,#6a7570);font-size:.82rem;margin-top:22px}
    .contact__aside{position:sticky;top:calc(var(--header-h) + 16px)}
    .contact__card{background:var(--emerald-900,#0e3a2f);color:#fff;padding:26px 24px;border-radius:6px}
    .contact__card h3{font-family:var(--font-display);font-weight:700;text-transform:uppercase;font-size:1rem;margin:0 0 12px;letter-spacing:.03em}
    .contact__card h3.mt{margin-top:24px}
    .contact__card p{line-height:1.6;margin:0 0 12px;font-size:.92rem}
    .contact__card a{color:var(--green-electric,#5ce08a);text-decoration:underline;word-break:break-word}
    .contact__legal{width:min(100% - 3rem,1180px);margin:6px auto 0}
    .contact__legal p{color:var(--grey-700,#4a5551);line-height:1.7;font-size:.9rem;margin:0 0 14px}
    @media (max-width:820px){
      .contact__layout{grid-template-columns:1fr}
      .contact__aside{position:static}
    }
    @media (max-width:560px){
      .contact__fields{grid-template-columns:1fr}
    }
