
:root{
  --bg:#020713;
  --bg2:#061226;
  --surface:#07182e;
  --surface2:#0a203c;
  --surface3:#0d294b;
  --text:#f4f7ff;
  --muted:#a8bbd8;
  --line:rgba(255,255,255,.11);
  --line-strong:rgba(255,255,255,.22);
  --blue:#209fff;
  --cyan:#46d9ff;
  --gold:#ffc72f;
  --red:#ff4254;
  --white:#fff;
  --shadow:0 26px 70px rgba(0,0,0,.42);
  --radius:26px;
  --shell:1320px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:
  radial-gradient(circle at 10% 5%,rgba(32,159,255,.16),transparent 26%),
  radial-gradient(circle at 92% 15%,rgba(255,66,84,.08),transparent 22%),
  linear-gradient(180deg,#020713 0%,#041021 42%,#020713 100%);
  color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;line-height:1.55;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.24;background-image:radial-gradient(#fff .55px,transparent .75px),radial-gradient(#fff .4px,transparent .7px);background-size:80px 80px,115px 115px;background-position:0 0,28px 42px}
a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input{font:inherit}.shell{width:min(var(--shell),calc(100% - 38px));margin-inline:auto}.section{padding:88px 0}.section-tight{padding:56px 0}.reading-progress{position:fixed;left:0;top:0;height:3px;width:0;background:linear-gradient(90deg,var(--blue),var(--white),var(--red));z-index:99;box-shadow:0 0 16px rgba(32,159,255,.8)}
.site-header{position:sticky;top:0;z-index:50;background:rgba(2,7,19,.78);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.header-inner{min-height:78px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:49px;height:49px;border-radius:50%;object-fit:cover;border:1px solid rgba(255,255,255,.28);box-shadow:0 0 26px rgba(32,159,255,.24)}.brand span{display:grid;line-height:1.05}.brand strong{font-size:21px;letter-spacing:.16em}.brand small{margin-top:6px;color:#91a9cb;font-size:10px;letter-spacing:.17em;text-transform:uppercase}.main-nav{display:flex;align-items:center;justify-content:center;gap:28px}.main-nav a{font-size:14px;color:#becce3;position:relative;padding:28px 0}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:18px;height:2px;background:linear-gradient(90deg,var(--blue),var(--red));transition:.25s}.main-nav a:hover,.main-nav a.active{color:#fff}.main-nav a:hover:after,.main-nav a.active:after{right:0}.facebook-link{padding:11px 16px;border:1px solid var(--line-strong);border-radius:999px;font-size:13px;font-weight:800;background:rgba(255,255,255,.04)}.menu-toggle{display:none;color:#fff;border:1px solid var(--line);background:rgba(255,255,255,.05);border-radius:12px;width:44px;height:42px}
.kicker{display:inline-flex;align-items:center;gap:10px;color:#85d8ff;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.18em}.kicker:before{content:"";width:34px;height:2px;background:linear-gradient(90deg,var(--blue),var(--white),var(--red));box-shadow:0 0 13px rgba(32,159,255,.7)}.section-title{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:34px}.section-title h2{margin:12px 0 0;font-size:clamp(40px,5vw,70px);line-height:.94;letter-spacing:-.045em;text-transform:uppercase}.section-title p{max-width:530px;color:var(--muted);font-size:16px;line-height:1.72;margin:0}
.hero{padding:34px 0 48px}.hero-panel{min-height:700px;display:grid;grid-template-columns:minmax(0,.83fr) minmax(520px,1.17fr);border:1px solid var(--line-strong);border-radius:34px;overflow:hidden;background:#061123;box-shadow:var(--shadow);position:relative}.hero-panel:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,7,19,.98) 0%,rgba(2,7,19,.90) 39%,rgba(2,7,19,.16) 67%,rgba(2,7,19,.35) 100%);z-index:1;pointer-events:none}.hero-copy{position:relative;z-index:2;padding:62px 0 54px 58px;display:flex;flex-direction:column;justify-content:flex-end}.hero-copy h1{font-size:clamp(52px,6.2vw,96px);line-height:.88;letter-spacing:-.055em;text-transform:uppercase;margin:20px 0 22px;max-width:780px}.hero-copy h1 em{font-style:normal;color:var(--gold)}.hero-copy p{max-width:660px;color:#d2ddf0;font-size:18px;line-height:1.72}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:26px}.btn{min-height:51px;padding:0 20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:14px;font-weight:900;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,var(--blue),var(--cyan));color:#00111e;box-shadow:0 12px 28px rgba(32,159,255,.26)}.btn-ghost{border:1px solid var(--line-strong);background:rgba(255,255,255,.05)}.hero-image{position:absolute;inset:0 0 0 37%;z-index:0}.hero-image img{width:100%;height:100%;object-fit:cover}.hero-label{position:absolute;right:28px;top:28px;z-index:2;padding:10px 15px;border:1px solid var(--line-strong);background:rgba(2,7,19,.64);backdrop-filter:blur(12px);border-radius:999px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.hero-meta{display:flex;gap:20px;flex-wrap:wrap;margin-top:22px;color:#9eb3d1;font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:800}.hero-meta span{display:flex;align-items:center;gap:7px}.hero-meta span:before{content:"";width:5px;height:5px;background:var(--gold);border-radius:50%}
.manifesto{padding:18px 0 10px}.manifesto-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.manifesto-item{padding:28px 24px;border-right:1px solid var(--line)}.manifesto-item:last-child{border-right:0}.manifesto-item strong{display:block;font-size:17px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px}.manifesto-item p{margin:0;color:#9fb3d0;font-size:14px;line-height:1.6}.manifesto-icon{font-size:28px;color:var(--blue);margin-bottom:12px;text-shadow:0 0 20px rgba(32,159,255,.45)}
.editorial-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-template-rows:330px 330px;gap:18px}.editorial-card{position:relative;overflow:hidden;border-radius:27px;border:1px solid var(--line);box-shadow:var(--shadow);background:#07162a}.editorial-card:first-child{grid-row:1/3}.editorial-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.editorial-card:hover img{transform:scale(1.035)}.editorial-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(1,5,14,.92) 100%)}.editorial-card-content{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:25px}.editorial-card:first-child .editorial-card-content{padding:34px}.editorial-card .tag{display:inline-flex;padding:7px 11px;border-radius:999px;background:rgba(2,7,19,.68);border:1px solid var(--line-strong);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.editorial-card h3{font-size:24px;line-height:1.03;margin:13px 0 8px;text-transform:uppercase}.editorial-card:first-child h3{font-size:43px}.editorial-card p{margin:0;color:#c0cee2;font-size:13px;line-height:1.55}.editorial-card .mini-meta{margin-top:14px;color:#93aacb;font-size:11px;text-transform:uppercase;letter-spacing:.1em}
.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.article-card{border:1px solid var(--line);border-radius:25px;overflow:hidden;background:linear-gradient(180deg,rgba(10,31,59,.83),rgba(5,15,31,.91));box-shadow:0 18px 50px rgba(0,0,0,.26);transition:.25s;min-width:0}.article-card:hover{transform:translateY(-5px);border-color:rgba(70,217,255,.34);box-shadow:0 25px 65px rgba(0,0,0,.36)}.card-image{display:block;position:relative;aspect-ratio:16/10;overflow:hidden;background:#07162a}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.article-card:hover .card-image img{transform:scale(1.04)}.card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(2,7,19,.75) 100%)}.card-category{position:absolute;left:15px;bottom:14px;z-index:2;padding:8px 11px;border-radius:999px;background:rgba(2,7,19,.76);backdrop-filter:blur(10px);border:1px solid var(--line-strong);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.card-body{padding:22px}.card-meta{display:flex;justify-content:space-between;gap:12px;color:#8fa7c8;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.card-body h3{font-size:24px;line-height:1.08;letter-spacing:-.025em;margin:13px 0 12px}.card-body p{color:#aebfda;line-height:1.67;font-size:14px;margin:0 0 18px}.read-link{display:inline-flex;align-items:center;gap:8px;color:#8edfff;font-weight:900;font-size:13px}.read-link span{transition:.2s}.read-link:hover span{transform:translateX(4px)}
.category-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.category-card{min-height:250px;border-radius:25px;border:1px solid var(--line);padding:25px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,rgba(12,40,73,.88),rgba(4,13,28,.95));position:relative;overflow:hidden}.category-card:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-110px;top:-90px;background:radial-gradient(circle,rgba(32,159,255,.28),transparent 66%)}.category-card:nth-child(2):before{background:radial-gradient(circle,rgba(52,220,172,.22),transparent 66%)}.category-card:nth-child(3):before{background:radial-gradient(circle,rgba(255,199,47,.20),transparent 66%)}.category-card:nth-child(4):before{background:radial-gradient(circle,rgba(255,66,84,.18),transparent 66%)}.category-icon{font-size:36px;color:#8edfff}.category-card h3{font-size:24px;line-height:1.05;text-transform:uppercase;margin:36px 0 10px}.category-card p{margin:0;color:#aabbd6;font-size:14px}.category-card .count{margin-top:22px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:#eaf3ff}
.cover-band{position:relative;min-height:500px;border-block:1px solid var(--line);overflow:hidden;background:url('../img/msr-cover.webp') center/cover no-repeat}.cover-band:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,7,19,.95),rgba(2,7,19,.38),rgba(2,7,19,.78))}.cover-band-content{position:relative;z-index:2;min-height:500px;display:flex;flex-direction:column;justify-content:flex-end;padding:60px 0}.cover-band h2{font-size:clamp(42px,5vw,72px);text-transform:uppercase;line-height:.92;letter-spacing:-.04em;max-width:800px;margin:15px 0}.cover-band p{font-size:18px;color:#d3dded;max-width:660px;line-height:1.7}.cover-band-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.page-hero{padding:62px 0 42px}.page-hero h1{font-size:clamp(54px,7vw,102px);line-height:.88;text-transform:uppercase;letter-spacing:-.055em;margin:18px 0 20px;max-width:1000px}.page-hero p{max-width:740px;color:#b3c4df;font-size:18px;line-height:1.75}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0}.filter-btn{border:1px solid var(--line);background:rgba(255,255,255,.04);color:#b9cae1;padding:10px 14px;border-radius:999px;cursor:pointer;font-weight:800;font-size:12px}.filter-btn.active,.filter-btn:hover{color:#00111e;background:linear-gradient(135deg,var(--blue),var(--cyan));border-color:transparent}.search-box{position:relative;max-width:520px;margin-left:auto}.search-box input{width:100%;height:48px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.05);color:#fff;padding:0 20px 0 45px;outline:none}.search-box:before{content:"⌕";position:absolute;left:18px;top:10px;font-size:23px;color:#7dbde8}.listing-tools{display:flex;align-items:center;gap:16px;justify-content:space-between;margin-bottom:28px}.result-count{color:#8fa6c7;font-size:13px}.empty-state{display:none;padding:45px;text-align:center;border:1px dashed var(--line-strong);border-radius:24px;color:#a9bbd5}
.article-hero{padding:36px 0 32px}.article-cover{position:relative;min-height:690px;border-radius:32px;overflow:hidden;border:1px solid var(--line-strong);box-shadow:var(--shadow)}.article-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.article-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,7,19,.08) 0%,rgba(2,7,19,.22) 35%,rgba(2,7,19,.95) 100%)}.article-cover-content{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:46px}.article-cover-content h1{max-width:1100px;font-size:clamp(42px,5.4vw,78px);line-height:.94;letter-spacing:-.045em;text-transform:uppercase;margin:15px 0 17px}.article-cover-content .intro{max-width:850px;color:#d2deef;font-size:18px;line-height:1.7}.article-meta-row{display:flex;flex-wrap:wrap;gap:14px;color:#a3b6d3;font-size:12px;text-transform:uppercase;letter-spacing:.09em;font-weight:800}.article-meta-row span{display:flex;align-items:center;gap:7px}.article-meta-row span:before{content:"";width:5px;height:5px;background:var(--gold);border-radius:50%}.article-layout{display:grid;grid-template-columns:285px minmax(0,790px);justify-content:center;gap:42px;align-items:start;padding:54px 0}.article-aside{position:sticky;top:104px;display:grid;gap:15px}.aside-box{border:1px solid var(--line);border-radius:21px;padding:20px;background:rgba(7,24,46,.68)}.aside-box strong{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:12px;margin-bottom:11px}.aside-box p{margin:0;color:#a9bbd5;font-size:14px;line-height:1.65}.share-buttons{display:grid;gap:9px}.share-btn{min-height:44px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.04);color:#eaf2ff;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center}.article-content{font-family:Georgia,"Times New Roman",serif;font-size:18px;line-height:1.87;color:#edf2fb}.article-content>p,.article-content>ul,.article-content>h2{margin-left:auto;margin-right:auto}.article-content p{margin-top:0;margin-bottom:25px}.article-content strong{color:#fff}.article-content em{color:#ffd967}.article-content h2{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:30px;line-height:1.08;letter-spacing:-.025em;text-transform:uppercase;margin-top:45px;margin-bottom:18px;padding-left:16px;border-left:4px solid var(--blue)}.article-content h2:first-child{margin-top:0}.article-content ul{margin-top:0;margin-bottom:28px;padding:22px 24px 22px 46px;border:1px solid var(--line);border-radius:20px;background:rgba(10,31,58,.55)}.article-content li{margin:8px 0}.article-content a{color:#69ceff;text-decoration:underline}.article-note{border:1px solid rgba(70,217,255,.25);background:linear-gradient(135deg,rgba(32,159,255,.12),rgba(255,199,47,.07));border-radius:22px;padding:21px;margin:34px 0;font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#c9d7ea;font-size:14px}.back-link{display:inline-flex;gap:8px;align-items:center;margin-bottom:18px;color:#99caec;font-size:13px;font-weight:900}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.about-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:28px;align-items:stretch}.about-image{border:1px solid var(--line);border-radius:28px;overflow:hidden;background:linear-gradient(180deg,#07162a,#040d1d);display:flex;align-items:center;justify-content:center;padding:18px;min-height:460px}.about-image img{width:100%;height:100%;max-height:560px;object-fit:contain;object-position:center}.about-copy{border:1px solid var(--line);border-radius:28px;background:rgba(7,24,46,.73);padding:40px;display:flex;flex-direction:column;justify-content:center}.about-copy h2{font-size:44px;line-height:1;text-transform:uppercase;margin:14px 0 22px}.about-copy p{color:#b9c9df;font-size:16px;line-height:1.8;max-width:740px}.about-copy .btn{margin-top:6px;align-self:flex-start}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.value-card{border:1px solid var(--line);border-radius:22px;padding:24px;background:rgba(7,24,46,.64)}.value-card strong{font-size:18px;text-transform:uppercase}.value-card p{color:#aabbd4;font-size:14px;line-height:1.65;margin-bottom:0}
.site-footer{margin-top:62px;border-top:1px solid var(--line);background:rgba(1,5,13,.72);padding:48px 0 22px}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr .9fr;gap:44px}.footer-brand{display:flex;align-items:center;gap:16px}.footer-brand img{width:76px;height:76px;border-radius:50%;object-fit:cover;border:1px solid var(--line-strong)}.footer-brand strong,.footer-grid>div>strong{display:block;text-transform:uppercase;letter-spacing:.1em;font-size:13px;margin-bottom:12px}.footer-brand p{color:#8fa5c4;margin:6px 0 0}.footer-grid>div>a{display:block;color:#99adca;font-size:13px;margin:8px 0}.footer-grid>div>a:hover{color:#fff}.footer-bottom{border-top:1px solid var(--line);margin-top:32px;padding-top:18px;display:flex;justify-content:space-between;gap:20px;color:#718aa9;font-size:12px}
@media(max-width:1080px){.header-inner{grid-template-columns:auto auto 1fr}.main-nav{position:absolute;top:78px;left:19px;right:19px;display:none;flex-direction:column;align-items:stretch;gap:0;background:#061428;border:1px solid var(--line);border-radius:18px;padding:10px;box-shadow:var(--shadow)}.main-nav.open{display:flex}.main-nav a{padding:13px}.main-nav a:after{display:none}.menu-toggle{display:block}.facebook-link{justify-self:end}.hero-panel{grid-template-columns:1fr;min-height:700px}.hero-image{inset:0}.hero-panel:before{background:linear-gradient(90deg,rgba(2,7,19,.96),rgba(2,7,19,.67) 62%,rgba(2,7,19,.3))}.hero-copy{padding:50px}.editorial-grid{grid-template-columns:1fr 1fr;grid-template-rows:440px 300px 300px}.editorial-card:first-child{grid-row:auto;grid-column:1/3}.article-grid{grid-template-columns:repeat(2,1fr)}.category-strip{grid-template-columns:1fr 1fr}.manifesto-grid{grid-template-columns:1fr 1fr}.manifesto-item:nth-child(2){border-right:0}.manifesto-item:nth-child(-n+2){border-bottom:1px solid var(--line)}.article-layout{grid-template-columns:1fr;max-width:820px;margin:auto}.article-aside{position:static;grid-template-columns:repeat(3,1fr)}.about-grid{grid-template-columns:1fr}.related-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/3}}
@media(max-width:720px){.shell{width:min(100% - 24px,var(--shell))}.site-header{position:sticky}.header-inner{min-height:70px;gap:12px}.brand img{width:43px;height:43px}.brand small{display:none}.brand strong{font-size:18px}.facebook-link{display:none}.main-nav{top:70px;left:12px;right:12px}.section{padding:64px 0}.section-title{display:block}.section-title p{margin-top:18px}.section-title h2{font-size:42px}.hero{padding:14px 0 30px}.hero-panel{min-height:690px;border-radius:24px}.hero-copy{padding:28px 23px}.hero-copy h1{font-size:48px}.hero-copy p{font-size:16px}.hero-panel:before{background:linear-gradient(180deg,rgba(2,7,19,.22),rgba(2,7,19,.93) 55%,rgba(2,7,19,.99))}.hero-image{inset:0}.hero-label{right:15px;top:15px}.manifesto-grid,.article-grid,.category-strip,.values-grid,.related-grid{grid-template-columns:1fr}.manifesto-item{border-right:0;border-bottom:1px solid var(--line)}.manifesto-item:last-child{border-bottom:0}.editorial-grid{display:grid;grid-template-columns:1fr;grid-template-rows:none}.editorial-card,.editorial-card:first-child{grid-column:auto;min-height:380px}.editorial-card:first-child h3{font-size:31px}.listing-tools{display:block}.search-box{margin:14px 0 0;max-width:none}.article-cover{min-height:610px;border-radius:23px}.article-cover-content{padding:24px}.article-cover-content h1{font-size:40px}.article-cover-content .intro{font-size:16px}.article-layout{padding-top:34px;gap:26px}.article-aside{grid-template-columns:1fr}.article-content{font-size:17px}.article-content h2{font-size:25px}.about-copy{padding:24px}.about-copy h2{font-size:36px}.cover-band,.cover-band-content{min-height:470px}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.footer-bottom{display:block}.footer-bottom span{display:block;margin:5px 0}}


/* ===== V2 refinements: no cropped visuals, no text over text ===== */
.hero-panel{grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);min-height:auto}
.hero-panel:before{display:none}
.hero-copy{grid-column:1;grid-row:1;background:linear-gradient(180deg,rgba(7,24,46,.92),rgba(4,14,28,.96));padding:48px 38px 42px 46px}
.hero-copy h1{max-width:520px}
.hero-image{position:relative;inset:auto;grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;background:#030916;border-left:1px solid var(--line)}
.hero-image img{width:100%;height:100%;object-fit:contain;padding:18px}
.editorial-grid{align-items:stretch}
.editorial-card{display:flex;flex-direction:column;min-height:auto}
.editorial-card:after{display:none}
.editorial-card img{width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;background:#030916;padding:12px;border-bottom:1px solid var(--line)}
.editorial-card-content,.editorial-card:first-child .editorial-card-content{position:static;padding:22px 24px 24px;background:linear-gradient(180deg,rgba(9,25,46,.9),rgba(5,16,31,.96))}
.editorial-card h3{font-size:25px}
.editorial-card:first-child h3{font-size:34px}
.editorial-card p{font-size:14px;line-height:1.65}
.card-image{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;padding:10px;background:#030916}
.card-image:after{display:none}
.card-image img{width:100%;height:100%;object-fit:contain;border-radius:18px;background:#030916}
.card-category{left:18px;top:18px;bottom:auto}
.article-cover{display:flex;flex-direction:column;min-height:auto}
.article-cover img{position:relative;inset:auto;width:100%;height:auto;max-height:920px;object-fit:contain;background:#030916}
.article-cover:after{display:none}
.article-cover-content{position:static;padding:30px 34px 36px;background:linear-gradient(180deg,rgba(7,24,46,.92),rgba(4,14,28,.97));border-top:1px solid var(--line)}
.article-cover-content h1{max-width:1000px;font-size:clamp(36px,4.6vw,62px)}
.article-cover-content .intro{max-width:880px}
@media(max-width:1080px){
  .hero-panel{grid-template-columns:1fr}
  .hero-copy{grid-column:1;grid-row:2;padding:34px 28px}
  .hero-image{grid-column:1;grid-row:1;border-left:0;border-bottom:1px solid var(--line)}
  .hero-image img{max-height:620px}
}
@media(max-width:720px){
  .hero-copy h1{max-width:none}
  .editorial-card img{padding:8px}
  .card-image{aspect-ratio:1/1;padding:8px}
  .article-cover-content{padding:22px}
}


/* ===== V3: editorial cards always explain what the reader is opening ===== */
.editorial-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-template-rows:none;
  gap:20px;
}
.editorial-card,
.editorial-card:first-child{
  grid-column:auto;
  grid-row:auto;
  display:grid;
  grid-template-columns:minmax(210px,42%) minmax(0,58%);
  min-height:310px;
}
.editorial-card:first-child{
  grid-column:1/-1;
  grid-template-columns:minmax(320px,46%) minmax(0,54%);
  min-height:420px;
}
.editorial-card img,
.editorial-card:first-child img{
  width:100%;
  height:100%;
  aspect-ratio:auto;
  object-fit:contain;
  padding:14px;
  border-bottom:0;
  border-right:1px solid var(--line);
  background:#030916;
}
.editorial-card-content,
.editorial-card:first-child .editorial-card-content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:28px;
}
.editorial-card h3,
.editorial-card:first-child h3{
  font-size:clamp(24px,2.2vw,38px);
  margin:14px 0 12px;
}
.editorial-card p{
  font-size:14px;
  line-height:1.7;
}
.editorial-card .mini-meta{margin-top:auto;padding-top:18px}
@media(max-width:980px){
  .editorial-grid{grid-template-columns:1fr}
  .editorial-card:first-child{grid-column:auto}
}
@media(max-width:720px){
  .editorial-card,
  .editorial-card:first-child{
    grid-template-columns:1fr;
    min-height:auto;
  }
  .editorial-card img,
  .editorial-card:first-child img{
    height:auto;
    aspect-ratio:1/1;
    border-right:0;
    border-bottom:1px solid var(--line);
  }
  .editorial-card-content,
  .editorial-card:first-child .editorial-card-content{padding:22px}
}


/* ===== V4: fully populated library, no labels over artwork ===== */
.card-image{padding:12px;min-height:300px}
.card-image img{object-fit:contain}
.card-body .tag{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:7px 11px;margin-bottom:14px;border-radius:999px;background:rgba(2,7,19,.68);border:1px solid var(--line-strong);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:#dceaff}
.card-category{display:none!important}
.article-card .card-meta{margin-top:2px}
.article-card .card-body{display:flex;flex-direction:column;min-height:330px}
.article-card .read-link{margin-top:auto}
.editorial-card .tag{width:max-content;max-width:100%}
.editorial-grid{align-items:stretch}
.grand-count{color:#8fa6c7;margin-top:18px}
@media(max-width:720px){.card-image{min-height:auto;aspect-ratio:1/1}.article-card .card-body{min-height:auto}}


/* ===== V5: cleaner hero, stronger follow-up highlights, more premium typography ===== */
body{
  font-family:"Segoe UI", Inter, system-ui, -apple-system, Roboto, Helvetica, Arial, sans-serif;
}
.section-title h2,
.hero-copy h1,
.article-cover-content h1,
.article-content h2,
.card-body h3,
.editorial-card h3,
.about-copy h2,
.category-card h3{
  font-family:"Segoe UI", Inter, system-ui, -apple-system, Roboto, Helvetica, Arial, sans-serif;
  letter-spacing:-.04em;
}
.hero-panel{
  grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr);
  min-height:auto;
  overflow:hidden;
}
.hero-copy{
  padding:42px 40px 40px 44px;
  justify-content:center;
  gap:0;
}
.hero-copy h1{
  font-size:clamp(32px,3.8vw,52px);
  line-height:1.03;
  text-transform:none;
  max-width:480px;
  margin:18px 0 16px;
}
.hero-copy p{
  max-width:500px;
  font-size:18px;
  line-height:1.78;
  color:#d6e2f2;
}
.hero-points{
  margin:18px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:12px;
  max-width:540px;
}
.hero-points li{
  position:relative;
  padding-left:18px;
  color:#b8c8de;
  line-height:1.6;
  font-size:14px;
}
.hero-points li::before{
  content:"";
  position:absolute;
  left:0;
  top:.62em;
  width:7px;
  height:7px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--gold),#fff6b8);
  box-shadow:0 0 14px rgba(255,199,47,.35);
}
.hero-meta{margin-top:20px}
.hero-image{background:#030916}
.hero-image img{padding:28px}
.manifesto{padding:10px 0 2px}
.manifesto .shell{display:grid;gap:24px}
.manifesto-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:24px;align-items:end}
.manifesto-head h2{margin:14px 0 0;font-size:clamp(32px,4vw,54px);line-height:1;letter-spacing:-.045em;text-transform:none}
.manifesto-head h2 em{font-style:normal;color:var(--gold)}
.manifesto-head p{margin:0;color:#afc1db;font-size:16px;line-height:1.75}
.manifesto-grid{border:0;gap:18px}
.manifesto-item{border-right:0;border:1px solid rgba(255,255,255,.1);border-radius:26px;min-height:220px;background:linear-gradient(180deg,rgba(11,30,55,.82),rgba(6,17,31,.95));box-shadow:0 18px 44px rgba(0,0,0,.18);position:relative;overflow:hidden}
.manifesto-item::before{content:"";position:absolute;right:-48px;top:-48px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle, rgba(32,159,255,.18), transparent 70%)}
.manifesto-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(180deg,rgba(24,67,115,.9),rgba(6,21,39,.95));border:1px solid rgba(255,255,255,.12);box-shadow:0 0 24px rgba(32,159,255,.18);margin-bottom:18px}
.manifesto-item strong{font-size:18px;margin-bottom:12px}
.manifesto-item p{color:#b3c4db;font-size:14px;line-height:1.72}
.editorial-grid-v5{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.editorial-grid-v5 .editorial-card,
.editorial-grid-v5 .editorial-card:first-child{grid-column:auto;grid-row:auto;min-height:360px;border-radius:30px;overflow:hidden;display:grid;grid-template-columns:minmax(240px,42%) minmax(0,58%);background:linear-gradient(180deg,rgba(10,31,59,.88),rgba(5,15,31,.96))}
.editorial-grid-v5 .editorial-card img,
.editorial-grid-v5 .editorial-card:first-child img{width:100%;height:100%;object-fit:contain;border-right:1px solid var(--line);padding:16px;background:#030916}
.editorial-grid-v5 .editorial-card-content,
.editorial-grid-v5 .editorial-card:first-child .editorial-card-content{position:static;padding:30px 30px 28px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(180deg,rgba(9,25,46,.85),rgba(5,16,31,.94))}
.editorial-grid-v5 .editorial-card h3,
.editorial-grid-v5 .editorial-card:first-child h3{text-transform:none;font-size:clamp(28px,2.25vw,38px);line-height:1.08;margin:14px 0 14px}
.editorial-grid-v5 .editorial-card p{font-size:15px;line-height:1.76;color:#b6c7de}
.editorial-grid-v5 .mini-meta{margin-top:auto;padding-top:16px}
.article-content{font-family:"Segoe UI", Inter, system-ui, -apple-system, Roboto, Helvetica, Arial, sans-serif;font-size:18px;line-height:1.9;color:#eef3fb}
.article-content h2{text-transform:none;font-size:27px;line-height:1.18;letter-spacing:-.025em;padding-left:0;border-left:0;margin-top:42px;margin-bottom:16px}
.article-content ul{padding:20px 24px 20px 30px;background:linear-gradient(180deg,rgba(10,31,58,.38),rgba(8,22,42,.58));border:1px solid rgba(255,255,255,.08)}
.article-content li{margin:10px 0}
.card-body h3{font-size:25px;line-height:1.12}
@media(max-width:1080px){
  .hero-panel{grid-template-columns:1fr}
  .hero-copy{padding:34px 28px}
  .hero-image img{padding:18px}
  .manifesto-head{grid-template-columns:1fr}
  .editorial-grid-v5{grid-template-columns:1fr}
}
@media(max-width:720px){
  .hero-copy h1{font-size:34px}
  .hero-copy p{font-size:16px}
  .hero-points li{font-size:13px}
  .editorial-grid-v5 .editorial-card,
  .editorial-grid-v5 .editorial-card:first-child{grid-template-columns:1fr;min-height:auto}
  .editorial-grid-v5 .editorial-card img,
  .editorial-grid-v5 .editorial-card:first-child img{border-right:0;border-bottom:1px solid var(--line);aspect-ratio:1/1;height:auto}
}


/* ===== V6: clean brand block, restrained wording, refined typography ===== */
:root{--heading:"Bahnschrift SemiCondensed","Bahnschrift","Arial Narrow","Segoe UI",sans-serif}
.hero-copy h1,.section-title h2,.manifesto-head h2,.brand-showcase h2,.page-hero h1,.article-cover-content h1,.article-content h2,.card-body h3,.editorial-card h3,.category-card h3,.about-copy h2{font-family:var(--heading);font-weight:700}
.manifesto-head h2{text-transform:none;color:#f4f7ff}
.brand-showcase{padding-top:72px;padding-bottom:72px;border-block:1px solid var(--line);background:linear-gradient(180deg,rgba(7,24,46,.34),rgba(2,7,19,.18))}
.brand-showcase-grid{display:grid;grid-template-columns:minmax(360px,.8fr) minmax(0,1.2fr);gap:24px;align-items:stretch}
.brand-showcase-copy,.brand-showcase-visual{border:1px solid var(--line);border-radius:30px;overflow:hidden;background:linear-gradient(180deg,rgba(11,31,56,.88),rgba(5,15,29,.96));box-shadow:0 24px 60px rgba(0,0,0,.28)}
.brand-showcase-copy{padding:46px;display:flex;flex-direction:column;justify-content:center}
.brand-showcase-copy h2{font-size:clamp(38px,4.6vw,66px);line-height:.96;letter-spacing:-.045em;text-transform:uppercase;margin:18px 0 20px}
.brand-showcase-copy p{color:#bac9dd;font-size:17px;line-height:1.75;max-width:600px;margin:0}
.brand-showcase-visual{display:flex;align-items:center;justify-content:center;background:#020914;padding:18px}
.brand-showcase-visual img{width:100%;height:100%;object-fit:contain;border-radius:18px}
.article-content{font-family:"Segoe UI",Inter,system-ui,-apple-system,Roboto,Arial,sans-serif}
.article-content h2{font-size:29px;letter-spacing:-.02em}
.article-content ul{line-height:1.72}
@media(max-width:980px){.brand-showcase-grid{grid-template-columns:1fr}.brand-showcase-copy{padding:34px}.brand-showcase-visual img{max-height:560px}}
@media(max-width:720px){.brand-showcase{padding:48px 0}.brand-showcase-copy{padding:26px}.brand-showcase-copy h2{font-size:38px}.brand-showcase-copy p{font-size:15px}.brand-showcase-visual{padding:10px}}


/* ===== V8: audit factuel, sources et temps de lecture exacts ===== */
.audit-box{display:grid;grid-template-columns:minmax(180px,.32fr) 1fr;gap:22px;align-items:center;margin:0 0 34px;padding:19px 22px;border:1px solid rgba(92,220,166,.25);border-radius:20px;background:linear-gradient(135deg,rgba(29,124,88,.13),rgba(9,28,49,.72));font-family:"Segoe UI",Inter,system-ui,sans-serif}
.audit-box div{display:grid;gap:5px}.audit-box strong{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:#bfffdc}.audit-box span{font-size:12px;color:#8eb3a4}.audit-box p{margin:0!important;font-size:14px!important;line-height:1.65!important;color:#bfd3cb!important}
.audit-aside{border-color:rgba(92,220,166,.22)}
.sources-block{margin-top:54px;padding:26px 28px;border-radius:23px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,rgba(11,31,57,.72),rgba(5,16,31,.9));font-family:"Segoe UI",Inter,system-ui,sans-serif}
.sources-block h2{margin:0 0 18px!important;padding:0!important;border:0!important;font-size:24px!important;text-transform:none!important}.sources-block ul{margin:0!important;padding:0!important;border:0!important;background:none!important;list-style:none}.sources-block li{margin:0 0 10px!important;padding-left:18px;position:relative;font-size:14px;line-height:1.5}.sources-block li:before{content:"↗";position:absolute;left:0;color:#66d2ff}.sources-block a{text-decoration:none!important}.sources-block a:hover{text-decoration:underline!important}.sources-date{margin:18px 0 0!important;padding-top:16px;border-top:1px solid rgba(255,255,255,.08);font-size:12px!important;color:#839bb9!important}
.audit-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:30px;max-width:800px}.audit-summary>div{padding:20px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:rgba(7,24,46,.66)}.audit-summary strong{display:block;font-size:25px;color:#fff}.audit-summary span{display:block;margin-top:5px;color:#92a9c9;font-size:11px;text-transform:uppercase;letter-spacing:.1em}
.method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.method-card{padding:25px;border:1px solid rgba(255,255,255,.1);border-radius:24px;background:linear-gradient(180deg,rgba(10,31,58,.75),rgba(5,16,31,.92))}.method-card h2{margin:0 0 14px;font-size:23px}.method-card p,.method-card li{color:#b4c5dc;line-height:1.72}.method-card ul{padding-left:20px;margin:0}
.audit-table-wrap{overflow:auto;border:1px solid rgba(255,255,255,.1);border-radius:24px}.audit-table{width:100%;border-collapse:collapse;min-width:940px;background:rgba(6,20,39,.72)}.audit-table th,.audit-table td{padding:14px 16px;text-align:left;border-bottom:1px solid rgba(255,255,255,.07);font-size:13px}.audit-table th{position:sticky;top:0;background:#0b2340;text-transform:uppercase;letter-spacing:.08em;font-size:10px;color:#a9c2e3}.audit-table td{color:#b5c7df}.audit-table td:first-child{font-weight:750;color:#edf5ff}.audit-status{display:inline-flex;padding:6px 9px;border-radius:999px;background:rgba(63,197,137,.12);border:1px solid rgba(63,197,137,.24);color:#a9f2cd;font-size:10px;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:850px){.audit-box{grid-template-columns:1fr}.method-grid{grid-template-columns:1fr}.audit-summary{grid-template-columns:1fr}}


/* ===== V9 : vérification discrète en fin d’article + archives renforcées ===== */
.verification-end{margin:26px 0 0;padding:18px 20px;display:grid;grid-template-columns:38px 1fr;gap:14px;align-items:start;border-top:1px solid rgba(255,255,255,.10);color:#91a7c5;font-family:"Segoe UI",Inter,system-ui,sans-serif;font-size:13px;line-height:1.65}
.verification-end .verification-mark{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(102,226,179,.35);color:#77e4b8;background:rgba(38,126,93,.12);font-weight:900}
.verification-end strong{display:block;color:#c9d7e9;text-transform:uppercase;letter-spacing:.1em;font-size:11px;margin-bottom:4px}
.verification-end p{margin:0;color:#879dbb;font-size:13px;line-height:1.6}
.audit-box,.audit-aside{display:none!important}
.sources-block{margin-top:54px}
.recovered-section{border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);background:linear-gradient(180deg,rgba(7,24,46,.25),rgba(2,7,19,.08))}
.recovered-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.recovered-grid .article-card{display:grid;grid-template-columns:minmax(260px,42%) minmax(0,58%)}
.recovered-grid .card-image{height:100%;min-height:380px;aspect-ratio:auto;border-right:1px solid var(--line)}
.recovered-grid .card-body{min-height:380px}
@media(max-width:980px){.recovered-grid{grid-template-columns:1fr}.recovered-grid .article-card{grid-template-columns:1fr}.recovered-grid .card-image{min-height:auto;aspect-ratio:1/1;border-right:0;border-bottom:1px solid var(--line)}.recovered-grid .card-body{min-height:auto}}


/* ===== V10 : archives réellement approfondies ===== */
.recovered-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.recovered-grid .article-card{display:grid;grid-template-columns:minmax(230px,40%) minmax(0,60%)}
.recovered-grid .card-image{height:100%;min-height:340px;aspect-ratio:auto;border-right:1px solid var(--line)}
.recovered-grid .card-body{min-height:340px}
@media(max-width:980px){.recovered-grid{grid-template-columns:1fr}.recovered-grid .article-card{grid-template-columns:1fr}.recovered-grid .card-image{min-height:auto;aspect-ratio:1/1;border-right:0;border-bottom:1px solid var(--line)}.recovered-grid .card-body{min-height:auto}}


/* ===== V11 : articles vidéo, badges et graphique original de William ===== */
.article-video-shell,
.article-video-block .video-stage{
  position:relative;
  display:grid;
  place-items:center;
  width:100%;
  overflow:hidden;
  background:#01040a;
}
.article-video-shell{
  min-height:420px;
  border-bottom:1px solid var(--line);
}
.article-video-shell video,
.article-video-block video{
  display:block;
  width:100%;
  max-height:78vh;
  object-fit:contain;
  background:#000;
}
.article-video-shell.portrait video,
.article-video-block.portrait video{
  width:auto;
  max-width:100%;
  height:min(78vh,820px);
}
.video-label,
.video-chip{
  position:absolute;
  z-index:4;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 12px;
  border-radius:999px;
  color:#fff;
  background:rgba(2,7,19,.82);
  border:1px solid rgba(255,255,255,.25);
  backdrop-filter:blur(10px);
  font-size:10px;
  line-height:1;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
  box-shadow:0 10px 24px rgba(0,0,0,.28);
}
.video-label{top:18px;right:18px}
.video-chip{top:14px;right:14px}
.card-image{position:relative}
.editorial-card{position:relative}
.editorial-video-chip{top:15px;right:15px}
.article-video-block{
  margin:30px 0 36px;
  padding:22px;
  border:1px solid rgba(70,217,255,.20);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(9,28,52,.72),rgba(4,14,28,.90));
  font-family:"Segoe UI",Inter,system-ui,sans-serif;
}
.article-video-block h2{
  margin:0 0 18px;
  padding:0;
  border:0;
  font-size:25px;
  text-transform:none;
}
.article-video-block .video-stage{
  border-radius:18px;
  border:1px solid rgba(255,255,255,.10);
}
.video-caption{
  margin:14px 2px 0!important;
  color:#9fb4d1;
  font-size:13px;
  line-height:1.6;
}
.original-graphic-note{
  margin:0 0 28px;
  padding:15px 17px;
  border-left:3px solid var(--gold);
  border-radius:0 14px 14px 0;
  background:rgba(255,199,47,.07);
  color:#cbd7e8;
  font-family:"Segoe UI",Inter,system-ui,sans-serif;
  font-size:13px;
  line-height:1.65;
}
@media(max-width:720px){
  .article-video-shell{min-height:280px}
  .article-video-shell.portrait video,
  .article-video-block.portrait video{width:100%;height:auto;max-height:76vh}
  .article-video-block{padding:14px;border-radius:19px}
  .video-label,.video-chip{padding:7px 10px;font-size:9px}
}


/* ===== V12 : rythme vertical resserré + lecteurs vidéo épurés ===== */
/* Retire le menu d’options natif (trois points) lorsque Chromium l’expose. */
video::-webkit-media-controls-overflow-button,
video::-webkit-media-controls-download-button,
video::-webkit-media-controls-picture-in-picture-button{
  display:none!important;
}
video{-webkit-user-select:none;user-select:none}

/* Échelle d’espacement générale : moins de grands vides, sans comprimer le contenu. */
.section{padding:56px 0}
.section-tight{padding:40px 0}
.page-hero{padding:54px 0 24px}
.page-hero p{margin-bottom:0}
.filters{margin:22px 0 0}
.page-hero + .section-tight{padding-top:24px}
.listing-tools{margin-bottom:24px}
.section-title{margin-bottom:28px;align-items:center}
.section-title h2{margin-top:10px}
.section-title p{max-width:500px}

/* Empêche l’addition de deux gros paddings entre les sections successives. */
main > .section + .section{padding-top:26px}
main > .section + .section-tight{padding-top:28px}
main > .section-tight + .section{padding-top:34px}
main > .section-tight + .section-tight{padding-top:24px}
.manifesto + .section{padding-top:54px}
.hero + .manifesto{padding-top:4px}

/* Boutons de fin de grille et sections éditoriales. */
.section .article-grid + div[style*="text-align:center"],
.section .editorial-grid + div[style*="text-align:center"]{margin-top:24px!important}
.section-premium-next{padding-bottom:48px}
.section-premium-next + .section{padding-top:28px}
.recovered-section{padding-top:52px;padding-bottom:52px}
.recovered-section + .section-tight{padding-top:32px}
.brand-showcase{padding-top:54px;padding-bottom:54px}

/* Les pages article gardent de l’air, mais évitent un saut excessif avant les contenus liés. */
.article-layout{padding-top:44px;padding-bottom:36px}
.article-layout + .section{padding-top:42px}
.article-hero{padding-bottom:24px}
.sources-block{margin-top:42px}
.site-footer{margin-top:44px}

@media(max-width:1080px){
  .section{padding:50px 0}
  .section-tight{padding:36px 0}
  .page-hero{padding:44px 0 22px}
  main > .section + .section{padding-top:22px}
  .section-title{margin-bottom:24px}
}
@media(max-width:720px){
  .section{padding:42px 0}
  .section-tight{padding:30px 0}
  .page-hero{padding:36px 0 18px}
  .page-hero + .section-tight{padding-top:18px}
  .filters{margin-top:18px;gap:8px}
  .listing-tools{margin-bottom:20px}
  .section-title{margin-bottom:22px}
  main > .section + .section,
  main > .section + .section-tight,
  main > .section-tight + .section{padding-top:18px}
  .manifesto + .section{padding-top:40px}
  .recovered-section{padding-top:40px;padding-bottom:40px}
  .brand-showcase{padding-top:42px;padding-bottom:42px}
  .article-layout{padding-top:30px;padding-bottom:26px}
  .site-footer{margin-top:34px}
}


/* ===== V16: article sequence + scroll to top ===== */
.article-sequence{
  padding:24px 0 68px;
}
.article-sequence-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:22px;
}
.article-sequence-head h2{
  margin:10px 0 0;
  font-size:clamp(30px,3.4vw,48px);
  line-height:1;
  letter-spacing:-.04em;
  text-transform:uppercase;
}
.article-sequence-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.sequence-card{
  min-height:180px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:25px;
  background:linear-gradient(145deg,rgba(11,35,65,.88),rgba(4,14,29,.97));
  box-shadow:0 18px 50px rgba(0,0,0,.22);
  display:flex;
  flex-direction:column;
  gap:14px;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
  overflow:hidden;
}
.sequence-card:hover{
  transform:translateY(-4px);
  border-color:rgba(70,217,255,.36);
  box-shadow:0 25px 62px rgba(0,0,0,.34);
}
.sequence-next{
  text-align:left;
}
.sequence-direction{
  color:#83d9ff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.sequence-card-content{
  display:grid;
  grid-template-columns:112px minmax(0,1fr);
  gap:18px;
  align-items:center;
  min-width:0;
}
.sequence-card-content img{
  width:112px;
  height:112px;
  object-fit:contain;
  border-radius:18px;
  padding:5px;
  background:#030916;
  border:1px solid rgba(255,255,255,.08);
}
.sequence-copy{
  min-width:0;
}
.sequence-category{
  display:block;
  margin-bottom:8px;
  color:#8fa8ca;
  font-size:10px;
  font-weight:900;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.sequence-card strong{
  display:block;
  font-size:clamp(18px,1.5vw,24px);
  line-height:1.14;
  letter-spacing:-.025em;
  color:#f5f8ff;
}
.sequence-library{
  justify-content:center;
  padding:28px;
}
.scroll-top-button{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:80;
  width:48px;
  height:48px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:50%;
  background:linear-gradient(145deg,rgba(15,49,88,.96),rgba(4,15,30,.98));
  color:#fff;
  display:grid;
  place-items:center;
  font-size:25px;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 16px 36px rgba(0,0,0,.36),0 0 22px rgba(32,159,255,.13);
  opacity:0;
  visibility:hidden;
  transform:translateY(12px);
  transition:opacity .22s ease,visibility .22s ease,transform .22s ease,border-color .22s ease;
}
.scroll-top-button:hover{
  border-color:rgba(70,217,255,.62);
  transform:translateY(-2px);
}
.scroll-top-button.is-visible{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}
@media(max-width:720px){
  .article-sequence{padding:10px 0 48px}
  .article-sequence-head{display:block}
  .article-sequence-grid{grid-template-columns:1fr}
  .sequence-card{min-height:auto}
  .sequence-card-content{grid-template-columns:84px minmax(0,1fr);gap:14px}
  .sequence-card-content img{width:84px;height:84px;border-radius:14px}
  .scroll-top-button{right:14px;bottom:14px;width:44px;height:44px}
}


/* ===== V20 : hero d'accueil empilé pour une mise en avant plus nette ===== */
.hero-panel{
  display:grid;
  grid-template-columns:1fr !important;
  min-height:auto !important;
  overflow:hidden;
}
.hero-panel:before{display:none !important}
.hero-image{
  position:relative !important;
  inset:auto !important;
  grid-column:1 !important;
  grid-row:1 !important;
  display:flex;
  align-items:center;
  justify-content:center;
  border-left:0 !important;
  border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,#020815 0%, #041126 100%);
  padding:34px 34px 18px;
}
.hero-image img{
  width:100% !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  padding:0 !important;
  display:block;
}
.hero-copy{
  grid-column:1 !important;
  grid-row:2 !important;
  padding:42px 46px 46px !important;
  background:linear-gradient(180deg,rgba(6,20,39,.92),rgba(3,12,24,.98));
}
.hero-copy h1{
  max-width:760px !important;
  font-size:clamp(50px,5.4vw,84px) !important;
  line-height:.92 !important;
  margin:18px 0 18px !important;
}
.hero-copy p{
  max-width:920px !important;
}
.hero-points{
  max-width:none !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:22px;
}
@media(max-width:980px){
  .hero-image{padding:24px 24px 12px}
  .hero-copy{padding:34px 30px 36px !important}
  .hero-points{grid-template-columns:1fr}
}
@media(max-width:720px){
  .hero-copy h1{font-size:42px !important}
  .hero-image{padding:18px 18px 10px}
  .hero-copy{padding:28px 22px 30px !important}
}


/* ===== V22 : bannière MSR superposée, visuel pleine largeur ===== */
.brand-showcase-grid{
  display:grid;
  grid-template-columns:1fr !important;
  gap:0 !important;
  align-items:stretch;
}
.brand-showcase-visual{
  grid-column:1;
  grid-row:1;
  min-height:0;
  padding:26px 28px 18px;
  border-radius:32px 32px 0 0;
  border-bottom:0;
  background:linear-gradient(180deg,#020914 0%,#041226 100%);
}
.brand-showcase-visual img{
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
  border-radius:20px;
}
.brand-showcase-copy{
  grid-column:1;
  grid-row:2;
  padding:38px 46px 44px;
  border-radius:0 0 32px 32px;
  border-top:0;
  background:linear-gradient(180deg,rgba(8,26,49,.96),rgba(4,14,28,.98));
}
.brand-showcase-copy h2{
  max-width:950px;
  font-size:clamp(42px,5vw,72px);
  line-height:.98;
}
.brand-showcase-copy p{
  max-width:940px;
  font-size:18px;
}
.brand-showcase-copy .cover-band-actions{
  margin-top:26px;
}
@media(max-width:720px){
  .brand-showcase-visual{padding:14px 14px 10px}
  .brand-showcase-copy{padding:28px 24px 32px}
  .brand-showcase-copy h2{font-size:40px}
}


/* ===== V23 : titre de la bannière MSR sur une seule ligne ===== */
.brand-showcase-copy h2{
  max-width:none !important;
  font-size:clamp(34px,3.65vw,54px) !important;
  line-height:1 !important;
  white-space:nowrap;
}
@media(max-width:1100px){
  .brand-showcase-copy h2{
    font-size:clamp(34px,4.7vw,48px) !important;
    white-space:normal;
  }
}
@media(max-width:720px){
  .brand-showcase-copy h2{font-size:38px !important}
}


/* ===== V24 : bloc d'intro Articles mieux cadencé ===== */
.page-hero .shell{
  border:1px solid var(--line-strong);
  border-radius:34px;
  background:linear-gradient(180deg,rgba(7,24,46,.90),rgba(4,14,28,.96));
  box-shadow:var(--shadow);
  padding:44px 46px 40px;
}
.page-hero h1,
.page-hero p,
.page-hero .filters{
  max-width:1180px;
}
.page-hero h1{
  margin-right:0;
  text-wrap:balance;
}
.page-hero p{
  margin-bottom:0;
}
@media(max-width:720px){
  .page-hero .shell{padding:28px 22px 26px;border-radius:24px}
}


/* ===== V27 : retour exact après « contenus » ===== */
.brand-showcase-description{
  max-width:none !important;
}
.brand-showcase-description span{
  display:block;
}
.brand-showcase-description span:first-child{
  white-space:nowrap;
  font-size:clamp(15px,1.28vw,17px);
}
.brand-showcase-description span + span{
  margin-top:2px;
}
@media(max-width:980px){
  .brand-showcase-description span:first-child{
    white-space:normal;
    font-size:inherit;
  }
}


/* ===== V28 : contrôle final responsive, lisibilité et accessibilité ===== */
html{overflow-x:hidden}
body{overflow-wrap:break-word}
img,video{max-width:100%}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible{
  outline:3px solid rgba(70,217,255,.78);
  outline-offset:3px;
}
.page-hero h1,
.article-cover-content h1,
.section-title h2,
.brand-showcase-copy h2,
.card-body h3,
.editorial-card h3,
.sequence-copy strong{
  overflow-wrap:break-word;
  word-break:normal;
  hyphens:auto;
}
.article-content p,
.article-content li{
  text-wrap:pretty;
}
.article-video-shell video{
  background:#020713;
}
@media(max-width:720px){
  .page-hero h1{
    font-size:clamp(36px,11.2vw,48px) !important;
    line-height:.96 !important;
    letter-spacing:-.04em !important;
    max-width:100% !important;
  }
  .page-hero p{font-size:16px;line-height:1.7}
  .page-hero .filters{gap:8px}
  .filter-btn{min-height:44px}
  .article-cover-content h1{
    font-size:clamp(34px,10.5vw,44px) !important;
    overflow-wrap:anywhere;
  }
  .article-meta-row{gap:9px 13px}
  .article-content{font-size:17px;line-height:1.78}
  .article-content p{margin-bottom:21px}
  .article-content h2{font-size:24px;line-height:1.14}
  .share-btn,.btn{min-height:46px}
  .category-card{min-height:220px}
}
@media(max-width:360px){
  .page-hero .shell{padding:25px 18px 24px}
  .page-hero h1{font-size:35px !important}
  .hero-copy h1{font-size:37px !important}
  .brand-showcase-copy h2{font-size:33px !important}
  .section-title h2{font-size:37px}
  .shell{width:min(100% - 18px,var(--shell))}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}


/* ===== V29 : identité Média Sans Raccourci ===== */
:root{
  --silver:#dfe7f1;
  --silver2:#8b9aaf;
  --brand-blue:#168dff;
  --brand-red:#f0323d;
}
.site-header{
  background:linear-gradient(180deg,rgba(2,7,19,.94),rgba(2,7,19,.82));
  box-shadow:0 12px 40px rgba(0,0,0,.22);
}
.header-inner{position:relative}
.header-inner::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-1px;
  height:2px;
  background:linear-gradient(90deg,var(--brand-blue) 0 34%,#eef3f8 34% 66%,var(--brand-red) 66% 100%);
  opacity:.72;
}
.brand{min-width:250px}
.brand img{
  width:56px;height:56px;
  border:1px solid rgba(223,231,241,.5);
  box-shadow:0 0 28px rgba(22,141,255,.28),0 8px 24px rgba(0,0,0,.35);
}
.brand strong{
  font-family:Georgia,"Times New Roman",serif;
  font-size:25px;
  letter-spacing:.11em;
  background:linear-gradient(180deg,#fff 5%,#cbd5e2 52%,#77869b 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  text-shadow:0 1px 0 rgba(255,255,255,.12);
}
.brand small{color:#9cb2d0;letter-spacing:.14em;font-weight:700}
.facebook-link{border-color:rgba(223,231,241,.25)}
.facebook-link:hover{border-color:rgba(70,217,255,.55);background:rgba(32,159,255,.1)}
.btn-primary{
  background:linear-gradient(135deg,#1697ff,#49d7ff);
  box-shadow:0 12px 30px rgba(22,141,255,.28);
}
.btn-primary::after{content:"";width:18px;height:2px;background:linear-gradient(90deg,#168dff 0 33%,#fff 33% 66%,#f0323d 66%)}
.kicker:before,.reading-progress{background:linear-gradient(90deg,var(--brand-blue),#fff,var(--brand-red))}
.brand-showcase-visual{
  background:radial-gradient(circle at 28% 35%,rgba(22,141,255,.15),transparent 34%),linear-gradient(180deg,#020914,#031022);
}
.brand-showcase-visual img{
  border:1px solid rgba(223,231,241,.15);
  box-shadow:0 24px 70px rgba(0,0,0,.42),0 0 36px rgba(22,141,255,.12);
}
.footer-brand img{border-radius:50%;box-shadow:0 0 25px rgba(22,141,255,.2)}
.footer-brand strong{letter-spacing:.04em}
.article-cover,.article-card,.editorial-card,.page-hero .shell,.brand-showcase-grid{
  box-shadow:0 24px 70px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.025);
}
.article-card:hover,.editorial-card:hover{border-color:rgba(22,141,255,.42)}
@media(max-width:1080px){
  .brand{min-width:0}
}
@media(max-width:720px){
  .brand img{width:46px;height:46px}
  .brand strong{font-size:21px}
  .header-inner::after{left:-12px;right:-12px}
  .brand-showcase-description span:first-child{white-space:normal!important}
}


/* ===== V35 : navigation fixe, apparition visible et survol premium ===== */
html{scroll-padding-top:100px}
body{padding-top:78px}
.site-header{
  position:fixed !important;
  top:0;
  left:0;
  right:0;
  width:100%;
  z-index:1000;
  transform:translateZ(0);
  background:rgba(2,7,19,.94);
  backdrop-filter:blur(20px) saturate(125%);
  -webkit-backdrop-filter:blur(20px) saturate(125%);
  box-shadow:0 12px 34px rgba(0,0,0,.34);
}

/* L'état de départ est peint avant le chargement du JS, puis libéré au scroll. */
.js-reveal .reveal{
  opacity:0;
  transform:translate3d(0,34px,0) scale(.992);
  filter:blur(2px);
  transition:
    opacity .48s cubic-bezier(.22,1,.36,1),
    transform .48s cubic-bezier(.22,1,.36,1),
    filter .42s ease;
  transition-delay:var(--reveal-delay,0ms);
  will-change:opacity,transform,filter;
}
.js-reveal .reveal.is-visible{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
  filter:blur(0);
}

/* Survol plus élégant : déplacement du module, lumière et image stable. */
.article-card,
.editorial-card{
  position:relative;
  transition:
    transform .42s cubic-bezier(.22,1,.36,1),
    border-color .32s ease,
    box-shadow .42s cubic-bezier(.22,1,.36,1),
    background .42s ease;
}
.article-card::before,
.editorial-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  opacity:0;
  background:linear-gradient(125deg,rgba(70,217,255,.11),transparent 32%,transparent 70%,rgba(255,255,255,.035));
  transition:opacity .42s ease;
}
.article-card:hover,
.editorial-card:hover{
  transform:translateY(-7px);
  border-color:rgba(70,217,255,.48);
  box-shadow:0 30px 78px rgba(0,0,0,.44),0 0 0 1px rgba(70,217,255,.055);
}
.article-card:hover::before,
.editorial-card:hover::before{opacity:1}
.card-image img,
.editorial-card img{
  transform:none;
  transition:filter .55s ease,opacity .55s ease !important;
}
.article-card:hover .card-image img,
.editorial-card:hover img{
  transform:none !important;
  filter:brightness(1.045) saturate(1.035);
}
.article-card .read-link span{transition:transform .32s cubic-bezier(.22,1,.36,1)}
.article-card:hover .read-link span{transform:translateX(5px)}

@media(max-width:720px){
  html{scroll-padding-top:86px}
  body{padding-top:70px}
  .js-reveal .reveal{transform:translate3d(0,26px,0) scale(.995);filter:blur(1px)}
}

/* Même si le système limite les animations, garder un mouvement bref et doux demandé ici. */
@media(prefers-reduced-motion:reduce){
  .js-reveal .reveal{
    transition-duration:.34s !important;
    animation-duration:.34s !important;
    transform:translate3d(0,22px,0) scale(.996);
    filter:none;
  }
  .js-reveal .reveal.is-visible{transform:translate3d(0,0,0) scale(1)}
}


/* ===== V36 : survol raffiné + barre de progression visible sous la navigation ===== */
.reading-progress{
  top:77px !important;
  height:3px;
  z-index:1105 !important;
  border-radius:0 999px 999px 0;
  box-shadow:
    0 0 10px rgba(22,141,255,.55),
    0 0 18px rgba(240,50,61,.22);
}

/* On retire le mouvement trop brutal du module et tout zoom d'image. */
.article-card,
.editorial-card{
  transform:none !important;
  transition:
    border-color .36s ease,
    box-shadow .42s cubic-bezier(.22,1,.36,1),
    background-color .36s ease !important;
}
.article-card::before,
.editorial-card::before{
  display:none !important;
}
.card-image,
.editorial-card{
  isolation:isolate;
}
.card-image::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  opacity:0;
  background:
    linear-gradient(135deg,rgba(70,217,255,.09),transparent 38%,rgba(255,255,255,.028));
  transition:opacity .42s ease;
}
.card-image img,
.editorial-card img{
  transform:none !important;
  transition:
    filter .48s ease,
    opacity .48s ease !important;
}
.article-card .card-body h3 a,
.editorial-card h3{
  transition:color .32s ease,text-shadow .32s ease;
}
.article-card .read-link{
  transition:color .32s ease;
}
.article-card .read-link span{
  transition:transform .34s cubic-bezier(.22,1,.36,1);
}

@media(hover:hover) and (pointer:fine){
  .article-card:hover,
  .editorial-card:hover{
    transform:translateY(-2px) !important;
    border-color:rgba(70,217,255,.36) !important;
    box-shadow:
      0 26px 68px rgba(0,0,0,.39),
      0 0 0 1px rgba(70,217,255,.045),
      inset 0 1px 0 rgba(255,255,255,.045) !important;
  }
  .article-card:hover .card-image::before{
    opacity:1;
  }
  .article-card:hover .card-image img,
  .editorial-card:hover img{
    transform:none !important;
    filter:brightness(1.035) contrast(1.015) saturate(1.02) !important;
  }
  .article-card:hover .card-body h3 a,
  .editorial-card:hover h3{
    color:#ffffff;
    text-shadow:0 0 18px rgba(70,217,255,.08);
  }
  .article-card:hover .read-link{
    color:#b9ecff;
  }
  .article-card:hover .read-link span{
    transform:translateX(4px);
  }
}

@media(max-width:720px){
  .reading-progress{
    top:69px !important;
    height:3px;
  }
  .article-card,
  .editorial-card{
    transform:none !important;
  }
}


/* ===== V37 : suppression de la ligne tricolore fixe sous la navigation ===== */
.header-inner::after{
  display:none !important;
}


/* ===== V38 : survol premium des articles, sans zoom brutal ===== */
.article-card,
.editorial-card{
  position:relative;
  overflow:hidden;
  transform:translateZ(0) !important;
  transition:
    transform .58s cubic-bezier(.16,1,.3,1),
    border-color .42s ease,
    box-shadow .58s cubic-bezier(.16,1,.3,1),
    background .42s ease !important;
}

/* Reflet très fin qui traverse la carte. */
.article-card::before,
.editorial-card::before{
  content:"";
  display:block !important;
  position:absolute;
  top:-20%;
  bottom:-20%;
  left:-48%;
  width:28%;
  z-index:5;
  pointer-events:none;
  opacity:0;
  transform:skewX(-18deg) translateX(0);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.075),transparent);
  transition:
    transform .92s cubic-bezier(.16,1,.3,1),
    opacity .28s ease !important;
}

/* Trait tricolore discret qui se déploie sous la carte. */
.article-card::after,
.editorial-card::after{
  content:"";
  position:absolute;
  left:28px;
  right:28px;
  bottom:0;
  height:2px;
  z-index:6;
  pointer-events:none;
  opacity:0;
  transform:scaleX(.12);
  transform-origin:center;
  background:linear-gradient(90deg,var(--brand-blue) 0 34%,#f4f7fb 34% 66%,var(--brand-red) 66% 100%);
  box-shadow:0 0 14px rgba(22,141,255,.24);
  transition:
    transform .58s cubic-bezier(.16,1,.3,1),
    opacity .34s ease !important;
}

.card-image{
  overflow:hidden;
}
.card-image::before{
  display:none !important;
}
.card-image img,
.editorial-card img{
  transform:translate3d(0,0,0) !important;
  transition:
    transform .72s cubic-bezier(.16,1,.3,1),
    filter .56s ease,
    opacity .56s ease !important;
}
.article-card .card-body,
.editorial-card .editorial-card-content{
  transition:background .46s ease !important;
}
.article-card .tag,
.editorial-card .tag{
  transition:border-color .36s ease,background .36s ease,color .36s ease !important;
}
.article-card .card-body h3 a,
.editorial-card h3,
.article-card .read-link{
  transition:color .34s ease,text-shadow .34s ease !important;
}
.article-card .read-link span{
  transition:transform .48s cubic-bezier(.16,1,.3,1) !important;
}

@media(hover:hover) and (pointer:fine){
  .article-card:hover,
  .editorial-card:hover{
    transform:translate3d(0,-5px,0) !important;
    border-color:rgba(70,217,255,.44) !important;
    box-shadow:
      0 30px 74px rgba(0,0,0,.43),
      0 0 0 1px rgba(70,217,255,.055),
      0 0 34px rgba(22,141,255,.075),
      inset 0 1px 0 rgba(255,255,255,.055) !important;
  }
  .article-card:hover::before,
  .editorial-card:hover::before{
    opacity:1;
    transform:skewX(-18deg) translateX(610%);
  }
  .article-card:hover::after,
  .editorial-card:hover::after{
    opacity:.9;
    transform:scaleX(1);
  }
  .article-card:hover .card-image img,
  .editorial-card:hover img{
    transform:translate3d(0,-3px,0) !important;
    filter:brightness(1.045) contrast(1.018) saturate(1.025) !important;
  }
  .article-card:hover .card-body,
  .editorial-card:hover .editorial-card-content{
    background:linear-gradient(180deg,rgba(10,31,59,.88),rgba(5,15,31,.97));
  }
  .article-card:hover .tag,
  .editorial-card:hover .tag{
    border-color:rgba(70,217,255,.31);
    background:rgba(8,31,57,.82);
    color:#eefaff;
  }
  .article-card:hover .card-body h3 a,
  .editorial-card:hover h3{
    color:#fff;
    text-shadow:0 0 22px rgba(70,217,255,.095);
  }
  .article-card:hover .read-link{
    color:#bfeeff;
  }
  .article-card:hover .read-link span{
    transform:translateX(5px);
  }
}

@media(max-width:720px), (hover:none){
  .article-card,
  .editorial-card,
  .article-card:hover,
  .editorial-card:hover{
    transform:none !important;
  }
  .article-card::before,
  .editorial-card::before,
  .article-card::after,
  .editorial-card::after{
    display:none !important;
  }
}


/* ===== V39 : survol premium cohérent sur tous les boutons ===== */
.btn,
.filter-btn,
.facebook-link,
.share-btn{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  transform:translateZ(0);
  transition:
    transform .48s cubic-bezier(.16,1,.3,1),
    border-color .38s ease,
    box-shadow .48s cubic-bezier(.16,1,.3,1),
    background .38s ease,
    color .32s ease !important;
}

/* Reflet fin identique aux cartes. */
.btn::before,
.filter-btn::before,
.facebook-link::before,
.share-btn::before{
  content:"";
  position:absolute;
  top:-45%;
  bottom:-45%;
  left:-52%;
  width:24%;
  z-index:-1;
  pointer-events:none;
  opacity:0;
  transform:skewX(-18deg) translateX(0);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.20),transparent);
  transition:
    transform .82s cubic-bezier(.16,1,.3,1),
    opacity .25s ease;
}

/* Fine ligne tricolore qui se déploie au bas du bouton. */
.btn::after,
.filter-btn::after,
.facebook-link::after,
.share-btn::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:1px;
  width:auto;
  height:2px;
  z-index:2;
  pointer-events:none;
  opacity:0;
  transform:scaleX(.12);
  transform-origin:center;
  background:linear-gradient(90deg,var(--brand-blue) 0 34%,#f4f7fb 34% 66%,var(--brand-red) 66% 100%);
  box-shadow:0 0 12px rgba(22,141,255,.24);
  transition:
    transform .48s cubic-bezier(.16,1,.3,1),
    opacity .30s ease;
}

/* L'ancien petit trait de .btn-primary est remplacé par la ligne animée. */
.btn-primary::after{
  width:auto;
}

@media(hover:hover) and (pointer:fine){
  .btn:hover,
  .filter-btn:hover,
  .facebook-link:hover,
  .share-btn:hover{
    transform:translate3d(0,-3px,0);
    border-color:rgba(70,217,255,.48);
    box-shadow:
      0 18px 38px rgba(0,0,0,.30),
      0 0 0 1px rgba(70,217,255,.06),
      0 0 24px rgba(22,141,255,.10);
  }

  .btn-primary:hover{
    background:linear-gradient(135deg,#23a6ff,#58ddff);
    color:#00111e;
    box-shadow:
      0 20px 42px rgba(22,141,255,.34),
      0 0 28px rgba(70,217,255,.13);
  }

  .btn-ghost:hover,
  .facebook-link:hover,
  .share-btn:hover{
    background:linear-gradient(180deg,rgba(16,43,76,.86),rgba(7,22,42,.94));
    color:#fff;
  }

  .filter-btn:hover{
    color:#00111e;
    background:linear-gradient(135deg,#23a6ff,#58ddff);
  }

  .btn:hover::before,
  .filter-btn:hover::before,
  .facebook-link:hover::before,
  .share-btn:hover::before{
    opacity:1;
    transform:skewX(-18deg) translateX(680%);
  }

  .btn:hover::after,
  .filter-btn:hover::after,
  .facebook-link:hover::after,
  .share-btn:hover::after{
    opacity:.92;
    transform:scaleX(1);
  }
}

.btn:active,
.filter-btn:active,
.facebook-link:active,
.share-btn:active{
  transform:translateY(-1px) scale(.985) !important;
  transition-duration:.12s !important;
}

@media(max-width:720px), (hover:none){
  .btn,
  .filter-btn,
  .facebook-link,
  .share-btn,
  .btn:hover,
  .filter-btn:hover,
  .facebook-link:hover,
  .share-btn:hover{
    transform:none;
  }
  .btn::before,
  .filter-btn::before,
  .facebook-link::before,
  .share-btn::before,
  .btn::after,
  .filter-btn::after,
  .facebook-link::after,
  .share-btn::after{
    display:none;
  }
}


/* ===== V40 : survol premium des boutons sans ligne tricolore ===== */
.btn::after,
.filter-btn::after,
.facebook-link::after,
.share-btn::after{
  display:none !important;
}


/* ===== V41 : manifeste MSR plus éditorial et premium ===== */
.manifesto-grid{
  gap:20px;
  align-items:stretch;
}
.manifesto-item{
  min-height:258px;
  padding:30px 28px 28px;
  border:1px solid rgba(164,202,240,.16) !important;
  border-radius:28px;
  background:
    radial-gradient(circle at 92% 5%,rgba(46,157,255,.17),transparent 31%),
    linear-gradient(145deg,rgba(13,37,68,.96),rgba(5,17,34,.985) 64%,rgba(3,12,26,.99));
  box-shadow:
    0 22px 54px rgba(0,0,0,.26),
    inset 0 1px 0 rgba(255,255,255,.045);
  display:flex;
  flex-direction:column;
  position:relative;
  overflow:hidden;
  isolation:isolate;
  transition:
    transform .52s cubic-bezier(.16,1,.3,1),
    border-color .42s ease,
    box-shadow .52s cubic-bezier(.16,1,.3,1),
    background .42s ease;
}
.manifesto-item::before{
  content:"";
  position:absolute;
  left:28px;
  right:28px;
  top:0;
  height:1px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,rgba(86,211,255,.92),transparent);
  opacity:.52;
  box-shadow:0 0 18px rgba(52,180,255,.36);
}
.manifesto-item::after{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  right:-105px;
  bottom:-115px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(41,154,255,.14),transparent 68%);
  pointer-events:none;
}
.manifesto-number{
  position:absolute;
  right:26px;
  top:24px;
  color:rgba(168,204,237,.46);
  font-size:11px;
  font-weight:800;
  letter-spacing:.22em;
}
.manifesto-icon{
  width:58px;
  height:58px;
  margin-bottom:25px;
  border-radius:19px;
  display:grid;
  place-items:center;
  color:#4bcfff;
  background:
    linear-gradient(145deg,rgba(28,76,126,.76),rgba(5,23,45,.92));
  border:1px solid rgba(101,196,255,.22);
  box-shadow:
    0 14px 28px rgba(0,0,0,.25),
    0 0 25px rgba(34,159,255,.13),
    inset 0 1px 0 rgba(255,255,255,.075);
  transition:
    transform .46s cubic-bezier(.16,1,.3,1),
    border-color .36s ease,
    box-shadow .46s ease;
}
.manifesto-icon svg{
  width:27px;
  height:27px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.55;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:drop-shadow(0 0 7px rgba(45,182,255,.35));
}
.manifesto-item strong{
  margin-bottom:13px;
  color:#f5f8ff;
  font-size:18px;
  line-height:1.1;
  letter-spacing:.055em;
}
.manifesto-item p{
  margin:0;
  max-width:29ch;
  color:#afc2da;
  font-size:14px;
  line-height:1.72;
}
@media(hover:hover) and (pointer:fine){
  .manifesto-item:hover{
    transform:translate3d(0,-5px,0);
    border-color:rgba(75,207,255,.35) !important;
    box-shadow:
      0 32px 72px rgba(0,0,0,.34),
      0 0 0 1px rgba(75,207,255,.035),
      0 0 34px rgba(32,159,255,.075),
      inset 0 1px 0 rgba(255,255,255,.06);
  }
  .manifesto-item:hover .manifesto-icon{
    transform:translate3d(0,-2px,0);
    border-color:rgba(91,218,255,.42);
    box-shadow:
      0 18px 34px rgba(0,0,0,.28),
      0 0 30px rgba(40,176,255,.20),
      inset 0 1px 0 rgba(255,255,255,.10);
  }
}
@media(max-width:1080px){
  .manifesto-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .manifesto-item{min-height:238px}
}
@media(max-width:720px){
  .manifesto-grid{grid-template-columns:1fr;gap:15px}
  .manifesto-item{min-height:auto;padding:25px 23px 24px}
  .manifesto-item::before{left:23px;right:23px}
  .manifesto-number{right:22px;top:21px}
  .manifesto-icon{width:54px;height:54px;margin-bottom:20px}
  .manifesto-item p{max-width:none}
}

/* ===== V42 : manifeste MSR, design éditorial moderne sans survol ===== */
.manifesto{
  padding:28px 0 18px;
}
.manifesto-grid{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0 !important;
  padding:12px;
  border:1px solid rgba(149,190,230,.15);
  border-radius:34px;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 0%,rgba(39,159,255,.16),transparent 28%),
    radial-gradient(circle at 92% 100%,rgba(111,76,255,.10),transparent 31%),
    linear-gradient(145deg,rgba(10,29,54,.93),rgba(3,13,28,.97));
  box-shadow:
    0 30px 80px rgba(0,0,0,.30),
    inset 0 1px 0 rgba(255,255,255,.045);
}
.manifesto-grid::before{
  content:"";
  position:absolute;
  left:7%;
  right:7%;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(72,208,255,.75),rgba(255,255,255,.56),transparent);
  box-shadow:0 0 22px rgba(53,180,255,.28);
  pointer-events:none;
}
.manifesto-item{
  --pillar-accent:#4bd8ff;
  position:relative;
  min-height:282px;
  padding:34px 30px 31px !important;
  border:0 !important;
  border-radius:24px !important;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  background:
    linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,.006));
  box-shadow:none !important;
  transform:none !important;
  transition:none !important;
  isolation:isolate;
}
.manifesto-item:nth-child(2){--pillar-accent:#4796ff}
.manifesto-item:nth-child(3){--pillar-accent:#8e7dff}
.manifesto-item:nth-child(4){--pillar-accent:#ffc94d}
.manifesto-item + .manifesto-item{
  border-left:1px solid rgba(154,190,226,.11) !important;
}
.manifesto-item::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    radial-gradient(circle at 28% 12%,color-mix(in srgb,var(--pillar-accent) 16%,transparent),transparent 31%),
    linear-gradient(180deg,transparent 48%,rgba(1,8,19,.25));
  opacity:.9;
  pointer-events:none;
}
.manifesto-item::after{
  content:"";
  position:absolute;
  left:30px;
  bottom:22px;
  width:54px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--pillar-accent),transparent);
  box-shadow:0 0 14px color-mix(in srgb,var(--pillar-accent) 36%,transparent);
  pointer-events:none;
}
.manifesto-number{
  position:absolute;
  top:18px;
  right:22px;
  color:rgba(210,228,246,.075);
  font-size:74px;
  line-height:1;
  font-weight:900;
  letter-spacing:-.07em;
  font-variant-numeric:tabular-nums;
}
.manifesto-icon{
  width:46px;
  height:46px;
  margin:0 0 auto !important;
  border-radius:16px;
  display:grid;
  place-items:center;
  color:var(--pillar-accent);
  background:
    linear-gradient(145deg,color-mix(in srgb,var(--pillar-accent) 15%,rgba(13,33,59,.82)),rgba(5,18,36,.88));
  border:1px solid color-mix(in srgb,var(--pillar-accent) 28%,transparent);
  box-shadow:
    0 12px 26px rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.075),
    0 0 24px color-mix(in srgb,var(--pillar-accent) 11%,transparent);
  transform:none !important;
  transition:none !important;
}
.manifesto-icon svg{
  width:22px;
  height:22px;
  stroke-width:1.65;
  filter:drop-shadow(0 0 8px color-mix(in srgb,var(--pillar-accent) 38%,transparent));
}
.manifesto-item strong{
  position:relative;
  margin:28px 0 13px;
  color:#f7f9ff;
  font-size:20px;
  line-height:1.05;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.manifesto-item p{
  margin:0 0 22px;
  max-width:30ch;
  color:#afc1d7;
  font-size:14px;
  line-height:1.72;
}
@media(hover:hover) and (pointer:fine){
  .manifesto-item:hover,
  .manifesto-item:hover .manifesto-icon{
    transform:none !important;
    border-color:inherit !important;
    box-shadow:none !important;
  }
}
@media(max-width:1080px){
  .manifesto-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .manifesto-item{
    min-height:245px;
  }
  .manifesto-item:nth-child(3){
    border-left:0 !important;
  }
  .manifesto-item:nth-child(n+3){
    border-top:1px solid rgba(154,190,226,.11) !important;
  }
}
@media(max-width:720px){
  .manifesto-grid{
    grid-template-columns:1fr;
    padding:8px;
    border-radius:27px;
  }
  .manifesto-item{
    min-height:220px;
    padding:28px 24px 26px !important;
    border-left:0 !important;
  }
  .manifesto-item + .manifesto-item{
    border-top:1px solid rgba(154,190,226,.11) !important;
  }
  .manifesto-number{
    top:15px;
    right:18px;
    font-size:62px;
  }
  .manifesto-item::after{
    left:24px;
    bottom:18px;
  }
  .manifesto-item p{
    max-width:none;
  }
}


/* ===== V43 : textes éditoriaux Facebook restaurés sans perdre leur intention ===== */
.original-post-body{display:contents}
.article-content .original-post-body p{margin-bottom:24px}
.article-content .original-post-body>p:first-of-type{font-size:19px;color:#f4f7ff}
.article-content .original-post-list{margin-top:8px;margin-bottom:28px}
.article-content .original-question{margin:32px 0;padding:22px 24px;border:1px solid rgba(255,199,47,.28);border-left:4px solid var(--gold);border-radius:18px;background:linear-gradient(135deg,rgba(255,199,47,.09),rgba(32,159,255,.06));font-family:Inter,ui-sans-serif,system-ui,sans-serif}
.article-content .original-question p{margin:0;color:#fff;font-size:17px;line-height:1.7;font-weight:700}
.article-content .original-post-body strong{color:#fff}
.article-content .original-post-body em{color:#ffd967}
.article-content .factual-context{margin:36px 0 30px;border:1px solid rgba(70,217,255,.18);border-radius:20px;background:linear-gradient(180deg,rgba(8,29,55,.58),rgba(5,18,35,.78));overflow:hidden;font-family:Inter,ui-sans-serif,system-ui,sans-serif}
.article-content .factual-context summary{cursor:pointer;padding:18px 22px;color:#bfeaff;font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.11em;list-style:none;display:flex;align-items:center;justify-content:space-between}
.article-content .factual-context summary::-webkit-details-marker{display:none}
.article-content .factual-context summary::after{content:'+';font-size:22px;font-weight:400;transition:transform .25s ease}
.article-content .factual-context[open] summary::after{transform:rotate(45deg)}
.article-content .factual-context-body{padding:4px 22px 22px;border-top:1px solid rgba(255,255,255,.07);color:#c4d2e6;font-size:15px;line-height:1.75}
.article-content .factual-context-body h2{font-size:21px;margin-top:24px}
.article-content .factual-context-body p{margin-bottom:17px}
@media(max-width:720px){.article-content .original-post-body>p:first-of-type{font-size:18px}.article-content .original-question{padding:18px 19px}}


/* ===== V47 : titres fluides et cohérents, sans retours artificiels ===== */
.article-cover-content h1{
  max-width:100% !important;
  font-size:clamp(38px,calc(2.6vw + 14px),54px) !important;
  line-height:.96 !important;
  text-wrap:pretty !important;
  hyphens:none !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}
.page-hero h1{
  max-width:100% !important;
  font-size:clamp(42px,calc(3.4vw + 14px),72px) !important;
  line-height:.94 !important;
  text-wrap:pretty !important;
  hyphens:none !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}
.hero-copy h1,
.section-title h2,
.brand-showcase-copy h2,
.about-copy h2,
.article-sequence-head h2,
.manifesto-head h2{
  text-wrap:pretty !important;
  hyphens:none !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}
@media(max-width:720px){
  .article-cover-content h1{
    font-size:clamp(34px,10vw,42px) !important;
    line-height:.98 !important;
  }
  .page-hero h1{
    font-size:clamp(36px,10.6vw,46px) !important;
    line-height:.96 !important;
  }
}

/* ===== V48 : titres qui utilisent réellement toute la largeur disponible ===== */
.hero-copy h1,
.page-hero h1,
.article-cover-content h1,
.section-title h2,
.brand-showcase-copy h2,
.about-copy h2,
.article-sequence-head h2,
.manifesto-head h2{
  text-wrap:wrap !important;
  hyphens:none !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
}

/* Le grand titre d'accueil n'est plus enfermé dans une largeur artificielle. */
.hero-copy h1{
  width:100% !important;
  max-width:none !important;
  font-size:clamp(46px,4.55vw,68px) !important;
  line-height:.94 !important;
}

/* Même logique sur les titres d'articles et de pages : aucune coupure anticipée. */
.article-cover-content h1,
.page-hero h1{
  width:100% !important;
  max-width:none !important;
}

@media(max-width:720px){
  .hero-copy h1{
    font-size:clamp(38px,10.5vw,46px) !important;
    line-height:.97 !important;
  }
}

/* ===== V49 : passage ultra-fin final — titres, espacements, mobile ===== */
.hero-copy h1,
.page-hero h1,
.article-cover-content h1,
.section-title h2,
.brand-showcase-copy h2,
.about-copy h2,
.article-sequence-head h2,
.manifesto-head h2{
  text-wrap:balance !important;
}

.page-hero .shell,
.article-cover-content,
.about-copy,
.brand-showcase-copy{
  padding-inline:clamp(20px,3vw,46px);
}

.article-cover-content{
  padding-block:clamp(24px,3vw,42px) !important;
}

.article-cover-content h1{
  font-size:clamp(38px,4.2vw,58px) !important;
  line-height:.95 !important;
  margin:14px 0 14px !important;
}

.page-hero h1{
  font-size:clamp(40px,4.8vw,74px) !important;
  line-height:.94 !important;
  margin-bottom:16px !important;
}

.hero-copy h1{
  font-size:clamp(44px,4.6vw,68px) !important;
  line-height:.93 !important;
  margin-bottom:18px !important;
}

.article-cover-content .intro,
.page-hero p,
.hero-copy p,
.section-title p{
  max-width:68ch;
}

.article-layout{
  gap:clamp(28px,3.6vw,42px) !important;
  padding-top:clamp(36px,4vw,54px) !important;
}

.article-aside .aside-box,
.article-content .factual-context,
.sources-block,
.verification-end{
  scroll-margin-top:94px;
}

@media(max-width:720px){
  .page-hero .shell{
    padding:24px 18px 22px !important;
  }
  .hero-copy{
    padding:28px 22px 30px !important;
  }
  .hero-copy h1{
    font-size:clamp(36px,10vw,44px) !important;
    line-height:.96 !important;
  }
  .article-cover{
    min-height:540px !important;
  }
  .article-cover-content{
    padding:20px 18px 22px !important;
  }
  .article-cover-content h1{
    font-size:clamp(31px,8.7vw,39px) !important;
    line-height:.98 !important;
    margin:12px 0 !important;
  }
  .article-cover-content .intro,
  .hero-copy p,
  .page-hero p,
  .section-title p{
    font-size:15.5px !important;
    line-height:1.68 !important;
  }
  .article-layout{
    gap:22px !important;
    padding-top:28px !important;
  }
  .article-content{
    font-size:16.5px !important;
    line-height:1.82 !important;
  }
  .article-content h2{
    font-size:23px !important;
    margin-top:36px !important;
    margin-bottom:14px !important;
  }
  .aside-box{
    padding:18px !important;
  }
}


/* ===== V50 : bannière À propos réellement mise en valeur ===== */
.about-grid{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:0 !important;
  overflow:hidden;
  border:1px solid var(--line-strong);
  border-radius:32px;
  background:
    radial-gradient(circle at 18% 18%,rgba(22,141,255,.12),transparent 34%),
    linear-gradient(180deg,rgba(7,24,46,.94),rgba(4,14,28,.98));
  box-shadow:
    0 30px 84px rgba(0,0,0,.38),
    inset 0 1px 0 rgba(255,255,255,.035);
}

.about-image{
  min-height:0 !important;
  padding:22px 22px 0 !important;
  border:0 !important;
  border-radius:0 !important;
  overflow:visible !important;
  background:transparent !important;
  position:relative;
}

.about-image::before{
  content:"";
  position:absolute;
  inset:10% 8% 0;
  pointer-events:none;
  background:radial-gradient(ellipse,rgba(22,141,255,.18),transparent 66%);
  filter:blur(28px);
}

.about-image img{
  position:relative;
  z-index:1;
  width:100% !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  border:1px solid rgba(255,255,255,.16);
  border-radius:22px 22px 10px 10px;
  box-shadow:
    0 26px 65px rgba(0,0,0,.48),
    0 0 42px rgba(22,141,255,.10);
}

.about-copy{
  display:grid !important;
  grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);
  gap:44px;
  align-items:start;
  padding:42px 46px 46px !important;
  border:0 !important;
  border-radius:0 !important;
  background:
    linear-gradient(180deg,rgba(8,27,51,.82),rgba(4,14,28,.97)) !important;
  position:relative;
}

.about-copy::before{
  content:"";
  position:absolute;
  left:46px;
  right:46px;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(70,217,255,.38),rgba(255,255,255,.18),transparent);
}

.about-copy-heading{
  position:sticky;
  top:116px;
}

.about-copy-heading h2{
  margin:16px 0 0 !important;
  font-size:clamp(40px,4vw,60px) !important;
  line-height:.94 !important;
  max-width:10ch;
}

.about-copy-body{
  max-width:760px;
}

.about-copy-body p{
  margin:0 0 20px;
  color:#c0cee1;
  font-size:17px;
  line-height:1.82;
}

.about-copy-body .btn{
  margin-top:8px;
}

@media(max-width:900px){
  .about-copy{
    grid-template-columns:1fr;
    gap:24px;
    padding:34px 30px 38px !important;
  }
  .about-copy-heading{
    position:static;
  }
  .about-copy-heading h2{
    max-width:none;
  }
}

@media(max-width:720px){
  .about-grid{
    border-radius:24px;
  }
  .about-image{
    padding:12px 12px 0 !important;
  }
  .about-image img{
    border-radius:16px 16px 8px 8px;
  }
  .about-copy{
    gap:20px;
    padding:28px 22px 30px !important;
  }
  .about-copy::before{
    left:22px;
    right:22px;
  }
  .about-copy-heading h2{
    font-size:36px !important;
    line-height:.97 !important;
  }
  .about-copy-body p{
    font-size:15.5px;
    line-height:1.72;
    margin-bottom:17px;
  }
}
