/* Refonte « façon Adweek » (maquettes de Whilson du 31/10/2026, rapports/2026-10-31-refonte-adweek/maquettes) :
   Big Shoulders Display (titres) et Instrument Sans (texte), variables 400-900, sous-ensembles latin de Google Fonts, licence OFL. */
@font-face{font-family:'Big Shoulders Display';font-style:normal;font-weight:700 900;font-display:swap;src:url(/fonts/v2/big-shoulders-700-900-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Big Shoulders Display';font-style:normal;font-weight:700 900;font-display:swap;src:url(/fonts/v2/big-shoulders-700-900-latin.woff2) format('woff2');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:'Instrument Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/v2/instrument-sans-400-700-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/v2/instrument-sans-400-700-latin.woff2) format('woff2');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}
/* =========================================================
   OHMAZIN — système de design « façon Adweek », mobile first
   Paliers : mobile (base) · tablette ≥ 768 px · desktop ≥ 1100 px
   ========================================================= */
:root{
  --yellow:#ffeb00; --blue:#013082; --navy:#001a4d; --link:#0a46c4; --pale:#fff9c2;
  --red:#ff4f5e; --violet:#460055; --paper:#f3f5fa; --ink:#0b1630; --muted:#4a5878; --rule:#d6dcea;
  --soft:rgba(255,255,255,.74); --line:rgba(255,255,255,.14); --card:#062766;
  --display:"Big Shoulders Display","Oswald","Arial Narrow",sans-serif;
  --body:"Instrument Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
  --pad:18px; --max:1440px;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--navy)}
body{color:#fff;font:400 16px/1.55 var(--body);overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:100%;object-fit:cover}
ul,ol{list-style:none}
button{font:inherit}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--yellow);outline-offset:3px;border-radius:4px}
.sr{position:absolute;left:-9999px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.mock{background:var(--yellow);color:var(--navy);text-align:center;font-size:12px;font-weight:700;padding:5px 10px}

/* ---------- Typo ---------- */
.kicker{display:inline-block;font:700 11px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--yellow);margin-bottom:10px}
.kicker.red{color:var(--red)}
.by{font:400 11px/1.4 var(--body);letter-spacing:.1em;text-transform:uppercase;color:var(--soft)}
.chapo{font-size:17px;line-height:1.6;color:rgba(255,255,255,.88)}
.more{display:inline-block;font:700 11px/1 var(--body);letter-spacing:.12em;text-transform:uppercase;padding-bottom:5px;border-bottom:2.5px solid var(--yellow)}
.more:hover{color:var(--yellow)}
.hl{transition:color .2s}
a:hover .hl{color:var(--yellow)}
.h-une{font:900 40px/.92 var(--display);text-transform:uppercase;color:var(--yellow);letter-spacing:-.005em;text-wrap:balance}
a:hover .h-une{color:#fff}
.h-xl{font:900 clamp(34px,10.5vw,46px)/.9 var(--display);hyphens:auto;overflow-wrap:break-word;text-transform:uppercase;letter-spacing:-.005em;text-wrap:balance}
.h-l{font:800 28px/1 var(--display);text-wrap:balance}
.h-m{font:800 23px/1.04 var(--display);text-wrap:balance}
.h-s{font:600 16px/1.32 var(--body)}
.label{font:900 40px/.9 var(--display);text-transform:uppercase;color:var(--yellow)}
.label i{font-style:normal;color:transparent;-webkit-text-stroke:1.3px var(--yellow)}
.giant{font:900 clamp(38px,12.5vw,56px)/.86 var(--display);hyphens:auto;overflow-wrap:break-word;text-transform:uppercase;letter-spacing:.005em;text-wrap:balance}
.giant em{font-style:normal;color:var(--yellow)}

/* ---------- Boutons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:12px 18px;font:700 14px/1 var(--body);cursor:pointer;white-space:nowrap}
.btn-y{background:var(--yellow);color:var(--navy)}.btn-y:hover{background:#fff}
.btn-n{background:var(--navy);color:var(--yellow)}.btn-n:hover{background:var(--blue)}
.btn-w{background:#fff;color:var(--violet)}.btn-w:hover{background:var(--yellow);color:var(--navy)}
.btn-o{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.5)}.btn-o:hover{box-shadow:inset 0 0 0 1.5px var(--yellow);color:var(--yellow)}
.btn-sq{border-radius:10px}

/* ---------- Médias + crédits ---------- */
.media{position:relative;overflow:hidden;background:var(--blue)}
.media img{transition:transform .5s ease}
a:hover .media img{transform:scale(1.04)}
.credit{position:absolute;right:6px;bottom:6px;z-index:2;background:rgba(0,26,77,.82);color:#fff;font-size:10px;line-height:1.25;padding:3px 6px;border-radius:3px;max-width:88%}
.r16{aspect-ratio:16/9}.r43{aspect-ratio:4/3}.r1{aspect-ratio:1}.r45{aspect-ratio:4/5}.r1610{aspect-ratio:16/10}
.rad{border-radius:10px}

/* ---------- En-tête (pages intérieures + mobile/tablette de l'accueil) ---------- */
.hdr{background:var(--navy);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.hdr-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0}
.hdr-logo img{height:36px;width:72px;object-fit:contain;object-position:left center}
.hdr .hdr-event{display:none}
.hdr-tools{display:flex;align-items:center;gap:10px}
.hdr-tools .btn{padding:10px 14px;font-size:13px}
.icon-btn{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.3);color:#fff;background:none;border:0;cursor:pointer}
.icon-btn:hover{color:var(--yellow);box-shadow:inset 0 0 0 1.5px var(--yellow)}
.icon-btn svg{width:18px;height:18px}
.hdr .nl-txt{display:none}
.event{display:inline-flex;align-items:center;gap:10px;border:1.5px solid var(--red);border-radius:6px;padding:8px 13px;font-size:13px}
.event b{font:900 16px/1 var(--display);letter-spacing:.06em;color:var(--red)}
.event:hover{background:rgba(255,79,94,.12)}
.nav{display:flex;gap:22px;overflow-x:auto;padding:12px 0 14px;scrollbar-width:none;min-width:0;max-width:100%}
.nav::-webkit-scrollbar{display:none}
.nav a{font:800 15px/1 var(--display);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:rgba(255,255,255,.88)}
.nav a:hover,.nav a.on{color:var(--yellow)}
.nav a.fr{color:#d9a6ff}

/* Fil d'Ariane */
.crumbs{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--soft);padding:18px 0 0}
.crumbs a:hover{color:var(--yellow)}
.crumbs span{margin:0 6px;opacity:.5}

/* ---------- Titre de page géant (façon « BRANDS ») ---------- */
.phead{padding:26px 0 26px;border-bottom:1.5px dashed rgba(255,235,0,.4)}
.phead .over{display:block;font:700 11.5px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--soft);margin-bottom:12px}
.phead p.intro{margin-top:16px;font-size:16.5px;color:var(--soft);max-width:64ch}
.phead .row{display:flex;flex-direction:column;gap:18px}
.phead .row>div{min-width:0}

/* ---------- Cartes ---------- */
.grid{display:grid;grid-template-columns:1fr;gap:28px}
.card{display:block}
.card .media{margin-bottom:14px}
.card .meta{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow);margin-bottom:8px}
.card p{margin-top:8px;font-size:14.5px;line-height:1.55;color:var(--soft)}
.card .by{margin-top:10px}
.row-card{display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:start;padding:16px 0;border-bottom:1px solid var(--line)}
.row-card .media{border-radius:4px}
.row-card .meta{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow);margin-bottom:6px}

/* ---------- Encadré à titre vertical (façon « MOST SHARED ») ---------- */
.boxed{position:relative;margin-top:72px;padding:64px 18px 8px;border:1.5px dashed rgba(255,235,0,.55);border-radius:10px}
.boxed.solid{border-style:solid;border-color:var(--yellow);padding-bottom:24px}
.vlabel{position:absolute;left:14px;top:-20px;max-width:calc(100% - 28px);background:var(--navy);padding:0 10px;font:900 clamp(26px,8.4vw,40px)/.92 var(--display);text-transform:uppercase;color:var(--yellow)}
.rank{display:grid;grid-template-columns:52px 1fr;gap:10px;padding:16px 0;border-bottom:1px solid rgba(255,235,0,.25)}
.rank:last-child{border-bottom:0}
.rank .n{font:900 52px/.8 var(--display);color:var(--yellow)}
.rank h4{font:800 21px/1.06 var(--display)}
.rank small,.tag-sm{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--soft);margin-top:7px}

/* ---------- Le Fil ---------- */
.fil-li{display:grid;grid-template-columns:52px 1fr;gap:10px;padding:14px 0;border-bottom:1px solid var(--line)}
.fil-li time{font-size:12.5px;color:var(--yellow);font-weight:700;font-variant-numeric:tabular-nums;padding-top:2px}
.cat{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow)}
.badge{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border:1px solid rgba(255,255,255,.4);border-radius:3px;padding:2px 6px;margin-left:8px;color:var(--soft)}
.day{font:900 26px/1 var(--display);text-transform:uppercase;padding:34px 0 10px;border-bottom:2px solid var(--yellow)}

/* ---------- Dossiers Insider / gate ---------- */
.dossier{display:flex;flex-direction:column;gap:10px;width:100%;text-align:left;background:var(--blue);color:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;min-height:180px;cursor:pointer;transition:transform .15s ease,border-color .15s ease}
.dossier:hover{transform:translateY(-2px);border-color:var(--yellow)}
.lock{align-self:flex-start;background:var(--yellow);color:var(--navy);font-weight:700;font-size:12px;border-radius:999px;padding:4px 10px}
.dossier h3{font:800 25px/1 var(--display);text-wrap:balance}
.dossier .rub{margin-top:auto;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow)}
.gate{background:var(--pale);color:var(--navy);border-radius:14px;padding:22px}
.gate h3{font:900 30px/.95 var(--display);text-transform:uppercase;margin-bottom:14px}
.gate form{display:flex;flex-direction:column;gap:10px}
.gate input{width:100%;border:2px solid var(--navy);border-radius:999px;padding:12px 16px;font:15px var(--body);background:#fff;color:var(--ink)}
.gate .ok{min-height:1.2em;margin-top:8px;font-weight:700;font-size:13px}
.gate .small{font-size:12px;color:#55583a}

/* ---------- Bande Faux Rebond ---------- */
.band{background:var(--violet);padding:44px 0}
.band-in{display:grid;grid-template-columns:1fr;gap:30px}
.fr-main{display:grid;grid-template-columns:1fr;gap:20px}
.disc{width:84px;height:84px;border-radius:50%;background:repeating-radial-gradient(circle,#2a0033 0 3px,#3a0846 3px 6px);position:relative;box-shadow:0 0 0 6px rgba(255,255,255,.06)}
.disc::after{content:"";position:absolute;inset:37%;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 8px #5e1170}
@media (prefers-reduced-motion:no-preference){.disc{animation:spin 14s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}}
.over-v{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#e3b8ef}
.fr-main h2{font:900 48px/.88 var(--display);text-transform:uppercase;margin:8px 0 12px}
.fr-main p{color:rgba(255,255,255,.86);max-width:56ch}
.fr-main .btn{margin-top:20px}
.ep{display:grid;grid-template-columns:40px 1fr;gap:14px;align-items:start;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.play{width:32px;height:32px;border:2px solid var(--yellow);border-radius:50%;display:grid;place-items:center}
.play::before{content:"";border-left:9px solid var(--yellow);border-top:6px solid transparent;border-bottom:6px solid transparent;margin-left:3px}
.ep h4{font-weight:700}
.ep small{display:block;font-size:11.5px;color:#e3b8ef;letter-spacing:.08em;text-transform:uppercase;margin-top:4px}
.ep:hover h4{color:var(--yellow)}

/* ---------- Article ---------- */
.art-head{padding:22px 0 0;max-width:900px}
.art-head .h-xl{color:var(--yellow);margin:6px 0 16px}
.art-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:18px}
.avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;background:var(--blue);flex:0 0 40px}
.art-meta .who{font-weight:700;font-size:14px}
.share{display:flex;gap:8px;margin-left:auto}
.share a{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.3);font-size:12px;font-weight:700}
.share a:hover{box-shadow:inset 0 0 0 1.5px var(--yellow);color:var(--yellow)}
.art-fig{margin:24px calc(var(--pad) * -1) 0}
.art-fig figcaption{font-size:12px;color:var(--soft);padding:8px var(--pad) 0}
.art-grid{display:grid;grid-template-columns:1fr;gap:40px;margin-top:28px}
.prose{font-size:18px;line-height:1.72;color:rgba(255,255,255,.92);max-width:68ch}
.prose p{margin:0 0 22px}
.prose h2{font:900 34px/.95 var(--display);text-transform:uppercase;color:var(--yellow);margin:40px 0 16px}
.prose a{border-bottom:2px solid var(--yellow)}
.lede{font-size:20px;font-weight:600;color:#fff}
.retenir{background:var(--yellow);color:var(--navy);border-radius:12px;padding:22px;margin:30px 0}
.retenir h3{font:900 28px/1 var(--display);text-transform:uppercase;margin-bottom:10px}
.retenir li{padding-left:18px;position:relative;margin-bottom:8px;font-size:16px;line-height:1.5}
.retenir li::before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;background:var(--navy)}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 26px}
.tags a{font-size:12.5px;font-weight:700;border:1.5px solid rgba(255,255,255,.35);border-radius:999px;padding:6px 12px}
.tags a:hover{border-color:var(--yellow);color:var(--yellow)}
.author-box{display:grid;grid-template-columns:64px 1fr;gap:16px;align-items:start;background:var(--card);border-radius:12px;padding:20px;margin-top:10px}
.author-box .avatar{width:64px;height:64px}
.author-box p{font-size:14px;color:var(--soft);margin-top:6px}
.side-box{border:1.5px solid var(--yellow);border-radius:10px;padding:20px}
.side-box h3{font:900 28px/1 var(--display);text-transform:uppercase;color:var(--yellow);margin-bottom:6px}
.gated-fade{position:relative;max-height:150px;overflow:hidden}
.gated-fade::after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(rgba(0,26,77,0),var(--navy))}

/* ---------- Agenda (Sorties, Événements) ---------- */
.filters{display:flex;gap:8px;overflow-x:auto;padding:18px 0;scrollbar-width:none}
.filters::-webkit-scrollbar{display:none}
.chip{flex:0 0 auto;font-size:13px;font-weight:700;border-radius:999px;padding:8px 14px;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.35);background:none;color:#fff;cursor:pointer}
.chip.on,.chip:hover{background:var(--yellow);color:var(--navy);box-shadow:none}
.ag{display:grid;grid-template-columns:64px 1fr;gap:14px;padding:20px 0;border-bottom:1px solid var(--line)}
.ag-date{text-align:center;border:1.5px solid var(--yellow);border-radius:8px;padding:8px 4px;align-self:start}
.ag-date b{display:block;font:900 32px/.9 var(--display);color:var(--yellow)}
.ag-date span{display:block;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.ag .media{border-radius:8px;margin-bottom:12px}
.ag .meta{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow);margin-bottom:6px}
.ag p{font-size:14.5px;color:var(--soft);margin-top:6px}
.ag .lnk{display:inline-block;margin-top:10px;font-size:13px;font-weight:700;color:var(--yellow)}

/* ---------- Index A–Z / fiches ---------- */
.az{display:flex;gap:6px;overflow-x:auto;padding:16px 0;scrollbar-width:none}
.az::-webkit-scrollbar{display:none}
.az a{flex:0 0 auto;width:34px;height:34px;display:grid;place-items:center;border-radius:6px;font:800 18px/1 var(--display);box-shadow:inset 0 0 0 1px var(--line)}
.az a:hover{background:var(--yellow);color:var(--navy)}
.idx-sec{padding:30px 0 6px}
.idx-sec h2{font:900 34px/1 var(--display);text-transform:uppercase;color:var(--yellow);padding-bottom:10px;border-bottom:2px solid var(--yellow);margin-bottom:6px}
.idx-li{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:13px 0;border-bottom:1px solid var(--line)}
.idx-li b{font:800 22px/1.05 var(--display)}
.idx-li span{font-size:12px;color:var(--soft);white-space:nowrap}
.idx-li p{font-size:13.5px;color:var(--soft);margin-top:4px;font-weight:400}
.idx-li:hover b{color:var(--yellow)}
.facts{display:grid;grid-template-columns:1fr;border:1.5px solid var(--yellow);border-radius:10px;overflow:hidden}
.facts div{padding:14px 16px;border-bottom:1px solid rgba(255,235,0,.25)}
.facts div:last-child{border-bottom:0}
.facts dt{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--soft)}
.facts dd{font:800 22px/1.1 var(--display);margin-top:4px}
.facts dd.warn{color:var(--red)}
.toc{border-left:3px solid var(--yellow);padding-left:16px}
.toc li{margin:8px 0;font-size:14.5px}
.toc a:hover{color:var(--yellow)}
.toc b{font:900 18px/1 var(--display);color:var(--yellow);margin-right:8px}
.definition{font:700 22px/1.4 var(--body);border-left:6px solid var(--yellow);padding:6px 0 6px 18px;margin:24px 0}

/* ---------- Pages institutionnelles / formulaires ---------- */
.inst{display:grid;grid-template-columns:1fr;gap:30px;padding:30px 0 0}
.side-nav{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}
.side-nav::-webkit-scrollbar{display:none}
.side-nav a{flex:0 0 auto;font-size:13.5px;font-weight:700;padding:9px 14px;border-radius:999px;box-shadow:inset 0 0 0 1.5px var(--line)}
.side-nav a.on{background:var(--yellow);color:var(--navy);box-shadow:none}
.form{display:grid;gap:14px}
.form label{font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--soft);display:block;margin-bottom:6px}
.form input,.form select,.form textarea{width:100%;background:transparent;border:1.5px solid rgba(255,255,255,.4);border-radius:10px;padding:13px 14px;color:#fff;font:15px var(--body)}
.form textarea{min-height:140px;resize:vertical}
.form input:focus,.form textarea:focus,.form select:focus{border-color:var(--yellow)}
.form select option{color:var(--ink)}
.contact-cards{display:grid;grid-template-columns:1fr;gap:14px}
.contact-cards a{display:block;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px}
.contact-cards a:hover{border-color:var(--yellow)}
.contact-cards b{font:900 26px/1 var(--display);text-transform:uppercase;display:block;margin-bottom:6px}
.contact-cards span{font-size:14px;color:var(--soft)}

/* ---------- Newsletter / communauté / footer ---------- */
.nl-band{background:var(--pale);color:var(--navy);padding:44px 0}
.nl-band .giant{color:var(--navy)}
.nl-band p{color:#33361f;margin:16px 0 18px;max-width:58ch}
.nl-band small{display:block;margin-top:10px;color:#55583a}
.comm{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}
.comm a{display:flex;flex-direction:column;gap:6px;background:var(--blue);border:1px solid var(--line);border-radius:12px;padding:16px;min-height:150px}
.comm a:hover{border-color:var(--yellow)}
.comm b{font:900 22px/1 var(--display);text-transform:uppercase}
.comm span{font-size:13px;color:var(--soft)}
.comm em{margin-top:auto;font-style:normal;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow)}
.comm a.fr{background:var(--violet)}
footer.ft{margin-top:72px;background:var(--navy);border-top:4px solid var(--yellow);color:var(--soft);font-size:14px}
.ft-top{display:grid;grid-template-columns:1fr;gap:32px;padding:44px 0 32px}
.ft-top .logo img{height:48px;width:auto}
.ft-top .claim{font:900 36px/.9 var(--display);text-transform:uppercase;color:var(--yellow);margin-top:16px}
.ft h4{font:700 11.5px/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--yellow);margin-bottom:14px}
.ft li{margin-bottom:9px}
.cols2{columns:2;column-gap:24px}
.ft a:hover{color:var(--yellow)}
.ft-bot{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line);padding:18px 0 26px;font-size:12.5px}
.ft-bot nav{display:flex;gap:16px;flex-wrap:wrap}
.sec{padding-top:56px}
.sec-h{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px}
.sec-h a{color:var(--yellow);font-weight:700;font-size:14px;white-space:nowrap}
.pager{display:flex;justify-content:center;gap:8px;margin-top:34px}
.pager a{min-width:42px;height:42px;padding:0 12px;display:grid;place-items:center;border-radius:999px;font-weight:700;box-shadow:inset 0 0 0 1.5px var(--line)}
.pager a.on{background:var(--yellow);color:var(--navy);box-shadow:none}

/* ---------- Accueil : grille Adweek ---------- */
.home .shell{display:flex;flex-direction:column}
.home .left,.home .left-inner{display:contents}
.home .biglogo,.home .topbar{display:none}
.home .center{order:2;padding-top:20px;min-width:0}
.home .fil{order:3;margin-top:56px}
.home .right{order:4;padding-top:48px;min-width:0}
.hello{font-size:16.5px;line-height:1.6;padding-bottom:18px;border-bottom:1px solid var(--line)}
.hello b{font-weight:700}
.hello a{font-weight:600;border-bottom:2.5px solid var(--yellow)}
.rlabel{font:900 34px/.95 var(--display);text-transform:uppercase;margin:24px 0 6px}
.rlabel em{font-style:normal;color:var(--yellow)}
.rsub{font-size:13.5px;color:var(--soft);margin-bottom:16px}
.dossiers{display:grid;grid-template-columns:1fr;gap:14px;margin-bottom:14px}
.vtitle{font:900 44px/.9 var(--display);text-transform:uppercase;color:var(--yellow)}

/* =========================================================
   TABLETTE ≥ 768 px
   ========================================================= */
@media (min-width:768px){
  :root{--pad:28px}
  .hdr-logo img{height:42px;width:84px}
  .hdr .nl-txt{display:inline}
  .h-une{font-size:58px}
  .h-xl{font-size:64px}
  .h-l{font-size:32px}
  .giant{font-size:84px}
  .label{font-size:46px}
  .grid.g2,.grid.g3,.grid.g4{grid-template-columns:1fr 1fr}
  .phead{padding:40px 0 34px}
  .phead .row{flex-direction:row;flex-wrap:wrap;align-items:flex-end;justify-content:space-between}
  .boxed{margin-left:40px;padding:26px 30px 8px 50px}
  .boxed.solid{padding-bottom:26px}
  .vlabel{left:-30px;top:22px;max-width:none;padding:12px 0;writing-mode:vertical-rl;transform:rotate(180deg);font-size:46px;white-space:nowrap}
  .band-in{grid-template-columns:1.3fr 1fr;align-items:center}
  .fr-main{grid-template-columns:150px 1fr;align-items:center}
  .disc{width:150px;height:150px}
  .art-fig{margin:28px 0 0}.art-fig .media{border-radius:12px}.art-fig figcaption{padding:8px 0 0}
  .ag{grid-template-columns:84px 220px 1fr;gap:22px}
  .ag .media{margin-bottom:0}
  .ag-date b{font-size:38px}
  .facts{grid-template-columns:1fr 1fr}
  .facts div:nth-child(odd){border-right:1px solid rgba(255,235,0,.25)}
  .contact-cards{grid-template-columns:1fr 1fr}
  .comm{grid-template-columns:repeat(3,1fr)}
  .ft-top{grid-template-columns:1fr 1fr}
  .ft-bot{flex-direction:row;justify-content:space-between}
  .dossiers{grid-template-columns:1fr 1fr 1fr}
  .home .right .gate{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:center}
  .home .right .gate h3{margin:0}
  .split{display:grid;grid-template-columns:1fr 1fr;gap:28px}
}

/* =========================================================
   DESKTOP ≥ 1100 px — structure Adweek complète
   ========================================================= */
@media (min-width:1100px){
  :root{--pad:32px}
  .hdr{position:relative}
  .hdr .hdr-event{display:inline-flex}
  .h-une{font-size:72px}
  .h-xl{font-size:80px}
  .giant{font-size:112px}
  .grid.g3{grid-template-columns:repeat(3,1fr)}
  .grid.g4{grid-template-columns:repeat(4,1fr)}
  .comm{grid-template-columns:repeat(5,1fr)}
  .ft-top{grid-template-columns:1.3fr 1.6fr 1fr 1fr}
  .art-grid{grid-template-columns:minmax(0,1fr) 300px;gap:56px}
  .art-aside{position:sticky;top:20px;align-self:start}
  .inst{grid-template-columns:240px minmax(0,1fr);gap:56px}
  .side-nav{flex-direction:column;gap:4px;position:sticky;top:20px;align-self:start}
  .side-nav a{border-radius:6px;box-shadow:none;padding:10px 12px}
  .three{display:grid;grid-template-columns:260px minmax(0,1fr) 300px;gap:44px;align-items:start}
  .three > .l{position:sticky;top:20px}
  /* Accueil */
  .home .hdr{display:none}
  .home .shell{display:grid;grid-template-columns:270px minmax(0,1fr) 290px;grid-template-rows:auto auto 1fr;gap:0 36px;max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
  .home .left{display:block;grid-column:1;grid-row:1/span 3;padding-top:26px}
  .home .left-inner{display:block}
  .home .biglogo{display:block;position:relative;height:560px;overflow:hidden}
  .home .biglogo img{position:absolute;left:50%;top:50%;width:540px;height:auto;max-width:none;object-fit:contain;transform:translate(-50%,-50%) rotate(-90deg)}
  .home .topbar{display:flex;grid-column:2/4;grid-row:1;align-items:center;justify-content:space-between;gap:24px;padding:24px 0 16px}
  .home .nav-h{grid-column:2/4;grid-row:2;align-self:start;border-bottom:1px solid var(--line)}
  .home .center{grid-column:2;grid-row:3;padding-top:26px}
  .home .right{grid-column:3;grid-row:3;padding-top:26px}
  .home .fil{margin-top:30px}
  .home .dossiers{grid-template-columns:1fr}
  .home .right .gate{display:block}
  .home .right .gate h3{margin-bottom:14px}
  .vtrio{display:grid;grid-template-columns:90px repeat(3,1fr);gap:34px}
  .vtrio .vtitle{writing-mode:vertical-rl;transform:rotate(180deg);font-size:58px;white-space:nowrap}
}
@media (min-width:1300px){
  .home .shell{grid-template-columns:300px minmax(0,1fr) 300px;gap:0 44px}
  .home .biglogo{height:640px}.home .biglogo img{width:620px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* Encadré court : titre toujours horizontal */
@media (min-width:768px){.boxed.h{margin-left:0;padding:64px 30px 26px}.boxed.h .vlabel{writing-mode:horizontal-tb;transform:none;left:20px;top:-24px;padding:0 10px;white-space:normal;max-width:calc(100% - 40px);font-size:30px;overflow-wrap:anywhere}}

.boxed.h{margin-left:0}
@media (min-width:768px){.boxed.h .rank h4{font-size:19px}}

.nav-h{display:none}
@media (min-width:1100px){.home .nav-h{display:flex}}

/* ---------- Éléments du site gardés hors maquette (recherche, cookies, accessibilité, pubs) ---------- */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:-100px;left:16px;z-index:100;background:var(--yellow);color:var(--navy);font-weight:700;padding:12px 16px;border-radius:999px}
.skip-link:focus{top:10px}
svg{flex-shrink:0}
.credit a{color:inherit}
.hdr-logo,.biglogo{display:block}
.hdr-logo img{height:36px}
.event[hidden]{display:none!important}
body.dialog-open{overflow:hidden}
#search-dialog{background:var(--navy);color:#fff;width:min(820px,calc(100% - 24px));max-height:85svh;border:1.5px solid var(--yellow);border-radius:14px;padding:26px}
#search-dialog::backdrop{background:rgba(0,13,41,.82);backdrop-filter:blur(6px)}
.search-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.search-top h2{font:900 34px/.95 var(--display);text-transform:uppercase;color:var(--yellow)}
.search-top button{font-size:28px;line-height:1;color:#fff;background:none;border:0;cursor:pointer;width:40px;height:40px}
.search-field{display:flex;align-items:center;gap:14px;border-bottom:2px solid var(--yellow);margin-top:20px}
.search-field svg{width:22px;height:22px}
.search-field input{width:100%;border:0;background:transparent;color:#fff;padding:16px 0;font:17px var(--body)}
.search-field input::placeholder{color:var(--soft)}
#search-status{font-size:12.5px;color:var(--soft);padding:18px 0}
#search-results>a{display:block;border-top:1px solid var(--line);padding:16px 0}
#search-results>a>span{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow);margin-bottom:6px}
#search-results strong{font:800 21px/1.1 var(--display)}
#search-results>a:hover strong{color:var(--yellow)}
.consent{position:fixed;left:12px;right:12px;bottom:12px;z-index:60;display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;background:var(--pale);color:var(--navy);border-radius:14px;padding:18px 20px;box-shadow:0 12px 40px rgba(0,0,0,.35);max-width:920px;margin:0 auto}
.consent[hidden]{display:none}
.consent-text{flex:1 1 320px;font-size:14px;line-height:1.5}
.consent-text strong{display:block;font:900 22px/1 var(--display);text-transform:uppercase;margin-bottom:6px}
.consent-text a{text-decoration:underline}
.consent-actions{display:flex;gap:10px}
.consent .button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:12px 18px;font:700 14px/1 var(--body);cursor:pointer}
.consent .lime{background:var(--navy);color:var(--yellow)}
.consent .ghost{background:transparent;color:var(--navy);box-shadow:inset 0 0 0 1.5px var(--navy)}
.ft-cookies{background:none;border:0;padding:0;color:inherit;font:inherit;cursor:pointer}
.ft-cookies:hover{color:var(--yellow)}
.ft-partners{display:flex;flex-wrap:wrap;align-items:center;gap:18px 28px;padding:0 0 28px}
.ft-partners h4{margin:0}
.ft-partners img{height:44px;width:auto;object-fit:contain}
.ad-slot,.oh-pub{margin:40px 0}
/* Accueil mobile et tablette : marges latérales (la maquette collait les blocs au bord de l'écran sous 1100 px). */
@media (max-width:1099px){.home .shell{padding:0 var(--pad)}}
.home .topbar .hdr-tools{margin-left:auto}

/* ---------- Article : éléments du corps existants, au style de la refonte ---------- */
.art-fig figcaption a,.prose figcaption a{text-decoration:underline;text-underline-offset:2px}
.art-fig video{display:block;width:100%;height:100%;background:#000}
.art-meta .share button{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.3);background:none;border:0;color:#fff;font:700 12px var(--body);cursor:pointer}
.art-meta .share button:hover{box-shadow:inset 0 0 0 1.5px var(--yellow);color:var(--yellow)}
.listen-btn[hidden]{display:none!important}
.listen-btn .i-pause,.listen-btn[aria-pressed="true"] .i-play{display:none}
.listen-btn[aria-pressed="true"] .i-pause{display:block}
.listen-btn svg{width:16px;height:16px}
.prose h3{font:800 24px/1.1 var(--display);margin:30px 0 12px}
.prose .lede{font-size:20px;line-height:1.6}
.prose ul.article-list{list-style:none;margin:0 0 24px}
.prose ul.article-list li{position:relative;padding-left:20px;margin-bottom:10px}
.prose ul.article-list li::before{content:"";position:absolute;left:0;top:12px;width:8px;height:8px;background:var(--yellow)}
.prose .qa{border-left:3px solid var(--yellow);padding:4px 0 4px 18px;margin:0 0 24px}
.prose .qa-question{font-weight:700;color:#fff;margin-bottom:8px}
.prose .qa-answer{margin:0}
.prose .takeaways{background:var(--yellow);color:var(--navy);border-radius:12px;padding:22px;margin:30px 0}
.prose .takeaways h2{font:900 28px/1 var(--display);text-transform:uppercase;color:var(--navy);margin:0 0 10px}
.prose .takeaways ul{list-style:none}
.prose .takeaways li{padding-left:18px;position:relative;margin-bottom:8px;font-size:16px;line-height:1.5}
.prose .takeaways li::before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;background:var(--navy)}
.prose .decision-box,.prose .editorial-notice{border-left:6px solid var(--yellow);padding:6px 0 6px 18px;margin:0 0 28px}
.prose .decision-box p,.prose .editorial-notice p{font-size:17px;line-height:1.6;margin:0;color:#fff}
.prose .data-drop{background:var(--card);border:1.5px solid var(--yellow);border-radius:12px;padding:22px;margin:30px 0}
.prose .data-drop strong{display:block;font:900 64px/.9 var(--display);color:var(--yellow)}
.prose .data-drop p{font-size:16px;margin:12px 0 0}
.prose .tool-card{display:grid;grid-template-columns:56px 1fr;gap:14px;align-items:center;background:var(--card);border-radius:12px;padding:18px;margin:30px 0}
.prose .tool-card img{width:56px;height:56px;border-radius:12px}
.prose .tool-card-copy span{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow)}
.prose .tool-card-copy strong{font:800 22px/1.1 var(--display)}
.prose .tool-card-copy p{font-size:15px;margin:6px 0 0}
.prose .tool-card-button{grid-column:1/-1;justify-self:start;background:var(--yellow);color:var(--navy);border:0!important;border-radius:999px;padding:11px 16px;font-weight:700;font-size:14px}
.prose figure{margin:30px 0}
.prose figure img{height:auto;border-radius:10px}
.prose figcaption{font-size:12.5px;line-height:1.5;color:var(--soft);padding-top:8px}
.prose figcaption small{display:block}
.prose .article-video-player{position:relative;aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#000}
.prose .article-video-player iframe,.prose .article-video-player video{position:absolute;inset:0;width:100%;height:100%;border:0}
.prose .article-video-x .article-video-player{aspect-ratio:auto;background:none}
.prose .article-video-x .article-video-player blockquote{position:static}
.prose .article-podcast-player iframe{width:100%;height:200px;border:0;border-radius:10px}
.prose .article-table-scroll{overflow-x:auto}
.prose table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.45}
.prose th,.prose td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.prose thead th{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow);border-bottom:2px solid var(--yellow)}
.prose .article-table figcaption{font:800 20px/1.1 var(--display);color:#fff;padding:0 0 10px}
.prose .article-table-note{font-size:13px;color:var(--soft);margin-top:8px}
.prose .related-inline{display:grid;grid-template-columns:72px 1fr;gap:14px;align-items:center;border:1.5px dashed rgba(255,235,0,.55);border-radius:10px;padding:14px;margin:30px 0;border-bottom:1.5px dashed rgba(255,235,0,.55)!important}
.prose .related-inline-label{grid-column:1/-1;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow)}
.prose .related-inline img{width:72px;height:72px;border-radius:6px}
.prose .related-inline small,.prose .related-inline em{display:block;font-size:11px;font-style:normal;letter-spacing:.08em;text-transform:uppercase;color:var(--soft)}
.prose .related-inline strong{display:block;font:800 20px/1.1 var(--display);margin:4px 0}
.prose .related-inline:hover strong{color:var(--yellow)}
.prose .share-bar{display:flex;flex-wrap:wrap;gap:8px;margin:34px 0 26px}
.prose .share-bar a,.prose .share-bar button{border:0!important;background:none;color:#fff;font:700 13px var(--body);border-radius:999px;padding:9px 14px;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.35);cursor:pointer;display:inline-flex;align-items:center;gap:8px}
.prose .share-bar .share-button{background:var(--yellow);color:var(--navy);box-shadow:none}
.prose .share-bar svg{width:16px;height:16px}
.prose .google-source{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;background:var(--card);border-radius:12px;padding:20px;margin:26px 0}
.prose .google-source-kicker{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow)}
.prose .google-source strong{display:block;font:800 22px/1.1 var(--display);margin:6px 0}
.prose .google-source p{font-size:14.5px;margin:0;color:var(--soft)}
.prose .google-source-btn{display:inline-flex;align-items:center;gap:10px;background:#fff;color:var(--navy);border:0!important;border-radius:999px;padding:11px 16px;font-weight:700;font-size:14px}
.prose .article-audio{background:var(--card);border-radius:12px;padding:20px;margin:30px 0}
.prose .article-audio h2{margin:6px 0 4px;font-size:26px}
.prose .article-audio iframe{width:100%;border:0;margin-top:12px}
.prose .test-sources h2{font-size:26px}
.prose .test-source-list{padding-left:20px;font-size:14.5px}
.prose .test-source-list li{margin-bottom:6px}
.prose .test-citation{border:0!important;color:var(--yellow);font-size:.75em;vertical-align:super}
.prose .transparency-note{font-size:14px;color:var(--soft)}
.tags span{font-size:12.5px;font-weight:700;border:1.5px solid rgba(255,255,255,.35);border-radius:999px;padding:6px 12px}
.author-box a.h-m{border:0!important}
.oh-follow{border-top:1px solid var(--line);margin-top:34px;padding-top:26px}
.oh-follow h2{font:900 30px/.95 var(--display)!important;text-transform:uppercase;color:#fff!important;margin:0 0 8px!important}
.oh-follow h2 em{font-style:normal;color:var(--yellow)}
.oh-follow p{font-size:15px;color:var(--soft);margin:0 0 14px}
.oh-follow-links{display:flex;flex-wrap:wrap;gap:8px}
.oh-follow-links a{display:inline-flex;align-items:center;gap:8px;border:0!important;border-radius:999px;padding:9px 14px;font-size:13px;font-weight:700;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.35)}
.oh-follow-links a.oh-follow-news{background:var(--yellow);color:var(--navy);box-shadow:none}
.oh-follow-links svg{width:16px;height:16px}
.sponsor-disclosure{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:16px;background:var(--yellow);color:var(--navy);border-radius:999px;padding:8px 16px;font-size:13px;width:fit-content}
.sponsor-disclosure strong{text-transform:uppercase;letter-spacing:.08em;font-size:12px}
.sponsor-disclosure img{height:24px;width:auto}
.test-article-banner{display:flex;justify-content:space-between;gap:12px;background:var(--red);color:#fff;border-radius:10px;padding:10px 14px;margin-top:14px;font-size:13px}
.oh-pub{display:block;text-align:center}
.oh-pub__label{display:block;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--soft);margin-bottom:6px}
.oh-pub__link{display:inline-block;border:0!important}
.oh-pub__img{height:auto;max-width:100%;border-radius:8px}
.oh-pub--side{margin:0}
.pub-newsletter{display:none}
.prose .story-photo-credit,.prose .news-photo-caption{display:inline}

/* ---------- Rubrique ---------- */
.three > .m{min-width:0}
.three > aside{min-width:0}
@media (max-width:1099px){.three{display:flex;flex-direction:column;gap:40px}.three > .l{order:3}.three > .m{order:1}.three > aside:last-child{order:2}}
.sel8{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.sel8 a{display:block}
.sel8-poster{position:relative;display:block;aspect-ratio:2/3;border-radius:8px;overflow:hidden;background:var(--blue)}
.sel8-poster b{position:absolute;left:6px;top:4px;font:900 30px/1 var(--display);color:var(--yellow);text-shadow:0 2px 8px rgba(0,0,0,.6)}
.sel8 strong{display:block;font:800 16px/1.1 var(--display);margin-top:8px}
.sel8 small{display:block;font-size:11px;color:var(--soft);margin-top:3px}
.sel8 a:hover strong{color:var(--yellow)}
.more-list[data-collapsed] > .row-card:nth-child(n+21){display:none}
.more-btn{margin-top:22px}
/* ---------- Le Fil ---------- */
.fil-li .fil-sum{font-size:14.5px;color:var(--soft);margin-top:6px}
.fil-li[hidden],.fil-day-block[hidden]{display:none}
.chip[aria-pressed="true"]{background:var(--yellow);color:var(--navy);box-shadow:none}

/* ---------- Fiches business (fiche-business.css, préfixe .fb-) : variables de l'ancien thème rebranchées sur la refonte ---------- */
:root{--deep-blue:#001a4d;--text-on-blue:#fff;--text-soft:rgba(255,255,255,.74);--muted-on-navy:rgba(255,255,255,.6);--hot:#e42245;--hot-on-dark:#ff4f5e;--white:#fff;--yellow-a55:rgba(255,235,0,.55);--white-a40:rgba(255,255,255,.4);--white-a35:rgba(255,255,255,.35);--white-a25:rgba(255,255,255,.25);--white-a20:rgba(255,255,255,.2);--white-a18:rgba(255,255,255,.18);--white-a12:rgba(255,255,255,.12)}
.fb .button.lime{display:inline-flex;align-items:center;gap:10px;background:var(--yellow);color:var(--navy);border-radius:999px;padding:12px 18px;font:700 14px/1 var(--body)}
.fb .button svg{width:18px;height:18px}
.fb .stories-grid{display:grid;grid-template-columns:1fr;gap:28px}
@media (min-width:768px){.fb .stories-grid{grid-template-columns:1fr 1fr}}
@media (min-width:1100px){.fb .stories-grid{grid-template-columns:repeat(3,1fr)}}

/* ---------- Pages institutionnelles, auteur ---------- */
.legal-content section+section{margin-top:10px}
.legal-content h3{font:800 22px/1.1 var(--display);margin:24px 0 10px}
.legal-content ul,.legal-content ol{padding-left:20px;margin:0 0 22px}
.legal-content li{margin-bottom:8px}
.prose .sig-links a{margin-right:14px}
.inst .prose{max-width:none}
/* ---------- Podcast ---------- */
.podcast-episodes{list-style:none;padding:0;margin:0}
.podcast-episode{display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:start;padding:18px 0;border-bottom:1px solid var(--line)}
.podcast-episode.has-cover{grid-template-columns:96px 1fr;gap:18px}
.podcast-thumb{position:relative;width:96px;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--navy)}
.podcast-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.podcast-thumb .podcast-play{position:absolute;right:5px;bottom:5px;width:32px;height:32px;border-width:1.5px;background:rgba(0,26,77,.85)}.podcast-thumb .podcast-play svg{width:14px;height:14px}
@media (min-width:768px){.podcast-episode.has-cover{grid-template-columns:132px 1fr;gap:22px}.podcast-thumb{width:132px}.podcast-thumb .podcast-play{width:36px;height:36px;right:6px;bottom:6px}}
.podcast-play{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--yellow);background:none;color:var(--yellow);cursor:pointer}
.podcast-play svg{width:18px;height:18px}
.podcast-play .icon-pause,.podcast-play[aria-pressed="true"] .icon-play,.is-playing .podcast-play .icon-play{display:none}
.podcast-play[aria-pressed="true"] .icon-pause,.is-playing .podcast-play .icon-pause{display:block}
.podcast-episode-copy{min-width:0}
.podcast-meta{display:block;font-size:11.5px;color:#e3b8ef;letter-spacing:.08em;text-transform:uppercase}
.podcast-episode-copy h3{font:800 23px/1.04 var(--display);margin:4px 0 6px}
.podcast-episode-copy p{font-size:14.5px;color:var(--soft);margin:0}
.podcast-links{display:flex;flex-wrap:wrap;gap:14px;margin-top:10px;font-size:13px;font-weight:700}
.podcast-links .text-link{color:var(--yellow);display:inline-flex;align-items:center;gap:6px}
.podcast-links svg{width:16px;height:16px}
.podcast-progress{display:flex;align-items:center;gap:10px;margin-top:12px}
.podcast-progress[hidden]{display:none}
.podcast-progress input{flex:1;accent-color:var(--yellow)}
.audio-skip{background:none;border:0;color:#fff;font:700 12px var(--body);cursor:pointer}
.podcast-time{font-size:12px;color:var(--soft);font-variant-numeric:tabular-nums}
/* ---------- Agendas (Sorties, Événements) ---------- */
.ag[hidden],.ag-month[hidden]{display:none}
.ag.no-media{grid-template-columns:64px 1fr}
@media (min-width:768px){.ag.no-media{grid-template-columns:84px 1fr}}
.ag p{margin-top:6px}
.ag-city select{background:transparent;color:#fff;border:0;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.35);border-radius:999px;padding:8px 14px;font:700 13px var(--body)}
.ag-city option{color:var(--ink)}
.filters{align-items:center}
@media (max-width:767px){.ag > :nth-child(3){grid-column:2}}
/* ---------- Partenaires, presse ---------- */
.partner-card{display:block}
.partner-card-media{position:relative;margin:0 0 14px;border-radius:10px;overflow:hidden;background:var(--blue);aspect-ratio:4/5}
.partner-card-media video,.partner-card-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.partner-badge{position:absolute;left:10px;top:10px;background:var(--navy);border:1px solid var(--yellow);color:var(--yellow);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:4px 8px;border-radius:4px}
.partner-play{position:absolute;inset:0;margin:auto;width:84px;height:84px;border-radius:50%;border:3px solid var(--yellow);background:rgba(0,26,77,.7);color:var(--yellow);display:grid;place-items:center;cursor:pointer}
.partner-play svg{width:30px;height:30px}
.partner-play[hidden]{display:none}
.partner-episodes{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.partner-episode{font:700 12.5px var(--body);border:0;border-radius:999px;padding:7px 12px;background:none;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.35);cursor:pointer}
.partner-episode[aria-current="true"]{background:var(--yellow);color:var(--navy);box-shadow:none}
.partner-card h2{font:800 28px/1 var(--display);text-wrap:balance}
.partner-card p{margin-top:8px;font-size:14.5px;line-height:1.55;color:var(--soft)}
.partner-card-link{display:inline-block;margin-top:12px;font-weight:700;font-size:13px;color:var(--yellow)}
.contact-card{display:block;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:20px}
.contact-card b{font:900 24px/1 var(--display);text-transform:uppercase;display:block;margin-bottom:6px}
.contact-card span{font-size:14px;color:var(--soft)}
.art-fig img{height:auto}
/* ---------- Sélection séries, Rétro 90 ---------- */
.sel-row .ag-date span{font-size:9.5px;letter-spacing:.04em}
.sel-row-body{display:grid;grid-template-columns:90px 1fr;gap:16px;align-items:start}
.sel-row-poster{display:block;aspect-ratio:2/3;border-radius:8px;overflow:hidden;background:var(--blue)}
@media (min-width:768px){.sel-row-body{grid-template-columns:140px 1fr}}
body .r90{--sans:var(--body);--mono:var(--body)}
/* Vignettes (demande de Whilson, 31/10/2026) : Les incontournables, La culture en grand, Le Fil. */
.rank.has-thumb{grid-template-columns:52px 1fr 72px;align-items:start}
.rank.has-thumb .media{width:72px;border-radius:6px}
.fil-li{grid-template-columns:52px 1fr 88px}
.fil-li .media{width:88px;border-radius:6px}
@media (max-width:767px){.fil-li{grid-template-columns:44px 1fr 72px}.fil-li .media{width:72px}}
.boxed.solid .card .media{margin-bottom:16px}
/* « Dans le radar » : 4e article sur tablette seulement (grille 2 × 2). */
.card.radar-tab{display:none}
@media (min-width:768px) and (max-width:1099px){.card.radar-tab{display:block}}
/* Cadrage des anciennes images d'articles (content/visuals.json, champ framing) : point focal et ajustement repris dans les pages de la refonte. */
img[style*="--image-position"]{object-position:var(--image-position);object-fit:var(--image-fit,cover)}
/* Sources en fin d'article (test-articles.css, injectée sur les actualités sourcées) : lisibles sur fond bleu (demande de Whilson, 31/10/2026). */
body .prose .test-sources{border-top:1px solid var(--line)}
body .prose .test-sources h2{color:var(--yellow);font:900 30px/1 var(--display);text-transform:uppercase}
body .prose .test-source-list li{color:var(--soft)}
body .prose .test-source-list li::marker{color:var(--yellow)}
body .prose .test-source-list a,body .prose .test-source-list a span{color:#fff;border:0;text-decoration:underline;text-decoration-color:rgba(255,235,0,.6);text-underline-offset:4px}
body .prose .test-source-list a:hover{color:var(--yellow)}
body .prose .test-citation{color:var(--yellow)}
body .prose .decision-box .test-citation,body .prose .data-drop .test-citation{color:var(--yellow)}
body .prose .takeaways .test-citation{color:var(--navy)}
body .prose .editorial-notice{background:none;color:#fff;border-left:6px solid var(--yellow)}
body .prose .editorial-notice .eyebrow,body .prose .editorial-notice .kicker{color:var(--yellow)}
body .prose .article-video-player-x blockquote a,body .prose .article-video-link figcaption>span,body .prose .article-video-link figcaption a{color:#fff}
body .test-article-banner{background:var(--red);color:#fff}
/* Boutons avec flèche (« Retrouver cet article sur Substack », « Découvrir la marque »…) : icône à la taille du texte, pas de soulignement du texte courant. */
.btn svg,a svg:not([width]),button svg:not([width]){width:18px;height:18px}
.prose a.btn{border-bottom:0;display:inline-flex}
.prose a.btn-o{color:#fff}
.prose a.btn-o:hover{color:var(--yellow)}
/* 31/10 (Whilson : « tout doit être aligné pareil ») : dans une rangée de cartes, rubrique, titre, chapô et signature partagent les mêmes lignes */
@supports (grid-template-rows:subgrid){
  .grid>.card{display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:0;align-content:start}
  .grid>.card>.by{grid-row:5}
  .grid>.card.radar-tab{display:none}
}
@media (min-width:768px) and (max-width:1099px){@supports (grid-template-rows:subgrid){.grid>.card.radar-tab{display:grid}}}
/* 31/10 (Whilson : « agence mieux ça ») : identité de l'éditeur en fiche, intitulé en petites capitales et valeur en gras */
.legal-details{display:grid;grid-template-columns:1fr;gap:1px;margin:18px 0 0;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.legal-details>div{background:var(--navy);padding:16px 18px}
.legal-details dt{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--soft)}
.legal-details dd{margin:6px 0 0;font-weight:700;font-size:17px;line-height:1.35;color:#fff}
.legal-details>div:first-child dd{font:900 26px/1 var(--display);letter-spacing:.02em;color:var(--yellow)}
.legal-details+p{margin-top:16px;color:var(--soft)}
@media (min-width:600px){.legal-details{grid-template-columns:1fr 1fr}}
@media (min-width:1000px){.legal-details{grid-template-columns:repeat(3,1fr)}}
/* 31/10 (Whilson, modèle newsletters Adweek) : dossiers avec vignette carrée dessinée dans Figma à gauche, titre et résumé à droite */
.dossier.has-tile{display:grid;grid-template-columns:112px 1fr;gap:16px;align-items:start;min-height:0;padding:14px;background:transparent;border-color:transparent;border-bottom:1px solid var(--line);border-radius:0}
.dossier.has-tile:hover{transform:none;border-color:transparent;border-bottom-color:var(--yellow)}
.dossier-tile{width:112px;height:112px;border-radius:6px;display:block}
.dossier-copy{display:flex;flex-direction:column;gap:6px;min-width:0}
.dossier.has-tile .lock{align-self:flex-start}
.dossier.has-tile h3{font-size:22px}
.dossier.has-tile:hover h3{color:var(--yellow)}
.dossier-copy p{font-size:13.5px;line-height:1.45;color:var(--soft);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.dossier.has-tile .rub{margin-top:2px}
@media (min-width:768px){.dossier.has-tile{grid-template-columns:132px 1fr}.dossier-tile{width:132px;height:132px}}
.dossier.has-tile .lock{display:none}
.right .dossier.has-tile{grid-template-columns:88px 1fr;gap:14px;padding:16px 0}
.right .dossier-tile{width:88px;height:88px}
.right .dossier.has-tile h3{font-size:19px}
@media (min-width:768px){.dossiers:has(>.has-tile){grid-template-columns:1fr;gap:0}}
/* 31/10 (Whilson, option B) : partenaires du pied de page en cartes égales, logo, rôle et une ligne */
.ft-partners{display:grid;grid-template-columns:1fr;gap:14px;align-items:center}
.ft-pcards{display:grid;grid-template-columns:1fr;gap:12px}
.ft-pcard{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:8px;transition:border-color .15s ease}
.ft-pcard:hover{border-color:var(--yellow)}
.ft-partners .ft-pcard img{height:34px;width:170px;object-fit:contain;object-position:left center}
.ft-pcard b{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow)}
.ft-pcard span{font-size:13px;line-height:1.4;color:var(--soft)}
@media (min-width:768px){.ft-pcards{grid-template-columns:repeat(3,1fr)}}
@media (min-width:1100px){.ft-partners{grid-template-columns:180px 1fr;gap:24px}}
/* ---------- Newsletter (01/11/2026, maquette validée par Whilson) : page /newsletter/, pastille « Paru dans le brief », encarts ---------- */
.nl-hero{display:grid;gap:28px}
.nl-cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:22px}
.nl-cta small,.nl-sub{color:var(--soft);font-size:13.5px}
.nl-sub{margin-top:6px}
.nl-aud{display:grid;grid-template-columns:112px 1fr;gap:18px;align-items:center}
.nl-aud p{color:var(--soft);font-size:15px}
.nl-parts{list-style:none;padding:0;margin:22px 0 0;display:grid;grid-template-columns:1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.nl-parts li{background:var(--navy);padding:18px 20px}
.nl-parts span{font:900 34px/1 var(--display);color:var(--yellow)}
.nl-parts b{display:block;font:800 22px/1.05 var(--display);margin-top:8px}
.nl-parts p{font-size:14px;color:var(--soft);margin-top:6px}
.nl-tabs{display:grid;grid-template-columns:1fr;margin-top:18px}
.nl-tab{display:grid;grid-template-columns:96px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}
.nl-tile{aspect-ratio:1;border-radius:8px;padding:10px;display:flex;flex-direction:column;justify-content:space-between}
.nl-tile span{font:700 9px/1.2 var(--body);letter-spacing:.14em;text-transform:uppercase;opacity:.85}
.nl-tile b{font:900 16px/.95 var(--display);text-transform:uppercase;overflow-wrap:anywhere}
.nl-day{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow)}
.nl-tab h3,.nl-ed h3,.nl-encart h3{font:800 24px/1.05 var(--display);margin:4px 0 6px}
.nl-tab p{font-size:14.5px;color:var(--soft)}
.nl-tab .nl-last{margin-top:8px;font-size:13px}
.nl-tab .nl-last a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.nl-link{display:inline-block;margin-top:10px;font-weight:700;font-size:13px;color:var(--yellow)}
.nl-eds{display:grid;grid-template-columns:1fr;gap:14px;margin-top:18px}
.nl-ed{display:block;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px}
a.nl-ed:hover{border-color:var(--yellow)}
.nl-ed h3{font-size:21px}
.nl-ed p{font-size:13.5px;color:var(--soft)}
.nl-soon{display:inline-block;margin-top:8px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--navy);background:#fff9c2;border-radius:999px;padding:4px 10px}
.nl-map{width:100%;border-collapse:collapse;margin-top:18px;font-size:14.5px}
.nl-map td{padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.nl-map td:first-child{width:34%;color:var(--yellow);font-weight:700}
.nl-pill{display:inline-flex;gap:8px;align-items:center;margin:0 0 18px;background:#fff9c2;color:var(--navy);font-weight:700;font-size:13px;border-radius:999px;padding:7px 14px}
.nl-pill:hover{background:var(--yellow)}
.nl-end{background:#fff9c2;color:var(--navy);border-radius:14px;padding:22px;display:grid;gap:10px;justify-items:start;margin:30px 0}
.nl-end h2{font:900 26px/1 var(--display);text-transform:uppercase;color:var(--navy)}
.nl-end p{font-size:15px;color:var(--navy);margin:0}
.nl-encart{display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:center;background:var(--card);border-radius:12px;padding:16px;border:1px solid var(--line)}
@media (min-width:768px){.nl-parts{grid-template-columns:repeat(3,1fr)}.nl-eds{grid-template-columns:repeat(2,1fr)}.nl-tabs{grid-template-columns:1fr 1fr;column-gap:36px}.nl-tab{grid-template-columns:112px 1fr}}
@media (min-width:1100px){.nl-hero{grid-template-columns:1.3fr 1fr;align-items:end}.nl-eds{grid-template-columns:repeat(4,1fr)}}
/* ---------- Finitions UX (01/11/2026, « optimise l'XP utilisateur et le polish ») ---------- */
/* Ancres (#newsletter, sommaire, sources) visibles sous l'en-tête collant ; défilement doux sauf mouvement réduit (règle plus haut). */
html{scroll-padding-top:122px}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
::selection{background:var(--yellow);color:var(--navy)}
a,button{-webkit-tap-highlight-color:transparent}
/* Zones tactiles d'au moins 40 px : rubriques du menu, liens « Tout le fil », pied de page. */
.nav{padding:0;gap:20px}
.nav a{padding:14px 0 15px}
.more{padding-top:12px}
.ft li{margin-bottom:0}
.ft li a{display:inline-block;padding:7px 0}
.ft-bot nav a,.ft-bot nav button{display:inline-block;padding:9px 0}
/* Menu des rubriques qui défile : fondu à droite pour montrer qu'il continue (mobile et tablette). */
@media (max-width:1099px){.hdr .nav{-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent);padding-right:28px}}
/* Bouton « Recevoir la newsletter » : pas d'espace en trop entre les deux mots. */
.hdr-tools .btn{gap:0}
/* Retour au toucher sur les boutons et les cartes. */
@media (hover:none){.btn:active,.card:active,.row-card:active,.dossier:active,.nl-ed:active{transform:scale(.985);transition:transform .08s ease}}
/* Titres et chapôs : coupures plus équilibrées. */
h1,h2,h3,.h-s{text-wrap:balance}
.prose p,.chapo,.card p{text-wrap:pretty}
/* Mobile : l'en-tête se retire quand on descend dans la lecture et revient dès qu'on remonte. */
.hdr{transition:transform .22s ease}
@media (max-width:1099px){.hdr.is-tucked{transform:translateY(-100%)}}
/* Partage en story (01/11/2026, comme sur le site en ligne) : bouton « Story » à côté de l'écoute, sous le titre ; la barre de partage complète
   (story, publication Instagram, WhatsApp…) reste dans le corps de l'article. Visuels de scripts/social-story.mjs. */
.share .share-st{width:auto;padding:0 12px;gap:6px;display:inline-flex;align-items:center;border-radius:999px;background:var(--yellow);color:var(--navy);font-weight:700;font-size:13px}
.share .share-st svg{width:15px;height:15px}
/* Tablette (768-1099 px) : lignes de lecture moins longues, colonne « Plus dans la rubrique » et brief côte à côte sous l'article. */
@media (min-width:768px) and (max-width:1099px){
  .art-grid .prose{max-width:700px}
  .art-grid .prose p,.art-grid .prose li{font-size:18px}
  .art-aside{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
}
/* Tablette en paysage (1024 × 768…) : la photo de une ne remplit plus tout l'écran, le titre reste visible sans défiler. */
@media (min-width:900px) and (max-width:1099px) and (orientation:landscape){.lead-home .media.r16,.rub-lead .media.r16{aspect-ratio:21/9}}
/* L'opportunité du vendredi dans l'encart du brief (01/11/2026). */
.gate-opp{display:block;margin:0 0 14px;padding:12px 14px;border-radius:10px;background:rgba(0,26,77,.08);font-weight:700;font-size:14px;line-height:1.35;color:var(--navy)}
.gate-opp span{display:block;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#0a46c4;margin-bottom:4px}
.gate-opp:hover{background:rgba(0,26,77,.14)}
/* Pied de page : logo OHMAZIN en entier (01/11/2026). */
.ft-top .logo img.ft-wordmark{height:auto;width:250px;max-width:72vw}
/* Recherche (01/11/2026, Whilson : « agir comme sur le site actuel ») : fenêtre centrée qui suit la hauteur des résultats,
   résultats en liste (vignette 96 × 72 à gauche, rubrique et titre à droite), comme sur le site en ligne ; couleurs de la refonte. */
#search-dialog{margin:auto;inset:0;max-height:min(85svh,760px);overflow:auto;overscroll-behavior:contain}
#search-dialog[open]{display:block}
#search-results>a.search-result{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:16px;min-height:92px;padding:10px 0;border-top:1px solid var(--line)}
#search-results>a.search-result-no-image{grid-template-columns:minmax(0,1fr)}
#search-results .search-result-image{width:96px;height:72px;object-fit:cover;border-radius:6px;background:var(--card)}
#search-results>a.search-result>.search-result-copy{display:grid;gap:5px;min-width:0;margin:0}
#search-results .search-result-category{font-size:11px;line-height:1.3;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--yellow)}
#search-results .search-result-copy strong{display:block;font:700 16px/1.3 var(--body);color:#fff}
#search-results>a:hover .search-result-copy strong{color:var(--yellow)}
#search-results>p{padding:16px 0;color:var(--soft)}
@media (max-width:650px){#search-dialog{padding:20px;width:calc(100% - 24px)}.search-top h2{font-size:28px}#search-results>a.search-result{grid-template-columns:74px minmax(0,1fr);gap:12px;min-height:80px;padding:9px 0}#search-results .search-result-image{width:74px;height:62px}}
#search-results>a.search-result>.search-result-copy{text-transform:none;letter-spacing:normal;font-size:inherit;color:inherit}
/* Champ de recherche (01/11/2026) : plus de cadre de focus qui déborde du champ ; le focus allume le soulignement (blanc, plus épais)
   et la croix d'effacement passe aux couleurs du site. */
#search-dialog .search-field{border-bottom-width:2px;transition:border-color .15s ease,box-shadow .15s ease}
#search-dialog .search-field input:focus,#search-dialog .search-field input:focus-visible{outline:none;box-shadow:none}
#search-dialog .search-field:focus-within{border-bottom-color:#fff;box-shadow:0 2px 0 #fff}
#search-input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;width:18px;height:18px;margin-left:8px;cursor:pointer;background:var(--yellow);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 6l12 12M18 6L6 18' stroke='black' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 6l12 12M18 6L6 18' stroke='black' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat}
#search-dialog .search-top button:focus-visible{outline-offset:-2px}
