/**
 * Page contact — styles spécifiques.
 *
 * Les jetons, l'en-tête, le pied de page et le menu mobile viennent de
 * tokens.css et main.css : rien n'est redéclaré ici.
 *
 * Rappel : toute modification impose de bumper MS_THEME_VERSION dans
 * functions.php ET Version: dans style.css, sinon LiteSpeed continue de
 * servir l'ancien fichier quel que soit le contenu réel sur le serveur.
 */

/* ═════ SOCLE DE PAGE ═════
   .band, .eyebrow, .h2, .sub et le fil d'Ariane ne sont pas dans main.css :
   chaque gabarit les porte. Valeurs reprises telles quelles d'accueil.css
   pour que le rythme vertical soit identique d'une page a l'autre. */
.band{padding:var(--sp-md) 0;border-bottom:1px solid var(--k2)}
.band.alt{background:var(--k0)}
.band.dense{padding:var(--sp-sm) 0}
.band.tinted{background:var(--l-tint);border-bottom-color:var(--l-edge)}
.eyebrow{font-family:'DM Mono',monospace;font-size:12.5px;font-weight:500;letter-spacing:.17em;text-transform:uppercase;color:var(--co5);margin-bottom:11px}
.h2{font-size:clamp(24px,3.2vw,32px);font-weight:700;letter-spacing:-.035em;line-height:1.08;color:var(--k8)}
.sub{font-size:16px;color:var(--k5);line-height:1.62;max-width:620px;margin-top:10px}
.band.tinted .sub{color:#3C6660}

/* Sur cette page les titres de bande n'ont pas de bouton a droite :
   le flex d'accueil.css n'apporte rien, un bloc simple suffit. */
.band-head{margin-bottom:28px}

.bc{font-size:14px;color:var(--k5);padding:14px 0}
.bc a:hover{color:var(--co5)}
.bc i{font-size:13px;margin-inline:5px;color:var(--k4);vertical-align:-1px}
.bc b{font-weight:600;color:var(--k7)}

[hidden]{display:none !important}
.col{max-width:920px}

/* ═════ HERO ═════ */
.hero{padding:var(--sp-sm) 0 var(--sp-md);border-bottom:1px solid var(--k2)}
.hero h1{font-size:clamp(31px,4.6vw,48px);font-weight:700;letter-spacing:-.04em;line-height:1.02;color:var(--k8)}
.hero-x{font-size:17px;line-height:1.64;color:var(--k6);max-width:58ch;margin-top:16px}
.hero-x p+p{margin-top:12px}
.hero-x b{font-weight:600;color:var(--k8)}

.chan-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px;max-width:920px}
.chan{display:block;background:#fff;border:1.5px solid var(--k2);border-radius:var(--r12);padding:15px 16px 16px;transition:border-color .14s,box-shadow .14s}
.chan:hover{border-color:var(--k3);box-shadow:var(--sh1)}
.chan-i{width:34px;height:34px;border-radius:var(--r8);background:var(--k0);border:1px solid var(--k2);display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--k6);margin-bottom:11px}
.chan-t{font-size:15px;font-weight:600;color:var(--k8);letter-spacing:-.015em;line-height:1.25}
.chan-v{font-family:'DM Mono',monospace;font-size:13.5px;color:var(--co5);margin-top:5px;word-break:break-word;line-height:1.35}
.chan-x{font-size:13.5px;color:var(--k5);line-height:1.45;margin-top:7px}
.chan-note{display:flex;align-items:flex-start;gap:8px;font-size:13.5px;color:var(--k5);line-height:1.5;margin-top:13px;max-width:920px}
.chan-note i{font-size:15.5px;color:var(--k4);flex:none;margin-top:1px}

/* ═════ CE QUE NOUS NE FAISONS PAS ═════ */
.nope{display:grid;grid-template-columns:repeat(4,1fr);border:1.5px solid var(--k2);border-radius:var(--r12);background:#fff;overflow:hidden}
.nope-l{padding:19px 20px 21px;border-left:1px solid var(--k1)}
.nope-l:first-child{border-left:none}
.nope-l>i{display:block;font-size:20px;color:var(--k4);margin-bottom:11px}
.nope-t{font-size:15px;font-weight:600;color:var(--k7);letter-spacing:-.015em;line-height:1.3}
.nope-x{font-size:14px;color:var(--k5);line-height:1.52;margin-top:6px}
.nope-x a{color:var(--co5);text-decoration:underline;text-underline-offset:2px}
.neutral{margin-top:12px;border:1.5px solid var(--yl-edge,#F5DE9E);background:var(--yl0);border-radius:var(--r12);padding:17px 20px;display:flex;align-items:flex-start;gap:13px}
.neutral>i{font-size:20px;color:var(--yl5);flex:none;margin-top:1px}
.neutral-t{font-size:15px;font-weight:700;color:var(--yl6);letter-spacing:-.01em}
.neutral-x{font-size:14.5px;color:var(--yl-ink2,#6B4A0F);line-height:1.55;margin-top:4px;max-width:88ch}
.neutral-x a{color:var(--yl6);text-decoration:underline;text-underline-offset:2px}

/* ═════ AIGUILLAGE ═════ */
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;max-width:920px}
.tile{text-decoration:none;display:flex;flex-direction:column;align-items:flex-start;gap:9px;text-align:left;background:#fff;border:1.5px solid var(--k2);border-radius:var(--r12);padding:14px 14px 15px;cursor:pointer;transition:border-color .14s,background .14s,transform .14s;min-height:104px}
.tile:hover{border-color:var(--k3);background:var(--k0);transform:translateY(-1px)}
.tile i{font-size:21px;color:var(--k5);transition:color .14s}
.tile span{font-size:14.5px;font-weight:600;color:var(--k7);letter-spacing:-.015em;line-height:1.3}
.tile[aria-current]{border-color:var(--co4);background:var(--co0);box-shadow:inset 0 0 0 1px var(--co4)}
.tile[aria-current] i{color:var(--co4)}
.tile[aria-current] span{color:var(--co6)}

.panel{margin-top:16px;max-width:920px}
.panel:focus{outline:none}
.card{background:#fff;border:1.5px solid var(--k2);border-radius:var(--r12);box-shadow:var(--sh1);padding:26px 28px}

/* Raccourcis */
.sc-k{font-family:'DM Mono',monospace;font-size:12px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--co5);margin-bottom:11px}
.sc-t{font-size:20px;font-weight:700;letter-spacing:-.028em;color:var(--k8);line-height:1.2}
.sc-x{font-size:15px;color:var(--k6);line-height:1.6;margin-top:9px;max-width:64ch}
.sc-list{margin-top:18px;display:grid;gap:9px}
.sc-l{display:flex;align-items:flex-start;gap:13px;border:1.5px solid var(--k2);border-radius:var(--r8);padding:14px 15px;background:#fff;transition:border-color .14s,box-shadow .14s}
.sc-l:hover{border-color:var(--co3);box-shadow:var(--sh2)}
.sc-l>i{font-size:19px;color:var(--co4);flex:none;margin-top:2px}
.sc-lt{font-size:15.5px;font-weight:700;letter-spacing:-.015em;color:var(--k8);display:flex;align-items:center;gap:7px}
.sc-lt .ar{font-size:14.5px;color:var(--k4);transition:transform .16s}
.sc-l:hover .ar{transform:translateX(3px);color:var(--co4)}
.sc-lx{font-size:14.5px;color:var(--k5);line-height:1.5;margin-top:3px}
.sc-m{font-family:'DM Mono',monospace;font-size:12px;color:var(--k-label);margin-top:7px}
.sc-back{margin-top:16px;padding-top:14px;border-top:1px solid var(--k2);display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.sc-back p{font-size:14px;color:var(--k5);flex:1;min-width:200px;line-height:1.45}

/* Recherche intégrée : on ne renvoie pas l'utilisateur repartir de zéro */
.msearch{border:1.5px solid var(--k2);border-radius:var(--r8);background:var(--k0);padding:16px}
.msearch-t{font-size:15.5px;font-weight:700;letter-spacing:-.015em;color:var(--k8);display:flex;align-items:center;gap:8px}
.msearch-t i{font-size:18px;color:var(--co4)}
.msearch-x{font-size:14.5px;color:var(--k5);line-height:1.5;margin-top:4px}
.msearch-g{display:grid;grid-template-columns:1fr 1fr auto;gap:9px;margin-top:13px}
.msearch-g .sel{font-size:15.5px;padding:10px 38px 10px 12px;background-color:#fff}

/* ═════ CHAMPS ═════ */
.f{margin-top:22px}
.f:first-child{margin-top:0}
.f-l{display:flex;align-items:baseline;gap:8px;font-size:15.5px;font-weight:600;color:var(--k8);margin-bottom:6px;min-height:21px}
.f-h{display:block;font-size:14px;line-height:1.5;color:var(--k5);margin-bottom:9px;margin-top:-2px}
.f-opt{font-family:'DM Mono',monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--k-label);font-weight:500;white-space:nowrap}
.f-req{font-family:'DM Mono',monospace;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--co5);font-weight:500;white-space:nowrap}
.inp,.tar,.sel{width:100%;font-size:16px;color:var(--k8);background:#fff;border:1.5px solid var(--k2);border-radius:var(--r8);padding:12px 14px;transition:border-color .14s,box-shadow .14s}
.sel{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2363776F' stroke-width='2.5' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px;cursor:pointer}
.inp:focus,.tar:focus,.sel:focus{outline:none;border-color:var(--co3);box-shadow:var(--shf)}
.tar{min-height:150px;resize:vertical;line-height:1.6}
.inp::placeholder,.tar::placeholder{color:var(--k4)}
.f.err .inp,.f.err .tar,.f.err .sel{border-color:var(--er-dot);background:var(--er-bg)}
.f-err{display:none;align-items:center;gap:7px;font-size:14.5px;font-weight:600;color:var(--er-tx);margin-top:7px}
.f-err i{font-size:15.5px}
.f.err .f-err{display:flex}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;margin-top:22px}
.f-row:first-child{margin-top:0}
.f-row>.f{margin-top:0}
.extras{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;margin-top:22px}
.extras>.f{margin-top:0}
.extras>.f.span2{grid-column:1/-1}
.f-count{font-family:'DM Mono',monospace;font-size:12.5px;color:var(--k-label);text-align:right;margin-top:6px;transition:color .2s}
.f-count.court{color:var(--k5);text-align:left}
.f-count.ok{color:var(--ok-solid,#0E7A45)}
.f-count.ok::before{content:'\2713\00a0'}

/* Pièce jointe */
.drop{border:1.5px dashed var(--k3);border-radius:var(--r8);background:var(--k0);padding:18px;display:flex;align-items:center;gap:14px;cursor:pointer;transition:border-color .14s,background .14s}
.drop:hover{border-color:var(--co3);background:var(--co0)}
.drop>i{font-size:22px;color:var(--k5);flex:none}
.drop-t{font-size:14.5px;font-weight:600;color:var(--k7);display:block}
.drop-x{font-family:'DM Mono',monospace;font-size:12px;color:var(--k-label);margin-top:3px;display:block}
.drop input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.files{display:grid;gap:7px;margin-top:9px}
.file{display:flex;align-items:center;gap:10px;border:1.5px solid var(--k2);border-radius:var(--r8);padding:9px 12px;background:#fff}
.file>i{font-size:17px;color:var(--k5);flex:none}
.file-n{font-size:14.5px;color:var(--k7);font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.file-s{font-family:'DM Mono',monospace;font-size:12px;color:var(--k-label);flex:none}
.file-x{background:none;border:none;cursor:pointer;color:var(--k4);font-size:17px;display:flex;padding:2px;border-radius:var(--r4)}
.file-x:hover{color:var(--er-tx)}

.form-h{display:flex;align-items:center;gap:11px;padding-bottom:16px;margin-bottom:20px;border-bottom:1px solid var(--k2)}
.form-h i{width:36px;height:36px;border-radius:var(--r8);background:var(--co0);color:var(--co5);display:flex;align-items:center;justify-content:center;font-size:19px;flex:none}
.form-h b{font-size:17px;font-weight:700;letter-spacing:-.02em;color:var(--k8);display:block;line-height:1.25}
.form-h small{font-size:14px;color:var(--k5);display:block;margin-top:2px;line-height:1.4}

.ctx{display:flex;gap:11px;font-size:14.5px;line-height:1.55;border-radius:var(--r8);padding:13px 15px;margin-bottom:20px}
.ctx i{font-size:17px;flex:none;margin-top:1px}
.ctx.info{background:var(--in-bg);border:1px solid var(--in-edge,#C7DBFF);color:var(--in-ink2,#1E3A6E)}
.ctx.warn{background:var(--yl0);border:1px solid var(--yl-edge,#F5DE9E);color:var(--yl-ink2,#6B4A0F)}

/* Repli sans JavaScript : révélé par le bloc noscript du gabarit */
.nojs-note{display:none;align-items:flex-start;gap:10px;font-size:14.5px;line-height:1.55;background:var(--in-bg);border:1px solid var(--in-edge,#C7DBFF);color:var(--in-ink2,#1E3A6E);border-radius:var(--r8);padding:13px 15px;margin-bottom:20px}
.nojs-note i{font-size:17px;flex:none;margin-top:1px}

.errsum{border:1.5px solid var(--er-dot);background:var(--er-bg);border-radius:var(--r8);padding:14px 16px;margin-bottom:20px}
.errsum:focus{outline:2px solid var(--er-dot);outline-offset:2px}
.errsum-t{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:var(--er-tx);letter-spacing:-.01em}
.errsum-t i{font-size:18px}
.errsum ul{list-style:none;margin-top:9px;display:grid;gap:5px;padding:0}
.errsum button{background:none;border:none;padding:0;font-family:inherit;font-size:14.5px;font-weight:600;color:var(--er-tx);text-decoration:underline;text-underline-offset:2px;cursor:pointer;text-align:left}

.consent{display:flex;align-items:flex-start;gap:11px;border:1.5px solid var(--k2);border-radius:var(--r8);padding:14px 15px;background:var(--k0);cursor:pointer}
.consent:hover{border-color:var(--k3)}
.consent input{position:absolute;opacity:0;pointer-events:none}
.consent-b{width:20px;height:20px;flex:none;border-radius:var(--r4);border:2px solid var(--k3);background:#fff;display:flex;align-items:center;justify-content:center;transition:border-color .14s,background .14s;margin-top:1px}
.consent-b::after{content:'';width:9px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) scale(0);transition:transform .16s}
.consent input:checked~.consent-b{background:var(--co4);border-color:var(--co4)}
.consent input:checked~.consent-b::after{transform:rotate(-45deg) scale(1)}
.consent input:focus-visible~.consent-b{outline:2px solid var(--co4);outline-offset:2px}
.consent-x{font-size:14.5px;line-height:1.55;color:var(--k6)}
.consent-x a{color:var(--co5);text-decoration:underline;text-underline-offset:2px}
.f.err .consent{border-color:var(--er-dot);background:var(--er-bg)}

.submit-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:22px}
.submit-note{font-size:13.5px;color:var(--k-label);line-height:1.45;flex:1;min-width:200px}

.done-i{width:52px;height:52px;border-radius:50%;background:var(--ok-bg);border:1.5px solid var(--ok-edge,#BFEBD0);display:flex;align-items:center;justify-content:center;font-size:26px;color:var(--ok-solid,#0E7A45);margin-bottom:18px}
.done h2{font-size:24px;font-weight:700;letter-spacing:-.03em;color:var(--k8)}
.done-x{font-size:15.5px;line-height:1.65;color:var(--k6);margin-top:10px;max-width:56ch}
.done-ref{font-family:'DM Mono',monospace;font-size:14px;color:var(--k6);background:var(--k0);border:1px solid var(--k2);border-radius:var(--r8);padding:11px 14px;margin-top:18px;display:inline-block}
.done-ref b{color:var(--k8)}
.done-next{margin-top:22px;border-top:1px solid var(--k2);padding-top:18px}
.done-h{font-family:'DM Mono',monospace;font-size:12px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--k-label);margin-bottom:11px}
.done-l{display:flex;align-items:flex-start;gap:9px;font-size:14.5px;color:var(--k6);line-height:1.55;margin-bottom:8px}
.done-l i{font-size:16px;color:var(--k4);flex:none;margin-top:1px}

/* ═════ URGENCES ═════ */
.urg-in{display:grid;grid-template-columns:.8fr 1.2fr;gap:44px;align-items:start}
.urg-g{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.urg{display:block;background:#fff;border:1.5px solid var(--l-edge,#CDE8E2);border-radius:var(--r12);padding:14px 15px;transition:border-color .14s,box-shadow .14s,transform .14s}
.urg:hover{border-color:var(--co3);box-shadow:var(--sh2);transform:translateY(-1px)}
.urg-n{font-size:26px;font-weight:700;letter-spacing:-.04em;color:var(--co4);line-height:1}
.urg-t{font-size:14.5px;font-weight:600;color:var(--lp);margin-top:6px;letter-spacing:-.01em;line-height:1.25}
.urg-x{font-size:13px;color:#3C6660;line-height:1.4;margin-top:3px}
.urg-res{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:9px}
.urg-r{background:#fff;border:1.5px solid var(--l-edge,#CDE8E2);border-radius:var(--r12);padding:13px 15px;display:flex;align-items:flex-start;gap:11px;transition:border-color .14s,box-shadow .14s,transform .14s}
.urg-r:hover{border-color:var(--co3);box-shadow:var(--sh2);transform:translateY(-1px)}
.urg-r i{font-size:19px;color:var(--lm);flex:none;margin-top:2px}
.urg-rt{font-size:14.5px;font-weight:600;color:var(--lp);letter-spacing:-.01em}
.urg-rn{font-family:'DM Mono',monospace;font-size:14.5px;color:var(--co4);margin-top:4px;letter-spacing:-.01em}
.urg-rx{font-size:13.5px;color:#3C6660;line-height:1.45;margin-top:2px}

/* ═════ RESPONSIVE ═════ */
@media (max-width:1080px){
  .nope{grid-template-columns:repeat(2,1fr)}
  .nope-l:nth-child(odd){border-left:none}
  .nope-l:nth-child(n+3){border-top:1px solid var(--k1)}
}
@media (max-width:980px){
  .urg-in{grid-template-columns:1fr;gap:30px}
}
@media (max-width:820px){
  .tiles{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:720px){
  /* En pile, quatre « non » avant le moindre champ, c'est trop :
     le formulaire remonte devant les limites. */
  main{display:flex;flex-direction:column}
  main>.wrap{order:1}
  .hero{order:2}
  #ecrire{order:3}
  #limites{order:4}
  #urgences{order:5}

  .tiles{grid-template-columns:repeat(2,1fr)}
  .tile{min-height:92px;padding:13px 12px}
  .chan-row{grid-template-columns:1fr;gap:8px}
  .chan{display:grid;grid-template-columns:34px 1fr;gap:0 13px;align-items:start;padding:14px}
  .chan-i{grid-row:1/4;margin-bottom:0}
  .chan-v{margin-top:3px}
  .chan-x{margin-top:4px}
  .nope{grid-template-columns:1fr}
  .nope-l{border-left:none}
  .nope-l+.nope-l{border-top:1px solid var(--k1)}
  .card{padding:20px 18px}
  .f-row{grid-template-columns:1fr;gap:0}
  .f-row>.f+.f{margin-top:22px}
  .extras{grid-template-columns:1fr;gap:22px}
  .msearch-g{grid-template-columns:1fr}
  .msearch-g .btn{width:100%;justify-content:center;min-height:46px}
  .submit-row .btn{width:100%;justify-content:center;min-height:50px}
  .urg-res{grid-template-columns:1fr}
}
@media (max-width:560px){
  .urg-g{grid-template-columns:repeat(2,1fr)}
}
