/* Direction A — Le guide de confiance. Contrat de classes conservé pour les pages générées.
   L'ambre est décoratif ; les textes utilisent uniquement les paires contrastées ci-dessous. */
:root{
 --petrol:#0E4A57;--petrol-deep:#083640;--petrol-soft:#0E4A57;
 --ink:#141C1E;--ink-soft:#3E4A4C;--ink-mute:#5C6A6C;
 --paper:#F4F5F2;--white:#FFFFFF;--mint:#E4EEEB;--mint-deep:#CFE2DE;
 --rule:#D8DEDA;--rule-soft:#E7EBE7;--border:#697B7A;
 --amber:#B8771E;--amber-deep:#8F5A12;--amber-pale:#FBF2E2;
 --error:#9B2C32;--error-pale:#FFF0F0;--success:#235D43;--success-pale:#EAF4EE;
 --serif:"Newsreader",Georgia,"Times New Roman",serif;
 --sans:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
 --measure:66ch;--r:6px;--shadow:0 2px 5px #141c1e0a;--shadow-lift:0 5px 18px #141c1e14;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:8rem}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 var(--sans);font-synthesis:none}
a{color:var(--petrol);text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{color:var(--petrol-deep);text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--petrol-deep);outline-offset:3px;box-shadow:0 0 0 3px var(--white)}
button,input,select,textarea{font:inherit}
button,summary{cursor:pointer}
input,select,textarea{accent-color:var(--petrol);max-width:100%}
input::placeholder,textarea::placeholder{color:var(--ink-mute);opacity:1}
em{font-style:normal;font-weight:600}
h1,h2{font:500 28px/1.2 var(--serif);letter-spacing:-.015em;color:var(--ink);text-wrap:pretty}
h1{font-size:44px;line-height:1.14;margin:0 0 1rem}
h2{margin:2.5rem 0 .9rem}
h3{font:600 20px/1.35 var(--sans);margin:1.9rem 0 .6rem;color:var(--ink)}
h4{font:600 18px/1.4 var(--sans)}
p{margin:.85rem 0 1.1rem}
h1,h2,h3,p,li,td,th{overflow-wrap:anywhere}
[hidden]{display:none!important}
.sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:fixed;left:-9999px;top:.5rem;background:var(--petrol);color:var(--white);padding:.75rem 1rem;z-index:100}
.skip:focus{left:1rem}
.wrap{max-width:1160px;margin-inline:auto;padding-inline:clamp(1rem,4vw,2.5rem)}
.lead{font:400 18px/1.55 var(--sans);color:var(--ink-soft);max-width:var(--measure);margin:0 0 .9rem}
.updated,.hint,.count,.sec{color:var(--ink-mute);font-size:14px;line-height:1.5}
.updated{margin:0;max-width:80ch}
.eyebrow{font-size:13px;font-weight:600;letter-spacing:.06em;color:var(--petrol);margin:0 0 .8rem}
/* En-tête : classes d'ouverture pilotées par search.js. */
.site-header{position:sticky;top:0;z-index:50;background:var(--white);border-bottom:1px solid var(--rule)}
.head-top{display:flex;align-items:center;gap:1.25rem;min-height:72px}
.brand{display:inline-flex;align-items:center;gap:.65rem;text-decoration:none;color:var(--ink);white-space:nowrap;font:500 24px/1.05 var(--serif);letter-spacing:-.02em}
.brand-name{display:block}
.brand em{color:var(--petrol);font-weight:500}
.brand img{flex:none;width:36px;height:36px}
.head-nav{border-top:1px solid var(--rule-soft)}
.head-nav .wrap{display:flex;gap:.1rem;overflow-x:auto}
.head-nav a{white-space:nowrap;text-decoration:none;color:var(--ink-soft);font-size:15px;font-weight:500;padding:.6rem .65rem;border-bottom:3px solid transparent}
.head-nav a:hover{background:var(--paper);color:var(--petrol)}
.head-nav a.on{border-bottom-color:var(--petrol);color:var(--petrol);font-weight:600}
.nav-toggle,.search-toggle{display:none;align-items:center;justify-content:center;flex:none;width:44px;height:44px;border:1px solid var(--border);border-radius:var(--r);background:var(--white);color:var(--petrol)}
.nav-toggle:hover,.search-toggle:hover,body.nav-open .nav-toggle,body.search-open .search-toggle{background:var(--mint)}
/* Recherche : cibles de 48 px et état de focus sur chaque commande. */
form.search{position:relative;flex:1;max-width:30rem;margin:0 0 0 auto;display:flex;gap:.4rem}
form.search input[type=search]{width:100%;min-width:0;min-height:48px;padding:.65rem .9rem;border:1px solid var(--border);border-radius:var(--r);background:var(--white);color:var(--ink);font-size:16px;appearance:none}
form.search button{flex:none;display:grid;place-items:center;width:48px;min-height:48px;border:0;border-radius:var(--r);background:var(--petrol);color:var(--white)}
form.search button:hover{background:var(--petrol-deep)}
.search-results{position:absolute;left:0;right:0;top:calc(100% + .4rem);z-index:70;background:var(--white);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-lift);padding:.4rem;max-height:min(65vh,32rem);overflow:auto}
.search-results a{display:block;padding:.7rem;border-radius:3px;color:var(--ink);text-decoration:none}
.search-results a:hover,.search-results a:focus-visible{background:var(--mint)}
.search-results strong{display:block;font-size:16px;line-height:1.35;font-weight:600}
.search-results .sec{display:block;margin-top:.25rem}
.search-results .all{border-top:1px solid var(--rule);color:var(--petrol);font-size:15px;font-weight:600}
.search-results .none{padding:.5rem;font-size:16px;color:var(--ink-soft)}
#search-page-form{margin:0 0 1.5rem;max-width:38rem}
.search-list{list-style:none;padding:0!important;margin:0}
.search-list li{padding:1.25rem 0;border-bottom:1px solid var(--rule)}
.search-list a{text-decoration:none}
.search-list strong{font:500 24px/1.25 var(--serif)}
.search-list .sec{display:block;margin:.3rem 0}
.search-list p{font-size:16px;color:var(--ink-soft);margin:.4rem 0}
.count{margin:0 0 .5rem}
/* Lecture : réponse, deux repères compacts, sommaire, développement. */
.article-head{padding:2.25rem 0 1.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--rule)}
.article-head h1{max-width:30ch}
.article-head h1.long-title{font-size:36px;max-width:43ch}
.article-body{display:grid;grid-template-columns:minmax(0,1fr) 272px;gap:3rem;align-items:start;padding-bottom:3rem}
.article-body:not(:has(>.reperes)){grid-template-columns:minmax(0,1fr)}
.prose{min-width:0;max-width:var(--measure)}
.prose p,.prose li{max-width:var(--measure)}
.prose ul,.prose ol{padding-left:1.4rem}
.prose li{margin:.4rem 0}
.prose>h2:first-child{margin-top:0}
.prose blockquote{margin:1.5rem 0;padding:1rem 1.25rem;background:var(--white);border-left:3px solid var(--petrol)}
.prose blockquote p{margin:.3rem 0}
.prose code{font:inherit;background:var(--mint);padding:.05em .3em;border-radius:3px}
.prose table{border-collapse:collapse;width:100%;font-size:16px;margin:1.4rem 0;background:var(--white)}
.prose th,.prose td{border-bottom:1px solid var(--rule);padding:.7rem .8rem;text-align:left;vertical-align:top}
.prose th{background:var(--mint);font-weight:600}
.table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;margin:1.4rem 0;border:1px solid var(--rule);border-radius:var(--r)}
.table-scroll table{margin:0}
.table-scroll th,.table-scroll td{overflow-wrap:normal}
.table-scroll table:has(th:nth-child(3)){min-width:640px}
.page-toc{background:var(--white);border:1px solid var(--rule);border-radius:var(--r);margin:0 0 1.75rem;padding:.8rem 1rem}
.page-toc summary{font-size:15px;font-weight:600;color:var(--petrol);min-height:28px}
.page-toc ol{margin:.75rem 0 .25rem;font-size:16px}
.page-toc li{padding:.2rem 0}
.page-toc a{display:inline-block;padding:.15rem 0}
.reperes{position:sticky;top:8.5rem;background:var(--white);border:1px solid var(--rule);border-top:3px solid var(--petrol);border-radius:var(--r);padding:1.1rem}
.reperes h2{font:600 14px/1.4 var(--sans);color:var(--petrol);margin:0 0 .7rem}
.repere{padding:.75rem 0;border-top:1px solid var(--rule-soft)}
.repere strong{display:block;font:600 28px/1.2 var(--sans);font-variant-numeric:tabular-nums;color:var(--petrol);letter-spacing:-.02em}
.repere span{display:block;font-size:15px;line-height:1.45;color:var(--ink-soft);margin-top:.3rem;overflow-wrap:anywhere}
.reperes details{margin-top:.5rem;border-top:1px solid var(--rule);padding-top:.6rem}
.reperes summary{font-size:14px;color:var(--petrol);padding:.3rem 0}
/* Référence, réserve, méthode : aucune apparence de certificat. */
.prose .loi,.prose .attention,.prose .verif,.band{border-radius:var(--r);padding:1.2rem 1.35rem;margin:1.6rem 0;font-size:16px;line-height:1.6;box-shadow:none}
.prose .loi{background:var(--mint);border-left:3px solid var(--petrol);color:var(--ink)}
.prose .attention{background:var(--amber-pale);border-left:3px solid var(--amber-deep);color:var(--ink)}
.prose .verif,.band{background:var(--white);border:1px solid var(--rule);color:var(--ink-soft)}
.prose :is(.loi,.attention,.verif) p{margin:.4rem 0}
.prose .loi p:first-child>strong:first-child{color:var(--petrol)}
.prose .attention p:first-child>strong:first-child{color:var(--amber-deep)}
.prose .source,.prose em small{color:var(--ink-soft)}
.prose .modele{background:var(--white);border:1px solid var(--rule);border-left:3px solid var(--petrol);border-radius:var(--r);padding:1.25rem;margin:1.6rem 0;font-size:16px;white-space:normal}
.prose .modele p{margin:.6rem 0}
/* Boutons : pétrole/blanc ; variante inversée dans le CTA sombre. */
.button,.tool button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.7rem 1.15rem;border:1px solid var(--petrol);border-radius:var(--r);font:600 16px/1.4 var(--sans);text-align:center;text-decoration:none;background:var(--petrol);color:var(--white);cursor:pointer}
.button{margin:0 .5rem .6rem 0}
.button:hover,.tool button:hover{background:var(--petrol-deep);border-color:var(--petrol-deep);color:var(--white)}
.button.secondary{background:var(--white);color:var(--petrol)}
.button.secondary:hover{background:var(--mint);color:var(--petrol-deep)}
.cta{margin:2.5rem 0 0;padding:1.75rem;background:var(--petrol);color:var(--white);border-radius:var(--r)}
.cta h2{color:var(--white);margin:0 0 .7rem;font-size:28px}
.cta p{color:var(--white);margin:0 0 1.2rem}
.cta a{color:var(--white)}
.cta .button{background:var(--white);border-color:var(--white);color:var(--petrol)}
.cta .button:hover{background:var(--mint);border-color:var(--mint);color:var(--petrol-deep)}
.cta .button.secondary{background:var(--petrol);color:var(--white)}
.cta .button.secondary:hover{background:var(--petrol-deep);color:var(--white)}
/* Accueil : recherche en vue, premières situations rapprochées. */
.page-home .article-body,.page-hub .article-body{display:block}
.page-home .prose,.page-hub .prose{max-width:none}
.hero-home{background:var(--mint);border-top:3px solid var(--petrol);border-bottom:1px solid var(--rule);padding:2.3rem 0;overflow:hidden}
.hero-home .wrap{display:grid;grid-template-columns:1.08fr .92fr;gap:0 3rem;align-items:center}
.hero-visuel{position:relative;align-self:stretch;margin:-2.3rem calc(50% - 50vw) -2.3rem 0;min-height:19rem;overflow:hidden}
.hero-visuel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center right;-webkit-mask-image:linear-gradient(to right,transparent,#000 22%);mask-image:linear-gradient(to right,transparent,#000 22%)}
.hero-home h1{max-width:23ch;font-size:44px;margin-bottom:1rem}
.hero-home .lead{font-size:17px;color:var(--ink-soft);margin:0;max-width:52ch}
.hero-search-label{font-weight:600;color:var(--petrol);margin:.25rem 0 .7rem}
.hero-home form.search{max-width:none;margin:0}
.hero-home .chips{font-size:14px;display:flex;flex-wrap:wrap;gap:.35rem .9rem;margin:.9rem 0 0;color:var(--ink-soft)}
.hero-home .chips a{font-size:15px;color:var(--petrol);padding:.15rem 0}
.hero-home .chips span{flex-basis:100%}
.home-section{padding:2.3rem 0 .5rem}
.home-section>h2{margin:0 0 .6rem;font-size:30px}
.home-section>.sub{font-size:16px;color:var(--ink-soft);margin:0 0 1.2rem}
.situations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;margin:0 0 1rem}
.situations a{display:flex;flex-direction:column;padding:1.2rem;background:var(--white);border:1px solid var(--rule);border-radius:var(--r);text-decoration:none;color:var(--ink);transition:border-color .15s,box-shadow .15s}
.situations a:hover{border-color:var(--petrol);box-shadow:var(--shadow-lift)}
.situations strong{font:600 18px/1.35 var(--sans);color:var(--petrol);order:0;margin:0 0 .5rem}
.situations span{font-size:15px;line-height:1.5;color:var(--ink-soft);order:1}
.situations .num{order:2;align-self:flex-start;margin:.8rem 0 0;padding:.15rem .5rem;border-radius:3px;font:600 16px/1.5 var(--sans);color:var(--petrol);background:var(--mint)}
.home-cols{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;margin:2rem 0}
.home-cols h2{margin-top:0}
.home-cols ul{list-style:none;padding:0}
.home-cols li{border-bottom:1px solid var(--rule)}
.home-cols li a{display:inline-block;padding:.55rem 0}
.methode{background:var(--white);border-top:3px solid var(--petrol);padding:1.5rem;margin:2rem 0 3rem}
.methode h2{margin:0 0 .8rem}
.methode p{font-size:16px;max-width:78ch}
.explore{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,225px),1fr));gap:.9rem;margin:0 0 1rem}
.explore a{display:block;border:1px solid var(--rule);background:var(--white);border-radius:var(--r);padding:1.1rem;text-decoration:none;color:var(--ink)}
.explore a:hover{border-color:var(--petrol);background:var(--mint)}
.explore strong{display:block;font-weight:600;color:var(--petrol);margin-bottom:.3rem}
.explore span{font-size:15px;color:var(--ink-soft)}
/* Outils : champs contrastés et résultats dans la hiérarchie du guide. */
.tool{background:var(--white);border:1px solid var(--rule);border-radius:var(--r);padding:1.5rem;margin:0 0 2rem;max-width:46rem}
.page-tool .prose,.page-tool .tool{max-width:54rem}
.tool fieldset{border:0;padding:0;margin:0 0 1.25rem;min-width:0}
.tool label,.tool legend{display:block;font-size:16px;font-weight:600;line-height:1.5;margin-bottom:.45rem}
.tool input:not([type=radio]):not([type=checkbox]),.tool select,.tool textarea{width:100%;max-width:26rem;min-height:48px;padding:.6rem .7rem;border:1px solid var(--border)!important;border-radius:var(--r);background:var(--white);color:var(--ink);font-size:17px}
.tool .radio{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem}
.tool .radio label{display:flex;align-items:center;gap:.5rem;font-weight:400;min-height:44px;margin:0}
.tool input[type=radio],.tool input[type=checkbox]{width:20px;height:20px;flex:none}
.tool .hint{margin:.4rem 0 0;color:var(--ink-mute);font-size:14px}
.result{border-left:3px solid var(--petrol);background:var(--mint);padding:1.25rem;margin:1.5rem 0;border-radius:0 var(--r) var(--r) 0;max-width:100%;overflow-x:auto}
.result .big{font:600 30px/1.25 var(--sans);color:var(--petrol);font-variant-numeric:tabular-nums;margin:.3rem 0 .8rem}
.result table{font-size:16px;min-width:640px}
.result th,.result td{overflow-wrap:normal}
.tools-list{list-style:none!important;padding:0!important;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:.9rem;margin:1.3rem 0}
.tools-list li{background:var(--white);border:1px solid var(--rule);border-radius:var(--r);padding:1.2rem;margin:0;max-width:none}
.tools-list li:hover{border-color:var(--petrol)}
.tools-list a{font:600 18px/1.4 var(--sans);text-decoration:none}
.tools-list p{font-size:15px;color:var(--ink-soft);margin:.5rem 0 0}
.tools-list .bientot{opacity:1;color:var(--ink-mute)}
.error,[aria-invalid=true]{color:var(--error)}
.success{color:var(--success);background:var(--success-pale)}
/* Schémas : composition distincte pour mobile, transcription adjacente. */
.figure{margin:1.75rem 0;max-width:100%;min-width:0}
.figure picture{display:block;background:var(--white);border:1px solid var(--rule);border-radius:var(--r);overflow:hidden}
.figure img{width:100%;height:auto;display:block}
.figure figcaption{font-size:15px;line-height:1.5;color:var(--ink-soft);margin:.75rem 0}
.figure-transcript{font-size:16px;border-bottom:1px solid var(--rule);padding:.5rem 0}
.figure-transcript summary{color:var(--petrol);font-size:15px;padding:.3rem 0}
.figure-transcript ol{margin:.8rem 0}
.crumbs{font-size:14px;line-height:1.5;color:var(--ink-mute);margin:0 0 1rem;overflow-wrap:anywhere}
.crumbs a{color:var(--ink-mute)}
.crumbs a:hover{color:var(--petrol)}
.crumbs span{color:var(--ink-soft)}
.pub-slot{min-height:250px;margin:2rem 0;background:var(--white);border:1px dashed var(--border);display:grid;place-items:center}
.pub-slot::after{content:"Publicité";color:var(--ink-mute);font-size:14px}
.site-footer{background:var(--white);border-top:1px solid var(--rule);margin-top:2.5rem;padding:2.5rem 0 2rem;color:var(--ink-soft);font-size:15px}
.foot-cols{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:1.5rem}
.foot-cols p{margin:.35rem 0}
.foot-cols a{color:var(--ink-soft);text-decoration:none;display:inline-block;padding:.1rem 0}
.foot-cols a:hover{color:var(--petrol);text-decoration:underline}
.foot-h{font-size:15px;font-weight:600;color:var(--ink);margin-bottom:.75rem!important}
.foot-brand{font:500 24px/1.2 var(--serif);color:var(--petrol);margin-bottom:.8rem!important}
.disclaimer{border-top:1px solid var(--rule);margin-top:2rem;padding-top:1.25rem;font-size:14px;max-width:90ch;color:var(--ink-mute)}
@media(max-width:1000px){
 .article-body{grid-template-columns:minmax(0,1fr) 240px;gap:1.75rem}
 .situations{grid-template-columns:repeat(2,minmax(0,1fr))}
 .foot-cols{grid-template-columns:repeat(3,minmax(0,1fr))}
 .hero-home .wrap{gap:0 2rem}
}
@media(max-width:760px){
 html{scroll-padding-top:5rem}body{font-size:17px}
 h1{font-size:32px;line-height:1.16}h2{font-size:25px;margin-top:2rem}h3{font-size:19px}
 .wrap{padding-inline:16px}
 .head-top{min-height:64px;gap:6px;position:relative}
 .brand{font-size:20px;gap:8px;margin-right:auto;white-space:normal;min-width:0}
 .brand img{width:32px;height:32px}
 .brand-name{max-width:145px;line-height:1.02}
 .brand em{display:block}
 .nav-toggle,.search-toggle{display:flex}
 .site-header form.search{display:none;position:absolute;top:100%;left:0;right:0;max-width:none;margin:0;padding:12px 16px;background:var(--white);border-bottom:1px solid var(--border);box-shadow:var(--shadow-lift)}
 body.search-open .site-header form.search{display:flex}
 .site-header .search-results{left:16px;right:16px}
 .head-nav{display:none;max-height:calc(100dvh - 64px);overflow-y:auto}
 body.nav-open .head-nav{display:block}
 .head-nav .wrap{display:flex;flex-direction:column;overflow:visible;padding-bottom:.75rem}
 .head-nav a{min-height:44px;padding:.65rem .75rem;border:0;border-left:3px solid transparent}
 .head-nav a.on{border-left-color:var(--petrol);background:var(--mint)}
 .article-head{padding:1.4rem 0 1.1rem;margin-bottom:1.1rem}
 .article-head h1.long-title{font-size:28px;line-height:1.2}
 .crumbs .crumb-current{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
 .lead{font-size:17px;line-height:1.55}.updated{font-size:14px}
 .article-body{display:flex;flex-direction:column;gap:1.3rem;padding-bottom:2rem}
 .article-body>.prose,.article-body>.reperes{width:100%;max-width:100%}
 .reperes{position:static;order:-1;padding:.8rem 1rem}
 .reperes h2{margin:0 0 .25rem}
 .repere{display:grid;grid-template-columns:96px minmax(0,1fr);gap:.75rem;align-items:start;padding:.65rem 0}
 .repere strong{font-size:25px;line-height:1.2}.repere span{font-size:15px;margin:0}
 .page-toc{margin-bottom:1.5rem}
 .hero-home{padding:1.35rem 0 1.2rem}
 .hero-home .wrap{display:flex;flex-direction:column;gap:0}
 .hero-intro{display:contents}
 .hero-home .eyebrow{font-size:12px;margin-bottom:.65rem;order:0}
 .hero-home h1{font-size:32px;line-height:1.12;max-width:24ch;margin-bottom:1rem;order:1}
 .hero-search-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
 .hero-home form.search{width:100%;order:2}
 .hero-home .lead{order:4;font-size:15px;line-height:1.5;margin:.85rem 0 0}
 .hero-home .chips{order:3;gap:.25rem .85rem;margin:.55rem 0 0}
 .hero-home .chips span{display:none}
 .hero-visuel{order:5;margin:1.1rem 0 0;position:static;min-height:0;overflow:visible}
 .hero-visuel img{position:static;width:100%;height:auto;aspect-ratio:16/7;object-fit:cover;object-position:center right;-webkit-mask-image:none;mask-image:none;border-radius:6px}
 .home-section{padding:1.6rem 0 .4rem}
 .home-section>h2{font-size:25px}
 .home-section>.sub{font-size:15px;margin-bottom:1rem}
 .situations{grid-template-columns:1fr;gap:.65rem}
 .situations a{padding:1rem}
 .situations strong{font-size:18px}
 .situations .num{margin-top:.65rem;font-size:15px}
 .home-cols{grid-template-columns:1fr;gap:1.5rem;margin:1.5rem 0}
 .methode{padding:1.1rem}.cta{padding:1.25rem}.cta h2{font-size:25px}
 .cta .button{display:flex;width:100%;margin-right:0}
 .tool,.result{padding:1rem}
 .table-scroll::before,.result:has(table)::before{content:"Faites défiler le tableau horizontalement →";display:block;padding:.5rem;font-size:14px;line-height:1.5;color:var(--ink-mute)}
 .prose .loi,.prose .attention,.prose .verif,.band{padding:1rem}
 .foot-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
 .foot-cols>div:first-child{grid-column:1/-1}
}
@media(max-width:380px){
 .repere{grid-template-columns:80px minmax(0,1fr);gap:.5rem}
 .repere strong{font-size:23px}.brand{font-size:18px}.brand-name{max-width:125px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{
 @page{margin:16mm}
 html,body{background:white;color:#141C1E;font-size:11pt}
 .site-header,.cta,.site-footer,form.search,.skip,.pub-slot,.page-toc,.hero-home .chips,.hero-search-label{display:none!important}
 .wrap{max-width:none;padding:0}.article-head{padding-top:0}.article-body{display:block}.prose{max-width:none}
 .reperes{position:static;margin:1rem 0;break-inside:avoid}
 .reperes details>*:not(summary),.figure-transcript>*:not(summary){display:block!important}
 .reperes details summary,.figure-transcript summary{display:none}
 .figure,.loi,.attention,.modele{break-inside:avoid}
 .table-scroll,.result{overflow:visible}a{color:#0E4A57}h1{font-size:28pt}h2{font-size:20pt}
 .table-scroll::before,.result:has(table)::before{display:none}
 .table-scroll table,.result table{min-width:0}
}
/* Accueil refondu (5 sept. 2026) : sommaire, parcours en cinq étapes, colonnes comprendre / chiffrer / écrire. */
.sommaire{display:flex;flex-wrap:wrap;gap:.3rem .9rem;align-items:center;padding:.8rem 0;border-bottom:1px solid var(--rule);font-size:15px}
.sommaire span{color:var(--ink-mute);font-weight:600;margin-right:.3rem}
.sommaire a{color:var(--petrol);text-decoration:none;padding:.2rem 0;border-bottom:2px solid transparent}
.sommaire a:hover{border-bottom-color:var(--petrol)}
.etapes{list-style:none;padding:0;margin:0;counter-reset:none}
.etape{background:var(--white);border:1px solid var(--rule);border-radius:var(--r);padding:1.4rem 1.5rem 1.2rem;margin:0 0 1rem;scroll-margin-top:1rem}
.etape-head{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1rem}
.etape-num{flex:0 0 2.6rem;height:2.6rem;border-radius:50%;background:var(--petrol);color:#fff;font:700 20px/2.6rem var(--sans);text-align:center}
.etape-head h3{margin:0 0 .25rem;font-size:24px;line-height:1.25}
.etape-head h3 a{text-decoration:none;color:var(--petrol)}
.etape-head h3 a:hover{text-decoration:underline}
.etape-head p{margin:0;font-size:16px;color:var(--ink-soft);max-width:70ch}
.etape-cols{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:1.5rem;border-top:1px solid var(--rule);padding-top:1rem}
.etape-cols.trois{grid-template-columns:1.4fr 1fr 1fr;background:var(--white);border:1px solid var(--rule);border-radius:var(--r);padding:1.2rem 1.5rem}
.etape-cols h4{margin:0 0 .5rem;font:600 13px/1.4 var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute)}
.etape-cols ul{list-style:none;padding:0;margin:0}
.etape-cols li{font-size:15.5px;line-height:1.5;padding:.32rem 0;border-bottom:1px solid var(--rule)}
.etape-cols li:last-child{border-bottom:0}
.etape-cols ul.outils li a,.etape-cols ul.modeles li a{font-weight:600;text-decoration:none}
.etape-cols ul.outils li a:hover,.etape-cols ul.modeles li a:hover{text-decoration:underline}
.etape-cols ul.outils li a::before{content:"⌗ ";color:var(--petrol)}
.etape-cols ul.modeles li a::before{content:"✎ ";color:var(--petrol)}
.etape-cols ul.outils span{display:block;font-size:14px;color:var(--ink-soft)}
.etape-cols .vide{font-size:14.5px;color:var(--ink-soft);margin:0}
.home-section .tous{font-size:16px;margin:.4rem 0 0}
.home-section h2{scroll-margin-top:1rem}
@media(max-width:1000px){.etape-cols,.etape-cols.trois{grid-template-columns:1fr 1fr}.etape-cols>div:first-child{grid-column:1/-1}}
@media(max-width:760px){.sommaire{font-size:14px;gap:.2rem .7rem}.etape{padding:1rem}.etape-head h3{font-size:20px}.etape-cols,.etape-cols.trois{grid-template-columns:1fr;gap:1rem;padding-top:.8rem}.etape-cols.trois{padding:1rem}.etape-cols>div:first-child{grid-column:auto}}
.home-suite{padding-top:0}
.prose .etapes,.prose .etape,.prose .etape-cols li{max-width:none}
.prose .etapes,.prose .etape-cols ul{padding-left:0}
/* Barre : publics à gauche, rubriques à droite. */
.head-nav .wrap{align-items:center}
.head-nav .nav-publics,.head-nav .nav-rubriques{display:flex;gap:.1rem}
.head-nav .nav-publics a{color:var(--petrol);font-weight:600}
.head-nav .nav-sep{width:1px;height:1.3rem;background:var(--rule);margin:0 .6rem;flex:0 0 1px}
.head-nav .nav-rubriques{margin-left:auto}
@media(max-width:760px){.head-nav .nav-rubriques{margin-left:0}}
/* Accueil : sections par public. */
.sommaire .pub{font-weight:600}
.sommaire .sep{width:1px;height:1rem;background:var(--rule);margin:0 .3rem}
.public{padding:2.6rem 0 0;margin-top:1.5rem;border-top:3px solid var(--petrol)}
.public + .home-suite{padding-top:.4rem}
.public-label{display:inline-block;margin:0 0 .6rem;padding:.2rem .6rem;border-radius:3px;background:var(--petrol);color:#fff;font:600 13px/1.6 var(--sans);letter-spacing:.05em;text-transform:uppercase}
.public h2{margin:0 0 .6rem;font-size:30px}
.public .sub{font-size:16px;color:var(--ink-soft);margin:0 0 1rem}
.sous-sommaire{display:flex;flex-wrap:wrap;gap:.3rem .9rem;font-size:15px;margin:0 0 1.2rem}
.sous-sommaire a{text-decoration:none;color:var(--petrol);border-bottom:2px solid transparent}
.sous-sommaire a:hover{border-bottom-color:var(--petrol)}
.etapes.employeur .etape-num{background:var(--ink)}
@media(max-width:760px){.public{padding-top:1.6rem}.public h2{font-size:25px}}
.etape-cols.deux{grid-template-columns:1fr 1fr}
/* Bloc « Qui peut vous accompagner » : remplace l'appel avocat (5 sept. 2026). */
.cta.accompagnement{background:var(--white);color:var(--ink);border:1px solid var(--rule);border-left:4px solid var(--petrol)}
.cta.accompagnement h2{color:var(--petrol);font-size:24px}
.cta.accompagnement p{color:var(--ink-soft);font-size:16px;max-width:70ch}
.cta.accompagnement .pros{list-style:none;padding:0;margin:0}
.cta.accompagnement .pros li{font-size:15.5px;line-height:1.55;padding:.55rem 0;border-top:1px solid var(--rule);max-width:none}
.cta.accompagnement .pros strong{color:var(--ink)}
.cta.accompagnement .pros a{color:var(--petrol)}
.prose .avert{background:#fff4e5;border-left:3px solid #b45309;padding:1rem 1.2rem;margin:0 0 1.5rem;border-radius:var(--r)}
.prose .avert p{margin:0}
