/* ============================================================
   BIG BLOCK MAGAZINE — production design system
   Dark "NITRO" world. Sharp rectangles. Displacement numerals.
   Tokens per design handoff. Single dark theme (committed).
   ============================================================ */
:root{
  --ground:#0A0A0C; --panel:#111318; --panel-alt:#0c0d11;
  --red:#FF2A1F; --red-d:#D31408; --yellow:#FFCE00;
  --up:#3CE07A; --down:#FF6B6B;
  --ink:#F3F4F6; --ink-2:#C9CBD1; --mut:#8A8D95; --disabled:#3A3C42;
  --line:rgba(255,255,255,.09); --line-2:rgba(255,255,255,.05);
  --num:rgba(255,255,255,.06);
  --disp:Impact,Haettenschweiler,"Arial Narrow",sans-serif;
  --body:"Helvetica Neue",Arial,system-ui,sans-serif;
  --mono:ui-monospace,Menlo,Consolas,monospace;
  --maxw:1320px; --gut:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--body);
  line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{font-family:inherit;cursor:pointer}
::selection{background:var(--red);color:#fff}
:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gut)}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--red);font-weight:700}
.mono{font-family:var(--mono);text-transform:uppercase;letter-spacing:.14em}

/* ---------- displacement numeral ---------- */
.numeral{position:absolute;font-family:var(--disp);color:transparent;
  -webkit-text-stroke:2px var(--num);letter-spacing:-.02em;pointer-events:none;user-select:none;
  line-height:.7;z-index:0}

/* ---------- header ---------- */
.site-header{position:sticky;top:0;z-index:50;background:rgba(10,10,12,.92);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;height:72px;gap:18px}
.brand{display:flex;align-items:center;gap:13px}
.brand .mark{font-family:var(--disp);font-size:30px;line-height:.82;text-transform:uppercase;letter-spacing:.01em}
.brand .mark b{color:var(--red)}
.brand .tag{font-family:var(--mono);font-size:9px;letter-spacing:.28em;color:var(--mut);text-transform:uppercase;line-height:1.5}
nav.primary{display:flex;align-items:center;gap:22px}
nav.primary a{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#c3c6cd;
  position:relative;padding:4px 0}
nav.primary a::after{content:"";position:absolute;left:0;right:100%;bottom:-3px;height:2px;background:var(--red);transition:right .26s ease}
nav.primary a:hover,nav.primary a.active{color:#fff}
nav.primary a:hover::after,nav.primary a.active::after{right:0}
nav.primary a.soon{color:var(--disabled);cursor:default}
nav.primary a.soon sup{color:var(--red);font-size:8px;margin-left:2px}
nav.primary a.soon::after{display:none}
.icon-btn{width:40px;height:40px;display:grid;place-items:center;background:transparent;border:1px solid var(--line);color:#c3c6cd}
.icon-btn:hover{border-color:var(--red);color:#fff}
.btn-sub{background:var(--red);color:#fff;font-weight:800;font-size:11.5px;letter-spacing:.12em;
  text-transform:uppercase;padding:11px 18px;border:0;transition:.18s}
.btn-sub:hover{background:var(--yellow);color:#0a0a0c}
.burger{display:none;width:40px;height:40px;background:transparent;border:1px solid var(--line);color:#fff;
  flex-direction:column;gap:5px;align-items:center;justify-content:center}
.burger span{width:20px;height:2px;background:#fff;display:block}

/* ---------- mobile menu ---------- */
.mobile-menu{position:fixed;inset:0;z-index:60;background:var(--ground);display:none;flex-direction:column;padding:24px}
.mobile-menu.open{display:flex}
.mobile-menu .top{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}
.mobile-menu a{font-family:var(--disp);font-size:34px;text-transform:uppercase;color:#fff;padding:10px 0;border-bottom:1px solid var(--line-2)}
.mobile-menu a:hover{color:var(--red)}
.mobile-menu .btn-sub{margin-top:22px;text-align:center;padding:16px}

/* ---------- search overlay ---------- */
.overlay{position:fixed;inset:0;z-index:65;background:rgba(6,6,9,.94);backdrop-filter:blur(8px);
  display:none;padding:8vh 24px}
.overlay.open{display:block}
.search-box{max-width:760px;margin:0 auto}
.search-box .row{display:flex;align-items:center;gap:16px;border-bottom:2px solid var(--red);padding-bottom:12px}
.search-box input{flex:1;background:transparent;border:0;color:#fff;font-family:var(--disp);font-size:clamp(28px,5vw,52px);
  text-transform:uppercase;outline:none}
.search-box input::placeholder{color:var(--disabled)}
.search-results{margin-top:24px;display:grid;gap:2px}
.search-results a{display:flex;align-items:baseline;justify-content:space-between;padding:14px 4px;border-bottom:1px solid var(--line-2)}
.search-results a:hover{background:rgba(255,255,255,.03)}
.search-results a .t{font-size:17px;font-weight:600}
.search-results a .s{font-family:var(--mono);font-size:11px;color:var(--mut);letter-spacing:.12em;text-transform:uppercase}
.search-results .empty{color:var(--mut);font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em;padding:20px 4px}

/* ---------- ticker ---------- */
.ticker{display:flex;align-items:stretch;background:var(--panel-alt);border-bottom:1px solid var(--line);overflow:hidden}
.ticker .lbl{background:var(--red);color:#fff;font-family:var(--mono);font-weight:800;font-size:11px;
  letter-spacing:.14em;text-transform:uppercase;padding:0 16px;display:flex;align-items:center;white-space:nowrap;z-index:2}
.ticker .track{display:flex;white-space:nowrap;animation:bb-marquee 34s linear infinite;padding:10px 0;font-family:var(--mono);font-size:12px;color:var(--ink-2)}
.ticker:hover .track{animation-play-state:paused}
.ticker .track .it{padding:0 26px;position:relative;letter-spacing:.04em}
.ticker .track .it::before{content:"◆";position:absolute;left:4px;color:var(--red);font-size:9px;top:50%;transform:translateY(-50%)}
.ticker .track .it b{color:var(--yellow)}
@keyframes bb-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- hero ---------- */
.hero{position:relative;min-height:clamp(520px,80vh,760px);display:flex;align-items:flex-end;overflow:hidden;background:#0d0d10}
.hero .photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;z-index:1}
.hero .numeral{right:-2%;top:-8%;font-size:min(52vw,680px);z-index:2}
.hero .grad{position:absolute;inset:0;z-index:3;background:linear-gradient(0deg,rgba(6,6,8,.94) 4%,rgba(6,6,8,.28) 46%,rgba(6,6,8,.55) 100%)}
.hero .tagpin{position:absolute;top:16px;right:20px;font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:rgba(255,255,255,.4);z-index:4}
.hero .inner{position:relative;z-index:5;padding:0 0 46px}
.hero .kicker{display:inline-block;background:var(--red);color:#fff;font-family:var(--mono);font-weight:700;
  font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:6px 12px;margin-bottom:18px}
.hero h1{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(48px,9.2vw,150px);
  line-height:.86;letter-spacing:.005em;margin:0 0 16px;max-width:15ch}
.hero h1 em{font-style:normal;color:var(--yellow)}
.hero .dek{color:var(--ink-2);font-size:clamp(15px,1.6vw,19px);max-width:56ch;margin:0 0 24px}
.hero .cta{display:flex;gap:14px;flex-wrap:wrap}

/* ---------- buttons ---------- */
.btn{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;padding:14px 22px;border:0;display:inline-flex;align-items:center;gap:9px;transition:.18s}
.btn.red{background:var(--red);color:#fff}
.btn.red:hover{background:var(--yellow);color:#0a0a0c}
.btn.ghost{background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff}
.btn.ghost:hover{border-color:var(--red);color:var(--red)}

/* ---------- section frame ---------- */
section.block{position:relative;padding:48px 0 6px;z-index:1}
section.block.alt{background:var(--panel-alt)}
.shead{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;border-bottom:2px solid var(--red);padding-bottom:12px;margin-bottom:26px}
.shead h2{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(22px,3.4vw,32px);line-height:.9;letter-spacing:.02em;margin:0}
.shead .more{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);white-space:nowrap}
.shead .more:hover{color:var(--red)}

/* reveal */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}

/* ---------- cards / grids ---------- */
.grid{display:grid;gap:20px}
.grid.c3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.grid.c4{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{display:block;position:relative}
.card .shot{position:relative;aspect-ratio:16/10;overflow:hidden;background:#1a1b21}
.card .shot img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.card:hover .shot img{transform:scale(1.05)}
.card .mk{position:absolute;left:10px;top:10px;font-family:var(--mono);font-size:9.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;background:var(--red);color:#fff;padding:4px 8px;z-index:2}
.card .cat{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);margin:13px 0 6px}
.card h3{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:24px;line-height:.98;letter-spacing:.015em;margin:0;transition:color .2s}
.card:hover h3{color:var(--yellow)}

/* ---------- feature split + block watch ---------- */
.split{display:grid;grid-template-columns:1.6fr 1fr;gap:28px;align-items:start;position:relative}
.feature{position:relative}
.feature .shot{position:relative;aspect-ratio:16/9;overflow:hidden;background:#1a1b21}
.feature .shot img{width:100%;height:100%;object-fit:cover}
.feature .kicker{color:var(--red);font-family:var(--mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;margin:16px 0 8px;display:block}
.feature h3{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(26px,3.4vw,42px);line-height:.92;margin:0 0 12px;max-width:20ch}
.feature h3 em{font-style:normal;color:var(--yellow)}
.feature p{color:var(--ink-2);font-size:16px;margin:0 0 14px;max-width:60ch}
.watch{background:var(--panel);border:1px solid var(--line)}
.watch .wh{display:flex;align-items:center;justify-content:space-between;padding:15px 17px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.02)}
.watch .wh .t{font-family:var(--disp);text-transform:uppercase;font-size:20px}
.watch .live{font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--up);display:flex;align-items:center;gap:7px}
.watch .live .dot{width:7px;height:7px;border-radius:50%;background:var(--up);animation:bb-pulse 1.6s ease-in-out infinite}
@keyframes bb-pulse{0%,100%{box-shadow:0 0 0 0 rgba(60,224,122,.5)}70%{box-shadow:0 0 0 8px rgba(60,224,122,0)}}
.watch .row{display:flex;align-items:center;justify-content:space-between;padding:13px 17px;border-bottom:1px solid var(--line-2);font-size:14px}
.watch .row:hover{background:rgba(255,255,255,.02)}
.watch .row .c{color:var(--ink-2)}
.watch .row .c small{display:block;font-family:var(--mono);font-size:10px;color:var(--mut);letter-spacing:.08em;margin-top:2px;text-transform:uppercase}
.watch .row .p{font-family:var(--mono);font-weight:600;font-variant-numeric:tabular-nums;color:var(--up)}
.watch .row .p.dn{color:var(--down)}
.watch .foot{padding:14px 17px}

/* ---------- spec strip ---------- */
.specs{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.specs .cell{background:var(--panel);padding:14px 16px}
.specs .cell .k{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}
.specs .cell .v{font-family:var(--disp);font-size:24px;text-transform:uppercase;margin-top:5px}
.specs .cell .v.up{color:var(--up)}

/* ---------- ranked cards ---------- */
.rank .badge{position:absolute;left:10px;top:10px;font-family:var(--disp);font-size:22px;color:var(--yellow);background:rgba(0,0,0,.6);padding:2px 9px;z-index:2}

/* ---------- video cards ---------- */
.vid{position:relative;display:block}
.vid .thumb{position:relative;aspect-ratio:16/9;overflow:hidden;background:#1a1b21;display:grid;place-items:center}
.vid .thumb img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.vid .play{position:relative;width:54px;height:54px;border-radius:50%;background:rgba(0,0,0,.5);border:2px solid #fff;display:grid;place-items:center;transition:.2s;z-index:2}
.vid:hover .play{background:var(--red);border-color:var(--red)}
.vid .play::before{content:"";width:0;height:0;border-left:16px solid #fff;border-top:10px solid transparent;border-bottom:10px solid transparent;margin-left:4px}
.vid .meta{position:absolute;left:10px;bottom:10px;right:10px;z-index:2;display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.9)}
.vid .meta .dur{color:var(--yellow)}
.vid h3{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:19px;line-height:1;margin:11px 0 0}
.vid .cat{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);margin-top:9px}

/* ---------- accordion ---------- */
.acc{border:1px solid var(--line)}
.acc .item{border-bottom:1px solid var(--line-2)}
.acc .item:last-child{border-bottom:0}
.acc .q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;background:transparent;border:0;color:var(--ink);text-align:left;padding:18px;font-family:var(--disp);text-transform:uppercase;font-size:19px;letter-spacing:.01em}
.acc .q .sign{color:var(--red);font-size:24px;line-height:1}
.acc .a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.acc .item.open .a{max-height:400px}
.acc .a p{margin:0;padding:0 18px 18px;color:var(--ink-2);font-size:15px;max-width:70ch}

/* ---------- newsletter ---------- */
.news{position:relative;overflow:hidden;text-align:center;padding:64px 24px}
.news .numeral{left:50%;top:50%;transform:translate(-50%,-50%);font-size:min(30vw,340px)}
.news .inner{position:relative;z-index:2;max-width:640px;margin:0 auto}
.news h2{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(30px,5vw,52px);line-height:.9;margin:0 0 10px}
.news h2 b{color:var(--red)}
.news p{color:var(--mut);margin:0 0 22px}
.news form{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.news input{background:var(--ground);border:1px solid rgba(255,255,255,.18);color:#fff;padding:15px 16px;font-size:14px;min-width:260px;font-family:var(--body)}
.news input:focus{outline:none;border-color:var(--red)}
.news .ok{color:var(--up);font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;margin-top:16px;min-height:16px}

/* ---------- footer ---------- */
.site-footer{background:var(--ground);border-top:1px solid var(--line);padding:52px 0 30px}
.site-footer .top{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:30px;padding-bottom:34px;border-bottom:1px solid var(--line-2)}
.site-footer .mark{font-family:var(--disp);font-size:40px;text-transform:uppercase;line-height:.85}
.site-footer .mark b{color:var(--red)}
.site-footer .about{color:var(--mut);font-size:13.5px;margin:14px 0 0;max-width:38ch}
.site-footer h4{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--mut);margin:0 0 14px}
.site-footer .col a{display:block;color:#b7bac1;font-size:14px;padding:5px 0}
.site-footer .col a:hover{color:var(--red)}
.site-footer .col a.soon{color:var(--disabled)}
.site-footer .base{display:flex;justify-content:space-between;padding-top:22px;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);flex-wrap:wrap;gap:10px}

/* ---------- makes rail ---------- */
.rail-wrap{position:relative;display:flex;align-items:stretch;gap:0;background:var(--panel-alt);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.rail-wrap .lbl{background:var(--red);color:#fff;font-family:var(--mono);font-weight:800;font-size:10px;letter-spacing:.14em;text-transform:uppercase;padding:0 15px;display:flex;align-items:center;line-height:1.15;white-space:nowrap}
.rail{display:flex;overflow-x:auto;flex:1;scrollbar-width:none;scroll-behavior:smooth}
.rail::-webkit-scrollbar{display:none}
.rail a{display:flex;flex-direction:column;justify-content:center;padding:14px 20px;border-left:1px solid var(--line-2);white-space:nowrap}
.rail a .n{font-family:var(--disp);font-size:19px;text-transform:uppercase;letter-spacing:.02em;color:#b7bac1}
.rail a .mt{font-family:var(--mono);font-size:9px;letter-spacing:.12em;color:var(--mut);text-transform:uppercase;margin-top:2px}
.rail a:hover .n{color:#fff}
.rail a:hover{background:linear-gradient(0deg,rgba(255,42,31,.18),transparent)}
.rail-arrow{width:44px;background:var(--panel);border:0;border-left:1px solid var(--line);color:#fff;font-size:18px}
.rail-arrow:hover{background:var(--red)}

/* ---------- lightbox / modal ---------- */
.lightbox{position:fixed;inset:0;z-index:70;background:rgba(6,6,9,.95);backdrop-filter:blur(8px);display:none;flex-direction:column;padding:24px}
.lightbox.open{display:flex}
.lightbox .lb-head{display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);margin-bottom:16px}
.lightbox .lb-body{flex:1;display:flex;align-items:center;gap:16px;justify-content:center}
.lightbox .lb-body img{max-height:74vh;max-width:100%;object-fit:contain}
.lightbox .lb-nav{width:52px;height:52px;background:rgba(255,255,255,.06);border:1px solid var(--line);color:#fff;font-size:22px;flex:none}
.lightbox .lb-nav:hover{background:var(--red)}
.lightbox .lb-cap{text-align:center;color:var(--ink-2);font-size:14px;margin-top:14px}

/* ---------- gallery ---------- */
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.gallery .g{position:relative;aspect-ratio:1;overflow:hidden;background:#1a1b21;cursor:pointer}
.gallery .g img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gallery .g:hover img{transform:scale(1.06)}
.gallery .g .cap{position:absolute;left:10px;right:10px;bottom:8px;z-index:2;font-size:12.5px;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.9)}
.gallery .g .mk{position:absolute;left:8px;top:8px;font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;background:var(--red);padding:3px 6px;z-index:2}
.gallery .g::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.7),transparent 50%);z-index:1}

/* ---------- breadcrumb ---------- */
.crumb{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);padding:18px 0}
.crumb a:hover{color:var(--red)}
.crumb .sep{color:var(--disabled);margin:0 8px}

/* ---------- photo placeholder zone ---------- */
.photozone{position:relative;aspect-ratio:16/10;display:grid;place-items:center;
  background:repeating-linear-gradient(135deg,#15161c,#15161c 14px,#111318 14px,#111318 28px)}
.photozone .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:var(--mut);text-transform:uppercase}

/* ---------- make hub hero ---------- */
.hub-hero{position:relative;overflow:hidden;padding:20px 0 40px}
.hub-hero .numeral{right:-3%;top:-24%;font-size:min(46vw,560px)}
.hub-hero .inner{position:relative;z-index:2}
.hub-hero .eyebrow{display:block;margin-bottom:12px}
.hub-hero h1{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(64px,15vw,220px);line-height:.82;letter-spacing:.01em;margin:0 0 16px}
.hub-hero .dek{color:var(--ink-2);font-size:clamp(15px,1.6vw,19px);max-width:60ch;margin:0 0 22px}
.hub-photo{aspect-ratio:21/9;overflow:hidden;margin-top:8px;background:#1a1b21}
.hub-photo img{width:100%;height:100%;object-fit:cover}
.era-chips{display:flex;gap:0;overflow-x:auto;border:1px solid var(--line);margin-top:22px;scrollbar-width:none}
.era-chips::-webkit-scrollbar{display:none}
.era-chips .chip{padding:12px 18px;border-right:1px solid var(--line-2);white-space:nowrap;flex:none}
.era-chips .chip .y{font-family:var(--disp);font-size:20px;text-transform:uppercase}
.era-chips .chip .e{font-family:var(--mono);font-size:9px;letter-spacing:.12em;color:var(--mut);text-transform:uppercase;margin-top:2px}

/* ---------- market value cards ---------- */
.market{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.market .v{background:var(--panel);padding:18px 18px 20px}
.market .v .m{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)}
.market .v .p{font-family:var(--disp);font-size:34px;text-transform:uppercase;margin:8px 0 4px}
.market .v .d{font-family:var(--mono);font-size:12px;color:var(--up);font-variant-numeric:tabular-nums}
.market .v .d.dn{color:var(--down)}

/* ---------- filters (makes index) ---------- */
.filters{display:flex;flex-direction:column;gap:14px;margin-bottom:28px}
.fgroup{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.fgroup .glbl{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--mut);min-width:56px}
.chip-btn{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;background:var(--panel);border:1px solid var(--line);color:var(--ink-2);padding:8px 13px}
.chip-btn:hover{border-color:var(--red)}
.chip-btn.active{background:var(--red);border-color:var(--red);color:#0a0a0c;font-weight:700}
.fcount{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut)}
.make-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.make-card{position:relative;overflow:hidden;background:var(--panel);border:1px solid var(--line)}
.make-card .shot{position:relative;aspect-ratio:16/10;overflow:hidden}
.make-card .shot img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.make-card:hover .shot img{transform:scale(1.05)}
.make-card .numeral{right:-6%;top:-30%;font-size:170px}
.make-card .body{padding:14px 16px 18px;position:relative;z-index:2}
.make-card .body .name{font-family:var(--disp);font-size:30px;text-transform:uppercase;line-height:.9}
.make-card .body .be{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);margin-top:5px}
.make-card:hover .body .name{color:var(--yellow)}
.empty-state{padding:40px;text-align:center;color:var(--mut);font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em}

/* ---------- video facade (nocookie click-to-load) ---------- */
.player-modal{position:fixed;inset:0;z-index:70;background:rgba(6,6,9,.95);backdrop-filter:blur(8px);display:none;flex-direction:column;padding:24px}
.player-modal.open{display:flex}
.player-modal .pm-head{display:flex;justify-content:space-between;align-items:center;color:var(--ink-2);font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px}
.player-modal .frame{aspect-ratio:16/9;background:#000;max-width:1100px;width:100%;margin:0 auto}
.player-modal .frame iframe{width:100%;height:100%;border:0}
.player-modal .credit{max-width:1100px;margin:14px auto 0;width:100%;font-family:var(--mono);font-size:12px;color:var(--ink-2);letter-spacing:.06em}
.player-modal .credit a{color:var(--red)}
.featured-vid{position:relative;aspect-ratio:16/9;overflow:hidden;background:#1a1b21;display:grid;place-items:center;cursor:pointer}
.featured-vid img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.featured-vid .play{position:relative;width:74px;height:74px;border-radius:50%;background:rgba(0,0,0,.55);border:2px solid #fff;display:grid;place-items:center;z-index:2}
.featured-vid:hover .play{background:var(--red);border-color:var(--red)}
.featured-vid .play::before{content:"";width:0;height:0;border-left:22px solid #fff;border-top:14px solid transparent;border-bottom:14px solid transparent;margin-left:6px}
.featured-vid .cap{position:absolute;left:16px;bottom:14px;right:16px;z-index:2}
.featured-vid .cap .t{font-family:var(--disp);font-size:clamp(22px,3vw,38px);text-transform:uppercase;line-height:.95;text-shadow:0 2px 8px rgba(0,0,0,.9)}
.featured-vid .cap .m{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.9);margin-top:6px}

/* ---------- article ---------- */
.article{max-width:760px;margin:0 auto;padding:8px 0 20px}
.article .tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.article .tags .mk{position:static;background:var(--red);color:#fff;font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:5px 9px}
.article .tags .t{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);border:1px solid var(--line);padding:5px 9px}
.article h1{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(38px,6vw,72px);line-height:.9;margin:0 0 14px}
.article h1 em{font-style:normal;color:var(--yellow)}
.article .dek{color:var(--ink-2);font-size:19px;margin:0 0 14px}
.article .byline{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);padding-bottom:20px;border-bottom:1px solid var(--line)}
.lead-img{aspect-ratio:21/9;overflow:hidden;margin:22px 0;background:#1a1b21;cursor:pointer}
.lead-img img{width:100%;height:100%;object-fit:cover}
.article .body{font-size:19px;line-height:1.72;color:#e6e7ea}
.article .body p{margin:0 0 22px}
.article .body p.drop::first-letter{font-family:var(--disp);font-size:64px;line-height:.7;float:left;padding:8px 12px 0 0;color:var(--red)}
.article .body h2{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:28px;margin:34px 0 14px;letter-spacing:.01em}
.pullquote{font-family:var(--disp);text-transform:uppercase;font-size:clamp(24px,3.4vw,36px);line-height:1.02;color:#fff;border-left:4px solid var(--red);padding:6px 0 6px 22px;margin:30px 0}
.specbox{border:1px solid var(--line);margin:30px 0}
.specbox .sh{display:flex;justify-content:space-between;align-items:center;padding:14px 17px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.02)}
.specbox .sh .t{font-family:var(--disp);font-size:20px;text-transform:uppercase}
.specbox .grid2{display:grid;grid-template-columns:1fr 1fr}
.specbox .cell{padding:12px 17px;border-bottom:1px solid var(--line-2);border-right:1px solid var(--line-2);display:flex;justify-content:space-between;font-size:14px}
.specbox .cell .k{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.specbox .cell .val{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--ink)}
.specbox .cell .val.up{color:var(--up)}

/* ---------- responsive ---------- */
@media (max-width:900px){
  nav.primary,.btn-sub.desk{display:none}
  .burger{display:flex}
  .split{grid-template-columns:1fr}
  .site-footer .top{grid-template-columns:1fr 1fr}
}
@media (max-width:560px){
  .brand .tag{display:none}
  .site-footer .top{grid-template-columns:1fr}
  .hero h1{font-size:clamp(40px,13vw,90px)}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;scroll-behavior:auto;transition:none!important}
  .reveal{opacity:1;transform:none}
}
