/* SEN221 — feuille de style principale.
   Layout: news portal. Airy white page, sky-blue system. Top bar, logo row, pill nav; left = vedette + débats du jour + vidéos + derniers articles feed; right rail = dossiers, débats de la semaine, unes, pub. */
:root{
  --bg:#FFFFFF; --sky:#1E9BDB; --sky-deep:#0A5F92; --sky-soft:#EAF6FD; --sky-mid:#CDEBFA; --ink:#0B1E31; --ink2:#2C4258; --muted:#62778B; --line:#E1EBF2; --card:#F7FBFE; --hot:#E0364B;
  --f-d:"Sora","Segoe UI",Arial,sans-serif; --f-b:"Source Serif 4",Georgia,serif; --f-m:"JetBrains Mono",ui-monospace,Menlo,monospace;
  --max:1240px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--bg:#07121D;--sky:#5CC2F2;--sky-deep:#9AD9F7;--sky-soft:#0E2233;--sky-mid:#173750;--ink:#EAF3FA;--ink2:#BCD0DF;--muted:#7F97AB;--line:#18303F;--card:#0B1A28;--hot:#FF6B7C;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#07121D;--sky:#5CC2F2;--sky-deep:#9AD9F7;--sky-soft:#0E2233;--sky-mid:#173750;--ink:#EAF3FA;--ink2:#BCD0DF;--muted:#7F97AB;--line:#18303F;--card:#0B1A28;--hot:#FF6B7C;color-scheme:dark}
*{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font-family:var(--f-d);font-size:14.5px;line-height:1.5;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:30;background:var(--bg)}
a{color:inherit;text-decoration:none}
button,input{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--sky);outline-offset:2px}
h1,h2,h3{margin:0;text-wrap:balance}
p{margin:0}
.wrap{max-width:var(--max);margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.mono{font-family:var(--f-m);font-size:11.5px;font-variant-numeric:tabular-nums}

.top{background:var(--sky-soft);font-size:12.5px;color:var(--ink2)}
.top .wrap{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-block:7px}
.top .l{display:flex;gap:14px;align-items:center;white-space:nowrap;overflow:hidden;min-width:0}
.top .l b{color:var(--sky-deep)}
.top .r{display:flex;gap:4px;align-items:center}
.ic{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;color:var(--sky-deep);background:none;border:0;cursor:pointer}
.ic:hover{background:var(--sky-mid)}
.ic svg{width:14px;height:14px;fill:currentColor}

.head .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:18px}
.logo{display:flex;align-items:center;gap:10px}
.logo .mk{width:46px;height:46px;border-radius:14px;background:linear-gradient(145deg,var(--sky) 0%,#0A6FB0 100%);display:grid;place-items:center;color:#fff;font-weight:800;font-size:15px;letter-spacing:-.02em;box-shadow:0 6px 18px -6px rgba(30,155,219,.6)}
.logo .wd{font-weight:800;font-size:28px;letter-spacing:-.04em;line-height:1}
.logo .wd span{color:var(--sky)}
.logo small{display:block;font-size:11.5px;color:var(--muted);font-weight:500;letter-spacing:0;margin-top:3px}
.hbtn{display:flex;gap:8px}
.btn{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:9px 16px;font-weight:600;font-size:13.5px;border:1px solid var(--line);background:var(--bg);cursor:pointer;white-space:nowrap}
.btn:hover{border-color:var(--sky)}
.btn-sky{background:var(--sky);border-color:var(--sky);color:#fff}
.btn-sky:hover{background:#178AC5;border-color:#178AC5}
.btn svg{width:15px;height:15px}

nav.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(10px);border-block:1px solid var(--line)}
nav.nav .wrap{display:flex;gap:4px;align-items:center;overflow-x:auto;scrollbar-width:none;padding-block:8px}
nav.nav .wrap::-webkit-scrollbar{display:none}
nav.nav a,nav.nav button{padding:7px 13px;border-radius:999px;font-weight:600;font-size:13.5px;white-space:nowrap;border:0;background:none;cursor:pointer;color:var(--ink2)}
nav.nav a:hover,nav.nav button:hover{background:var(--sky-soft);color:var(--sky-deep)}
nav.nav a.on{background:var(--sky);color:#fff}
nav.nav .sep{width:1px;height:20px;background:var(--line);flex:none;margin-inline:4px}

.live{background:var(--bg)}
.live .wrap{display:flex;align-items:center;gap:12px;padding-block:10px}
.live .lab{flex:none;display:flex;align-items:center;gap:7px;font-weight:700;font-size:12px;color:var(--hot);text-transform:uppercase;letter-spacing:.06em}
.pulse{width:8px;height:8px;border-radius:50%;background:var(--hot);box-shadow:0 0 0 0 var(--hot);animation:pu 1.8s infinite}
@keyframes pu{70%{box-shadow:0 0 0 8px transparent}100%{box-shadow:0 0 0 0 transparent}}
.tk{flex:1;min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
.tk-run{display:inline-flex;gap:40px;white-space:nowrap;animation:mv 85s linear infinite;font-size:13.5px;font-weight:500}
.tk-run:hover{animation-play-state:paused}
.tk-run a:hover{color:var(--sky-deep)}
.tk-run b{color:var(--sky);margin-right:6px}
@keyframes mv{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.tk-run{animation:none}.tk{overflow-x:auto}.pulse{animation:none}}

.layout{display:grid;grid-template-columns:minmax(0,1fr) 336px;gap:36px;padding-block:18px 10px}
.col{display:flex;flex-direction:column;gap:38px;min-width:0}
.sh{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.sh h2{font-size:18px;font-weight:700;letter-spacing:-.015em;display:flex;align-items:center;gap:10px}
.sh h2 i{width:6px;height:20px;border-radius:3px;background:var(--sky);display:block}
.sh .more{font-size:12.5px;font-weight:600;color:var(--sky-deep)}
.sh .more:hover{text-decoration:underline}
.cat{display:inline-flex;align-items:center;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--sky-deep);background:var(--sky-soft);padding:3px 9px;border-radius:999px;width:max-content}
.cat.w{background:rgba(255,255,255,.18);color:#fff;backdrop-filter:blur(6px)}
.meta{font-size:12px;color:var(--muted);display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.meta .by{font-weight:600;color:var(--ink2)}
.img{position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:14px;background:var(--sky-mid);max-width:100%}
.img svg,.img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
a:hover .img svg,a:hover .img img{transform:scale(1.04)}
.img .tag{position:absolute;left:10px;bottom:10px;font-size:10px;color:#fff;background:rgba(11,30,49,.55);padding:2px 7px;border-radius:999px;backdrop-filter:blur(4px)}
.img .play{position:absolute;inset:0;margin:auto;width:54px;height:54px;border-radius:50%;background:rgba(255,255,255,.92);display:grid;place-items:center;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.img .play svg{position:static;width:20px;height:20px;fill:var(--sky-deep);transform:none!important;margin-left:3px}
.img .tag.phl{display:none}.img.hasph .tag.phl{display:block}.img.hasph .tag.ill{display:none}
.phc{margin-top:-8px}
.ph-credits{font-size:12px;color:var(--muted);display:flex;flex-direction:column;gap:3px}
.ttl{font-weight:700;letter-spacing:-.02em;line-height:1.22}
a:hover .ttl{color:var(--sky-deep)}
.sum{font-family:var(--f-b);color:var(--ink2);line-height:1.5}

.ved{display:block;position:relative;border-radius:20px;overflow:hidden;color:#fff;min-height:430px;background:#0B1E31}
.ved .img{position:absolute;inset:0;aspect-ratio:auto;border-radius:0}
.ved .sh2{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,30,49,.05) 25%,rgba(6,24,40,.9) 100%)}
.ved .tx{position:absolute;left:0;right:0;bottom:0;padding:28px;display:flex;flex-direction:column;gap:12px}
.ved .ttl{font-size:clamp(24px,3.2vw,38px);line-height:1.12;letter-spacing:-.03em}
.ved:hover .ttl{color:#fff;text-decoration:underline;text-decoration-color:var(--sky);text-underline-offset:6px;text-decoration-thickness:3px}
.ved .sum{color:rgba(255,255,255,.88);font-size:17px;max-width:62ch}
.ved .meta{color:rgba(255,255,255,.78)}
.ved .meta .by{color:#fff}
.ved-sub{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px}
.mini{display:flex;flex-direction:column;gap:8px}
.mini .ttl{font-size:15px}

.debats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;counter-reset:d}
.debats a{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;padding-block:14px;border-bottom:1px solid var(--line);align-items:start}
.debats a::before{counter-increment:d;content:counter(d,decimal-leading-zero);font-weight:800;font-size:22px;color:var(--sky);letter-spacing:-.04em;line-height:1.1}
.debats .ttl{font-size:15px;margin-top:5px}

.vids{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.vid{display:flex;flex-direction:column;gap:9px}
.vid .ttl{font-size:15px}

.feed{display:flex;flex-direction:column}
.fi{display:grid;grid-template-columns:200px minmax(0,1fr);gap:18px;padding-block:18px;border-bottom:1px solid var(--line)}
.fi:first-child{padding-top:0}
.fi .ttl{font-size:18.5px;margin-block:7px 6px}
.fi .sum{font-size:15.5px;margin-bottom:8px}
.loadmore{margin-top:18px;align-self:center}

aside.rail{display:flex;flex-direction:column;gap:30px;min-width:0}
.box{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px}
.box .sh{margin-bottom:12px}
.dos{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dos a{border-radius:12px;padding:12px;background:var(--bg);border:1px solid var(--line);display:flex;flex-direction:column;gap:4px;min-height:84px}
.dos a:hover{border-color:var(--sky);background:var(--sky-soft)}
.dos b{font-size:14px;line-height:1.25}
.dos span{font-size:11.5px;color:var(--muted)}
.wk{counter-reset:w;display:flex;flex-direction:column}
.wk a{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;padding-block:11px;border-bottom:1px solid var(--line);align-items:center}
.wk a:last-child{border-bottom:0;padding-bottom:0}
.wk a:first-child{padding-top:0}
.wk .th{position:relative}
.wk .img{aspect-ratio:1/1;border-radius:12px}
.wk .th::after{counter-increment:w;content:counter(w);position:absolute;top:-6px;left:-6px;width:22px;height:22px;border-radius:50%;background:var(--sky);color:#fff;font-size:11px;font-weight:800;display:grid;place-items:center;border:2px solid var(--card)}
.wk .ttl{font-size:13.5px}
.unes{display:flex;flex-direction:column;gap:10px}
.unes p{font-family:var(--f-b);font-size:15px;color:var(--ink2)}
.adbox{border:1px dashed var(--sky-mid);border-radius:18px;min-height:250px;display:grid;place-items:center;text-align:center;padding:20px;color:var(--muted);font-size:13px;position:relative;background:var(--card)}
.adbox span{position:absolute;top:10px;left:14px;font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.adbox b{display:block;color:var(--ink);font-size:16px;margin-bottom:4px}
.wx{display:flex;align-items:center;justify-content:space-between;gap:10px}
.wx .t{font-size:34px;font-weight:800;letter-spacing:-.04em;color:var(--sky-deep)}

.nl{background:linear-gradient(120deg,var(--sky) 0%,#0A6FB0 100%);color:#fff;border-radius:22px;padding:30px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:center;margin-block:30px}
.nl h2{font-size:clamp(22px,2.8vw,30px);font-weight:800;letter-spacing:-.03em}
.nl p{font-family:var(--f-b);font-size:16.5px;opacity:.92;margin-top:6px}
.nl form{display:flex;gap:8px;flex-wrap:wrap}
.nl input{flex:1 1 220px;border:0;border-radius:999px;padding:13px 18px;background:#fff;color:#0B1E31;min-width:0}
.nl button{border:0;border-radius:999px;padding:13px 22px;background:#0B1E31;color:#fff;font-weight:700;cursor:pointer}

footer{background:var(--sky-soft);margin-top:20px}
footer .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px;padding-block:38px 26px}
footer h4{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--sky-deep);margin:0 0 12px}
footer .links a{display:block;padding:3px 0;font-size:14px;color:var(--ink2)}
footer .links a:hover{color:var(--sky-deep)}
.fb{border-top:1px solid var(--line)}
.fb .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding-block:14px;font-size:12.5px;color:var(--muted);grid-template-columns:none}

.ov{position:fixed;inset:0;z-index:60;background:rgba(7,18,29,.55);backdrop-filter:blur(3px);display:flex;justify-content:flex-end}
.reader{background:var(--bg);color:var(--ink);width:min(700px,100%);height:100%;overflow:auto;padding:max(20px,env(safe-area-inset-top,0px)) max(26px,env(safe-area-inset-right,0px)) 44px 26px;display:flex;flex-direction:column;gap:16px;animation:sl .25s ease-out}
@keyframes sl{from{transform:translateX(30px);opacity:0}}
.reader h1{font-size:clamp(25px,3.8vw,34px);font-weight:800;letter-spacing:-.03em;line-height:1.12}
.reader .sum{font-size:19px}
.reader .body{font-family:var(--f-b);font-size:18.5px;line-height:1.65;display:flex;flex-direction:column;gap:16px}
.srcbox{border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:8px;background:var(--sky-soft)}
.srcbox a{color:var(--sky-deep);font-weight:600;text-decoration:underline}
.x{align-self:flex-end;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--bg);cursor:pointer;flex:none}
.share{display:flex;gap:6px;flex-wrap:wrap}
.share a,.share button{border:1px solid var(--line);border-radius:999px;padding:7px 14px;font-size:13px;font-weight:600;background:var(--bg);cursor:pointer}
.share .wa{background:#1FA855;border-color:#1FA855;color:#fff}
.share .fbk{background:#1A64D6;border-color:#1A64D6;color:#fff}
.note{font-size:12.5px;color:var(--muted)}
.sq{border:2px solid var(--sky);border-radius:14px;padding:12px 16px;font-size:18px;background:var(--bg);width:100%}

@media (max-width:1040px){.layout{grid-template-columns:minmax(0,1fr)}aside.rail{display:grid;grid-template-columns:1fr 1fr;gap:20px}footer .wrap{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.ved-sub,.vids{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.ved-sub .mini:nth-child(3),.vids .vid:nth-child(3){display:none}.debats{grid-template-columns:minmax(0,1fr)}.fi{grid-template-columns:120px minmax(0,1fr)}.fi .sum{display:none}aside.rail{grid-template-columns:minmax(0,1fr)}.nl{grid-template-columns:minmax(0,1fr)}.hbtn .btn:not(.btn-sky){display:none}.ved{min-height:380px}.ved .tx{padding:20px}}
@media (max-width:480px){.top .hx{display:none}.logo small{display:none}.fi{grid-template-columns:96px minmax(0,1fr)}.fi .ttl{font-size:16px}footer .wrap{grid-template-columns:minmax(0,1fr)}}

/* ===== Pages PHP ===== */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.muted{color:var(--muted)}
.img .ph-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:radial-gradient(120% 90% at 85% 10%,#5CC2F2 0%,transparent 55%),linear-gradient(145deg,#1E9BDB 0%,#0A5F92 60%,#0B3B5C 100%);color:#fff}
.img .ph-fallback b{font-weight:800;font-size:clamp(18px,3vw,34px);letter-spacing:-.04em;opacity:.95}
.img .ph-fallback i{font-style:normal;font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.8}
.img img{z-index:1}
.wk .img .ph-fallback b,.wk .img .ph-fallback i{display:none}
.fi-tx{min-width:0}
.flash{margin-block:14px 0;padding:12px 16px;border-radius:12px;font-weight:600;background:var(--sky-soft);color:var(--sky-deep);border:1px solid var(--sky-mid)}
.flash.err{background:#FDECEE;color:#B4232F;border-color:#F6C7CD}
.flash.warn{background:#FFF6E0;color:#8A5A00;border-color:#F3DFA8}
:root[data-theme="dark"] .flash.err{background:#3A1219;color:#FF9AA6;border-color:#5A1F29}
:root[data-theme="dark"] .flash.warn{background:#33250D;color:#F2C46B;border-color:#4A3713}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .flash.err{background:#3A1219;color:#FF9AA6;border-color:#5A1F29}:root:not([data-theme="light"]) .flash.warn{background:#33250D;color:#F2C46B;border-color:#4A3713}}
.pager{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:22px;flex-wrap:wrap}
.empty-page{padding:48px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;border:1px dashed var(--line);border-radius:18px}
.empty-page h1{font-size:24px}
.searchform{display:flex;gap:8px;flex-wrap:wrap}
.searchform input{flex:1 1 260px;border:2px solid var(--sky);border-radius:14px;padding:12px 16px;font-size:17px;background:var(--bg);min-width:0}
.art{gap:22px}
.art.static{max-width:760px;margin:30px auto}
.crumbs{display:flex;gap:8px;font-size:13px;color:var(--muted)}
.crumbs a:hover{color:var(--sky-deep)}
.art-head{display:flex;flex-direction:column;gap:14px}
.art-head h1{font-size:clamp(28px,4.2vw,42px);font-weight:800;letter-spacing:-.03em;line-height:1.1}
.art-head .deck{font-family:var(--f-b);font-size:20px;line-height:1.5;color:var(--ink2)}
.urgent{align-self:flex-start;background:var(--hot);color:#fff;font-weight:800;font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:999px}
.byline{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;padding-block:14px;border-block:1px solid var(--line)}
.who{display:flex;align-items:center;gap:12px}
.who .av{width:42px;height:42px;border-radius:12px;background:linear-gradient(145deg,var(--sky),#0A6FB0);color:#fff;font-weight:800;font-size:13px;display:grid;place-items:center}
.art-fig{margin:0}
.art-fig .img{aspect-ratio:16/9;border-radius:18px}
.art-fig figcaption{font-size:12.5px;color:var(--muted);margin-top:8px}
.art .body{font-family:var(--f-b);font-size:19px;line-height:1.7;display:flex;flex-direction:column;gap:18px;max-width:68ch}
.art .body h2{font-family:var(--f-d);font-size:22px;margin-top:8px}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.tags a{border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:13px;color:var(--ink2)}
.tags a:hover{border-color:var(--sky);color:var(--sky-deep)}
.comments{display:flex;flex-direction:column;gap:14px;max-width:68ch}
.cmt{padding-block:12px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:6px}
.cmt p{font-family:var(--f-b);font-size:16.5px}
.cform{display:flex;flex-direction:column;gap:12px;margin-top:8px}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-size:13px;font-weight:600}
.field input,.field textarea{border:1px solid var(--line);border-radius:12px;padding:11px 14px;background:var(--bg);width:100%;font:inherit}
.field input:focus,.field textarea:focus{border-color:var(--sky);outline:none}
.hide-m{}
.fdesc{font-family:var(--f-b);margin-top:14px;color:var(--ink2);max-width:34ch}
.fmail{margin-top:10px;color:var(--muted)}
@media (max-width:760px){.hide-m{display:none}.art .body{font-size:17.5px}}
.ved .ph-fallback b,.ved .ph-fallback i,.feat .ph-fallback b,.feat .ph-fallback i{display:none}

/* ===== Publicités : sliders 1200×205, 728×90, 300×250 ===== */
.ad{position:relative;margin-inline:auto;width:100%;border-radius:12px;overflow:hidden;background:var(--sky-soft)}
.ad-1200{max-width:1200px;aspect-ratio:1200/205}
.ad-728{max-width:728px;aspect-ratio:728/90}
.ad-300{max-width:300px;aspect-ratio:300/250}
.ad-top{padding-block:16px 0}
.ad-center{margin-block:6px}
.ad-track{position:absolute;inset:0}
.ad-slide{position:absolute;inset:0;opacity:0;transition:opacity .6s ease;pointer-events:none}
.ad-slide.on{opacity:1;pointer-events:auto}
.ad-slide img{width:100%;height:100%;object-fit:cover;display:block}
.ad-lbl{position:absolute;top:6px;right:8px;z-index:3;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;background:rgba(11,30,49,.55);color:#fff;padding:2px 6px;border-radius:4px}
.ad-dots{position:absolute;left:0;right:0;bottom:6px;z-index:3;display:flex;justify-content:center;gap:6px}
.ad-dots button{width:8px;height:8px;border-radius:50%;border:0;padding:0;background:rgba(255,255,255,.55);cursor:pointer;box-shadow:0 0 0 1px rgba(11,30,49,.25)}
.ad-dots button.on{background:#fff;width:20px;border-radius:4px}
.ad-728 .ad-dots,.ad-1200 .ad-dots{bottom:4px}
.ad-empty{border:1px dashed var(--sky-mid);background:var(--card);display:grid;place-items:center;text-align:center;padding:10px}
.ad-empty .ad-lbl{background:var(--sky-soft);color:var(--sky-deep)}
.ad-cta{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:13px;color:var(--muted)}
.ad-cta b{font-size:16px;color:var(--ink)}
.ad-1200 .ad-cta b{font-size:clamp(15px,2.2vw,22px)}
.ad-728 .ad-cta{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:4px 12px}
.ad-contact{display:flex;gap:10px;margin-top:4px;font-weight:700}
.ad-contact a{color:var(--sky-deep)}
.ad-contact a:hover{text-decoration:underline}
.ad-728 .ad-contact{margin-top:0}
.top .tel{color:var(--sky-deep);font-weight:600}
.fphone{margin-top:6px;font-weight:600;color:var(--sky-deep)}
.fphone a:hover{text-decoration:underline}
@media (max-width:560px){.ad-728.ad-empty{aspect-ratio:auto;min-height:90px}.ad-1200.ad-empty{aspect-ratio:auto;min-height:110px}}
@media (max-width:480px){.top .l b{display:none}.top .l .tel{display:inline!important}}

/* ===== Accueil « magazine » ===== */
:root{--navbg:#0A6FB0;--navfg:#FFFFFF;--navhover:rgba(255,255,255,.16)}
:root[data-theme="dark"]{--navbg:#0E3A5A}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--navbg:#0E3A5A}}
nav.nav{background:var(--navbg);border-block:0;backdrop-filter:none}
nav.nav a,nav.nav button{color:var(--navfg)}
nav.nav a:hover,nav.nav button:hover{background:var(--navhover);color:var(--navfg)}
nav.nav a.on{background:#fff;color:#0A5F92}
nav.nav .sep{background:rgba(255,255,255,.3)}
.hm{display:flex;flex-direction:column;gap:34px;padding-block:22px 10px}
.hm .ttl{letter-spacing:-.015em}
.kl{display:flex;gap:8px;align-items:center;font-size:11px;margin-top:2px}
.kick{font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--sky-deep)}
.kdate{color:var(--muted)}
.hm-h{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.hm-h h2{font-size:19px;font-weight:800;letter-spacing:-.02em;white-space:nowrap}
.hm-h .slash{flex:1;height:3px;border-radius:2px;background:linear-gradient(90deg,var(--sky) 0 56px,var(--line) 56px)}
.hm-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.05fr) minmax(0,1.05fr);gap:26px;align-items:start}
.hm-left,.hm-center,.hm-right{display:flex;flex-direction:column;min-width:0}
.hm-left{gap:16px}
.hm-card{display:flex;flex-direction:column;gap:7px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.hm-card .img{aspect-ratio:16/10;border-radius:10px}
.hm-card .ttl{font-size:16px}
.hm-brief{display:flex;flex-direction:column;gap:4px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.hm-brief:last-child{border-bottom:0}
.hm-brief .ttl{font-size:15px}
.hm-lead{display:flex;flex-direction:column;gap:9px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.hm-lead .img{aspect-ratio:16/10;border-radius:14px}
.hm-lead .ttl{font-size:clamp(24px,2.6vw,32px);font-weight:800;line-height:1.12;letter-spacing:-.03em}
.hm-lead .sum{font-size:16px}
.hm-row{display:grid;grid-template-columns:150px minmax(0,1fr);gap:14px;padding-block:14px;border-bottom:1px solid var(--line);align-items:center}
.hm-row:last-child{border-bottom:0}
.hm-row .img{aspect-ratio:16/10;border-radius:10px}
.hm-row .ttl{font-size:16px;margin-top:4px}
.hm-right{gap:6px;position:sticky;top:calc(env(safe-area-inset-top,0px) + 64px)}
.hm-right .hm-h{margin-bottom:6px}
.hm-most{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column}
.hm-most a{display:grid;grid-template-columns:26px 64px minmax(0,1fr);gap:10px;align-items:center;padding-block:10px;border-bottom:1px solid var(--line)}
.hm-most .n{width:24px;height:24px;border-radius:7px;background:var(--sky);color:#fff;font-weight:800;font-size:12px;display:grid;place-items:center}
.hm-most li:first-child .n{background:var(--hot)}
.hm-most .img{aspect-ratio:1/1;border-radius:9px}
.hm-most .img .ph-fallback b,.hm-most .img .ph-fallback i{display:none}
.hm-most .ttl{font-size:13.5px;line-height:1.3}
.hm-news{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1.1fr);gap:22px;align-items:center;padding:20px 24px;border:1px solid var(--line);border-radius:16px;background:var(--card)}
.hm-news .logo .wd{font-size:24px}
.hm-news .logo .mk{width:40px;height:40px;font-size:13px;border-radius:12px}
.hm-news p{font-family:var(--f-b);color:var(--ink2);font-size:15px}
.hm-news form{display:flex;gap:8px;flex-wrap:wrap}
.hm-news input[type=email]{flex:1 1 200px;border:1px solid var(--line);border-radius:999px;padding:11px 16px;background:var(--bg);min-width:0}
.hm-news input[type=email]:focus{border-color:var(--sky);outline:none}
.hm-news button{border:0;border-radius:999px;padding:11px 20px;background:var(--navbg);color:#fff;font-weight:700;cursor:pointer}
.hm-four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.hm-feat{display:flex;flex-direction:column;gap:9px}
.hm-feat .img{aspect-ratio:4/5;border-radius:14px}
.hm-feat .ttl{font-size:17px;font-weight:800}
.hm-six{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;padding-top:24px;border-top:1px solid var(--line)}
.hm-small{display:flex;flex-direction:column;gap:6px}
.hm-small .img{aspect-ratio:4/3;border-radius:10px}
.hm-small .img .ph-fallback b{font-size:20px}
.hm-small .ttl{font-size:13.5px;line-height:1.3}
.hm-quick{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-block:14px;border-block:1px solid var(--line);font-size:13px}
.hm-quick b{margin-right:4px}
.hm-quick a{padding:6px 12px;border-radius:999px;background:var(--sky-soft);color:var(--sky-deep);font-weight:600}
.hm-quick a:hover{background:var(--sky);color:#fff}
.fi .kl{margin-bottom:2px}
@media (max-width:1100px){.hm-top{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr)}.hm-right{grid-column:1/-1;position:static;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}.hm-right .hm-h{grid-column:1/-1}.hm-six{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:820px){.hm-top{grid-template-columns:minmax(0,1fr)}.hm-center{order:-1}.hm-left{display:grid;grid-template-columns:1fr 1fr;gap:16px}.hm-brief{grid-column:span 1}.hm-four{grid-template-columns:repeat(2,minmax(0,1fr))}.hm-news{grid-template-columns:minmax(0,1fr)}.hm-right{grid-template-columns:minmax(0,1fr)}.hm-right .ad{margin-inline:auto}}
@media (max-width:520px){.hm-left{grid-template-columns:minmax(0,1fr)}.hm-six{grid-template-columns:repeat(2,minmax(0,1fr))}.hm-row{grid-template-columns:110px minmax(0,1fr)}.hm-feat .img{aspect-ratio:4/3}}

/* ===== Logo téléversé ===== */
.logo-img{display:block;width:auto;max-width:min(320px,62vw);object-fit:contain}
.logo-dark{display:none}
:root[data-theme="dark"] .logo-light.has-dark{display:none}
:root[data-theme="dark"] .logo-dark{display:block}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .logo-light.has-dark{display:none}:root:not([data-theme="light"]) .logo-dark{display:block}}
.logo-stack{display:flex;flex-direction:column;gap:4px}
.logo-tag{font-size:11.5px;color:var(--muted);font-weight:500}
footer .logo-img{max-width:240px}
.hm-news .logo-img{max-width:180px}
@media (max-width:480px){.logo-img{max-height:44px}.logo-tag{display:none}}

/* ===== Contenu enrichi des articles ===== */
.art .body figure{margin:6px 0}
.art-img img{width:100%;height:auto;border-radius:12px;display:block}
.art-img figcaption,.gallery figcaption,.embed-cap{font-family:var(--f-d);font-size:12.5px;color:var(--muted);margin-top:6px}
.art-img.pos-centre{max-width:560px;margin-inline:auto}
@media (min-width:700px){.art-img.pos-gauche{float:left;width:44%;margin:4px 22px 10px 0}.art-img.pos-droite{float:right;width:44%;margin:4px 0 10px 22px}}
.art .body::after{content:"";display:block;clear:both}
.gallery{margin:6px 0}
.gal-title{font-family:var(--f-d);font-weight:700;margin-bottom:8px}
.gal-grid{display:grid;gap:8px}
.gallery.cols-2 .gal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.gallery.cols-3 .gal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.gallery.cols-4 .gal-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.gal-grid figure{margin:0}
.gal-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;display:block;transition:opacity .2s}
.gal-grid a:hover img{opacity:.88}
@media (max-width:560px){.gallery.cols-3 .gal-grid,.gallery.cols-4 .gal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.embed{position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:#000;max-width:100%}
.embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.box-note{background:var(--sky-soft);border-left:4px solid var(--sky);border-radius:0 12px 12px 0;padding:16px 18px;display:flex;flex-direction:column;gap:8px;font-size:17px}
.box-title{font-family:var(--f-d);font-size:15px;color:var(--sky-deep);text-transform:uppercase;letter-spacing:.04em}
.quote{margin:4px 0;padding:6px 0 6px 22px;border-left:4px solid var(--hot);font-size:22px;font-style:italic;line-height:1.45}
.quote cite{display:block;margin-top:8px;font-family:var(--f-d);font-style:normal;font-size:13.5px;color:var(--muted)}
.quote cite::before{content:"— "}
.art .body blockquote:not(.quote){border-left:3px solid var(--line);padding-left:16px;color:var(--ink2)}
.cta{margin:4px 0}
.html-block{max-width:100%;overflow-x:auto}
.art .body table{border-collapse:collapse;width:100%;font-family:var(--f-d);font-size:14.5px}
.art .body th,.art .body td{border:1px solid var(--line);padding:8px 10px;text-align:left}
.art .body th{background:var(--sky-soft)}
.art .body img{max-width:100%;height:auto}
.art .body ul,.art .body ol{padding-left:22px;display:flex;flex-direction:column;gap:6px}
.art .body a{color:var(--sky-deep);text-decoration:underline;text-underline-offset:2px}
.art .body a.btn,.art .body a.zoom{text-decoration:none}
.art .body h3{font-family:var(--f-d);font-size:19px}
.lb{position:fixed;inset:0;z-index:80;background:rgba(5,10,16,.92);display:flex;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top,0px)) 16px}
.lb img{max-width:100%;max-height:82vh;border-radius:8px;object-fit:contain}
.lb figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:10px}
.lb figcaption{color:#E6EEF5;font-size:14px;text-align:center;max-width:70ch}
.lb button{position:absolute;background:rgba(255,255,255,.14);color:#fff;border:0;border-radius:50%;width:44px;height:44px;font-size:20px;cursor:pointer}
.lb .lb-x{top:max(14px,env(safe-area-inset-top,0px));right:14px}
.lb .lb-p{left:12px;top:50%}
.lb .lb-n{right:12px;top:50%}

/* Titre toujours au-dessus des photos dans les grands formats */
.ved .img,.feat .img{z-index:0}
.ved .sh2,.feat .ov{z-index:1}
.ved .tx,.feat .tx{z-index:2}
