@font-face{font-family:"Chakra Petch";font-weight:600;font-style:normal;font-display:swap;src:url(fonts/chakra-petch-latin-600.woff2) format("woff2")}
@font-face{font-family:"Chakra Petch";font-weight:700;font-style:normal;font-display:swap;src:url(fonts/chakra-petch-latin-700.woff2) format("woff2")}
@font-face{font-family:"Instrument Sans";font-weight:400 600;font-style:normal;font-display:swap;src:url(fonts/instrument-sans-latin-400.woff2) format("woff2")}
:root{--nuit:#12183A;--signal:#C8103F;--faisceau:#D3F0F6;--papier:#F4F6F9;--radio:#4B5470;--vert:#0B6B4F;--blanc:#fff;--ligne:#D5DAE6;--cut:10px;--hd:Chakra Petch,"Arial Narrow",sans-serif;--tx:Instrument Sans,system-ui,sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--papier);color:var(--nuit);font:400 17px/1.55 var(--tx);display:flex;flex-direction:column;min-height:100vh;overflow-x:clip}
main{flex:1}img,svg{max-width:100%}a{color:var(--nuit);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--signal)}
h1,h2,h3{font-family:var(--hd);font-weight:700;line-height:1.08;margin:0 0 .5em;color:var(--nuit);letter-spacing:-.005em}
h1{font-size:clamp(30px,4.2vw,54px)}h2{font-size:clamp(24px,2.6vw,34px)}h3{font-size:20px}p{margin:0 0 1em}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px}.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:3px solid var(--signal);outline-offset:2px}
/* ── en-tête : filet de barrière ── */
.top{background:#fff;position:sticky;top:0;z-index:40}.top::after{content:"";display:block;height:6px;background:repeating-linear-gradient(-45deg,var(--signal) 0 12px,#fff 12px 24px)}
.top .wrap{display:flex;align-items:center;gap:26px;height:64px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--nuit)}.logo svg{width:46px;height:42px}
.logo b{font:700 20px/1 var(--hd);display:flex;flex-direction:column}.logo b small{font:600 13px/1.2 var(--tx);color:var(--radio);letter-spacing:.02em;margin-top:2px}
.top nav{margin-left:auto}.top nav ul{display:flex;align-items:center;gap:6px;list-style:none;margin:0;padding:0}
.top nav a{display:flex;align-items:center;gap:8px;font:600 16px/1 var(--hd);text-decoration:none;padding:12px 14px;position:relative;color:var(--nuit)}
.top nav a:not(.cta)::after{content:"";position:absolute;left:14px;right:14px;bottom:5px;height:3px;background:var(--nuit);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.top nav a:not(.cta):hover::after{transform:scaleX(1)}
.ptg{font-style:normal;width:10px;height:10px;font-size:0;background:transparent;border:2px solid var(--ligne);transform:rotate(45deg);display:inline-block}
.top nav a[aria-current] .ptg{background:var(--signal);border-color:var(--signal)}
.cta{display:inline-block;background:var(--signal);color:#fff!important;font:700 16px/1 var(--hd);padding:14px 22px;border:0;text-decoration:none;cursor:pointer;clip-path:polygon(0 0,calc(100% - var(--cut)) 0,100% var(--cut),100% 100%,var(--cut) 100%,0 calc(100% - var(--cut)));transition:background .2s}
.cta:hover{background:var(--nuit)}.li-cta{margin-left:8px}
.burger{display:none;margin-left:auto;width:46px;height:46px;border:2px solid var(--nuit);background:#fff;border-radius:0;cursor:pointer;position:relative}
.burger i,.burger i::before,.burger i::after{position:absolute;left:11px;right:11px;height:3px;background:var(--nuit);content:""}.burger i{top:21px}.burger i::before{top:-8px;left:0;right:0}.burger i::after{top:8px;left:0;right:0}
.crumb{font-size:14px;color:var(--radio);padding:14px 0 0}.crumb a{color:var(--radio)}.crumb i{font-style:normal;margin:0 4px}
/* ── héros ── */
.hero{background:linear-gradient(180deg,#fff 0,var(--papier) 100%);overflow:hidden}
.hero-g{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:30px;align-items:center;min-height:calc(100svh - 70px);padding-top:30px;padding-bottom:30px}
.hero h1{max-width:15em}.lede{font-size:18px;max-width:34em;color:var(--radio)}
.badge-acces{background:#fff;border:2px solid var(--nuit);padding:22px 22px 18px;margin-top:22px;position:relative;max-width:560px;clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,0 100%);box-shadow:6px 6px 0 var(--faisceau)}
.lanyard{position:absolute;top:-2px;left:50%;width:70px;height:12px;background:var(--nuit);transform:translateX(-50%);clip-path:polygon(0 0,100% 0,88% 100%,12% 100%)}
.ba-t{font:600 14px var(--hd);color:var(--radio);margin:6px 0 12px;text-align:center}
.rech{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.rech label{display:block;font:600 13px var(--hd);margin-bottom:4px}
.rech input,.rech select,.f input,.f select,.libre input{width:100%;font:400 16px var(--tx);padding:12px;border:2px solid var(--nuit);background:#fff;border-radius:0;color:var(--nuit);min-height:46px}
.rech button{background:var(--nuit);color:#fff;border:0;font:700 16px var(--hd);padding:0 20px;height:46px;display:flex;align-items:center;gap:8px;cursor:pointer}.rech button:hover{background:var(--signal)}.rech button svg{width:20px;height:20px;stroke:#fff}
.sous-rech{font-size:14px;margin:12px 0 0;color:var(--radio)}
.scene{align-self:stretch;display:flex;align-items:center}.poste{width:100%;height:auto;max-height:70vh}
.poste .sol{fill:#E2E7F0}.poste .route{stroke:#fff;stroke-width:6;stroke-dasharray:22 16;fill:none}
.poste .facade rect:first-child{fill:#fff;stroke:var(--nuit);stroke-width:3}.poste .w{fill:#CBD3E3}.poste .porte{fill:var(--nuit)}.poste .cam{fill:var(--nuit)}.poste .camb{stroke:var(--nuit);stroke-width:5;stroke-linecap:round}
.poste .faisceau path{fill:var(--faisceau);opacity:.75;transform-origin:70px 60px;animation:balai 7s ease-in-out infinite alternate}
.poste .projo rect{fill:var(--nuit)}.poste .projo path{stroke:var(--nuit);stroke-width:5}
.poste .guerite>rect:first-child{fill:#fff;stroke:var(--nuit);stroke-width:3}.poste .toit{fill:var(--signal);stroke:var(--nuit);stroke-width:3}.poste .vitre{fill:var(--faisceau);stroke:var(--nuit);stroke-width:2}.poste .gardien{fill:var(--nuit)}.poste .radio{fill:var(--nuit)}
.poste .onde path{fill:none;stroke:var(--signal);stroke-width:3;stroke-linecap:round;opacity:0;animation:onde 2.4s infinite}.poste .onde path:nth-child(2){animation-delay:.25s}.poste .onde path:nth-child(3){animation-delay:.5s}
.poste .poteau>rect{fill:var(--nuit)}.poste .bras rect{fill:#fff;stroke:var(--nuit);stroke-width:3}.poste .bras path{fill:var(--signal)}.poste .axe{fill:#fff;stroke:var(--nuit);stroke-width:3}
.poste .bras{transform-origin:171px 275px;transform-box:view-box;animation:barriere 9s ease-in-out infinite}
.poste .w{animation:fen 9s infinite}.poste .w2{animation-delay:1.5s}.poste .w3{animation-delay:3s}.poste .w4{animation-delay:4.5s}.poste .w5{animation-delay:6s}.poste .w6{animation-delay:7.5s}
@keyframes balai{from{transform:rotate(-7deg)}to{transform:rotate(9deg)}}
@keyframes barriere{0%,12%{transform:rotate(0)}30%,60%{transform:rotate(-58deg)}78%,100%{transform:rotate(0)}}
@keyframes fen{0%,12%,100%{fill:#CBD3E3}22%,40%{fill:#FFE79A}}
@keyframes onde{0%{opacity:0}30%{opacity:1}70%,100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.poste *,.veilleur{animation:none!important}.poste .bras{transform:rotate(-30deg)}.poste .w1,.poste .w4{fill:#FFE79A}.poste .onde path{opacity:1}animateMotion{display:none}}
/* ── chiffres ── */
.chiffres-b{background:var(--nuit);color:#fff;padding:26px 0}.chiffres-b .src-h{color:#C6CCE0;font-size:14px;margin:14px 0 0}
.graves{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.graves li{font:600 15px/1.3 var(--tx);color:#D9DEEE;border-left:4px solid var(--signal);padding-left:14px}
.graves b{display:block;font:700 40px/1 var(--hd);color:#fff}
.sec{padding:54px 0}.sec.blanc{background:#fff}.intro{max-width:44em;color:var(--radio);font-size:18px}
.trois{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:22px}
.metier-c{display:block;text-decoration:none;background:#fff;border:2px solid var(--nuit);padding:22px;position:relative;clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,0 100%);transition:transform .2s,box-shadow .2s}
.metier-c:hover{box-shadow:6px 6px 0 var(--faisceau);transform:translate(-3px,-3px);color:var(--nuit)}.metier-c svg{width:56px;height:52px;color:var(--signal);margin-bottom:8px}.metier-c p{color:var(--radio);font-size:16px}.metier-c b{font:700 16px var(--hd);color:var(--signal)}
.ile-sec{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px;align-items:start}
.villes-l{list-style:none;margin:16px 0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:8px 18px}.villes-l a,.villes-l li>span{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px dashed var(--ligne);text-decoration:none;font-weight:600}.villes-l b{font-family:var(--hd);color:var(--signal)}
.carte{background:#fff;border:2px solid var(--nuit);padding:8px;position:sticky;top:96px}.carte svg.ile{width:100%;height:auto;max-height:76vh;display:block}
.ile .isl{fill:var(--faisceau);stroke:var(--nuit);stroke-width:2.5;vector-effect:non-scaling-stroke}.ile .ronde{fill:none;stroke:var(--nuit);stroke-width:2;stroke-dasharray:6 7;vector-effect:non-scaling-stroke;opacity:.55}
.ile .veilleur{fill:var(--signal);filter:drop-shadow(0 0 6px var(--signal))}
.ile .pk rect{fill:var(--signal);stroke:#fff;stroke-width:2.5;vector-effect:non-scaling-stroke}.ile .pk circle{fill:#fff}.ile a:hover .pk rect{fill:var(--nuit)}
.ile .pt{fill:var(--nuit);stroke:#fff;stroke-width:1.5;vector-effect:non-scaling-stroke}.ile .pt.c-alarmes-videosurveillance{fill:#3558C9}.ile .pt.c-protection-incendie{fill:#B64200}
.ile .lbl path{fill:#fff;stroke:var(--nuit);stroke-width:1.5;vector-effect:non-scaling-stroke}.ile .lbl text{font:700 14px var(--hd);fill:var(--nuit)}
/* ── lignes de main courante ── */
.fiches{list-style:none;margin:20px 0;padding:0;position:relative}
.fc{display:grid;grid-template-columns:78px minmax(0,1fr);gap:16px;padding:18px 0;position:relative}
.fc::before{content:"";position:absolute;left:38px;top:0;bottom:0;border-left:2px dashed var(--ligne);z-index:0}.fc:first-child::before{top:30px}.fc:last-child::before{bottom:calc(100% - 44px)}
.no{position:relative;z-index:1;align-self:start;background:var(--nuit);color:#fff;font:700 26px/1 var(--hd);text-align:center;padding:6px 0 8px;width:70px;clip-path:polygon(0 0,calc(100% - 9px) 0,100% 9px,100% 100%,0 100%)}
.no i{display:block;font:600 10px/1 var(--tx);color:#C6CCE0;font-style:normal;margin-bottom:3px;letter-spacing:.04em}
.fc-in{background:#fff;border:2px solid var(--nuit);padding:16px 18px;transition:box-shadow .2s}.fc:hover .fc-in,.fc.hl .fc-in{box-shadow:6px 6px 0 var(--faisceau)}
.fc-t{margin:0 0 6px;display:flex;flex-wrap:wrap;gap:8px}.fc h3{margin:0 0 2px;font-size:21px}.fc h3 a{text-decoration:none}.ou{margin:0 0 6px;color:var(--radio);font-size:15px}.ment{font-size:15px;margin:0 0 8px}
.tag{display:inline-block;font:700 13px/1 var(--hd);padding:6px 10px;color:#fff;background:var(--nuit)}
.tag.c-alarmes-videosurveillance{background:#2A4AB5}.tag.c-protection-incendie{background:#A23B00}
.tampon{display:inline-block;font:700 13px/1 var(--hd);padding:5px 9px;border:2px solid var(--signal);color:var(--signal)}
.act{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}.act a{font:600 15px var(--hd);text-decoration:none;display:inline-flex;align-items:center;gap:6px;padding:8px 0;min-height:44px}
.act .tel{background:var(--nuit);color:#fff;padding:8px 14px;min-height:44px}.act .tel:hover{background:var(--signal);color:#fff}.act .tel svg{width:18px;height:18px;stroke:#fff;fill:none}
.act .web{border-bottom:2px solid var(--nuit)}.act .verif{color:var(--vert);font-size:14px;border-bottom:1px dotted var(--vert)}
.legende{font-size:14px;color:var(--radio);margin:6px 0 0;max-width:46em}
.aconf .fc-in{background:#FAFBFD;border-style:dashed}
/* ── la liste centrée + moniteur flottant ── */
.bloc{max-width:760px;margin:0 0 20px max(22px,calc((100vw - 1180px)/2 + 22px));position:relative}
.moniteur{position:fixed;right:16px;bottom:22px;width:300px;z-index:30;background:var(--nuit);color:#fff;padding:10px 10px 8px;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,0 100%);box-shadow:0 0 0 3px #fff;transition:width .3s,height .3s}
.mon-bar{display:flex;align-items:center;gap:8px;font:700 13px var(--hd);margin-bottom:8px}.mon-bar b{font-weight:700}.mon-n{color:#C6CCE0;font-weight:600;margin-left:auto}
.rec{width:10px;height:10px;border-radius:50%;background:var(--signal);animation:rec 1.2s steps(2) infinite}@keyframes rec{50%{opacity:.2}}@media (prefers-reduced-motion:reduce){.rec{animation:none}}
.mon-g{background:#fff;color:var(--nuit);border:0;font:700 12px var(--hd);padding:5px 9px;cursor:pointer;min-height:28px}
.mon-ecran{height:210px;background:var(--faisceau);border:2px solid #fff}.mon-note{font-size:12px;color:#C6CCE0;margin:6px 0 0}
.moniteur.grand{width:min(760px,calc(100vw - 44px))}.moniteur.grand .mon-ecran{height:min(520px,60vh)}
.mon-fiche{position:static;width:100%;box-shadow:none;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,0 100%)}.mon-fiche .mon-ecran{height:300px}
.leaflet-container{font-family:var(--tx)}.repere{background:none;border:0}.repere::before{content:"";position:absolute;inset:3px;background:var(--signal);border:3px solid #fff;box-shadow:0 0 0 2px var(--nuit);transform:rotate(45deg)}.repere.c-alarmes-videosurveillance::before{background:#3558C9}.repere.c-protection-incendie::before{background:#B64200}
/* ── pages ── */
.phead{background:#fff;border-bottom:2px solid var(--nuit);padding:34px 0 30px}.phead h1{font-size:clamp(28px,3.6vw,46px);max-width:24em}.phead p{max-width:50em;color:var(--radio);font-size:18px;margin:0}
.phead.ville .reg{font:700 14px var(--hd);color:var(--signal);margin-bottom:4px}.cpt{margin-top:12px!important}.cpt b{font:700 28px var(--hd);color:var(--nuit)}
.puces{list-style:none;margin:22px 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}.puces a,.puces li>span{display:inline-block;padding:9px 16px;border:2px solid var(--nuit);font:600 15px var(--hd);text-decoration:none;background:#fff;min-height:44px;display:inline-flex;align-items:center;gap:6px}.puces a[aria-current],.puces a:hover{background:var(--nuit);color:#fff}.puces b{color:var(--signal)}.puces a[aria-current] b,.puces a:hover b{color:var(--faisceau)}.puces.zs{margin-top:-8px}
.liste-t{margin-top:26px}.phead+.wrap{padding-top:26px}.phead+.wrap.spcb{padding-top:6px}.texte-l{max-width:50em;margin:30px auto}.texte-l h2,.texte h2{margin-top:1.2em}.sec.texte-l{padding:30px 22px}.spc{height:30px}.spcb{padding-bottom:60px}
.texte{max-width:52em;padding-top:30px}.texte-l{padding-left:0;padding-right:0}
.q4{padding-left:0;list-style:none;display:grid;gap:10px;margin:14px 0}.q4 li{background:#fff;border-left:5px solid var(--signal);padding:12px 16px;border-top:1px solid var(--ligne);border-bottom:1px solid var(--ligne)}
.faq details{background:#fff;border:2px solid var(--nuit);margin:10px 0}.faq summary{cursor:pointer;font:700 17px var(--hd);padding:14px 18px;list-style:none;position:relative;padding-right:46px}.faq summary::after{content:"+";position:absolute;right:18px;top:10px;font-size:24px;color:var(--signal)}.faq details[open] summary::after{content:"−"}.faq p{padding:0 18px 14px;margin:0}
.nul{background:#fff;border:2px dashed var(--nuit);padding:28px;margin:24px 0}.nul.gros{text-align:center;padding:50px 22px}.gros-b{font-size:19px;padding:18px 30px}
.fiche-head{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:36px;align-items:start}.fiche h1{margin-bottom:8px}.sous{margin-bottom:18px!important}
.dl{display:grid;grid-template-columns:150px 1fr;gap:10px 18px;margin:0 0 14px}.dl dt{font:700 14px var(--hd);color:var(--radio)}.dl dd{margin:0}.dl .tel{display:inline-flex;gap:6px;align-items:center;font:700 20px var(--hd)}.dl .tel svg{width:20px;height:20px;fill:none;stroke:currentColor}.srcnote{font-size:14px!important;margin-bottom:16px!important}
.fiche-corps .texte{padding-bottom:20px}.note{font-size:15px;color:var(--radio)}.fh-act{margin-top:10px!important}
.trois-e{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:26px}.trois-e>div{background:#fff;border:2px solid var(--nuit);padding:18px}.trois-e b{display:inline-block;background:var(--signal);color:#fff;width:32px;height:32px;text-align:center;font:700 18px/32px var(--hd);margin-bottom:6px}.trois-e h2{font-size:20px;margin-top:0}
.mchiffres{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:10px 0 20px}.mchiffres span{background:#fff;border:2px solid var(--nuit);padding:12px;font-size:14px}.mchiffres b{display:block;font:700 30px var(--hd);color:var(--signal)}
.srcs{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.srcs>div{background:#fff;border:2px solid var(--nuit);padding:16px}.srcs h3{font-size:18px}.srcs p{font-size:15px;margin:0}
.etapes{counter-reset:e;list-style:none;padding:0}.etapes li{counter-increment:e;padding:12px 0 12px 54px;position:relative;border-bottom:1px dashed var(--ligne)}.etapes li::before{content:counter(e);position:absolute;left:0;top:10px;width:36px;height:36px;background:var(--nuit);color:#fff;font:700 18px/36px var(--hd);text-align:center;clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,0 100%)}
.rubs{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:20px 0}.rubs a{background:#fff;border:2px solid var(--nuit);padding:18px;text-decoration:none;display:block}.rubs a:hover{box-shadow:6px 6px 0 var(--faisceau)}.rubs h3{font-size:19px}.rubs p{font-size:15px;color:var(--radio)}.rubs b{font:700 15px var(--hd);color:var(--signal)}
.lire{max-width:820px}.lire h2{margin-top:0}
.une{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#fff;border:2px solid var(--nuit);margin:20px 0;text-decoration:none}.une img{width:100%;height:100%;object-fit:cover;min-height:260px}.une span{padding:26px;display:block}.une b{font:700 13px var(--hd);color:var(--signal);display:block;margin-bottom:6px}.une i{font:700 28px/1.1 var(--hd);display:block;margin-bottom:10px;font-style:normal}
.defile{overflow:hidden;background:var(--nuit);margin:18px 0;padding:11px 0}.defile-in{display:flex;gap:44px;white-space:nowrap;width:max-content;animation:defile 60s linear infinite}.defile-in a{color:#fff;font:600 15px var(--hd);text-decoration:none}.defile:hover .defile-in{animation-play-state:paused}@keyframes defile{to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.defile-in{animation:none}}
.arts-g{list-style:none;margin:20px 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.art-c a{display:block;background:#fff;border:2px solid var(--nuit);height:100%;text-decoration:none;padding-bottom:16px}.art-c img{width:100%;height:170px;object-fit:cover;display:block}.art-c .rub{display:block;font:700 12px var(--hd);color:#fff;background:var(--signal);padding:5px 10px;width:max-content;margin:14px 16px 6px}.art-c b{display:block;font:700 19px/1.2 var(--hd);padding:0 16px;margin-bottom:6px}.art-c .ex{display:block;padding:0 16px;font-size:15px;color:var(--radio)}
.art-hg{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:34px;align-items:center}.art-h .rub{margin-bottom:8px!important}.art-h .rub a{display:inline-block;background:var(--signal);color:#fff;font:700 13px var(--hd);padding:6px 12px;text-decoration:none}.art-img{width:100%;height:240px;object-fit:cover;border:2px solid var(--nuit)}
.meta{display:flex;align-items:center;gap:12px;margin-top:16px!important;font-size:15px!important}.byline{display:flex;flex-wrap:wrap;gap:4px 14px}.byline a{font-weight:600}.eq-ph{flex:none;width:44px;height:44px;aspect-ratio:1/1;object-fit:cover;border-radius:50%;border:2px solid var(--nuit);background:var(--faisceau)}.eq-ph.gd{width:120px;height:120px}.eq-h{display:flex;gap:26px;align-items:center}
.art{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:40px;align-items:start;padding-top:34px;padding-bottom:50px}.art>aside{align-self:stretch}
.corps{max-width:760px;min-width:0}.corps h2{margin-top:1.4em;scroll-margin-top:90px}.corps .chapo{font-size:20px;color:var(--radio);margin-bottom:1.2em}.corps ul,.corps ol{padding-left:1.2em}
.saviez{background:var(--faisceau);border-left:6px solid var(--signal);padding:16px 20px;margin:22px 0}.saviez b{font:700 17px var(--hd);display:block;margin-bottom:4px}.saviez p{margin:0}
.info{background:#fff;border:2px solid var(--nuit);margin:26px 0;padding:18px}.info figcaption b{display:block;font:700 19px var(--hd)}.info figcaption span{font-size:14px;color:var(--radio)}.info-g{display:grid;grid-template-columns:200px 1fr;gap:20px;align-items:center;margin-top:12px}.info svg .i1{font:700 34px var(--hd);fill:var(--nuit)}.info svg .i2{font:600 13px var(--tx);fill:var(--radio)}.info ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}.info li{display:flex;gap:10px;align-items:center;border-left:8px solid var(--c);padding:6px 10px;background:var(--papier)}.info li b{font:700 17px var(--hd);min-width:48px}.info li span{font-size:15px}
.src-b,.lire-b{background:#fff;border:2px solid var(--nuit);padding:16px 20px;margin:26px 0}.src-b h2,.lire-b h2{font-size:20px;margin:0 0 10px}.src-b ol{list-style:none;padding:0;margin:0;display:grid;gap:8px}.src-b li{display:grid;grid-template-columns:30px 1fr;gap:4px 10px;align-items:start}.src-b .n{background:var(--nuit);color:#fff;font:700 14px/26px var(--hd);width:26px;height:26px;text-align:center}.src-b b{font:600 16px var(--tx);overflow-wrap:anywhere}.src-b small{grid-column:2;color:var(--radio);font-size:13px}
.formbloc{background:#fff;border:2px solid var(--nuit);padding:22px;margin:28px 0;box-shadow:8px 8px 0 var(--faisceau)}.formbloc h2{margin-top:0;font-size:24px}
.auteur-b{display:flex;gap:14px;align-items:center;border-top:2px solid var(--nuit);padding-top:18px;margin-top:28px}.auteur-b .eq-ph{width:64px;height:64px}.auteur-b span{display:block;color:var(--radio);font-size:15px}
.barre .colle{position:sticky;top:96px;display:grid;gap:16px}.box{background:#fff;border:2px solid var(--nuit);padding:16px}.box h2{font-size:18px;margin:0 0 10px}.som ol{margin:0;padding-left:1.2em;font-size:15px}.som li{margin:3px 0}.som a{text-decoration:none}.som li span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.trouve form{display:flex;gap:6px}.trouve input{flex:1;min-width:0;border:2px solid var(--nuit);padding:10px;font:400 15px var(--tx)}.trouve button{background:var(--nuit);color:#fff;border:0;font:700 14px var(--hd);padding:0 12px;cursor:pointer}.frequentes{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0!important}.frequentes a{font-size:13px;border:1px solid var(--ligne);padding:3px 9px;text-decoration:none}.liens{list-style:none;padding:0;margin:8px 0 0}.liens li{padding:6px 0;border-top:1px dashed var(--ligne)}.liens a{font-weight:600;text-decoration:none}.liens small{display:block;color:var(--radio);font-weight:400}
.f{display:grid;gap:12px}.f label{font:600 14px var(--hd);display:block}.f label input,.f label select{margin-top:4px;font-family:var(--tx);font-weight:400}.chk{display:flex!important;gap:10px;align-items:flex-start;font:400 14px var(--tx)!important}.chk input{width:22px;height:22px;min-height:0;margin:2px 0 0;flex:none}.piege{position:absolute;left:-9999px}.okmsg{display:none;background:var(--faisceau);padding:10px 14px;border-left:5px solid var(--vert);margin:0}
/* ── tunnel ── */
body.tun{height:100vh;height:100svh;min-height:0}body.tun main{display:flex;flex-direction:column;min-height:0;flex:1}
.tunnel{flex:1;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:26px;padding-top:20px;padding-bottom:20px;min-height:0}
.tcard{background:#fff;border:2px solid var(--nuit);padding:20px 26px;display:flex;flex-direction:column;min-height:0;box-shadow:8px 8px 0 var(--faisceau)}
.pas{list-style:none;display:flex;gap:0;margin:0 0 14px;padding:0;position:relative}.pas li{flex:1;text-align:center;font:600 13px var(--hd);color:var(--radio);position:relative}.pas li i{display:block;width:30px;height:30px;margin:0 auto 4px;background:#fff;border:2px solid var(--ligne);transform:rotate(45deg);font:0/0 a}
.pas li::before{content:"";position:absolute;top:14px;left:-50%;width:100%;border-top:2px dashed var(--ligne);z-index:0}.pas li:first-child::before{display:none}.pas li i{position:relative;z-index:1;font-size:0}
.pas li.cour{color:var(--nuit)}.pas li.cour i{background:var(--signal);border-color:var(--signal)}.pas li.fait i{background:var(--nuit);border-color:var(--nuit)}.pas li.fait::before,.pas li.cour::before{border-color:var(--nuit)}
.etape{display:none;flex:1;min-height:0;flex-direction:column;position:relative}.etape.on{display:flex}.etape h1{font-size:clamp(24px,3vw,34px);margin-bottom:14px}
.tuiles{flex:1;min-height:0;display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;gap:12px}
.tuile{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;background:var(--papier);border:2px solid var(--nuit);padding:12px 16px;text-align:left;font:700 18px/1.15 var(--hd);color:var(--nuit);cursor:pointer;min-height:0;transition:transform .15s,background .15s}
.tuile svg{width:clamp(34px,5.2vh,56px);height:auto;color:var(--signal)}.tuile small{display:block;font:400 14px/1.3 var(--tx);color:var(--radio);margin-top:2px}.tuile:hover,.tuile.sel{background:var(--faisceau);transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--nuit)}
.tuiles.t-com{grid-template-columns:repeat(5,1fr);flex:1}.tuile.petite{align-items:center;text-align:center;font-size:16px}
.libre{display:flex;gap:10px;align-items:end;margin-top:12px}.libre label{display:none}.libre input{flex:1}.retour{position:absolute;right:0;top:-2px;background:none;border:0;font:600 14px var(--hd);color:var(--radio);cursor:pointer;text-decoration:underline;padding:8px}
.etape[data-e="5"] .f{flex:1;align-content:center;max-width:520px}
.rassure{background:var(--nuit);color:#fff;padding:22px;display:flex;flex-direction:column;gap:12px;min-height:0;clip-path:polygon(0 0,calc(100% - 18px) 0,100% 18px,100% 100%,0 100%)}.rassure a{color:#fff}.rassure p{margin:0;font-size:15px;color:#E4E8F5}.recap h2{font-size:18px;color:#fff;margin-bottom:8px}.recap dl{margin:0;display:grid;grid-template-columns:70px 1fr;gap:6px 10px;font-size:15px}.recap dt{color:#C6CCE0}.recap dd{margin:0;font-weight:600}.recap dd.fait{color:var(--faisceau)}.chiffres-r{font:600 15px var(--hd)!important;color:#fff!important}
.tun .moniteur{display:none}
/* ── pied ── */
.foot{background:var(--nuit);color:#D9DEEE;margin-top:40px;padding:26px 0 16px}.foot a{color:#fff;text-decoration:none}.foot a:hover{color:var(--faisceau);text-decoration:underline}.foot .wrap{display:grid;grid-template-columns:1.2fr 2fr;gap:6px 36px}.f-id{grid-row:span 1}.mark{display:flex;align-items:center;gap:10px;font:700 18px var(--hd);margin-bottom:8px}.mark svg{width:42px;height:38px}.f-id small{font-size:13px;line-height:1.45;display:block;max-width:36em}
.f-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.f-cols b{font:700 14px var(--hd);color:#fff;display:block;margin-bottom:6px}.f-cols ul{list-style:none;margin:0;padding:0;font-size:14px}.f-cols li{margin:3px 0}.f-bas{grid-column:1/-1;margin:8px 0 0;padding-top:10px;border-top:1px solid #2A3260;font-size:13px;color:#A9B1CE}
.p404b{max-width:620px;margin:50px auto!important}.p404 .foot{margin-top:auto}
/* ── module d'abonnement ── */
body.abo .wrap{padding-top:30px;padding-bottom:30px}
/* ── écrans ── */
@media (max-width:1320px){.moniteur:not(.mon-fiche){width:280px}.mon-ecran{height:190px}}
@media (max-width:1100px){.bloc{margin:0 auto}.scene{display:block;order:-1;max-height:230px;margin:0 auto}.poste{max-height:230px}.moniteur:not(.mon-fiche){position:static;width:100%;margin-top:22px;box-shadow:none}.mon-ecran{height:300px}.moniteur.grand{width:100%}.fiche-head{grid-template-columns:1fr}.art{grid-template-columns:1fr}.art>aside{display:none}.art-hg{grid-template-columns:1fr}.hero-g{grid-template-columns:1fr;min-height:0}.rubs{grid-template-columns:repeat(2,1fr)}.arts-g{grid-template-columns:repeat(2,1fr)}.ile-sec{grid-template-columns:1fr}.carte{position:static}.trois{grid-template-columns:1fr}.srcs{grid-template-columns:1fr}.une{grid-template-columns:1fr}}
@media (max-width:880px){.burger{display:block}.top nav{display:none;position:fixed;left:0;right:0;top:70px;bottom:0;background:#fff;padding:20px 22px;overflow:auto}.top nav.ouvert{display:block}.top nav ul{flex-direction:column;align-items:stretch;gap:0}.top nav a{font-size:24px;padding:16px 4px;border-bottom:1px dashed var(--ligne)}.top nav a:not(.cta)::after{display:none}.li-cta{margin:18px 0 0}.li-cta .cta{text-align:center;font-size:19px}.foot .wrap{grid-template-columns:1fr}.f-cols{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){body{font-size:16px}.graves{grid-template-columns:repeat(2,1fr)}.rech{grid-template-columns:1fr}.rech button{justify-content:center}.rubs,.arts-g,.trois-e,.mchiffres{grid-template-columns:1fr}.mchiffres{grid-template-columns:repeat(2,1fr)}.villes-l{grid-template-columns:1fr}.dl{grid-template-columns:1fr;gap:2px}.dl dd{margin-bottom:8px}.fc{grid-template-columns:58px minmax(0,1fr);gap:10px}.fc::before{left:28px}.no{width:54px;font-size:20px}.info-g{grid-template-columns:1fr}.f-cols{grid-template-columns:1fr}
 .tunnel{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;gap:10px;padding:10px 12px}.tcard{padding:12px 14px;box-shadow:4px 4px 0 var(--faisceau)}.rassure{padding:10px 14px}.rassure p:not(.chiffres-r),.recap{display:none}.pas{margin-bottom:8px}.pas li{font-size:11px}.pas li i{width:22px;height:22px;margin-bottom:2px}.pas li::before{top:10px}.etape h1{font-size:23px;margin:0 0 8px;padding-right:56px}.tuiles{grid-template-columns:repeat(2,1fr);gap:8px}.tuile{padding:8px 10px;font-size:15px;gap:2px}.tuile svg{width:30px;height:26px}.tuile small{display:none}.tuiles.t-com{grid-template-columns:repeat(2,1fr)}.libre{margin-top:8px}.chk{font-size:13px!important}.etape[data-e="5"] .f{gap:8px}}
@media (max-height:760px) and (min-width:641px){.tcard{padding:14px 22px}.tuile svg{width:34px;height:30px}.tuile small{display:none}.etape h1{margin-bottom:8px}}
@media (max-height:950px) and (min-width:1100px){.hero-g{min-height:calc(100svh - 70px);padding-top:14px;padding-bottom:14px}.poste{max-height:62vh}h1{font-size:clamp(30px,3.4vw,46px)}}

.avecmini .wrap{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:30px;align-items:center}.avecmini{min-height:250px;padding:28px 0}.mini{width:190px;height:auto;max-height:230px}.mini .isl{fill:var(--faisceau);stroke:var(--nuit);stroke-width:3;vector-effect:non-scaling-stroke}.mini .loc{fill:var(--signal);opacity:.28}.mini .loc2{fill:var(--signal);stroke:#fff;stroke-width:3}
.meme-rub{margin-top:30px;border-top:2px solid var(--nuit);padding-top:6px}.meme-rub .arts-g{grid-template-columns:repeat(2,1fr)}
@media (max-width:640px){.avecmini .wrap{grid-template-columns:1fr}.mini{display:none}.avecmini{min-height:0}.meme-rub .arts-g{grid-template-columns:1fr}}

.fc-in{position:relative;padding-right:130px}.fc-ic{position:absolute;right:18px;top:16px;width:92px;text-align:center;color:var(--nuit)}.fc-ic svg{width:44px;height:40px;color:var(--signal)}.fc-ic small{display:block;font-size:11px;line-height:1.25;color:var(--radio);margin-top:2px}
.fc-t .tag{line-height:1.1;padding:6px 10px}.fiche-head .fc-t{margin-bottom:14px}.fiche-head .fh-t>p:not(.fc-t):not(.sous):not(.srcnote){margin-top:0}
.fiche-head [class*="sbabo"],.fiche-head [class*="abo"]{margin:24px 0}
.rubs img{width:100%;height:130px;object-fit:cover;display:block;margin:-18px -18px 12px;width:calc(100% + 36px);max-width:none}.rubs a{display:flex;flex-direction:column}.rubs a b{margin-top:auto}
.frise{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:10px;position:relative}.frise li{display:grid;grid-template-columns:34px minmax(120px,1.2fr) minmax(0,1fr) 48px;gap:12px;align-items:center}.frise i{background:var(--nuit);color:#fff;font:700 16px/34px var(--hd);width:34px;height:34px;text-align:center;font-style:normal;transform:rotate(0);clip-path:polygon(0 0,calc(100% - 7px) 0,100% 7px,100% 100%,0 100%)}.frise li:first-child i{background:var(--signal)}.fr-t{font:600 15px/1.25 var(--tx)}.fr-b{height:12px;background:var(--faisceau);display:block}.fr-b b{display:block;height:100%;background:var(--signal)}.frise em{font:700 15px var(--hd);font-style:normal;color:var(--radio);text-align:right}
.tuile svg{width:clamp(44px,8vh,72px)!important}.tuile{align-items:center;text-align:center;justify-content:center}.tuile small{text-align:center}.tuile span{text-align:center}
.garanties{list-style:none;margin:6px 0;padding:0;display:grid;gap:14px}.garanties li{display:flex;gap:12px;align-items:center;color:#fff;font-size:15px}.garanties svg{width:40px;height:36px;color:var(--faisceau);flex:none}.garanties svg *{fill:none}.mini-bar{margin-top:auto;width:100%;max-width:240px}.b-lv{transform-origin:17px 39px;animation:lv 6s ease-in-out infinite}@keyframes lv{0%,15%,100%{transform:rotate(0)}40%,70%{transform:rotate(-30deg)}}@media (prefers-reduced-motion:reduce){.b-lv{animation:none}}
.foot .f-bas{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 20px}
@media (max-width:1100px){.fc-in{padding-right:18px}.fc-ic{display:none}}
@media (max-width:640px){.tuile svg{width:40px!important}.garanties,.mini-bar{display:none}.frise li{grid-template-columns:30px minmax(0,1fr) 40px}.fr-b{display:none}}

.ile .lead{stroke:var(--nuit);stroke-width:1;vector-effect:non-scaling-stroke;opacity:.55}.ile .pt{r:3}
.bloc{margin:0 0 20px 0!important}@media (max-width:1100px){.bloc{margin:0 auto!important}}
.tuile svg{height:auto!important}@media (max-width:640px){.tuile svg{width:42px!important}.tuile{min-height:112px}}
.mini-bar{width:100%;max-width:100%;height:auto;margin:auto 0 0}.garanties{margin-bottom:auto}
.hero-g{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}.poste{max-height:66vh}

@media (max-width:1100px){.hero-g{grid-template-columns:minmax(0,1fr)!important}}
.foot .sbabo-pie{max-width:1180px;margin:-34px auto 0!important;padding:0 22px 14px;text-align:right;font-size:13px;color:#A9B1CE;position:relative}.foot .sbabo-pie a{color:#fff}
@media (max-width:640px){.foot .sbabo-pie{margin-top:6px!important;text-align:left}}
@media (max-width:640px){.scene,.poste{max-height:150px}.hero-g{padding-top:14px}.hero h1{font-size:28px}}
.wrap.sec{padding-left:22px;padding-right:22px}.sec.blanc .wrap,.sec .wrap{padding-left:22px;padding-right:22px}
