/* economieagentique.fr
   Titres : Bodoni Moda. Texte : Newsreader. Interface : Instrument Sans. Polices auto-hébergées (OFL).
   Aucun script : le mouvement est en CSS et en animation SVG déclarative. */
@font-face{font-family:"Bodoni Moda";src:url(/fonts/BodoniModa-normal.woff2) format("woff2");font-weight:400 900;font-style:normal;font-display:swap}
@font-face{font-family:"Bodoni Moda";src:url(/fonts/BodoniModa-italic.woff2) format("woff2");font-weight:400 900;font-style:italic;font-display:swap}
@font-face{font-family:"Newsreader";src:url(/fonts/Newsreader-normal.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:"Newsreader";src:url(/fonts/Newsreader-italic.woff2) format("woff2");font-weight:300 700;font-style:italic;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url(/fonts/InstrumentSans-normal.woff2) format("woff2");font-weight:400 700;font-stretch:75% 100%;font-style:normal;font-display:swap}

:root{
  --encre:#0d1f3c;--nuit:#0a1a38;--abysse:#050d1f;
  --or:#c9a84c;--or-vif:#e6c977;--or-sombre:#7d6216;
  --lueur:#9fc3ff;
  --papier:#fff;--brume:#f2f4f8;--filet:#d9dfe9;
  --texte:#1f2c44;--gris:#56647c;--gris-clair:#a9b6ca;
  --titre:"Bodoni Moda","Didot","Bodoni 72",Georgia,serif;
  --serif:"Newsreader",Georgia,"Times New Roman",serif;
  --sans:"Instrument Sans",system-ui,"Segoe UI",Arial,sans-serif;
  --large:1200px;--lecture:41rem;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:92px}
body{margin:0;background:var(--papier);color:var(--texte);font:400 1.22rem/1.62 var(--serif);font-optical-sizing:auto;overflow-x:clip}
img,svg{display:block;max-width:100%}
a{color:var(--encre);text-decoration-color:var(--or);text-decoration-thickness:1.5px;text-underline-offset:3px}
a:hover{color:var(--or-sombre)}
:focus-visible{outline:2px solid var(--encre);outline-offset:2px;box-shadow:0 0 0 5px var(--or);border-radius:2px}
.cadre{max-width:var(--large);margin:0 auto;padding:0 28px}
@media (max-width:640px){.cadre{padding:0 18px}}
.evitement{position:absolute;left:-9999px}
.evitement:focus{left:16px;top:12px;z-index:50;background:#fff;padding:8px 12px;font:600 1rem var(--sans)}

/* ---------- en-tête et marque */
.entete{position:sticky;top:0;z-index:20;background:var(--abysse);border-bottom:1px solid rgba(255,255,255,.1)}
.entete-cadre{display:flex;align-items:center;justify-content:space-between;gap:10px 28px;min-height:70px;flex-wrap:wrap;max-width:1360px}
.marque{display:inline-flex;align-items:center;gap:11px;color:#fff;text-decoration:none}
.marque:hover{color:#fff}
.logo{width:38px;height:38px;flex:none}
.marque-nom{font:500 1.62rem/1 var(--titre);letter-spacing:-.012em;white-space:nowrap;padding-bottom:.12em}
.marque-nom i{font-weight:400;color:var(--or-vif)}
/* menu des rubriques : <details>, ouvert au clic, une rubrique à la fois (attribut name) */
.nav{display:flex;gap:2px}
.menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:9px;color:#cfd8e6;font:500 .98rem/1 var(--sans);padding:12px 14px;border-radius:4px;white-space:nowrap;-webkit-user-select:none;user-select:none}
.menu summary::-webkit-details-marker{display:none}
.menu summary::after{content:"";width:6px;height:6px;margin-top:-4px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .2s}
.menu summary:hover{color:#fff;background:rgba(255,255,255,.08)}
.menu-actif summary{color:var(--or-vif);box-shadow:inset 0 -2px 0 var(--or)}
.menu[open] summary{color:#fff;background:rgba(255,255,255,.1)}
.menu[open] summary::after{transform:translateY(3px) rotate(225deg)}
.menu-panneau{position:absolute;left:0;right:0;top:100%;background:var(--nuit);border-top:1px solid rgba(255,255,255,.08);border-bottom:2px solid var(--or);box-shadow:0 26px 50px -20px rgba(5,13,31,.75)}
.menu[open] .menu-panneau{animation:deplie .2s ease-out}
@keyframes deplie{from{opacity:0;transform:translateY(-6px)}}
.menu-cadre{display:grid;grid-template-columns:minmax(150px,220px) 1fr;gap:12px 40px;padding-top:30px;padding-bottom:34px;max-width:1360px}
.menu-titre{margin:4px 0 0;font:italic 400 2rem/1.1 var(--titre);color:var(--or-vif)}
.menu ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 28px}
.menu li a{display:block;height:100%;padding:12px 14px 13px;border-left:2px solid rgba(201,168,76,.28);color:#fff;text-decoration:none}
.menu li a b{display:block;font:600 1.02rem/1.25 var(--sans)}
.menu li a span{display:block;margin-top:5px;font:400 .94rem/1.42 var(--serif);color:var(--gris-clair)}
.menu li a:hover{background:rgba(255,255,255,.05);border-left-color:var(--or-vif)}
.menu li a:hover b{color:var(--or-vif)}
.menu li a[aria-current="page"]{border-left-color:var(--or-vif)}
.menu li a[aria-current="page"] b{color:var(--or-vif)}
@media (max-width:1100px){.menu ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){
  .entete{position:relative}
  .entete-cadre{padding-top:14px;padding-bottom:4px}
  .nav{width:100%;justify-content:space-between}
  .menu summary{padding:13px 4px;font-size:.9rem;gap:6px}
  .menu-cadre{grid-template-columns:1fr;padding-top:20px;padding-bottom:22px}
  .menu-titre{font-size:1.6rem}
  .menu ul{grid-template-columns:1fr;gap:2px}
  .menu li a span{font-size:.9rem}
}
@media (max-width:380px){.menu summary{padding:13px 2px;font-size:.86rem;gap:4px}}
@media (max-width:350px){.menu summary::after{display:none}}

/* ---------- accueil : l'entrée de dictionnaire et sa scène */
.hero{position:relative;overflow:hidden;color:#fff;
  background:
    radial-gradient(60% 70% at 78% 46%,rgba(31,68,140,.55) 0%,rgba(10,26,56,0) 70%),
    linear-gradient(180deg,var(--abysse) 0%,var(--nuit) 60%,#0b1d40 100%)}
.hero::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.085) 1px,transparent 1.4px);background-size:30px 30px;
  -webkit-mask-image:radial-gradient(70% 80% at 75% 45%,#000,transparent 75%);mask-image:radial-gradient(70% 80% at 75% 45%,#000,transparent 75%)}
.hero-cadre{position:relative;max-width:1360px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-areas:"entree scene" "actions scene";
  column-gap:16px;align-items:start;padding-top:clamp(40px,5.4vw,84px);padding-bottom:clamp(44px,5.4vw,84px)}
.entree{grid-area:entree;position:relative;z-index:2}
.entree h1{margin:0;font:500 clamp(3.5rem,8.5vw,8.1rem)/.86 var(--titre);letter-spacing:-.028em;color:#fff}
.entree h1 span,.entree h1 i{display:block;animation:leve 1.1s cubic-bezier(.2,.7,.2,1) both}
.entree h1 i{font-weight:400;color:var(--or-vif);padding-bottom:.14em;animation-delay:.14s}
.entree-nature{margin:clamp(10px,1.4vw,20px) 0 0;font:italic 400 1.3rem/1.4 var(--serif);color:var(--gris-clair);animation:fond 1s .5s both}
.entree-nature i{color:#fff}
.entree-auteur{margin:16px 0 0;font:500 .95rem/1.4 var(--sans);letter-spacing:.01em;color:var(--or-vif);animation:fond 1s .9s both}
.entree-def{margin:clamp(20px,2.4vw,34px) 0 0;max-width:35rem;font:400 clamp(1.3rem,1.9vw,1.62rem)/1.46 var(--serif);color:#f1f4fa;animation:fond 1.2s .7s both}
.verbe{background:linear-gradient(var(--or),var(--or)) no-repeat 0 96%/100% 2px;animation:souligne .8s cubic-bezier(.6,0,.2,1) both}
.verbe-1{animation-delay:2.4s}.verbe-2{animation-delay:4s}.verbe-3{animation-delay:5.3s}.verbe-4{animation-delay:6.9s}.verbe-5{animation-delay:9s}
.entree-actions{grid-area:actions;position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 0;animation:fond 1s 1.1s both}
.bouton{display:inline-flex;align-items:center;min-height:50px;padding:0 24px;border-radius:3px;font:600 1rem/1.2 var(--sans);text-decoration:none;transition:background-color .2s,border-color .2s,color .2s}
.bouton-or{background:var(--or);color:var(--abysse)}
.bouton-or:hover{background:var(--or-vif);color:var(--abysse)}
.bouton-ligne{border:1px solid rgba(255,255,255,.4);color:#fff}
.bouton-ligne:hover{border-color:var(--or);color:var(--or-vif)}

.scene{grid-area:scene;position:relative;align-self:center;width:106%;aspect-ratio:760/640}
.scene-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.mot{position:absolute;transform:translate(-50%,-50%);white-space:nowrap;font:500 .98rem/1 var(--sans);letter-spacing:.005em;color:#e6ecf6;animation:fond .9s both}
.mot-1{left:14.5%;top:44.2%;color:var(--or-vif)}
.mot-2{left:38.2%;top:18.6%}
.mot-3{left:81.6%;top:30.6%;transform:translate(0,-50%)}
.mot-4{left:57.9%;top:44.6%}
.mot-5{left:65.8%;top:84.2%}
.mot-6{left:57%;top:96.4%;color:var(--or-vif)}
@media (max-width:900px){
  .hero-cadre{grid-template-columns:minmax(0,1fr);grid-template-areas:"entree" "scene" "actions"}
  .scene{width:100%;margin:18px 0 0;max-width:560px;justify-self:center}
  .mot{font-size:.76rem}
  .entree-actions{margin-top:22px}
  .hero::before{-webkit-mask-image:linear-gradient(transparent 30%,#000 60%,transparent);mask-image:linear-gradient(transparent 30%,#000 60%,transparent)}
}
@media (max-width:480px){.bouton{width:100%;justify-content:center}}

/* le mouvement : une seule séquence, puis des flux lents */
.trace{stroke-dasharray:1 1.1;animation:trace .9s cubic-bezier(.6,0,.2,1) both}
.trace-lente{animation-duration:1.9s}
.pop{transform-box:fill-box;transform-origin:center;animation:pop .6s cubic-bezier(.3,1.5,.5,1) both}
.fond{animation:fond 1.4s both}
.eteint{opacity:.38;animation:eteint 1s both}
.pouls{transform-box:fill-box;transform-origin:center;animation:pouls 3.4s 1.2s ease-out infinite both}
@keyframes trace{from{stroke-dashoffset:1.04}}
@keyframes pop{from{opacity:0;transform:scale(.2)}}
@keyframes fond{from{opacity:0}}
@keyframes eteint{from{opacity:1}}
@keyframes leve{from{opacity:0;transform:translateY(.28em)}}
@keyframes souligne{from{background-size:0 2px}}
@keyframes pouls{0%{transform:scale(1);opacity:.9}70%{transform:scale(2.5);opacity:0}100%{transform:scale(2.5);opacity:0}}

/* le courant : après la séquence, la scène ne s'arrête jamais */
.courant{stroke-dasharray:.012 .05;stroke-opacity:0;animation:allume-courant 1s both,courant 2.6s linear infinite}
@keyframes allume-courant{to{stroke-opacity:.95}}
@keyframes courant{from{stroke-dashoffset:0}to{stroke-dashoffset:-.124}}
.souffle{transform-box:fill-box;transform-origin:center;animation:souffle 5s ease-in-out infinite}
@keyframes souffle{50%{transform:scale(1.22);opacity:.7}}
.derive{animation:derive 28s ease-in-out infinite alternate}
@keyframes derive{to{transform:translate(-22px,14px)}}
.mot{animation:fond .9s both,eclaire 12s ease-in-out infinite}
@keyframes eclaire{0%,18%,100%{text-shadow:none}5%,13%{color:#fff;text-shadow:0 0 12px rgba(230,201,119,.95),0 0 26px rgba(201,168,76,.6)}}
.scene .mot-1{animation-delay:.9s,11s}.scene .mot-2{animation-delay:2.4s,13s}.scene .mot-3{animation-delay:4s,15s}
.scene .mot-4{animation-delay:5.3s,17s}.scene .mot-5{animation-delay:6.9s,19s}.scene .mot-6{animation-delay:9s,21s}

/* ---------- accueil : l'essentiel, les mesures, l'index */
.essentiel{border-bottom:1px solid var(--filet)}
.essentiel-cadre{padding-top:clamp(44px,6vw,80px);padding-bottom:clamp(40px,5vw,68px);display:grid;grid-template-columns:220px minmax(0,1fr);gap:10px 40px}
.essentiel-titre{margin:.2em 0 0;font:italic 400 1.5rem/1.2 var(--titre);color:var(--or-sombre)}
.essentiel .capsule{margin:0;max-width:52rem;font-size:clamp(1.3rem,2vw,1.62rem);line-height:1.48;color:var(--encre)}
.essentiel .bandeau-meta{grid-column:2;color:var(--gris)}
.essentiel .bandeau-meta a{color:var(--encre)}
@media (max-width:800px){.essentiel-cadre{grid-template-columns:1fr}.essentiel .bandeau-meta{grid-column:1}}

.section-tete{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px 28px;margin-bottom:clamp(26px,3.4vw,44px)}
.section-tete h2{margin:0;font:500 clamp(2rem,4.2vw,3.4rem)/1.04 var(--titre);letter-spacing:-.02em;color:var(--encre)}
.section-tete a{font:500 1rem/1.4 var(--sans)}

.mesures{background:var(--nuit);color:#dfe6f2;padding:clamp(52px,7vw,96px) 0}
.mesures .section-tete h2{color:#fff}
.mesures .section-tete a{color:#fff}
.mesures .section-tete a:hover{color:var(--or-vif)}

.index{padding:clamp(56px,7vw,104px) 0 clamp(24px,3vw,40px)}
.index-rub{display:grid;grid-template-columns:300px minmax(0,1fr);gap:0 56px;border-top:2px solid var(--encre);padding:26px 0 44px}
.index-tete{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:4px 12px;align-content:start}
.index-tete h3{margin:0;font:500 clamp(1.9rem,3vw,2.5rem)/1 var(--titre);letter-spacing:-.02em;color:var(--encre)}
.index-tete p{margin:0;font:500 .88rem/1 var(--sans);color:var(--gris)}
.index-rub ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 44px;align-content:start}
.index-rub li a{display:grid;grid-template-columns:46px minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:16px;align-items:start;height:100%;padding:13px 0 15px;text-decoration:none;color:var(--texte);border-bottom:1px solid var(--filet)}
.index-lien{display:block;font:600 1.12rem/1.3 var(--sans);color:var(--encre);transition:color .15s}
.index-desc{display:block;margin-top:3px;font:400 1.03rem/1.42 var(--serif);color:var(--gris)}
.index-rub li a:hover .index-lien{color:var(--or-sombre);text-decoration:underline;text-decoration-color:var(--or);text-underline-offset:4px}
@media (max-width:900px){.index-rub{grid-template-columns:1fr;gap:20px}}
@media (max-width:620px){.index-rub ul{grid-template-columns:1fr}}

/* ---------- bandeau des pages */
.bandeau{position:relative;overflow:hidden;color:#fff;
  background:radial-gradient(70% 110% at 82% 40%,rgba(31,68,140,.5) 0%,rgba(10,26,56,0) 70%),linear-gradient(180deg,var(--abysse),var(--nuit))}
.bandeau-motif{position:absolute;inset:0 0 0 58%;display:flex;align-items:center;justify-content:center;pointer-events:none}
.picto-bandeau{width:min(300px,26vw);height:auto;color:rgba(223,230,242,.62);stroke-width:1.5!important}
.bandeau-cadre{position:relative;padding-top:clamp(40px,5vw,64px);padding-bottom:clamp(44px,5vw,68px)}
.bandeau-cadre>*{max-width:47rem}
.fil{margin:0 0 20px;font:500 .9rem/1.4 var(--sans);color:var(--gris-clair);display:flex;gap:10px;flex-wrap:wrap}
.fil a{color:#dfe6f2;text-decoration:none}
.fil a:hover{color:var(--or-vif)}
.bandeau h1{margin:0;max-width:52rem;font:500 clamp(2.3rem,4.7vw,3.9rem)/1.02 var(--titre);letter-spacing:-.025em;animation:leve 1s cubic-bezier(.2,.7,.2,1) both}
.bandeau .capsule{margin:26px 0 0;font:400 clamp(1.2rem,1.7vw,1.36rem)/1.52 var(--serif);color:#e9eef7}
.bandeau .capsule a{color:#fff}
.bandeau-meta{margin:22px 0 0;font:500 .9rem/1.5 var(--sans);color:var(--gris-clair);display:flex;flex-wrap:wrap;gap:4px 18px}
.bandeau-meta em{font-style:normal}
.bandeau .bandeau-meta a{color:#fff}
.bandeau .entree-actions{animation:none}
@media (max-width:1040px){.bandeau-motif{display:none}}

/* ---------- corps de texte et sommaire */
.mise-en-page{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:64px;padding-top:clamp(40px,5vw,64px);padding-bottom:clamp(48px,6vw,80px)}
.mise-en-page.sans-sommaire{grid-template-columns:minmax(0,1fr)}
.corps{min-width:0;overflow-wrap:break-word}
.corps li,.corps p,.corps dd{overflow-wrap:anywhere}
.corps>p,.corps>ul,.corps>ol,.corps>h2,.corps>h3,.corps>blockquote{max-width:var(--lecture)}
.corps>.chiffres,.corps>.etapes,.corps>.cartes,.corps>.frise{max-width:none}
.corps .chiffres,.corps .etapes,.corps .cartes,.corps .frise,.corps .termes{padding-left:0}
.corps .terme{margin:0}
.sommaire{position:sticky;top:104px;align-self:start;max-height:calc(100vh - 128px);overflow:auto;padding-left:22px;border-left:1px solid var(--filet)}
.sommaire-titre{margin:0 0 10px;font:italic 400 1.2rem/1.3 var(--titre);color:var(--or-sombre)}
.sommaire ol{list-style:none;margin:0;padding:0}
.sommaire li{margin:0}
.sommaire a{display:block;padding:6px 0;font:400 .92rem/1.4 var(--sans);color:var(--gris);text-decoration:none}
.sommaire a:hover{color:var(--encre)}
@media (max-width:1040px){.mise-en-page{grid-template-columns:minmax(0,1fr);gap:0}.sommaire{display:none}}

.corps>p:first-child{margin-top:0}
.corps h2{margin:2.2em 0 .55em;font:500 clamp(1.8rem,3.2vw,2.5rem)/1.1 var(--titre);letter-spacing:-.018em;color:var(--encre)}
.corps h2:first-child{margin-top:0}
.corps h3{margin:1.8em 0 .4em;font:600 1.2rem/1.3 var(--sans);color:var(--encre)}
.corps p,.corps li{hyphens:none}
.corps ul,.corps ol{padding-left:1.3em}
.corps li{margin:.35em 0}
.corps li::marker{color:var(--or-sombre)}
.corps strong{color:var(--encre);font-weight:600}
.corps blockquote{margin:1.6em 0;padding:4px 0 4px 24px;border-left:2px solid var(--or);font-style:italic;font-size:1.1em;color:var(--encre)}
.corps code{font-size:.84em;background:var(--brume);padding:2px 6px;border-radius:3px}

/* ---------- les mesures : un registre, pas des tuiles */
.chiffres{list-style:none;padding:0;margin:2em 0;border-bottom:1px solid var(--filet)}
.chiffres>li{margin:0;padding:24px 0 22px;border-top:1px solid var(--filet);display:grid;grid-template-columns:minmax(0,34%) minmax(0,1fr);gap:4px 36px;align-items:baseline}
.chiffres>li:first-child{border-top:2px solid var(--encre)}
.chiffre-valeur{grid-row:1/span 2;font:500 clamp(2.5rem,5.2vw,4.1rem)/.98 var(--titre);letter-spacing:-.025em;color:var(--encre)}
.chiffre-serie{font-size:clamp(1.7rem,2.6vw,2.2rem);line-height:1.15}
.chiffre-valeur small{font:500 .27em/1.2 var(--sans);letter-spacing:0;color:var(--or-sombre)}
.chiffre-sens{grid-column:2;margin:0;font-size:1.14rem;line-height:1.48}
.chiffre-source{grid-column:2;margin:6px 0 0;font:500 .86rem/1.45 var(--sans);color:var(--gris)}
.chiffre-entete{font:600 .86rem/1 var(--sans);color:var(--gris);margin-right:4px}
.chiffres>.chiffre-long{display:block}
.chiffre-enonce{margin:0 0 8px;max-width:46rem;font:400 clamp(1.25rem,2vw,1.48rem)/1.38 var(--serif);color:var(--encre)}
.chiffre-enonce b{font:500 1.5em/1 var(--titre);letter-spacing:-.02em;color:var(--or-sombre);white-space:nowrap}
.chiffre-long .chiffre-sens{font:500 .95rem/1.45 var(--sans);color:var(--texte)}
@media (max-width:640px){.chiffres>li{grid-template-columns:1fr}.chiffre-valeur{grid-row:auto;margin-bottom:8px}.chiffre-sens,.chiffre-source{grid-column:1}}

.mesures .chiffres{margin:0;border:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.mesures .chiffres>li{display:flex;flex-direction:column;padding:6px 26px 4px;border:0;border-left:1px solid rgba(201,168,76,.5)}
.mesures .chiffre-valeur{font-size:clamp(2.7rem,4.6vw,4.4rem);color:#fff;margin-bottom:18px}
.mesures .chiffre-valeur small{color:var(--or-vif)}
.mesures .chiffre-sens{flex:1;font-size:1.1rem;color:#e6ecf6}
.mesures .chiffre-source{margin-top:16px;color:var(--gris-clair)}
.mesures .chiffres a{color:#fff}
@media (max-width:980px){.mesures .chiffres{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 0}}
@media (max-width:560px){.mesures .chiffres{grid-template-columns:1fr;gap:34px}.mesures .chiffres>li{padding-left:20px;padding-right:0}}

/* ---------- les étapes : des nœuds sur un fil */
.etapes{list-style:none;padding:0;margin:2.2em 0}
.etapes>li{position:relative;margin:0;display:grid;grid-template-columns:54px minmax(0,1fr);gap:0 22px;padding-bottom:30px}
.etapes>li:last-child{padding-bottom:0}
.etapes>li:not(:last-child)::before{content:"";position:absolute;left:26px;top:54px;bottom:0;width:1.5px;background:var(--or)}
.etape-num{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;border:1.5px solid var(--or);background:#fff;font:500 1.55rem/1 var(--titre);color:var(--encre);padding-bottom:.08em}
.etapes>li:first-child .etape-num{background:var(--or);color:var(--abysse)}
.corps .etape-titre{margin:.42em 0 .3em;font:500 1.62rem/1.15 var(--titre);letter-spacing:-.012em;color:var(--encre)}
.etapes dl,.cartes dl{margin:0}
.etapes dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px 32px}
.etapes dt,.cartes dt{font:600 .84rem/1.3 var(--sans);color:var(--gris)}
.etapes dd,.cartes dd{margin:2px 0 0;font-size:1.08rem;line-height:1.46}

/* ---------- les cartes : des colonnes sous un filet */
.cartes{list-style:none;padding:0;margin:2.2em 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:36px 36px}
.cartes>li{margin:0;padding-top:16px;border-top:2px solid var(--encre)}
.cartes>li:nth-child(3n+1){border-top-color:var(--or)}
.corps .carte-titre{margin:0 0 10px;font:500 1.5rem/1.15 var(--titre);letter-spacing:-.012em;color:var(--encre)}
.cartes dl>div{margin-top:10px}

/* ---------- la frise */
.frise{list-style:none;padding:0;margin:2.2em 0;position:relative}
.frise::before{content:"";position:absolute;left:6px;top:10px;bottom:10px;width:1.5px;background:linear-gradient(var(--or),var(--or) 85%,var(--filet))}
.frise>li{position:relative;margin:0;padding:0 0 30px 36px}
.frise>li:last-child{padding-bottom:0}
.frise>li::before{content:"";position:absolute;left:0;top:9px;width:13.5px;height:13.5px;border-radius:50%;background:#fff;border:2px solid var(--or);box-sizing:border-box}
.frise-date{display:block;font:500 1.5rem/1.2 var(--titre);letter-spacing:-.01em;color:var(--encre)}
.frise-corps p{margin:4px 0 0}
.corps .frise-source{font:500 .86rem/1.45 var(--sans);color:var(--gris)}
@media (min-width:760px){
  .frise::before{left:236px}
  .frise>li{display:grid;grid-template-columns:204px minmax(0,1fr);gap:0 66px;padding-left:0}
  .frise>li::before{left:230px;top:10px}
  .frise-date{text-align:right}
  .frise-corps{max-width:38rem}
  .frise-corps p:first-child{margin-top:.1em}
}

.tableau{overflow-x:auto;margin:2em 0;border-top:2px solid var(--encre);border-bottom:1px solid var(--filet)}
.tableau table{border-collapse:collapse;width:100%;font:400 .96rem/1.5 var(--sans)}
.tableau th{text-align:left;font-weight:600;color:var(--encre);padding:13px 16px 13px 0;border-bottom:1px solid var(--encre);white-space:nowrap}
.tableau td{padding:13px 16px 13px 0;border-top:1px solid var(--filet);vertical-align:top;min-width:9rem}
.tableau td:first-child{font-weight:600;color:var(--encre)}

.suite{position:relative;max-width:46rem;margin:3em 0 0;padding:28px 30px 28px 34px;background:var(--nuit);color:#e6ecf6;border-radius:3px;border-left:3px solid var(--or)}
.suite-titre{margin:0 0 8px;font:italic 400 1.4rem/1.2 var(--titre);color:var(--or-vif)}
.suite p{margin:0}
.suite a{color:#fff}
.suite a:hover{color:var(--or-vif)}

/* ---------- questions par thème */
.themes-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px}
.themes-nav a{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 8px 0 16px;border:1px solid var(--filet);border-radius:999px;font:500 .95rem/1.2 var(--sans);text-decoration:none;color:var(--encre);transition:border-color .15s,background-color .15s}
.themes-nav a:hover{border-color:var(--or);background:var(--brume);color:var(--encre)}
.themes-nav span{display:grid;place-items:center;min-width:28px;height:28px;padding:0 6px;border-radius:999px;background:var(--nuit);color:var(--or-vif);font:600 .82rem/1 var(--sans)}
.questions{max-width:52rem}
.theme-questions{margin-top:clamp(48px,6vw,76px)}
.corps .theme-questions>h2{margin:0;padding-bottom:16px;border-bottom:2px solid var(--encre)}
.theme-questions>p{max-width:var(--lecture)}
.question{border-bottom:1px solid var(--filet)}
.question summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:19px 0}
.question summary::-webkit-details-marker{display:none}
.corps .question summary h2,.corps .question summary h3{margin:0;font:600 1.16rem/1.36 var(--sans);letter-spacing:0;color:var(--encre)}
.question summary::after{content:"+";flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--or);color:var(--or-sombre);font:400 1.35rem/1 var(--sans);transition:transform .25s,background-color .25s,color .25s}
.question[open] summary::after{transform:rotate(45deg);background:var(--nuit);border-color:var(--nuit);color:var(--or-vif)}
.question summary:hover h2,.question summary:hover h3{color:var(--or-sombre)}
.reponse{max-width:var(--lecture);padding:0 0 22px}
.reponse p:first-child{margin-top:0}
.reponse p:last-child{margin-bottom:0}

/* ---------- lexique : un dictionnaire */
.alphabet{position:sticky;top:71px;z-index:5;display:flex;flex-wrap:wrap;gap:4px;padding:12px 0;margin:0 0 6px;background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--filet)}
.alphabet a{display:grid;place-items:center;min-width:42px;height:42px;border-radius:50%;font:500 1.25rem/1 var(--titre);text-decoration:none;color:var(--encre);padding-bottom:.1em;transition:background-color .15s,color .15s}
.alphabet a:hover{background:var(--nuit);color:var(--or-vif)}
@media (max-width:900px){.alphabet{top:0}}
.lettre{display:grid;grid-template-columns:132px minmax(0,1fr);gap:0 28px;margin-top:44px;padding-top:22px;border-top:2px solid var(--encre)}
.corps .lettre-titre{margin:0;align-self:start;position:sticky;top:150px;font:italic 400 clamp(4.4rem,8vw,6.6rem)/.8 var(--titre);color:var(--or)}
.termes{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:0 44px}
.terme{margin:0;padding:2px 0 22px}
.corps .terme h3{margin:0 0 4px;font:600 1.42rem/1.2 var(--titre);letter-spacing:-.01em}
.terme p{margin:0;font-size:1.1rem;line-height:1.5}
@media (max-width:700px){.lettre{grid-template-columns:1fr}.corps .lettre-titre{position:static;margin-bottom:14px;font-size:4.2rem}}

/* ---------- rubrique et pages voisines */
.rubrique{background:var(--brume);border-top:1px solid var(--filet);padding:clamp(48px,6vw,76px) 0}
.rubrique h2{margin:0 0 26px;font:500 clamp(1.7rem,3vw,2.3rem)/1.1 var(--titre);color:var(--encre);letter-spacing:-.018em}
.cartes-pages{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.carte-page{display:flex;flex-direction:column;height:100%;text-decoration:none;color:var(--texte);background:#fff;border:1px solid var(--filet);border-radius:3px;overflow:hidden;transition:border-color .2s}
.carte-page:hover{border-color:var(--or);color:var(--texte)}
.vignette{display:flex;align-items:center;justify-content:center;height:96px;background:var(--brume);border-bottom:1px solid var(--filet);color:var(--encre)}
.vignette .picto{width:62px;height:62px}
.vignette .picto .or{stroke:#b8952f}.vignette .picto .or.plein{fill:#b8952f}
.carte-page:hover .vignette .picto{color:var(--or-sombre)}
.carte-page-titre{display:block;padding:16px 20px 4px;font:500 1.42rem/1.15 var(--titre);letter-spacing:-.012em;color:var(--encre)}
.carte-page-texte{display:block;padding:0 20px 20px;font:400 1.03rem/1.42 var(--serif);color:var(--gris)}
.precedent-suivant{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}
.precedent-suivant a{display:block;padding:18px 0 0;border-top:2px solid var(--encre);text-decoration:none;font:500 1.5rem/1.15 var(--titre);color:var(--encre)}
.precedent-suivant a:last-child{text-align:right}
.precedent-suivant a:hover{border-color:var(--or);color:var(--or-sombre)}
.precedent-suivant span{display:block;font:500 .86rem/1.4 var(--sans);color:var(--gris);margin-bottom:6px}

/* ---------- pied */
.pied{background:var(--abysse);color:var(--gris-clair);padding:26px 0;font:400 .9rem/1.6 var(--sans);border-top:2px solid var(--or)}
.pied-ligne{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px 28px}
.pied-liens{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 22px}
.pied a{color:#dfe6f2;text-decoration:none}
.pied a:hover{color:var(--or-vif)}
.pied-nom{font:500 1.25rem/1 var(--titre);color:#fff}
.pied-nom i{font-weight:400;color:var(--or-vif)}

/* ---------- mouvement lié au défilement (amélioration progressive, sans script) */
@media (prefers-reduced-motion:no-preference){
  @supports (animation-timeline:view()){
    .page::before{content:"";position:fixed;z-index:30;left:0;top:0;width:100%;height:3px;background:var(--or);transform-origin:0 50%;animation:avance linear both;animation-timeline:scroll(root)}
    .frise>li,.corps .chiffres>li,.etapes>li{animation:arrive linear both;animation-timeline:view();animation-range:entry 0% entry 55%}
    .frise>li::before{animation:allume linear both;animation-timeline:view();animation-range:entry 20% cover 35%}
  }
}
@keyframes avance{from{transform:scaleX(0)}}
@keyframes arrive{from{opacity:0;transform:translateY(22px)}}
@keyframes allume{from{background:#fff}to{background:var(--or)}}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .pouls{display:none}
  /* sans entrée ni effet d'échelle : seuls des points et des tirets lents circulent le long des traits */
  .scene-svg .courant{stroke-opacity:.8;animation:courant 6s linear infinite!important}
}

/* ---------- taille optique du Bodoni : des déliés tenus aux tailles moyennes et petites.
   !important parce que le raccourci font réinitialise font-variation-settings. */
.carte-titre,.etape-titre,.etape-num,.frise-date,.carte-page-titre,.precedent-suivant a,.terme h3,.alphabet a,.chiffre-enonce b,.sommaire-titre,.pied-nom,.suite-titre,.essentiel-titre,.chiffre-serie{font-variation-settings:"opsz" 11!important}
.corps h2,.section-tete h2,.index-tete h3,.rubrique h2,.marque-nom,.menu-titre{font-variation-settings:"opsz" 22!important}
.bandeau h1,.chiffre-valeur,.lettre-titre{font-variation-settings:"opsz" 40!important}

/* ---------- retards de la séquence (dixièmes de seconde) */
.q0{animation-delay:0.0s}.q1{animation-delay:0.1s}.q2{animation-delay:0.2s}.q3{animation-delay:0.3s}.q4{animation-delay:0.4s}.q5{animation-delay:0.5s}.q6{animation-delay:0.6s}.q7{animation-delay:0.7s}.q8{animation-delay:0.8s}.q9{animation-delay:0.9s}.q10{animation-delay:1.0s}.q11{animation-delay:1.1s}.q12{animation-delay:1.2s}.q13{animation-delay:1.3s}.q14{animation-delay:1.4s}.q15{animation-delay:1.5s}.q16{animation-delay:1.6s}.q17{animation-delay:1.7s}.q18{animation-delay:1.8s}.q19{animation-delay:1.9s}.q20{animation-delay:2.0s}.q21{animation-delay:2.1s}.q22{animation-delay:2.2s}.q23{animation-delay:2.3s}.q24{animation-delay:2.4s}.q25{animation-delay:2.5s}.q26{animation-delay:2.6s}.q27{animation-delay:2.7s}.q28{animation-delay:2.8s}.q29{animation-delay:2.9s}.q30{animation-delay:3.0s}.q31{animation-delay:3.1s}.q32{animation-delay:3.2s}.q33{animation-delay:3.3s}.q34{animation-delay:3.4s}.q35{animation-delay:3.5s}.q36{animation-delay:3.6s}.q37{animation-delay:3.7s}.q38{animation-delay:3.8s}.q39{animation-delay:3.9s}.q40{animation-delay:4.0s}.q41{animation-delay:4.1s}.q42{animation-delay:4.2s}.q43{animation-delay:4.3s}.q44{animation-delay:4.4s}.q45{animation-delay:4.5s}.q46{animation-delay:4.6s}.q47{animation-delay:4.7s}.q48{animation-delay:4.8s}.q49{animation-delay:4.9s}.q50{animation-delay:5.0s}.q51{animation-delay:5.1s}.q52{animation-delay:5.2s}.q53{animation-delay:5.3s}.q54{animation-delay:5.4s}.q55{animation-delay:5.5s}.q56{animation-delay:5.6s}.q57{animation-delay:5.7s}.q58{animation-delay:5.8s}.q59{animation-delay:5.9s}.q60{animation-delay:6.0s}.q61{animation-delay:6.1s}.q62{animation-delay:6.2s}.q63{animation-delay:6.3s}.q64{animation-delay:6.4s}.q65{animation-delay:6.5s}.q66{animation-delay:6.6s}.q67{animation-delay:6.7s}.q68{animation-delay:6.8s}.q69{animation-delay:6.9s}.q70{animation-delay:7.0s}.q71{animation-delay:7.1s}.q72{animation-delay:7.2s}.q73{animation-delay:7.3s}.q74{animation-delay:7.4s}.q75{animation-delay:7.5s}.q76{animation-delay:7.6s}.q77{animation-delay:7.7s}.q78{animation-delay:7.8s}.q79{animation-delay:7.9s}.q80{animation-delay:8.0s}.q81{animation-delay:8.1s}.q82{animation-delay:8.2s}.q83{animation-delay:8.3s}.q84{animation-delay:8.4s}.q85{animation-delay:8.5s}.q86{animation-delay:8.6s}.q87{animation-delay:8.7s}.q88{animation-delay:8.8s}.q89{animation-delay:8.9s}.q90{animation-delay:9.0s}.q91{animation-delay:9.1s}.q92{animation-delay:9.2s}.q93{animation-delay:9.3s}.q94{animation-delay:9.4s}.q95{animation-delay:9.5s}.q96{animation-delay:9.6s}.q97{animation-delay:9.7s}.q98{animation-delay:9.8s}.q99{animation-delay:9.9s}.q100{animation-delay:10.0s}.q101{animation-delay:10.1s}.q102{animation-delay:10.2s}.q103{animation-delay:10.3s}.q104{animation-delay:10.4s}.q105{animation-delay:10.5s}.q106{animation-delay:10.6s}.q107{animation-delay:10.7s}.q108{animation-delay:10.8s}.q109{animation-delay:10.9s}.q110{animation-delay:11.0s}

/* ---------- pictogrammes : un dessin au trait par page */
.picto{display:block;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.picto .or{stroke:var(--or)}
.picto .plein{fill:currentColor;stroke:none}
.picto .or.plein{fill:var(--or)}
.picto-texte{font:500 40px/1 var(--titre);text-anchor:middle;fill:currentColor;stroke:none}
@media (prefers-reduced-motion:no-preference){
  .picto-bandeau [pathLength]{stroke-dasharray:1;stroke-dashoffset:1;animation:dessine 1.5s cubic-bezier(.4,0,.2,1) .35s forwards}
  .picto-bandeau .or[pathLength]{animation-delay:1.2s}
  .picto-bandeau .plein,.picto-bandeau .picto-texte{opacity:0;animation:apparait .6s 1.6s forwards}
}
@keyframes dessine{to{stroke-dashoffset:0}}
@keyframes apparait{to{opacity:1}}
.index-picto{grid-row:1/3;width:46px;height:46px;margin-top:2px;color:var(--encre)}
.index-picto .picto{width:100%;height:100%}
.index-picto .picto .or{stroke:#b8952f}.index-picto .picto .or.plein{fill:#b8952f}
.index-rub li a:hover .index-picto{color:var(--or-sombre)}
