:root{
  --papier:#FBF7EF; --craie:#F3EDE1; --blanc:#FFFFFF; --nuit:#1A1512; --asphalte:#231D18;
  --ambre:#B57A15; --route:#EFB01F; --or-texte:#8A6314; --brume:#5C5147; --encre2:#5C5147;
  --display:"Big Shoulders Display","Arial Narrow",sans-serif;
  --body:"Archivo",system-ui,-apple-system,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,monospace;
  --pad:clamp(1.25rem,5vw,4rem);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:5rem}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{font-family:var(--body);background:var(--papier);color:#2A241E;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:#8A6314}
a:hover{color:#1A1512}
:focus-visible{outline:3px solid var(--route);outline-offset:3px}
.sr{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}

.nav{position:sticky;top:0;z-index:50;background:rgba(251,247,239,.96);backdrop-filter:blur(10px);color:var(--nuit);border-bottom:2px solid var(--route)}
.nav__in{max-width:900px;margin:0 auto;padding:.9rem var(--pad);display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}
.mark{font-family:var(--display);font-size:1.25rem;font-weight:800;text-transform:uppercase;text-decoration:none;color:var(--nuit);white-space:nowrap}
.mark span{color:var(--or-texte)}
.mark{display:inline-flex;align-items:center;font-size:0;letter-spacing:0}
.mark__i{height:34px;width:auto;display:block}
@media(max-width:560px){.mark__i{height:28px}}

.mark{display:inline-flex;flex-direction:column;align-items:stretch;line-height:.92}
/* La marque : le mot, et la barre d'horizon dessous — decalee, pleine, nette.
   Elle remplace la ligne a pastilles, illisible a 1,3 rem. */
.mark__b{display:block;height:.15em;margin:.2em 0 0 46%;background:var(--route);border-radius:1px}

.nav a.back{font-family:var(--mono);font-size:.67rem;letter-spacing:.1em;text-transform:uppercase;color:var(--brume);text-decoration:none}
.nav a.back:hover{color:var(--nuit)}

main{max-width:900px;margin:0 auto;padding:clamp(2.5rem,6vw,4.5rem) var(--pad) 4rem}
.kicker{font-family:var(--mono);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--or-texte);margin-bottom:1rem}
h1{font-family:var(--display);font-size:clamp(2.4rem,7vw,4rem);font-weight:800;text-transform:uppercase;line-height:.95;letter-spacing:-.01em;margin-bottom:1rem}
h2{font-family:var(--display);font-size:clamp(1.4rem,3vw,1.9rem);font-weight:700;text-transform:uppercase;line-height:1.05;margin:2.8rem 0 .9rem;padding-top:1.4rem;border-top:1px solid rgba(26,21,18,.18)}
h3{font-family:var(--display);font-size:1.15rem;font-weight:700;text-transform:uppercase;margin:1.6rem 0 .5rem}
p,li{font-size:.97rem}
p+p,ul+p,ol+p,p+ul,p+ol{margin-top:.85rem}
ul,ol{margin-left:1.2rem;display:grid;gap:.45rem}
strong{font-weight:600;color:var(--nuit)}
.intro{font-size:1.08rem;color:#5C5147;max-width:62ch}
.maj{font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:#6E6259;margin-top:.6rem}

.vg{border-bottom:1px dotted var(--ambre);}
.legende{display:flex;flex-wrap:wrap;gap:1.2rem;font-family:var(--mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;margin:1rem 0 0}
.legende span{display:inline-flex;align-items:center;gap:.45rem}
.legende i{width:12px;height:12px;display:inline-block;border-radius:2px}
.todo{background:#C40036;color:#FFFFFF!important;padding:.08em .45em;font-family:var(--mono);font-size:.84em;font-weight:600;border-radius:2px}

.box{border:1px solid rgba(26,21,18,.2);background:#fff;padding:1.3rem 1.5rem;margin:1.4rem 0}
.box--warn{border-left:4px solid var(--ambre);background:#FCF4E2}
.box--info{border-left:4px solid var(--nuit);background:#F2EDE2}
.box h3{margin-top:0}

dl.ident{display:grid;gap:.1rem;margin:1.2rem 0}
dl.ident>div{display:grid;gap:.15rem;padding:.75rem 0;border-bottom:1px solid rgba(26,21,18,.12);grid-template-columns:1fr}
@media(min-width:620px){dl.ident>div{grid-template-columns:210px 1fr;gap:1rem;align-items:baseline}}
dl.ident dt{font-family:var(--mono);font-size:.63rem;letter-spacing:.12em;text-transform:uppercase;color:#6E6259}
dl.ident dd{font-size:.97rem}

.toc{background:#fff;border:1px solid rgba(26,21,18,.2);padding:1.2rem 1.5rem;margin:2rem 0}
.toc p{font-family:var(--mono);font-size:.63rem;letter-spacing:.12em;text-transform:uppercase;color:var(--or-texte);margin-bottom:.7rem}
.toc ol{margin-left:1.1rem;gap:.3rem}
.toc a{font-size:.92rem}

footer{background:var(--nuit);color:#CFC4B7;font-family:var(--mono);font-size:.66rem;letter-spacing:.06em;padding:2rem 0;line-height:1.9}
.foot__in{max-width:900px;margin:0 auto;padding-inline:var(--pad);display:flex;flex-wrap:wrap;gap:.8rem 1.4rem;justify-content:space-between}
footer a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(251,247,239,.32)}
footer a:hover{color:var(--papier)}

/* ═══════════ POLICE SYSTÈME — ARIAL ═══════════
   Bascule demandée le 27 septembre 2026.
   Pour revenir à l'identité d'origine (Big Shoulders Display / Archivo /
   JetBrains Mono), il suffit de supprimer ce bloc : rien d'autre n'a changé.
   Pour Calibri à la place, remplacer « Arial » par « Calibri » en tête de
   pile — attention, Calibri n'existe que sous Windows, les autres appareils
   retomberont sur Arial. */
:root{
  --display:Arial,"Helvetica Neue",Helvetica,sans-serif;
  --body:Arial,"Helvetica Neue",Helvetica,sans-serif;
  --mono:Arial,"Helvetica Neue",Helvetica,sans-serif;
}
/* Arial n'est pas une condensée : l'interligne et l'interlettrage du titrage
   étaient calibrés pour Big Shoulders et deviennent illisibles tels quels. */
h1,h2,h3{line-height:1.03;letter-spacing:0}
h4{letter-spacing:.01em}
.hero__twist{letter-spacing:0}
/* Big Shoulders est une condensée : à taille égale, Arial occupe environ
   40 % de largeur en plus. Sans ce réajustement, les titres débordent. */
h1{font-size:clamp(1.9rem,5vw,3.6rem)}
h2{font-size:clamp(1.45rem,3.2vw,2.3rem)}
h3{font-size:clamp(1.12rem,1.8vw,1.38rem)}
h4{font-size:1.02rem}
h1,h2,h3{font-weight:700}
.hero__twist{font-size:clamp(1rem,1.7vw,1.22rem)}
.bilan h3{font-size:clamp(1.25rem,2.2vw,1.6rem)}
.eyebrow{letter-spacing:.14em}
.btn{letter-spacing:.08em;font-size:.72rem}
