/* bereadymag V7 — « De la nuit à l'aube ». Le monde la nuit, en particules ; le journal au lever du jour. */
@font-face{font-family:"Bricolage";src:url(/assets/fonts/bricolage-latin.woff2) format("woff2-variations");font-weight:200 800;font-stretch:75% 100%;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Bricolage";src:url(/assets/fonts/bricolage-latin-ext.woff2) format("woff2-variations");font-weight:200 800;font-stretch:75% 100%;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Instrument Serif";src:url(/assets/fonts/instrument-serif-italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url(/assets/fonts/instrument-serif-italic-ext.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap;unicode-range:U+0100-02BA,U+1E00-1E9F}
@font-face{font-family:"Instrument Serif";src:url(/assets/fonts/instrument-serif.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url(/assets/fonts/instrument-sans-latin-standard-normal.woff2) format("woff2");font-weight:400 700;font-stretch:75% 100%;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(/assets/fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"IBM Plex Mono";src:url(/assets/fonts/ibm-plex-mono-latin-500-normal.woff2) format("woff2");font-weight:500;font-display:swap}

:root{
  --nuit:#050816;--nuit2:#0B1235;--nuit3:#16205A;--lune:#DCE4FF;--ciel:#8FA8FF;
  --papier:#F4F0E6;--craie:#F4F0E6;--blanc:#FFFFFF;--encre:#070A18;--encre2:#2A2F49;--gris:#5F6479;--gris2:#8D91A3;--filet:#E2DCCD;--filet2:#ECE7DB;
  --bleu:#2B4BFF;--bleu2:#1C37E6;--bleu3:#0F1F9E;--bleup:#E6EAFF;--jaune:#FFD43B;--jaune2:#FFB300;--jaunep:#FFF3C7;
  --vert:#0FA86F;--vertp:#DCF5E9;--ambre:#E68A00;--ambrep:#FFEFD1;--rouge:#F0484E;--rougep:#FDE5E5;--aube:#FF8A5B;
  --disp:"Bricolage","Arial Narrow",system-ui,sans-serif;
  --serif:var(--disp);
  --it:"Instrument Serif",Georgia,"Times New Roman",serif;
  --sans:"Instrument Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --gx:max(18px,env(safe-area-inset-left,0px));--gxr:max(18px,env(safe-area-inset-right,0px));
  --ease:cubic-bezier(.16,1,.3,1);--spring:cubic-bezier(.34,1.56,.64,1);--io:cubic-bezier(.76,0,.24,1);
  --r:22px;--ombre:0 1px 0 rgba(7,10,24,.04),0 22px 44px -26px rgba(7,10,24,.35);
  --hd-top:44px;
  color-scheme:light;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-stopped{overflow:hidden}
body{margin:0;background:var(--papier);color:var(--encre);font:16px/1.55 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.fx-curseur,body.fx-curseur a,body.fx-curseur button,body.fx-curseur label{cursor:none}
body.fx-curseur input,body.fx-curseur textarea,body.fx-curseur select{cursor:text}
img,video,canvas,svg{display:block;max-width:100%}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
::selection{background:var(--jaune);color:var(--encre)}
:focus-visible{outline:3px solid var(--bleu);outline-offset:3px;border-radius:8px}
.w{width:100%;max-width:1400px;margin:0 auto;padding-left:var(--gx);padding-right:var(--gxr)}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.mono{font-family:var(--mono)}
.k{font:500 .7rem/1.2 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--gris)}
h1,h2,h3,h4{font-family:var(--disp);font-weight:700;font-stretch:88%;line-height:.95;letter-spacing:-.035em;margin:0;text-wrap:balance}
h1 em,h2 em,h3 em,blockquote em,.it{font-family:var(--it);font-style:italic;font-weight:400;letter-spacing:-.015em;font-stretch:100%}
p{margin:0}

/* ---------- grain, progression, voile, curseur ---------- */
.grain{position:fixed;inset:-50%;z-index:120;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain 1.1s steps(6) infinite;mix-blend-mode:multiply}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-4%,3%)}40%{transform:translate(3%,-5%)}60%{transform:translate(-2%,6%)}80%{transform:translate(5%,-2%)}100%{transform:translate(0,0)}}
.progres{position:fixed;left:0;top:0;height:3px;width:100%;z-index:110;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,var(--bleu),var(--jaune));pointer-events:none}
.voile{position:fixed;inset:0;z-index:130;background:var(--nuit);pointer-events:none;clip-path:circle(0% at var(--vx,50%) var(--vy,50%));display:grid;place-items:center}
.voile svg{width:72px;height:72px;opacity:0;transform:scale(.6) rotate(-30deg)}
.voile.ferme{clip-path:circle(150% at var(--vx,50%) var(--vy,50%));transition:clip-path .62s var(--io);pointer-events:all}
.voile.ferme svg{opacity:1;transform:none;transition:all .5s .15s var(--spring)}
.voile.ouvre{clip-path:circle(0% at 50% 50%);transition:clip-path .9s var(--io)}
html.voile-on .voile{clip-path:circle(150% at 50% 50%)}
.curseur{position:fixed;left:0;top:0;z-index:140;pointer-events:none;mix-blend-mode:difference}
.curseur .pt{position:absolute;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:#fff}
.curseur .an{position:absolute;width:42px;height:42px;margin:-21px 0 0 -21px;border-radius:50%;border:1.5px solid #fff;transition:width .45s var(--spring),height .45s var(--spring),margin .45s var(--spring),background .3s,border-color .3s;display:grid;place-items:center}
.curseur .an b{font:600 .62rem var(--mono);letter-spacing:.12em;color:#000;opacity:0;transition:opacity .2s}
.curseur.grand .an{width:70px;height:70px;margin:-35px 0 0 -35px}
.curseur.etiquette{mix-blend-mode:normal}
.curseur.etiquette .an{width:96px;height:96px;margin:-48px 0 0 -48px;background:var(--jaune);border-color:var(--jaune)}
.curseur.etiquette .an b{opacity:1}
.curseur.etiquette .pt{opacity:0}
.curseur.cache{opacity:0}

/* ---------- boutons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border:0;border-radius:999px;padding:.95rem 1.4rem;font:600 .95rem var(--sans);text-decoration:none;cursor:pointer;transition:background .25s,box-shadow .25s,color .25s;white-space:nowrap;position:relative;overflow:hidden;isolation:isolate}
.btn::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:radial-gradient(120px circle at var(--bx,50%) var(--by,50%),rgba(255,255,255,.38),transparent 60%);opacity:0;transition:opacity .3s}
.btn:hover::after{opacity:1}
.btn:active{transform:scale(.96)}
.btn.b{background:var(--bleu);color:#fff;box-shadow:0 14px 30px -14px rgba(43,75,255,.9),inset 0 1px 0 rgba(255,255,255,.25)}
.btn.b:hover{background:var(--bleu2)}
.btn.n{background:var(--encre);color:#fff}
.btn.j{background:var(--jaune);color:var(--encre);box-shadow:0 14px 34px -14px rgba(255,180,0,.95)}
.btn.l{background:var(--blanc);color:var(--encre);box-shadow:inset 0 0 0 1.5px var(--filet)}
.btn.l:hover{box-shadow:inset 0 0 0 1.5px var(--encre)}
.btn.g{background:rgba(255,255,255,.08);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);backdrop-filter:blur(10px)}
.btn.g:hover{background:rgba(255,255,255,.16)}
.btn.s{padding:.58rem .95rem;font-size:.86rem}
.btn.xl{padding:1.15rem 1.8rem;font-size:1.05rem}
.btn[disabled]{opacity:.55;pointer-events:none}
.chip{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.3rem .65rem;font:500 .74rem/1 var(--sans);background:var(--filet2);color:var(--encre2);white-space:nowrap;text-decoration:none}
.chip.b{background:var(--bleup);color:var(--bleu3)}

/* ---------- statuts : tampons encreurs ---------- */
.st{display:inline-flex;align-items:center;gap:.4rem;border-radius:7px;padding:.32rem .58rem .32rem .48rem;font:700 .68rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.st svg{width:13px;height:13px}
.st.verifie{background:var(--vertp);color:#07673F;box-shadow:inset 0 0 0 1.5px rgba(15,168,111,.35)}
.st.a_confirmer{background:var(--ambrep);color:#9A5B00;box-shadow:inset 0 0 0 1.5px rgba(230,138,0,.35)}
.st.conteste{background:var(--rougep);color:#B4262C;box-shadow:inset 0 0 0 1.5px rgba(240,72,78,.35)}
.st.dementi{background:var(--encre);color:#fff}
.st.membre{background:var(--filet2);color:var(--gris)}
.st.partenariat{background:var(--jaunep);color:#7A5B00}

/* ---------- bandeau défilant ---------- */
.tick{position:relative;z-index:40;height:32px;background:var(--nuit);color:#fff;overflow:hidden;white-space:nowrap;border-bottom:1px solid rgba(255,255,255,.08)}
.tick .t{display:inline-flex;gap:2.8rem;padding:.48rem 0;will-change:transform;animation:tick 70s linear infinite}
.tick:hover .t{animation-play-state:paused}
.tick a{text-decoration:none;font:500 .8rem var(--sans);display:inline-flex;align-items:center;gap:.6rem;opacity:.9}
.tick a:hover{opacity:1;color:var(--jaune)}
.tick a b{font:500 .62rem var(--mono);letter-spacing:.14em;color:var(--jaune)}
.tick a i{width:6px;height:6px;border-radius:50%;background:var(--jaune);box-shadow:0 0 10px var(--jaune)}
@keyframes tick{to{transform:translateX(-50%)}}

/* ---------- en-tête flottant ---------- */
.hd{position:fixed;left:0;right:0;top:var(--hd-top);z-index:60;pointer-events:none;transition:top .5s var(--ease),transform .6s var(--ease)}
.hd.colle{top:10px}
.hd.cache-h{transform:translateY(-140%)}
.hd .w{pointer-events:auto;display:flex;align-items:center;gap:1rem;height:62px;max-width:1340px;margin:0 auto;padding:0 10px 0 22px;width:calc(100% - 2*var(--gx));border-radius:999px;background:rgba(250,247,240,.72);backdrop-filter:saturate(1.6) blur(18px);-webkit-backdrop-filter:saturate(1.6) blur(18px);box-shadow:inset 0 0 0 1px rgba(7,10,24,.08),0 18px 40px -24px rgba(7,10,24,.35);transition:background .5s,box-shadow .5s,color .5s}
body.ton-nuit .hd .w{background:rgba(9,14,40,.55);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12),0 18px 40px -24px rgba(0,0,0,.8)}
.logo{display:inline-flex;align-items:baseline;font:800 1.42rem/1 var(--disp);font-stretch:80%;letter-spacing:-.045em;text-decoration:none}
.logo i{font-style:normal;color:var(--bleu);transition:color .4s}
body.ton-nuit .logo i{color:var(--jaune)}
.logo .etoile{width:.46em;height:.46em;margin-left:.08em;align-self:flex-start;margin-top:.02em;animation:tourne 12s linear infinite}
@keyframes tourne{to{transform:rotate(360deg)}}
.hd nav{display:flex;gap:.15rem;margin-left:.8rem}
.hd nav a{position:relative;text-decoration:none;font:600 .88rem var(--sans);padding:.55rem .8rem;border-radius:999px;color:inherit;opacity:.78;transition:opacity .2s,background .25s}
.hd nav a:hover{opacity:1}
.hd nav a[aria-current="page"]{opacity:1;background:var(--encre);color:#fff}
body.ton-nuit .hd nav a[aria-current="page"]{background:#fff;color:var(--encre)}
.hd .droite{margin-left:auto;display:flex;align-items:center;gap:.5rem}
.horloge{font:500 .7rem var(--mono);opacity:.7;display:flex;align-items:center;gap:.45rem;white-space:nowrap}
.horloge i{width:7px;height:7px;border-radius:50%;background:var(--rouge);animation:live 1.6s infinite}
@keyframes live{0%{box-shadow:0 0 0 0 rgba(240,72,78,.55)}70%{box-shadow:0 0 0 8px rgba(240,72,78,0)}100%{box-shadow:0 0 0 0 rgba(240,72,78,0)}}
body.ton-nuit .hd .btn.l{background:rgba(255,255,255,.1);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.24)}
.av{--h:220;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;font:700 .8rem var(--sans);color:#fff;background:hsl(var(--h) 72% 46%);overflow:hidden;position:relative}
.av img{width:100%;height:100%;object-fit:cover}
.av.l{width:46px;height:46px;font-size:1rem}
.av.xl{width:96px;height:96px;font-size:1.8rem}
.av .p{position:absolute;right:-2px;bottom:-2px;width:14px;height:14px;border-radius:50%;background:var(--jaune);border:2px solid var(--blanc)}
.moi-b{display:flex;align-items:center;gap:.5rem;border:0;background:var(--blanc);color:var(--encre);box-shadow:inset 0 0 0 1px var(--filet);border-radius:999px;padding:.25rem .85rem .25rem .25rem;cursor:pointer;font:600 .86rem var(--sans);text-decoration:none}
.burger{display:none;border:0;background:var(--encre);color:#fff;width:44px;height:44px;border-radius:50%;cursor:pointer}
body.ton-nuit .burger{background:#fff;color:var(--encre)}
@media (max-width:1100px){.hd nav{display:none}.horloge{display:none}.burger{display:grid;place-items:center}}
@media (max-width:560px){.hd .w{gap:.5rem;padding-left:16px;height:56px}.hd .droite{gap:.35rem}.hd .droite [data-login=connexion]{display:none}.logo{font-size:1.26rem}}
.menu-m{position:fixed;inset:0;z-index:55;background:var(--nuit);color:#fff;padding:120px var(--gx) 2rem;display:flex;flex-direction:column;justify-content:center;gap:.1rem;clip-path:circle(0% at calc(100% - 50px) 70px);transition:clip-path .8s var(--io);pointer-events:none}
.menu-m.on{clip-path:circle(160% at calc(100% - 50px) 70px);pointer-events:auto}
.menu-m a{font:700 clamp(2.4rem,11vw,4.6rem)/1 var(--disp);font-stretch:80%;letter-spacing:-.04em;text-decoration:none;padding:.28rem 0;border-bottom:1px solid rgba(255,255,255,.1);transform:translateY(30px);opacity:0;transition:transform .7s var(--ease),opacity .5s}
.menu-m.on a{transform:none;opacity:1}
.menu-m.on a:nth-child(2){transition-delay:.04s}.menu-m.on a:nth-child(3){transition-delay:.08s}.menu-m.on a:nth-child(4){transition-delay:.12s}.menu-m.on a:nth-child(5){transition-delay:.16s}.menu-m.on a:nth-child(6){transition-delay:.2s}.menu-m.on a:nth-child(7){transition-delay:.24s}

/* ---------- préchargement ---------- */
.intro{position:fixed;inset:0;z-index:150;background:var(--nuit);color:#fff;display:grid;place-items:center;clip-path:inset(0 0 0 0)}
.intro .ct{display:flex;flex-direction:column;align-items:center;gap:1.1rem}
.intro svg{width:120px;height:120px;overflow:visible}
.intro svg .anneau{fill:none;stroke:rgba(255,255,255,.12);stroke-width:1.5}
.intro svg .trace{fill:none;stroke:var(--jaune);stroke-width:2;stroke-linecap:round;stroke-dasharray:340;stroke-dashoffset:340;transform:rotate(-90deg);transform-origin:50% 50%}
.intro svg .etoile-i{fill:var(--jaune);transform-origin:50% 50%}
.intro .compte{font:500 2.4rem/1 var(--mono);letter-spacing:.06em;font-variant-numeric:tabular-nums}
.intro .lib{font:500 .68rem var(--mono);letter-spacing:.22em;text-transform:uppercase;opacity:.6}
.intro .nom{font:800 1.5rem var(--disp);font-stretch:80%;letter-spacing:-.04em}
.intro .nom i{font-style:normal;color:var(--jaune)}
html.deja .intro,html.reduit .intro{display:none}

/* ---------- LA NUIT : héros-globe épinglé ---------- */
.nuit{position:relative;height:100svh;min-height:560px;background:var(--nuit);color:#fff;overflow:hidden;isolation:isolate}
.nuit .globe-cv{position:absolute;inset:0;width:100%;height:100%;z-index:1;touch-action:pan-y}
.nuit .halo{position:absolute;inset:0;z-index:0;background:radial-gradient(60% 55% at 70% 45%,rgba(43,75,255,.32),transparent 70%),radial-gradient(40% 40% at 15% 90%,rgba(255,212,59,.12),transparent 70%);pointer-events:none}
.nuit .aube-fond{position:absolute;inset:0;z-index:0;opacity:0;background:linear-gradient(180deg,#1B1550 0%,#7A3D7E 34%,#FF8A5B 62%,#FFD9A0 82%,var(--papier) 100%);pointer-events:none}
.nuit .jour-fond{position:absolute;inset:0;z-index:0;opacity:0;background:var(--papier);pointer-events:none}
.h-titre{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:center;padding:110px var(--gxr) 90px var(--gx);pointer-events:none}
.h-titre .k{color:rgba(255,255,255,.66);margin-bottom:1.2rem;display:flex;gap:.8rem;align-items:center;flex-wrap:wrap}
.h-titre .k b{color:var(--jaune);font-weight:500}
.h-monde{font:800 clamp(4.2rem,min(15.2vw,27svh),17rem)/.8 var(--disp);font-stretch:78%;letter-spacing:-.055em;margin:0;white-space:nowrap}
.h-monde .l1,.h-monde .l2{display:block}
.h-monde .l2{padding-left:.9em}
.h-monde .l2 em{font-family:var(--it);font-weight:400;font-stretch:100%;letter-spacing:-.03em;color:var(--jaune)}
.o-slot{display:inline-block;width:.72em;height:.72em;vertical-align:-.02em;margin:0 .02em;border-radius:50%}
.sans-gl .o-slot{background:radial-gradient(circle at 35% 30%,#3F5BFF,#0B1235 70%);box-shadow:0 0 60px rgba(43,75,255,.6)}
.h-bas{position:absolute;z-index:3;left:var(--gx);right:var(--gxr);bottom:clamp(18px,4vh,40px);display:flex;justify-content:space-between;align-items:end;gap:1.4rem;flex-wrap:wrap}
.h-bas .lead{max-width:30em;font:400 clamp(.98rem,1.25vw,1.15rem)/1.5 var(--sans);color:rgba(255,255,255,.82)}
.h-bas .preuves{display:flex;gap:1.6rem}
.h-bas .preuves div{display:flex;flex-direction:column}
.h-bas .preuves b{font:700 2.1rem/1 var(--disp);font-stretch:80%;font-variant-numeric:tabular-nums;color:#fff}
.h-bas .preuves span{font:500 .66rem var(--mono);letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.55);margin-top:.3rem}
.indice{position:absolute;z-index:3;left:50%;bottom:22px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;font:500 .62rem var(--mono);letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.indice i{width:1px;height:38px;background:linear-gradient(var(--jaune),transparent);animation:indice 1.8s var(--ease) infinite;transform-origin:top}
@keyframes indice{0%{transform:scaleY(0)}50%{transform:scaleY(1)}100%{transform:scaleY(1);opacity:0}}
@media (max-width:900px){.indice{display:none}}
.hud{position:absolute;z-index:4;left:var(--gx);top:50%;transform:translateY(-50%);width:min(520px,calc(100% - 2*var(--gx)));pointer-events:none}
.fait{position:absolute;left:0;top:0;transform:translateY(-50%);width:100%;display:block;text-decoration:none;color:#fff;padding:22px 24px 20px;border-radius:24px;background:linear-gradient(160deg,rgba(22,32,90,.72),rgba(5,8,22,.62));backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),0 40px 80px -40px #000;opacity:0;visibility:hidden;pointer-events:none}
.fait.on{pointer-events:auto}
.fait .n{display:flex;justify-content:space-between;font:500 .66rem var(--mono);letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.fait .n b{color:var(--jaune);font-weight:500}
.fait .t{display:block;font:700 clamp(1.5rem,2.5vw,2.25rem)/1.02 var(--disp);font-stretch:86%;letter-spacing:-.03em;margin:.8rem 0 .7rem;min-height:2.04em}
.fait .c{font-size:.92rem;line-height:1.45;color:rgba(255,255,255,.75);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.fait .pied-f{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem}
.fait .srcs-n{font:500 .72rem var(--mono);color:rgba(255,255,255,.7);display:flex;align-items:center;gap:.5rem}
.fait .srcs-n i{display:inline-flex;gap:3px}
.fait .srcs-n i u{width:9px;height:9px;border-radius:2px;background:rgba(255,255,255,.18);transition:background .25s,box-shadow .25s}
.fait .srcs-n i u.ok{background:var(--jaune);box-shadow:0 0 10px var(--jaune)}
.fait .lire{font:600 .8rem var(--sans);color:var(--jaune)}
.fait .tp{position:absolute;right:18px;top:-22px;font:800 1.5rem/1 var(--disp);font-stretch:75%;letter-spacing:.04em;text-transform:uppercase;padding:.35rem .7rem;border:3px solid currentColor;border-radius:10px;background:rgba(5,8,22,.85);transform:rotate(-8deg) scale(2.6);opacity:0}
.fait .tp.verifie{color:#3BE39B}.fait .tp.a_confirmer{color:var(--jaune)}.fait .tp.conteste{color:#FF6B70}
.fait .tp.go{animation:tampon2 .55s var(--ease) forwards}
@keyframes tampon2{0%{opacity:0;transform:rotate(-14deg) scale(2.8)}55%{opacity:1;transform:rotate(-8deg) scale(.92)}100%{opacity:1;transform:rotate(-8deg) scale(1)}}
.secousse{animation:secousse .34s linear}
@keyframes secousse{20%{transform:translate(3px,1px)}40%{transform:translate(-3px,-2px)}60%{transform:translate(2px,-1px)}80%{transform:translate(-1px,2px)}}
.hud-nav{position:absolute;z-index:4;right:var(--gxr);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:10px;opacity:0}
.hud-nav i{width:3px;height:26px;border-radius:3px;background:rgba(255,255,255,.2);overflow:hidden;position:relative}
.hud-nav i b{position:absolute;inset:0;background:var(--jaune);transform:scaleY(0);transform-origin:top}
.final{position:absolute;inset:0;z-index:5;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;text-align:center;padding:100px var(--gxr) 13svh var(--gx);color:var(--encre);pointer-events:none;opacity:0}
.final.on{pointer-events:auto}
.final h2{font:800 clamp(4rem,14vw,15rem)/.82 var(--disp);font-stretch:76%;letter-spacing:-.06em}
.final h2 em{color:var(--bleu)}
.final p{max-width:36em;margin:1.4rem auto 0;font-size:clamp(1rem,1.4vw,1.2rem);color:var(--encre2)}
.final .cta{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;margin-top:1.6rem}
@media (max-width:760px){
  .h-titre{justify-content:flex-start;padding-top:130px}
  .h-monde{font-size:clamp(3.6rem,21vw,7rem)}
  .h-monde .l2{padding-left:.35em}
  .hud{top:auto;bottom:22px;transform:none}
  .fait{position:absolute;top:auto;bottom:0;transform:none;padding:18px 18px 16px}
  .fait .t{font-size:1.35rem;min-height:0}
  .fait .c{-webkit-line-clamp:2}
  .hud-nav{display:none}
  .h-bas .preuves{display:none}
}
.reduit .nuit,.sans-gl.nuit{height:auto;min-height:100svh}
.reduit .hud,.sans-gl .hud{position:relative;inset:auto;transform:none;width:auto;margin:0 var(--gx);padding-bottom:40px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.reduit .fait,.sans-gl .fait{position:relative;transform:none;opacity:1;visibility:visible;pointer-events:auto}
.reduit .fait .tp,.sans-gl .fait .tp{opacity:1;transform:rotate(-8deg)}
.reduit .h-titre,.sans-gl .h-titre{position:relative;padding-bottom:30px}
.reduit .h-bas,.sans-gl .h-bas{position:relative;left:auto;right:auto;bottom:auto;padding:0 var(--gx) 40px}
.reduit .final,.sans-gl .final{display:none}

/* ---------- sections du jour ---------- */
.sec{position:relative;padding-block:clamp(70px,9vw,140px)}
.sh{display:flex;justify-content:space-between;align-items:end;gap:1.6rem;flex-wrap:wrap;margin-bottom:2.2rem}
.sh h2{font-size:clamp(2.8rem,7vw,6.8rem);line-height:.88;font-weight:800;font-stretch:80%;letter-spacing:-.042em;word-spacing:.05em}
.sh h2 em{color:var(--bleu)}
.sh p{max-width:34em;color:var(--gris);font-size:1.02rem}
.sh .k{display:block;margin-bottom:.9rem}
[data-vf] .vf-c{display:inline-block;will-change:font-variation-settings}

/* ---------- fil d'actualité ---------- */
.fil-g{display:grid;grid-template-columns:240px minmax(0,1fr) 330px;gap:26px;align-items:start}
.fil-g.deux{grid-template-columns:minmax(0,1fr) 350px}
.col-g,.col-d{position:sticky;top:90px;display:flex;flex-direction:column;gap:14px}
@media (max-width:1200px){.fil-g{grid-template-columns:minmax(0,1fr) 330px}.col-g{display:none}}
@media (max-width:900px){.fil-g,.fil-g.deux{grid-template-columns:minmax(0,1fr)}.col-d{position:static}}
.fil-g>*,.flux>*{min-width:0}
.bloc{position:relative;background:var(--blanc);border-radius:var(--r);box-shadow:var(--ombre),inset 0 0 0 1px var(--filet);padding:20px;overflow:hidden}
.bloc h3{font-size:1.4rem;margin-bottom:.7rem}
.bloc.sombre{background:var(--nuit);color:#fff;box-shadow:0 30px 60px -30px rgba(5,8,22,.9)}
.bloc.sombre::before{content:"";position:absolute;width:340px;height:340px;right:-120px;top:-150px;border-radius:50%;background:radial-gradient(circle,rgba(43,75,255,.85),transparent 65%);filter:blur(6px);animation:flotte 9s ease-in-out infinite alternate}
.bloc.sombre>*{position:relative}
.rubs{display:flex;flex-direction:column;gap:2px}
.rubs button{display:flex;align-items:center;justify-content:space-between;gap:.5rem;border:0;background:transparent;text-align:left;padding:.6rem .75rem;border-radius:12px;cursor:pointer;font:600 .9rem var(--sans);color:var(--encre2);transition:background .2s,transform .3s var(--spring)}
.rubs button:hover{background:var(--filet2);transform:translateX(4px)}
.rubs button[aria-pressed="true"]{background:var(--encre);color:#fff}
.rubs button span{font:500 .7rem var(--mono);opacity:.7}
.filtres{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:16px}
.filtres button{border:0;background:var(--blanc);box-shadow:inset 0 0 0 1px var(--filet);border-radius:999px;padding:.55rem .95rem;font:600 .86rem var(--sans);cursor:pointer;transition:transform .3s var(--spring)}
.filtres button:hover{transform:translateY(-2px)}
.filtres button[aria-pressed="true"]{background:var(--encre);color:#fff;box-shadow:none}
.flux{display:flex;flex-direction:column;gap:16px}
.carte-f{--mx:50%;--my:0%;background:var(--blanc);border-radius:var(--r);box-shadow:var(--ombre),inset 0 0 0 1px var(--filet);padding:22px 22px 12px;position:relative;overflow:hidden;transition:box-shadow .4s var(--ease)}
.carte-f::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(520px circle at var(--mx) var(--my),rgba(43,75,255,.07),transparent 45%);opacity:0;transition:opacity .4s}
.carte-f:hover::after{opacity:1}
.carte-f:hover{box-shadow:0 1px 0 rgba(7,10,24,.04),0 40px 70px -40px rgba(7,10,24,.45),inset 0 0 0 1px rgba(43,75,255,.25)}
.carte-f.actu::before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:4px;border-radius:0 4px 4px 0;background:var(--vert);box-shadow:0 0 18px var(--vert)}
.carte-f.actu.a_confirmer::before{background:var(--ambre);box-shadow:0 0 18px var(--ambre)}
.carte-f.actu.conteste::before{background:var(--rouge);box-shadow:0 0 18px var(--rouge)}
.carte-f .tete{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}
.carte-f .tete .qui{min-width:150px}
.carte-f .tete .st{transform:rotate(-3deg)}
.carte-f .qui{min-width:0;flex:1}
.carte-f .qui b{font:700 .95rem var(--sans);display:flex;align-items:center;gap:.35rem}
.carte-f .qui b a{text-decoration:none}
.carte-f .qui span{display:block;font:500 .76rem var(--sans);color:var(--gris);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.badge-p{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--jaune);font:800 .7rem var(--sans);color:var(--encre)}
.carte-f h3{font-size:clamp(1.55rem,2.6vw,2.2rem);line-height:1;margin:.95rem 0 .6rem;font-stretch:84%;letter-spacing:-.035em}
.carte-f h3 a{text-decoration:none;background-image:linear-gradient(var(--jaune),var(--jaune));background-size:0 .32em;background-position:0 90%;background-repeat:no-repeat;transition:background-size .6s var(--ease)}
.carte-f h3 a:hover{background-size:100% .32em}
.carte-f .chapo{color:var(--encre2);font-size:1rem}
.carte-f .texte{white-space:pre-wrap;overflow-wrap:anywhere;margin:.85rem 0 .2rem;font-size:1.02rem}
.carte-f .sait{margin:.85rem 0 .2rem;padding:0;list-style:none;display:flex;flex-direction:column;gap:.4rem}
.carte-f .sait li{display:flex;gap:.6rem;font-size:.94rem;color:var(--encre2)}
.carte-f .sait li::before{content:"";flex:0 0 7px;height:7px;margin-top:.52rem;border-radius:2px;background:var(--bleu);transform:rotate(45deg)}
.carte-f .srcs{display:flex;gap:.35rem;flex-wrap:wrap;margin-top:.85rem}
.carte-f .srcs a{font:500 .72rem var(--mono);text-decoration:none;background:var(--filet2);border-radius:6px;padding:.32rem .52rem;color:var(--encre2);transition:background .2s,color .2s}
.carte-f .srcs a:hover{background:var(--encre);color:#fff}
.carte-f .lien{display:flex;gap:.8rem;align-items:center;border-radius:14px;box-shadow:inset 0 0 0 1px var(--filet);padding:.8rem .95rem;margin-top:.85rem;text-decoration:none;background:var(--papier);transition:transform .35s var(--spring)}
.carte-f .lien:hover{transform:translateY(-2px)}
.carte-f .lien b{display:block;font:700 .95rem/1.25 var(--sans)}
.carte-f .lien span{font:500 .72rem var(--mono);color:var(--gris)}
.carte-f .lien i{flex:0 0 40px;height:40px;border-radius:12px;background:var(--encre);display:grid;place-items:center;font-style:normal;color:var(--jaune)}
.carte-f .note{margin-top:.75rem;background:var(--vertp);border-radius:12px;padding:.65rem .85rem;font-size:.88rem;color:#0B6B49}
.carte-f .note.c{background:var(--rougep);color:#9B1F25}
.carte-f .media{margin:.9rem -22px 0;position:relative;aspect-ratio:16/9;background:#000;overflow:hidden}
.carte-f .media video,.carte-f .media img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.carte-f:hover .media video,.carte-f:hover .media img{transform:scale(1.04)}
.carte-f .media .ia{position:absolute;left:12px;top:12px}
.acts{display:flex;align-items:center;gap:2px;margin-top:.75rem;padding-top:.55rem;border-top:1px solid var(--filet2);flex-wrap:wrap}
.act{position:relative;display:inline-flex;align-items:center;gap:.4rem;border:0;background:transparent;border-radius:12px;padding:.52rem .68rem;font:600 .84rem var(--sans);color:var(--gris);cursor:pointer;transition:background .2s,color .2s}
.act:hover{background:var(--filet2);color:var(--encre)}
.act svg{width:18px;height:18px}
.act.on{color:var(--bleu)}
.act.on.pertinent{color:var(--vert)}
.act.on.averifier{color:#9A5B00}
.act .n{font-variant-numeric:tabular-nums;display:inline-block}
.act.pop svg{animation:pop .55s var(--spring)}
@keyframes pop{0%{transform:scale(1)}35%{transform:scale(1.6) rotate(-10deg)}100%{transform:scale(1)}}
.acts .esp{flex:1}
.coms{margin-top:.4rem;border-top:1px solid var(--filet2);padding-top:.75rem;display:flex;flex-direction:column;gap:.6rem}
.com{display:flex;gap:.6rem}
.com .av{width:28px;height:28px;font-size:.7rem}
.com .bx{background:var(--papier);border-radius:4px 16px 16px 16px;padding:.58rem .85rem;font-size:.92rem;flex:1;min-width:0}
.com .bx b{font-size:.82rem;display:block}
.com .bx p{white-space:pre-wrap;overflow-wrap:anywhere}
.com .bx span{font:500 .7rem var(--sans);color:var(--gris2)}
.f-com{display:flex;gap:.5rem;align-items:flex-end;margin-bottom:.4rem}
.f-com textarea{flex:1;min-height:42px;max-height:180px;resize:vertical;border:0;box-shadow:inset 0 0 0 1px var(--filet);border-radius:16px;padding:.62rem .85rem;background:var(--papier)}
.plus-de{display:flex;justify-content:center;padding:1rem}
.vide{text-align:center;padding:2.4rem 1rem;color:var(--gris)}
.squelette{height:190px;border-radius:var(--r);background:linear-gradient(90deg,var(--filet2),#fff,var(--filet2));background-size:200% 100%;animation:sq 1.2s infinite}
@keyframes sq{to{background-position:-200% 0}}

/* composeur */
.compo{background:var(--blanc);border-radius:var(--r);box-shadow:var(--ombre),inset 0 0 0 1px var(--filet);padding:18px;margin-bottom:16px;position:relative;overflow:hidden}
.compo::before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:linear-gradient(90deg,var(--bleu),var(--jaune),var(--vert));transform-origin:0;transform:scaleX(var(--remp,0));transition:transform .4s var(--ease)}
.compo .l1{display:flex;gap:.7rem;align-items:flex-start}
.compo textarea{flex:1;border:0;resize:none;min-height:54px;font-size:1.08rem;background:transparent;padding:.55rem 0;outline:none}
.compo .opts{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center;margin-top:.5rem}
.compo .opts button[aria-pressed]{border:0;background:var(--filet2);border-radius:999px;padding:.48rem .85rem;font:600 .82rem var(--sans);cursor:pointer}
.compo .opts button[aria-pressed="true"]{background:var(--encre);color:#fff}
.compo .opts select,.fld{border:0;box-shadow:inset 0 0 0 1px var(--filet);border-radius:12px;padding:.62rem .85rem;background:var(--papier);min-width:0}
.compo .url{display:flex;gap:.5rem;margin-top:.6rem;flex-wrap:wrap}
.compo .url input{flex:1 1 220px}
.compo .bas{display:flex;justify-content:space-between;align-items:center;gap:.8rem;margin-top:.8rem;flex-wrap:wrap}
.compo .bas small{font:500 .74rem var(--sans);color:var(--gris)}
.compo.ferme{cursor:pointer}
.invite{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}

/* ---------- débats : le duel ---------- */
.debat-w{background:var(--blanc);border-radius:var(--r);box-shadow:var(--ombre),inset 0 0 0 1px var(--filet);padding:22px;position:relative;overflow:hidden}
.debat-w h3{font-size:clamp(1.4rem,2.2vw,1.9rem);line-height:1.02;margin:.5rem 0 1rem}
.debat-w h3 a{text-decoration:none}
.corde{position:relative;height:80px;margin:.4rem 0 .2rem}
.corde svg{width:100%;height:100%;overflow:visible}
.camps{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.camp{border:0;border-radius:16px;padding:.85rem;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:.15rem;transition:transform .35s var(--spring),box-shadow .2s}
.camp:hover{transform:translateY(-3px)}
.camp:active{transform:scale(.96)}
.camp b{font:800 1.9rem/1 var(--disp);font-stretch:80%;font-variant-numeric:tabular-nums}
.camp span{font:600 .8rem var(--sans)}
.camp.pour{background:var(--bleup);color:var(--bleu3)}
.camp.contre{background:var(--jaunep);color:#6B5000}
.camp[aria-pressed="true"]{box-shadow:inset 0 0 0 2.5px currentColor}
.debat-w .meta{font:500 .74rem var(--sans);color:var(--gris);margin-top:.7rem;display:flex;gap:.8rem;flex-wrap:wrap}
.duel{--p:50;position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;color:#fff;isolation:isolate}
.duel .cote{position:absolute;inset:0;z-index:-1;transition:clip-path 1.2s var(--spring)}
.duel .cote.a{background:radial-gradient(70% 90% at 20% 30%,#4462FF,var(--bleu3));clip-path:polygon(0 0,calc(var(--p)*1% + 8%) 0,calc(var(--p)*1% - 8%) 100%,0 100%)}
.duel .cote.b{background:radial-gradient(70% 90% at 80% 70%,#FFE27A,#FFB300);clip-path:polygon(calc(var(--p)*1% + 8%) 0,100% 0,100% 100%,calc(var(--p)*1% - 8%) 100%)}
.duel .mots{position:absolute;inset:0;z-index:-1;font:800 clamp(5rem,19vw,21rem)/.8 var(--disp);font-stretch:75%;letter-spacing:-.06em;pointer-events:none}
.duel .mots span{position:absolute}.duel .mots span:first-child{left:var(--gx);top:9%}.duel .mots span:last-child{right:var(--gxr);bottom:6%}
.duel .mots span:first-child{color:rgba(255,255,255,.13)}
.duel .mots span:last-child{color:rgba(7,10,24,.12)}
.duel .w{display:flex;justify-content:center}
.duel .debat-w{width:min(680px,100%);background:rgba(255,255,255,.94);backdrop-filter:blur(14px);color:var(--encre);padding:clamp(22px,3.4vw,40px);border-radius:32px;box-shadow:0 60px 120px -50px rgba(0,0,0,.7)}
.duel .debat-w h3{font-size:clamp(1.8rem,3.6vw,3.2rem);font-stretch:80%}
.duel .k-d{position:absolute;top:clamp(80px,12vh,130px);left:0;right:0;text-align:center;font:500 .72rem var(--mono);letter-spacing:.22em;text-transform:uppercase;color:#fff;mix-blend-mode:difference}
.args{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:1.4rem}
.args h4{font-size:1.6rem;margin-bottom:.8rem;display:flex;align-items:center;gap:.5rem}
.args h4 i{width:12px;height:12px;border-radius:50%}
.arg{background:var(--blanc);border-radius:18px;box-shadow:var(--ombre),inset 0 0 0 1px var(--filet);padding:16px;margin-bottom:10px}
.arg .t{display:flex;gap:.6rem;align-items:center;margin-bottom:.5rem}
.arg p{white-space:pre-wrap;overflow-wrap:anywhere}
.arg.ref{background:var(--papier);box-shadow:inset 0 0 0 1.5px var(--filet)}
.arg .src{font:500 .74rem var(--mono);color:var(--bleu);text-decoration:none;display:inline-block;margin-top:.4rem;overflow-wrap:anywhere}
@media (max-width:760px){.args{grid-template-columns:1fr}}

/* ---------- PRÊTS : la vidéo dans les lettres ---------- */
.pret{position:relative;height:260svh;background:var(--papier)}
.pret .colle{position:sticky;top:0;height:100svh;overflow:hidden;isolation:isolate}
.pret .film{position:absolute;inset:0}
.pret .film video{width:100%;height:100%;object-fit:cover;transform:scale(calc(1.2 - var(--p,0)*.2))}
.pret .masque{--fond:1;position:absolute;inset:0;display:grid;place-items:center;background:rgba(244,240,230,var(--fond));mix-blend-mode:screen;will-change:transform}
.pret .mot{font:800 min(31vw,62svh)/.78 var(--disp);font-stretch:75%;letter-spacing:-.06em;color:#000;white-space:nowrap}
.pret .texte-p{position:absolute;left:var(--gx);right:var(--gxr);bottom:clamp(30px,8vh,80px);z-index:3;color:#fff;display:flex;justify-content:space-between;align-items:end;gap:1.4rem;flex-wrap:wrap;opacity:0}
.pret .texte-p h2{font-size:clamp(2.4rem,6vw,5.6rem);line-height:.88;font-stretch:78%;text-shadow:0 10px 40px rgba(0,0,0,.4)}
.pret .texte-p h2 em{color:var(--jaune)}
.pret .texte-p p{max-width:28em;font-size:1.02rem;opacity:.92}
.pret .ia{position:absolute;right:var(--gxr);top:90px;z-index:3;background:rgba(5,8,22,.86)}
.reduit .pret{height:auto}.reduit .pret .colle{position:relative;height:80svh}.reduit .pret .masque{display:none}.reduit .pret .texte-p{opacity:1}

/* ---------- le cinéma : piste horizontale ---------- */
.cine{position:relative;background:var(--nuit);color:#fff;overflow:hidden}
.cine .entete-c{padding:clamp(80px,10vw,130px) 0 30px}
.cine .sh h2 em{color:var(--jaune)}
.cine .sh p{color:rgba(255,255,255,.7)}
.piste-w{overflow:hidden}
.stories,.piste{display:flex;gap:18px;padding:10px var(--gx) clamp(60px,8vw,110px);width:max-content;will-change:transform}
.story{position:relative;flex:0 0 auto;width:clamp(220px,22vw,330px);aspect-ratio:9/16;border:0;padding:0;border-radius:26px;overflow:hidden;background:#000;cursor:pointer;text-align:left;color:#fff;transform-style:preserve-3d;box-shadow:0 40px 80px -40px #000}
.story .r{position:absolute;inset:0;display:block}
.story .r img,.story .r video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease),opacity .4s}
.story .r video{opacity:0}
.story.joue .r video{opacity:1}
.story:hover .r img,.story:hover .r video{transform:scale(1.06)}
.story::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25),transparent 30%,transparent 55%,rgba(0,0,0,.85))}
.story .lab{position:absolute;left:18px;right:18px;bottom:18px;z-index:2;display:flex;flex-direction:column;gap:.4rem}
.story .lab b{font:700 1.5rem/1 var(--disp);font-stretch:82%;letter-spacing:-.03em}
.story .lab span{font-size:.82rem;opacity:.8}
.story .ia{position:absolute;left:14px;top:14px;z-index:2}
.story .num{position:absolute;right:16px;top:14px;z-index:2;font:500 .7rem var(--mono);letter-spacing:.14em;opacity:.7}
.vids{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media (max-width:1000px){.vids{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.vids{grid-template-columns:1fr}}
.cine .vids{padding-bottom:clamp(80px,10vw,130px)}
.vid{border:0;padding:0;background:var(--blanc);border-radius:var(--r);box-shadow:var(--ombre),inset 0 0 0 1px var(--filet);overflow:hidden;text-align:left;cursor:pointer;display:flex;flex-direction:column;color:var(--encre)}
.cine .vid{background:rgba(255,255,255,.05);color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
.vid .f{aspect-ratio:16/9;position:relative;background:linear-gradient(135deg,var(--bleu),var(--bleu3));display:grid;place-items:center;overflow:hidden}
.vid .f::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 80% at 80% 10%,rgba(255,212,59,.45),transparent 60%)}
.vid .f .lecture{position:relative;width:64px;height:64px;border-radius:50%;background:#fff;display:grid;place-items:center;transition:transform .45s var(--spring)}
.vid:hover .f .lecture{transform:scale(1.15)}
.vid .f .lecture::after{content:"";margin-left:4px;border-left:16px solid var(--bleu);border-top:10px solid transparent;border-bottom:10px solid transparent}
.vid .f .ch{position:absolute;left:12px;top:12px;font:600 .7rem var(--sans);color:#fff;background:rgba(0,0,0,.28);padding:.3rem .55rem;border-radius:999px}
.vid .f iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vid .b{padding:14px 16px 16px;display:flex;flex-direction:column;gap:.35rem}
.vid .b b{font:700 1.05rem/1.15 var(--disp);font-stretch:90%}
.vid .b span{font:500 .74rem var(--sans);opacity:.65}
.lecteur{position:fixed;inset:0;z-index:100;background:rgba(5,8,22,.9);backdrop-filter:blur(12px);display:none;align-items:center;justify-content:center}
.lecteur.on{display:flex}
.lecteur .cadre{position:relative;height:min(92svh,860px);aspect-ratio:9/16;max-width:96vw;border-radius:24px;overflow:hidden;background:#000;box-shadow:0 40px 90px -30px #000}
.lecteur video{width:100%;height:100%;object-fit:cover}
.lecteur .barres{position:absolute;left:10px;right:10px;top:10px;display:flex;gap:4px;z-index:3}
.lecteur .barres i{flex:1;height:3px;border-radius:3px;background:rgba(255,255,255,.35);overflow:hidden}
.lecteur .barres i b{display:block;height:100%;width:0;background:#fff}
.lecteur .leg{position:absolute;left:0;right:0;bottom:0;padding:70px 18px 22px;background:linear-gradient(transparent,rgba(0,0,0,.85));color:#fff;z-index:3}
.lecteur .leg b{display:block;font:700 1.4rem/1.1 var(--disp);margin:.5rem 0 .4rem}
.lecteur .leg p{font-size:.9rem;opacity:.9}
.lecteur .leg a{color:var(--jaune)}
.lecteur .zg,.lecteur .zd{position:absolute;top:0;bottom:0;width:40%;z-index:2;border:0;background:transparent;cursor:pointer}
.lecteur .zg{left:0}.lecteur .zd{right:0}
.lecteur .x,.lecteur .son{position:absolute;top:24px;z-index:4;border:0;border-radius:999px;background:rgba(255,255,255,.18);color:#fff;padding:.45rem .8rem;font:600 .78rem var(--sans);cursor:pointer;backdrop-filter:blur(6px)}
.lecteur .x{right:12px}.lecteur .son{left:12px}
.ia{display:inline-flex;align-items:center;gap:.4rem;border-radius:999px;padding:.32rem .62rem;font:600 .64rem/1 var(--sans);letter-spacing:.04em;color:#fff;background:rgba(5,8,22,.55);backdrop-filter:blur(6px)}
.ia::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--jaune)}
@media (max-width:900px){.stories,.piste{width:auto;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.stories::-webkit-scrollbar{display:none}.story{scroll-snap-align:center;width:72vw}}

/* ---------- offre ---------- */
.offre{display:grid;grid-template-columns:1fr 1fr;gap:20px;perspective:1400px}
@media (max-width:860px){.offre{grid-template-columns:1fr}}
.plan{--mx:50%;--my:50%;border-radius:32px;padding:clamp(24px,3.4vw,40px);display:flex;flex-direction:column;gap:1rem;position:relative;overflow:hidden;transform-style:preserve-3d;transition:transform .6s var(--ease)}
.plan.g{background:var(--blanc);box-shadow:var(--ombre),inset 0 0 0 1px var(--filet)}
.plan.p{background:var(--nuit);color:#fff;box-shadow:0 60px 110px -50px rgba(5,8,22,.95)}
.plan.p::before{content:"";position:absolute;inset:-2px;border-radius:inherit;padding:2px;background:conic-gradient(from calc(var(--a,0)*1deg),#FFD43B,#FF8A5B,#B26BFF,#2B4BFF,#3BE39B,#FFD43B);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:holo 6s linear infinite}
@property --a{syntax:"<number>";inherits:false;initial-value:0}
@keyframes holo{to{--a:360}}
.plan.p::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(420px circle at var(--mx) var(--my),rgba(255,212,59,.22),transparent 50%),linear-gradient(115deg,transparent 30%,rgba(255,255,255,.07) 45%,transparent 60%);mix-blend-mode:screen}
.plan>*{position:relative;z-index:1}
.plan .px{font:800 clamp(3.6rem,8vw,6.4rem)/.9 var(--disp);font-stretch:76%;letter-spacing:-.06em;font-variant-numeric:tabular-nums}
.plan .px small{font:600 1rem var(--sans);letter-spacing:0;opacity:.75;margin-left:.3rem}
.plan ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}
.plan li{display:flex;gap:.6rem;align-items:flex-start}
.plan li::before{content:"✓";flex:0 0 22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:.72rem;font-weight:800;background:var(--vertp);color:var(--vert)}
.plan.p li::before{background:var(--jaune);color:var(--encre)}
.plan .note{font:500 .76rem var(--sans);opacity:.7}
.plan li.bientot{opacity:.72;font-style:normal}
.plan li.bientot::before{content:"…";background:rgba(255,255,255,.14);color:currentColor}
.plan.g li.bientot::before{background:var(--filet2)}

/* ---------- fondateur ---------- */
.fondateur{display:grid;grid-template-columns:minmax(260px,.85fr) 1.15fr;gap:clamp(24px,5vw,80px);align-items:center;position:relative}
.fondateur .ph{position:relative;aspect-ratio:4/5;border-radius:36px;overflow:hidden;clip-path:inset(12% 12% 12% 12% round 36px);box-shadow:0 60px 100px -50px rgba(7,10,24,.6)}
.fondateur .ph img{width:100%;height:100%;object-fit:cover;transform:scale(1.15)}
.fondateur .ph::after{content:"Fondateur";position:absolute;left:18px;bottom:18px;background:var(--jaune);color:var(--encre);font:700 .78rem var(--sans);padding:.4rem .8rem;border-radius:999px}
.fondateur blockquote{margin:0;font:700 clamp(2rem,4.4vw,4.2rem)/1 var(--disp);font-stretch:82%;letter-spacing:-.04em}
.fondateur blockquote .mot-q{opacity:.6;transition:opacity .2s}
.fondateur blockquote em .mot-q{opacity:1!important}
.fondateur blockquote em{color:var(--bleu)}
.fondateur .sig{margin-top:1.6rem;display:flex;flex-direction:column;gap:.2rem}
.fondateur .sig b{font:700 1.15rem var(--sans)}
.fondateur .sig span{color:var(--gris);font-size:.94rem}
.reduit .fondateur .ph{clip-path:none}.reduit .fondateur blockquote .mot-q{opacity:1}
@media (max-width:760px){.fondateur{grid-template-columns:1fr}}

/* ---------- partenaires ---------- */
.defile{overflow:hidden;padding-block:clamp(40px,6vw,80px);border-block:1px solid var(--filet);background:var(--blanc)}
.defile .rang{display:flex;width:max-content;gap:3rem;animation:tick 30s linear infinite;font:800 clamp(3rem,9vw,8rem)/1 var(--disp);font-stretch:75%;letter-spacing:-.05em;white-space:nowrap;will-change:transform}
.defile .rang span{display:inline-flex;align-items:center;gap:3rem}
.defile .rang em{color:var(--bleu)}
.defile .rang i{width:.5em;height:.5em;flex:0 0 auto}
.defile:hover .rang{animation-play-state:paused}
.parts{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;perspective:1200px}
@media (max-width:1000px){.parts{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.parts{grid-template-columns:1fr}}
.part{--mx:50%;--my:50%;position:relative;overflow:hidden;background:var(--blanc);border-radius:var(--r);box-shadow:var(--ombre),inset 0 0 0 1px var(--filet);padding:22px;display:flex;flex-direction:column;gap:.6rem;transform-style:preserve-3d}
.part::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(260px circle at var(--mx) var(--my),rgba(255,212,59,.25),transparent 60%);opacity:0;transition:opacity .3s}
.part:hover::after{opacity:1}
.part .ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--encre);color:var(--jaune);font-size:1.3rem}
.part b{font:700 1.35rem var(--disp);font-stretch:86%}
.part span{font-size:.92rem;color:var(--gris)}

/* ---------- formulaires & fenêtres ---------- */
.champ{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.85rem}
.champ label{font:600 .82rem var(--sans)}
.champ input,.champ textarea,.champ select{border:0;box-shadow:inset 0 0 0 1.5px var(--filet);border-radius:14px;padding:.85rem .95rem;background:var(--blanc);font-size:1rem;transition:box-shadow .25s}
.champ input:focus,.champ textarea:focus,.champ select:focus{box-shadow:inset 0 0 0 2px var(--bleu),0 0 0 5px rgba(43,75,255,.12);outline:none}
.case{display:flex;gap:.6rem;align-items:flex-start;font-size:.86rem;color:var(--encre2);margin-bottom:.7rem}
.case input{margin-top:.2rem;accent-color:var(--bleu);width:17px;height:17px;flex:0 0 auto}
.msg{min-height:1.3em;font:600 .86rem var(--sans)}
.msg.ok{color:var(--vert)}.msg.err{color:var(--rouge)}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.modal{position:fixed;inset:0;z-index:105;background:rgba(5,8,22,.55);backdrop-filter:blur(10px);display:none;align-items:center;justify-content:center;padding:16px}
.modal.on{display:flex}
.modal .box{position:relative;width:min(480px,100%);max-height:calc(100svh - 32px);overflow:auto;background:var(--papier);border-radius:30px;padding:clamp(24px,4vw,36px);box-shadow:0 50px 100px -30px rgba(5,8,22,.7);animation:monte .6s var(--spring)}
@keyframes monte{from{transform:translateY(40px) scale(.94) rotate(-1.5deg);opacity:0}}
.modal .x{position:absolute;right:14px;top:14px;border:0;background:var(--blanc);box-shadow:inset 0 0 0 1px var(--filet);width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:1rem}
.modal h3{font-size:2.3rem;margin:.4rem 0 .4rem;font-stretch:80%}
.onglets{display:flex;background:var(--filet2);border-radius:999px;padding:4px;margin:1rem 0 1.2rem}
.onglets button{flex:1;border:0;background:transparent;border-radius:999px;padding:.62rem;font:700 .88rem var(--sans);cursor:pointer}
.onglets button[aria-selected="true"]{background:var(--blanc);box-shadow:var(--ombre)}
.toast{position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom,0px));z-index:115;transform:translate(-50%,160%);background:var(--encre);color:#fff;padding:.85rem 1.2rem;border-radius:16px;font:600 .9rem var(--sans);transition:transform .6s var(--spring);max-width:92vw;box-shadow:0 20px 40px -20px #000}
.toast.on{transform:translate(-50%,0)}
.partage{position:absolute;z-index:20;background:var(--blanc);border-radius:16px;box-shadow:0 20px 50px -20px rgba(7,10,24,.45),inset 0 0 0 1px var(--filet);padding:6px;display:flex;flex-direction:column;min-width:200px}
.partage a,.partage button{border:0;background:transparent;text-align:left;padding:.6rem .8rem;border-radius:10px;font:600 .88rem var(--sans);text-decoration:none;cursor:pointer}
.partage a:hover,.partage button:hover{background:var(--filet2)}
.miettes{position:absolute;inset:0;pointer-events:none;overflow:visible}
.miettes i{position:absolute;width:6px;height:6px;border-radius:2px}

/* ---------- pages intérieures ---------- */
main{position:relative}
body:not([data-page="une"]) main{padding-top:78px}
.page-t{position:relative;padding-block:clamp(56px,8vw,120px) clamp(24px,3vw,36px);overflow-x:clip}
.page-t::before{content:"";position:absolute;left:50%;top:-30vw;width:120vw;height:60vw;transform:translateX(-50%);background:radial-gradient(closest-side,rgba(255,138,91,.28),rgba(255,212,59,.14) 45%,transparent 75%);pointer-events:none;z-index:-1}
.page-t h1{font-size:clamp(3.2rem,9.4vw,9rem);line-height:.86;letter-spacing:-.042em;word-spacing:.06em;font-weight:800;font-stretch:80%}
.page-t h1 em{color:var(--bleu)}
.page-t p{max-width:42em;color:var(--encre2);margin-top:1.2rem;font-size:1.12rem}
.article{max-width:820px;padding-top:clamp(20px,4vw,50px)}
.article .tete-a{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;margin-bottom:1.3rem}
.article h1{font-size:clamp(2.5rem,6vw,5.4rem);line-height:.94;letter-spacing:-.035em;word-spacing:.05em;font-weight:800;font-stretch:80%;position:relative}
.article .chapo{font:400 1.28rem/1.5 var(--sans);color:var(--encre2);margin:1.3rem 0 1.7rem}
.article section{margin-top:2.2rem}
.article section h2{font-size:2rem;margin-bottom:.8rem}
.article section ul{padding-left:1.2rem;margin:0;display:flex;flex-direction:column;gap:.55rem;font-size:1.08rem}
.article .pas{background:var(--ambrep);border-radius:20px;padding:20px 24px}
.article .srcs ol{padding-left:1.2rem;margin:0;display:flex;flex-direction:column;gap:.6rem}
.article .srcs a{color:var(--bleu);font-weight:600}
.article .srcs span{display:block;font:500 .78rem var(--mono);color:var(--gris)}
.article .gros-tampon{position:absolute;right:0;top:-14px;font:800 1.7rem/1 var(--disp);font-stretch:75%;text-transform:uppercase;letter-spacing:.04em;color:#07673F;border:3.5px solid currentColor;border-radius:12px;padding:.38rem .75rem;transform:rotate(-8deg);opacity:0;background:rgba(244,240,230,.9)}
.article .gros-tampon.a_confirmer{color:var(--ambre)}.article .gros-tampon.conteste{color:var(--rouge)}
.corps-t{font:400 1.1rem/1.75 var(--sans);max-width:780px}
.corps-t h2{font-size:2rem;margin:2.4rem 0 .8rem}
.corps-t p,.corps-t li{color:var(--encre2)}
.corps-t p{margin:0 0 1rem}
.corps-t a{color:var(--bleu)}
.tbl{overflow-x:auto;border-radius:16px;box-shadow:inset 0 0 0 1px var(--filet);background:var(--blanc)}
.tbl table{width:100%;border-collapse:collapse;font-size:.88rem;min-width:640px}
.tbl th,.tbl td{text-align:left;padding:.62rem .85rem;border-bottom:1px solid var(--filet2);vertical-align:top}
.tbl th{font:600 .72rem var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--gris);background:var(--papier)}

/* ---------- pied : lettres géantes qui ondulent ---------- */
.pied{position:relative;margin-top:0;background:var(--nuit);color:#B9C0D6;padding-top:clamp(70px,9vw,120px);overflow:hidden}
.pied::before{content:"";position:absolute;left:50%;bottom:-30%;width:120%;height:80%;transform:translateX(-50%);background:radial-gradient(closest-side,rgba(43,75,255,.45),transparent 70%);pointer-events:none}
.pied .w{position:relative}
.pied .g{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem;font-size:.9rem;line-height:1.8}
.pied b{color:#fff}
.pied a{color:#B9C0D6;text-decoration:none;transition:color .2s}
.pied a:hover{color:var(--jaune)}
.pied .geant{display:flex;justify-content:center;font:800 clamp(4.4rem,20vw,22rem)/.78 var(--disp);font-stretch:75%;letter-spacing:-.07em;color:#fff;white-space:nowrap;margin-top:3.4rem;user-select:none}
.pied .geant span{display:inline-block;will-change:transform}
.pied .geant span.b{color:var(--jaune)}
.pied .bas{border-top:1px solid rgba(255,255,255,.1);padding-block:1.1rem max(1.1rem,env(safe-area-inset-bottom,0px));font:500 .72rem var(--mono);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;color:#8C93AE}
@media (max-width:900px){.pied .g{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.pied .g{grid-template-columns:1fr}}

/* outils « se préparer » */
.tabs{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1.2rem}
.tab{border:0;background:var(--blanc);box-shadow:inset 0 0 0 1px var(--filet);border-radius:999px;padding:.62rem 1.05rem;font:600 .9rem var(--sans);cursor:pointer}
.tab[aria-selected="true"]{background:var(--encre);color:#fff;box-shadow:none}
.panel{display:none;background:var(--blanc);border-radius:var(--r);box-shadow:var(--ombre),inset 0 0 0 1px var(--filet);padding:clamp(18px,3vw,34px)}
.panel.on{display:block}
.two{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(18px,4vw,48px)}
@media (max-width:900px){.two{grid-template-columns:1fr}}
.q{padding:.9rem 0;border-bottom:1px solid var(--filet2)}
.q p{font-weight:600;margin-bottom:.5rem}.q p small{display:block;font:500 .78rem var(--sans);color:var(--gris)}
.opts2{display:flex;gap:.4rem;flex-wrap:wrap}
.opts2 label{position:relative}.opts2 input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.opts2 span{display:inline-block;background:var(--filet2);padding:.45rem .9rem;border-radius:999px;font:600 .86rem var(--sans);cursor:pointer}
.opts2 input:checked+span{background:var(--bleu);color:#fff}
.res{background:var(--nuit);color:#fff;border-radius:24px;padding:1.5rem;position:sticky;top:96px;align-self:start}
.res .sc{font:800 4.4rem/1 var(--disp);font-stretch:78%}.res .sc small{font-size:1.1rem;opacity:.7}
.meter{height:5px;background:rgba(255,255,255,.2);border-radius:5px;margin:.9rem 0;overflow:hidden}.meter i{display:block;height:100%;background:var(--jaune);width:0;transition:width .6s var(--ease)}
.chk{display:grid;grid-template-columns:1fr 1fr;gap:0 1.6rem}
.chk label{display:flex;gap:.6rem;align-items:flex-start;padding:.5rem 0;border-bottom:1px solid var(--filet2);font-size:.94rem;cursor:pointer}
.chk input{margin-top:.25rem;accent-color:var(--bleu);width:16px;height:16px}
@media (max-width:700px){.chk{grid-template-columns:1fr}}
.big{display:flex;gap:1rem 2.4rem;flex-wrap:wrap;margin:1rem 0 1.4rem}.big div{display:flex;flex-direction:column}.big b{font:800 3rem/1 var(--disp);font-stretch:80%;color:var(--bleu)}.big span{font:500 .74rem var(--mono);color:var(--gris)}
.row{display:flex;gap:1rem;flex-wrap:wrap;align-items:end;margin-bottom:1rem}
.row label{display:flex;flex-direction:column;gap:.3rem;font:600 .78rem var(--sans);color:var(--gris)}

/* anciens composants (tableau à palettes, carte 2D) gardés pour compatibilité */
.tableau{display:none}

/* révélations */
.rv{opacity:0;transform:translateY(34px)}
.reduit .rv,.no-js .rv{opacity:1;transform:none}
@keyframes flotte{to{transform:translate(-40px,30px) scale(1.12)}}
@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.grain{display:none}}
@media print{.hd,.tick,.pied,.modal,.toast,.grain,.curseur,.voile,.progres{display:none!important}}
/* ---- V7.3 Radar des sujets (administration) ---- */
.st.recoupe{background:var(--bleup);color:var(--bleu3);box-shadow:inset 0 0 0 1.5px rgba(43,75,255,.3)}
.rd-hero{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:clamp(18px,4vw,48px);align-items:center;background:radial-gradient(120% 140% at 0% 0%,var(--nuit3),var(--nuit) 60%);color:#fff;border-radius:calc(var(--r) + 6px);padding:clamp(18px,4vw,40px);box-shadow:var(--ombre);overflow:hidden;position:relative}
.rd-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(1px 1px at 20% 30%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 70% 80%,rgba(255,255,255,.35),transparent),radial-gradient(1.5px 1.5px at 85% 15%,rgba(255,212,59,.6),transparent);pointer-events:none}
.rd-ecran{position:relative;width:100%;max-width:420px;margin:0 auto}
.rd-ecran canvas{display:block;width:100%;aspect-ratio:1;border-radius:50%;cursor:pointer;box-shadow:0 0 0 1px rgba(143,168,255,.25),0 0 80px -10px rgba(43,75,255,.55)}
.rd-zones{margin:.8rem 0 0;text-align:center;font-size:.8rem;line-height:1.35;color:var(--ciel)}
.rd-texte{position:relative;z-index:1;min-width:0}
.rd-texte .k{color:var(--jaune)}
.rd-texte h2{font:700 clamp(1.6rem,3.4vw,2.6rem)/1.05 var(--disp);letter-spacing:-.02em;margin:.2rem 0 1rem}
.rd-texte h2 i{font:400 1.05em var(--it);color:var(--jaune)}
.rd-texte p{color:var(--lune);max-width:56ch;margin:0 0 .8rem}
.rd-regle{background:rgba(255,255,255,.06);border-radius:14px;padding:.75rem .9rem;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
.rd-regle b{color:#fff}
.rd-compteurs{display:flex;gap:clamp(12px,3vw,32px);margin:1.1rem 0 1.2rem;flex-wrap:wrap}
.rd-compteurs b{display:block;font:700 clamp(1.8rem,4vw,2.6rem)/1 var(--disp);color:#fff}
.rd-compteurs span{font:500 .7rem var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ciel)}
.rd-go{display:flex;gap:.9rem;align-items:center;flex-wrap:wrap}
.rd-go .btn svg{flex:none}
.rd-go .btn[disabled]{opacity:.7;cursor:wait}
.rd-quand{font-size:.85rem;color:var(--ciel)}
.rd-hero .msg{color:#fff;min-height:1.2em;margin-top:.6rem}
.rd-legende{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;padding:0;margin:1.1rem 0 .4rem;font-size:.9rem;color:var(--encre2)}
.rd-legende i{display:inline-block;width:.8rem;height:.8rem;border-radius:50%;margin-right:.45rem;vertical-align:-.05rem}
.rd-legende i.a{background:var(--jaune2)}.rd-legende i.r{background:var(--bleu)}.rd-legende i.v{background:var(--vert)}
.rd-zone{margin-top:1.8rem}
.rd-zone h3{display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap;font:700 1.35rem/1.1 var(--disp);margin:0 0 .9rem}
.rd-zone h3 small{font:500 .72rem var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--gris)}
.rd-anneau{width:1.1rem;height:1.1rem;border-radius:50%;flex:none;align-self:center;box-shadow:inset 0 0 0 3px var(--bleu)}
.rd-zone[data-e="regional"] .rd-anneau{box-shadow:inset 0 0 0 3px var(--bleu),0 0 0 3px var(--bleup)}
.rd-zone[data-e="national"] .rd-anneau{box-shadow:inset 0 0 0 3px var(--bleu),0 0 0 3px var(--bleup),0 0 0 6px var(--bleu)}
.rd-zone[data-e="international"] .rd-anneau{background:var(--jaune);box-shadow:inset 0 0 0 3px var(--encre)}
.rd-grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:14px}
.rd-carte{position:relative;background:var(--blanc);border-radius:var(--r);box-shadow:var(--ombre),inset 0 0 0 1px var(--filet);padding:18px 18px 14px;display:flex;flex-direction:column;gap:.6rem;min-width:0;border-top:4px solid var(--jaune2)}
.rd-carte[data-statut="recoupe"]{border-top-color:var(--bleu)}
.rd-carte[data-statut="verifie"]{border-top-color:var(--vert)}
.rd-carte h4{font:700 1.08rem/1.25 var(--sans);margin:0;overflow-wrap:anywhere}
.rd-tete{display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap}
.rd-tete .st{transform:none}
.rd-lieu{display:inline-flex;align-items:center;gap:.3rem;font:600 .8rem var(--sans);color:var(--encre2);min-width:0;overflow-wrap:anywhere}
.rd-lieu svg{width:15px;height:15px;fill:var(--rouge);flex:none}
.rd-jauge{display:flex;align-items:center;gap:.55rem;font-size:.88rem;color:var(--gris)}
.rd-jauge b{color:var(--encre)}
.rd-pts{display:inline-flex;gap:3px;flex:none}
.rd-pts i{width:10px;height:10px;border-radius:50%;background:var(--jaune2)}
.rd-carte[data-statut="recoupe"] .rd-pts i{background:var(--bleu)}
.rd-carte[data-statut="verifie"] .rd-pts i{background:var(--vert)}
.rd-det summary{cursor:pointer;font:600 .85rem var(--sans);color:var(--bleu2);min-height:24px}
.rd-det ul{margin:.5rem 0 0;padding-left:1.1rem;font-size:.86rem;display:grid;gap:.35rem}
.rd-det a{overflow-wrap:anywhere}
.rd-date{color:var(--gris2);font-size:.78rem;white-space:nowrap}
.rd-actions{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center;margin-top:auto}
.rd-attente{font-size:.82rem;color:#7A4A00;background:var(--ambrep);border-radius:10px;padding:.4rem .6rem}
.rd-carte .msg:empty{display:none}
.rd-vide{color:var(--gris);font-style:italic}
.rd-flash{animation:rdflash 1.4s var(--ease)}
@keyframes rdflash{0%,40%{box-shadow:0 0 0 4px var(--jaune),var(--ombre)}100%{box-shadow:var(--ombre),inset 0 0 0 1px var(--filet)}}
.rd-sources{margin-top:2rem}
.rd-sources summary{cursor:pointer;display:flex;gap:.6rem;align-items:baseline;flex-wrap:wrap}
.rd-sources summary small{color:var(--gris)}
.rd-autorises{display:flex;flex-wrap:wrap;gap:.35rem}
.rd-autorises span{background:var(--filet2);border-radius:999px;padding:.25rem .6rem;font-size:.8rem}
@media (max-width:900px){.rd-hero{grid-template-columns:1fr}.rd-ecran{max-width:340px}}
@media (max-width:520px){.rd-carte{padding:16px 14px 12px}.rd-go .btn{width:100%}}
@media (prefers-reduced-motion:reduce){.rd-flash{animation:none;outline:3px solid var(--jaune)}}
/* ===== V7.4 — « Vérifié par des humains » (carte MapLibre locale + liste) ===== */
.sr-t{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.vf-chapo{max-width:760px;margin-top:1.2rem;font-size:clamp(1.02rem,1.6vw,1.2rem);color:var(--encre2)}
.vf-etapes{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;margin:1.4rem 0 0;padding:0}
.vf-etapes li{display:flex;align-items:center;gap:.5rem;background:var(--blanc);border-radius:999px;padding:.4rem .9rem .4rem .4rem;box-shadow:0 1px 0 var(--filet);font:600 .86rem var(--sans)}
.vf-etapes b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--encre);color:var(--jaune);font:700 .8rem var(--mono)}
.vf-etapes li:nth-child(n+3) b{background:var(--vert);color:#fff}
.vf-zone{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(16px,2.4vw,32px);align-items:start;padding-bottom:clamp(48px,6vw,96px)}
.vf-carte-boite{position:sticky;top:92px}
.vf-carte{height:min(70vh,640px);border-radius:24px;overflow:hidden;background:#dfe6f5;box-shadow:0 30px 60px -30px rgba(7,10,24,.35),inset 0 0 0 1px var(--filet)}
.vf-carte.sans-gl{display:grid;place-items:center;padding:1.5rem;text-align:center}
.vf-legende{display:flex;flex-wrap:wrap;gap:.3rem .9rem;margin:.7rem .2rem 0;font-size:.82rem;color:var(--gris);align-items:center}
.vf-legende i{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:-.5rem}
.vf-legende i.local,.vf-m.local i{background:var(--aube)}.vf-legende i.regional,.vf-m.regional i{background:var(--jaune2)}
.vf-legende i.national,.vf-m.national i{background:var(--bleu)}.vf-legende i.international,.vf-m.international i{background:var(--vert)}
.vf-m{position:relative;width:34px;height:34px;border:0;background:transparent;cursor:pointer;padding:0;display:grid;place-items:center}
.vf-m i{width:16px;height:16px;border-radius:50%;box-shadow:0 0 0 3px #fff,0 4px 10px rgba(7,10,24,.35);transition:transform .25s}
.vf-m::before{content:"";position:absolute;inset:4px;border-radius:50%;border:2px solid currentColor;color:rgba(43,75,255,.55);opacity:0}
.vf-m.actif i,.vf-m:hover i,.vf-m:focus-visible i{transform:scale(1.35)}
.vf-m:focus-visible{outline:3px solid var(--jaune);outline-offset:2px;border-radius:50%}
.vf-cartes{display:grid;gap:14px}
.vf-c{background:var(--blanc);border-radius:20px;padding:20px 20px 16px;box-shadow:0 1px 0 var(--filet),0 18px 40px -28px rgba(7,10,24,.3);border-left:5px solid var(--bleu);scroll-margin:110px}
.vf-c[data-e=local]{border-left-color:var(--aube)}.vf-c[data-e=regional]{border-left-color:var(--jaune2)}.vf-c[data-e=international]{border-left-color:var(--vert)}
.vf-c:focus{outline:3px solid var(--jaune);outline-offset:3px}
.vf-c-tete{display:flex;flex-wrap:wrap;gap:.4rem .6rem;align-items:center;font-size:.8rem;color:var(--gris)}
.vf-lieu{font-weight:700;color:var(--encre)}
.vf-ech{border-radius:999px;padding:.15rem .55rem;background:var(--filet2);font-weight:600}
.vf-c h3{font-size:clamp(1.15rem,1.8vw,1.4rem);line-height:1.15;margin:.55rem 0 .4rem;letter-spacing:-.01em}
.vf-res{color:var(--encre2);margin:0 0 .5rem}
.vf-preuve{display:flex;align-items:center;gap:.5rem;font-size:.88rem;margin:.4rem 0}
.vf-pts{display:inline-flex;gap:3px}.vf-pts i{width:8px;height:8px;border-radius:50%;background:var(--vert)}
.vf-src summary{cursor:pointer;font:600 .86rem var(--sans);color:var(--bleu2);min-height:28px;display:flex;align-items:center}
.vf-src ul{margin:.4rem 0 0;padding-left:1.1rem;font-size:.86rem;display:grid;gap:.35rem}.vf-src a{overflow-wrap:anywhere}
.vf-dates{font-size:.78rem;color:var(--gris);margin:.6rem 0 0}
.vf-voir{margin-top:.7rem;min-height:36px}
.vf-vide,.vf-attente{background:var(--blanc);border-radius:20px;padding:24px;color:var(--gris)}
.vf-c.flash{animation:vfFlash 1.4s ease}
.rd-enligne{font-size:.85rem;margin:.6rem 0 0;color:#07673F}
.rd-fc{font-size:.84rem;margin-top:.6rem;background:var(--bleup);border-radius:12px;padding:.6rem .8rem}.rd-fc ul{margin:.3rem 0 0;padding-left:1rem}
.rd-pub{display:grid;gap:.6rem;margin-top:.8rem;padding:.8rem;border-radius:14px;background:var(--jaunep)}
.rd-pub label,.rd-ext label{display:grid;gap:.3rem;font:600 .85rem var(--sans)}
.rd-ext{display:grid;gap:.7rem;margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--filet)}
.rd-ext .rd-coche{display:flex;gap:.6rem;align-items:flex-start;font-weight:400}.rd-coche input{width:22px;height:22px;flex:none;margin-top:2px}
@media (prefers-reduced-motion:no-preference){
  .vf-c.cache{opacity:0;transform:translateY(28px) scale(.98)}
  .vf-c.vu{opacity:1;transform:none;transition:opacity .7s cubic-bezier(.2,.7,.2,1) calc(var(--i,0) * 70ms),transform .8s cubic-bezier(.2,.7,.2,1) calc(var(--i,0) * 70ms)}
  .vf-m::before{animation:vfPing 2.4s cubic-bezier(.2,.6,.3,1) infinite}
  .vf-m.local::before{color:rgba(255,138,91,.7)}.vf-m.international::before{color:rgba(15,168,111,.6)}
  .vf-etapes li{animation:vfMonte .7s cubic-bezier(.2,.7,.2,1) both}.vf-etapes li:nth-child(2){animation-delay:.12s}.vf-etapes li:nth-child(3){animation-delay:.24s}.vf-etapes li:nth-child(4){animation-delay:.36s}
}
@keyframes vfPing{0%{transform:scale(.6);opacity:.9}80%,100%{transform:scale(2.2);opacity:0}}
@keyframes vfMonte{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes vfFlash{0%,100%{box-shadow:0 1px 0 var(--filet)}30%{box-shadow:0 0 0 4px var(--jaune)}}
@media (prefers-reduced-motion:reduce){.vf-c.flash{animation:none;outline:3px solid var(--jaune)}}
@media (max-width:900px){.vf-zone{grid-template-columns:1fr}.vf-carte-boite{position:relative;top:0}.vf-carte{height:52vh;border-radius:18px}}
@media (max-width:520px){.vf-c{padding:16px 14px 12px}.vf-etapes li{font-size:.8rem}}
/* V7.4 : 7 liens dans l'en-tête (ajout « Vérifié ») — jamais de retour à la ligne */
.hd nav a{white-space:nowrap}
@media (min-width:1101px) and (max-width:1380px){.hd .horloge{display:none}.hd nav{margin-left:.3rem}.hd nav a{padding:.55rem .62rem}}
@media (min-width:1101px) and (max-width:1200px){.hd nav a{padding:.5rem .45rem;font-size:.84rem}}
/* ===== V7.5.0 : événements citoyens à quorum, podcast ===== */
.ev-zone{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(16px,2.4vw,32px);align-items:start;padding-bottom:clamp(48px,6vw,96px)}
.ev-h2{font:700 1.25rem var(--sans);margin:0 0 .9rem}
.ev-cartes{display:grid;gap:14px}
.ev-c{background:var(--blanc);border-radius:20px;padding:20px;box-shadow:0 1px 0 var(--filet),0 18px 40px -28px rgba(7,10,24,.3);border-top:5px solid #FFB300;scroll-margin:110px}
.ev-c.ok{border-top-color:#16A06A}
.ev-haut{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.5rem}
.ev-ville{font:600 .78rem var(--mono,monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--gris)}
.ev-c h3{font:700 1.2rem/1.25 var(--sans);margin:.1rem 0 .35rem;overflow-wrap:anywhere}
.ev-quand{font-weight:600;color:var(--encre);margin:0 0 .5rem;text-transform:none}
.ev-desc{color:var(--gris);margin:0 0 .9rem;overflow-wrap:anywhere;white-space:pre-line}
.ev-jauge{height:12px;border-radius:99px;background:rgba(7,10,24,.08);overflow:hidden}
.ev-jauge i{display:block;height:100%;width:var(--p);border-radius:inherit;background:linear-gradient(90deg,#FFB300,#FFD43B)}
.ev-c.ok .ev-jauge i{background:linear-gradient(90deg,#16A06A,#2EE59D)}
.ev-compte{margin:.45rem 0 .8rem;font-size:.92rem}
.ev-pied{display:flex;justify-content:space-between;align-items:center;gap:.8rem;flex-wrap:wrap}
.ev-par{font-size:.8rem;color:var(--gris)}
.ev-cote{display:grid;gap:14px;position:sticky;top:96px}
.ev-proposer .row{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.ev-proposer input,.ev-proposer textarea{width:100%}
.ev-coche{display:flex;gap:.55rem;align-items:flex-start;margin:.4rem 0 1rem;font-size:.9rem}
.ev-coche input{margin-top:.25rem;width:auto}
.ev-mes{background:var(--blanc);border-radius:20px;padding:20px}
.ev-mes ul{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.pc-zone{max-width:860px;padding-bottom:clamp(48px,6vw,96px)}
.pc-liste{display:grid;gap:16px}
.pc-ep{background:var(--blanc);border-radius:22px;padding:22px;box-shadow:0 1px 0 var(--filet),0 18px 40px -28px rgba(7,10,24,.3)}
.pc-tete{display:flex;gap:16px;align-items:center;margin-bottom:14px}
.pc-tete h2{font:700 1.3rem/1.2 var(--sans);margin:0 0 .25rem}
.pc-meta{margin:0;color:var(--gris);font-size:.88rem}
.pc-onde{flex:none;display:flex;gap:4px;align-items:center;justify-content:center;width:58px;height:58px;border-radius:16px;background:var(--encre)}
.pc-onde i{display:block;width:5px;height:14px;border-radius:3px;background:#FFD43B}
.pc-onde i:nth-child(2),.pc-onde i:nth-child(4){height:24px}.pc-onde i:nth-child(3){height:32px}
.pc-ep audio{width:100%;display:block}
.pc-sujets{font-size:.9rem;margin:.9rem 0 0}
.pc-texte{margin-top:.9rem}.pc-texte summary{cursor:pointer;font-weight:600}.pc-texte p{color:var(--gris);margin:.6rem 0 0}
.pc-credit{font-size:.82rem;color:var(--gris);margin-top:1.4rem}
.pc-adm{display:grid;gap:14px}
.pc-adm .pc-ep textarea{width:100%;font:inherit;line-height:1.5}
.pc-etat{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin:.3rem 0 .8rem}
.pc-valid{display:flex;gap:.8rem;flex-wrap:wrap;align-items:center;margin-top:.9rem;padding:.8rem 1rem;border-radius:14px;background:rgba(46,229,157,.12)}
.pc-yt{margin-top:.9rem;padding:.8rem 1rem;border-radius:14px;background:rgba(255,0,0,.06)}
@media (prefers-reduced-motion:no-preference){
  .ev-c.anim{opacity:0;transform:translateY(24px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
  .ev-c.anim.vu{opacity:1;transform:none}
  .ev-jauge i{animation:evRemplit 1.1s cubic-bezier(.2,.7,.2,1) both}
  .pc-ep.joue .pc-onde i{animation:pcOnde .9s ease-in-out infinite alternate}
  .pc-ep.joue .pc-onde i:nth-child(2){animation-delay:.15s}.pc-ep.joue .pc-onde i:nth-child(3){animation-delay:.3s}.pc-ep.joue .pc-onde i:nth-child(4){animation-delay:.45s}.pc-ep.joue .pc-onde i:nth-child(5){animation-delay:.6s}
}
@keyframes evRemplit{from{width:0}}
@keyframes pcOnde{from{transform:scaleY(.4)}to{transform:scaleY(1.15)}}
@media (max-width:900px){.ev-zone{grid-template-columns:1fr}.ev-cote{position:static}}
@media (max-width:520px){.ev-proposer .row{grid-template-columns:1fr}.ev-c,.pc-ep{padding:16px 14px}.pc-onde{width:46px;height:46px}}

/* ===== V7.6.0 : rubrique « Servir » (engagement, distincte de l'information) ===== */
.sv{--sv-bleu:#1d3b8f;--sv-rouge:#c8102e;padding-bottom:3rem}
.sv-bandeau{margin:1.4rem 0 0;padding:1rem 1.2rem;border-radius:14px;background:#fff7e0;border:2px dashed #b7791f;color:#3d2c08;font-size:.95rem;line-height:1.5}
.sv-bandeau a{color:inherit;text-decoration:underline}
.sv-tete .k{color:var(--sv-rouge)}
.sv-tete h1 em{color:var(--sv-bleu)}
.sv-tete{position:relative}
.sv-tete::before{content:"";display:block;width:96px;height:6px;border-radius:3px;margin-bottom:1rem;background:linear-gradient(90deg,var(--sv-bleu) 0 33%,#fff 33% 66%,var(--sv-rouge) 66%);box-shadow:0 0 0 1px #0002}
.sv-bloc{margin-top:2.2rem}
.sv-bloc h2{font-size:1.35rem;margin:0 0 .9rem;padding-left:.7rem;border-left:5px solid var(--sv-bleu)}
.sv-grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:14px}
.sv-c{display:flex;flex-direction:column;gap:.45rem;padding:1.1rem 1.2rem;border-radius:16px;background:#f3f6ff;border:1px solid #c9d3f5;border-top:4px solid var(--sv-bleu);color:#0b1433;text-decoration:none;transition:transform .2s,box-shadow .2s}
.sv-c h3{margin:0;font-size:1.08rem}
.sv-c p{margin:0;color:#33405f;font-size:.93rem;flex:1}
.sv-src{font-size:.78rem;color:#4a5578}
.sv-dom{font-family:ui-monospace,monospace;font-size:.8rem;color:var(--sv-bleu);font-weight:600}
.sv-c:hover,.sv-c:focus-visible{box-shadow:0 10px 24px #1d3b8f22;border-top-color:var(--sv-rouge)}
.sv-c:focus-visible{outline:3px solid var(--sv-bleu);outline-offset:3px}
.sv-conseil{margin-top:2.4rem;padding:1.2rem 1.3rem;border-radius:16px;background:#fff;border:1px solid #e3e3e3}
.sv-conseil h2{margin:0 0 .5rem;font-size:1.15rem}
.sv-maj{font-size:.82rem;color:#555;margin-bottom:0}
@media (prefers-reduced-motion:no-preference){.sv-c:hover{transform:translateY(-3px)}}

/* ===== V7.6.1 : espace « J'ai un code » ===== */
.code-zone{margin:1.2rem auto 2rem}
.code-bloc{margin-top:1rem}
.code-c{display:flex;gap:1rem;align-items:flex-start;padding:1.3rem 1.4rem;border-radius:20px;background:linear-gradient(135deg,#fffbea,#fff);border:2px solid var(--jaune);box-shadow:0 10px 30px #ffd43b33}
.code-c.code-ok{border-color:#0E9B6A;background:linear-gradient(135deg,#e9fbf3,#fff);box-shadow:0 10px 30px #0e9b6a22}
.code-c h2{margin:0 0 .35rem;font-size:1.4rem}
.code-c p{margin:0 0 .8rem;color:var(--encre2)}
.code-ico{font-size:2rem;line-height:1}
.code-c form{display:flex;flex-wrap:wrap;gap:.6rem;align-items:flex-end}
.code-c .champ{flex:1 1 220px;margin:0}
.code-c input{text-transform:uppercase;letter-spacing:.12em;font-weight:700;font-size:1.1rem}
.code-c .msg{flex-basis:100%;order:3;margin:0}
.code-actions{display:flex;gap:.5rem;flex-wrap:wrap}
@media (max-width:520px){.code-c{flex-direction:column;gap:.5rem;padding:1.1rem}.code-c button{width:100%}}

/* ===================== V7.7.0 — expérience mobile d'application ===================== */
/* Boutons : jamais de débordement horizontal sur petit écran (ex. « Dossier suivant : … »). */
.btn{max-width:100%}
@media (max-width:600px){.btn{white-space:normal;text-align:center}}
/* Menu plein écran : défilable si l'écran est court (320 px, paysage), entrée « Installer l'appli ». */
.menu-m{overflow-y:auto;overscroll-behavior:contain;justify-content:safe center;padding-bottom:calc(2rem + env(safe-area-inset-bottom,0px))}
.menu-m a{font-size:clamp(1.9rem,9vw,4.6rem)}
@media (max-height:700px){.menu-m{padding-top:96px}.menu-m a{font-size:clamp(1.6rem,7.4vw,3rem)}}
.menu-m .m-inst{color:var(--jaune)}
.menu-m .m-inst[hidden]{display:none}
/* Barre d'onglets inférieure (téléphone et petite tablette) */
.tabbar{display:none}
@media (max-width:900px){
  .tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:58;background:rgba(7,10,24,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid rgba(255,255,255,.08);padding:4px max(6px,env(safe-area-inset-left,0px)) calc(4px + env(safe-area-inset-bottom,0px)) max(6px,env(safe-area-inset-right,0px));transition:transform .25s ease}
  .tabbar a,.tabbar button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:52px;padding:4px 2px;border:0;background:none;color:#B9BED3;font:600 .7rem/1.1 var(--sans);text-decoration:none;border-radius:14px;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .tabbar svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
  .tabbar [aria-current=page],.tabbar button[aria-expanded=true]{color:#fff}
  .tabbar [aria-current=page] svg{stroke:var(--jaune)}
  .tabbar [aria-current=page] span{border-bottom:2px solid var(--jaune)}
  .tabbar a:active,.tabbar button:active{background:rgba(255,255,255,.08)}
  .tabbar a:focus-visible,.tabbar button:focus-visible{outline:3px solid var(--jaune);outline-offset:-3px}
  body{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}
  body.clavier .tabbar{transform:translateY(110%)}
  body.clavier{padding-bottom:0}
  .toast{bottom:calc(76px + env(safe-area-inset-bottom,0px))}
  body.menu-ouvert .tabbar{z-index:56}
}
/* Mode installé : pas de bandeau défilant au-dessus de l'en-tête sous la barre d'état */
html.appli .hd{padding-top:env(safe-area-inset-top,0px)}
/* Invitation à installer (fermable, mémorisée) */
.invite-app{position:fixed;left:12px;right:12px;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:57;display:flex;align-items:center;gap:.7rem;background:#fff;color:var(--encre);border-radius:18px;padding:.7rem .7rem .7rem .8rem;box-shadow:0 18px 40px -18px rgba(5,8,22,.55);border:1px solid rgba(7,10,24,.08);transform:translateY(20px);opacity:0;transition:transform .35s ease,opacity .35s ease;max-width:520px;margin:0 auto}
.invite-app.on{transform:none;opacity:1}
.invite-app img{border-radius:11px;flex:none}
.invite-app div{flex:1;min-width:0;font-size:.86rem;line-height:1.3}.invite-app b{display:block}.invite-app span{color:var(--gris)}
.invite-app .btn{flex:none;padding:.6rem .9rem}
.invite-x{flex:none;width:44px;height:44px;border:0;background:none;font-size:1.5rem;line-height:1;color:var(--gris);cursor:pointer;border-radius:50%}
@media (min-width:901px){.invite-app{bottom:20px;left:auto;right:20px;width:440px}}
body.clavier .invite-app{display:none}
/* Bannière de mise à jour et bandeau hors connexion */
.maj-app{position:fixed;left:12px;right:12px;top:calc(12px + env(safe-area-inset-top,0px));z-index:116;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .7rem;background:var(--encre);color:#fff;border-radius:16px;padding:.75rem .9rem;box-shadow:0 18px 40px -18px #000;max-width:620px;margin:0 auto;font:600 .9rem/1.35 var(--sans)}
.maj-app span{flex:1 1 220px}
.maj-app .btn.l{background:transparent;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.hors-ligne-b{position:fixed;left:0;right:0;top:0;z-index:117;background:#8A4B00;color:#fff;font:600 .85rem/1.35 var(--sans);padding:calc(.55rem + env(safe-area-inset-top,0px)) 1rem .55rem;text-align:center}
/* Page « Installer l'appli » */
.inst{max-width:720px}
.inst-c{background:#fff;border-radius:20px;padding:1.2rem 1.3rem;margin:1rem 0;border:1px solid rgba(7,10,24,.07)}
.inst-c h2{margin:0 0 .6rem;font-size:1.25rem}
.inst-c ol,.inst-c ul{margin:0;padding-left:1.3rem}.inst-c li{margin:.45rem 0}
.inst-note{color:var(--gris);font-size:.9rem;margin-top:.7rem}
#inst-btn[hidden]{display:none}
/* Tableaux défilants accessibles au clavier */
.tbl:focus-visible{outline:3px solid var(--bleu);outline-offset:3px}
@media (prefers-reduced-motion:reduce){.tabbar,.invite-app{transition:none}}
@media (max-width:900px){.menu-m{padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}}
/* V7.8.1 — logo texte « Espoir Citoyen Mag » (même police et couleurs, accent sur « Citoyen ») */
.logo i,.intro .nom i{margin:0 .16em}
.pied .geant{font-size:clamp(2.2rem,11.4vw,13rem);letter-spacing:-.05em}
.pied .geant span.sp{width:.22em}
@media (max-width:560px){.logo{font-size:1.12rem}}
@media (max-width:359px){.logo{font-size:1rem}.logo .etoile{display:none}}
