/* ============================================================
   PREVIOUSLY GAMES HUB — house system build (Games #2, 2026-10-16)
   Black #000 · surfaces #101010/#1B1B1B · lines #2C2C2C · silver
   #A5ACAF · signal red #E10600 · Marathon ('Previously Display')
   for display, Inter for reading. Floating modules: gradient +
   soft shadow, NO borders/outlines. No pills. Underline tabs.
   ============================================================ */
/* Page ground: full-bleed black edge to edge in BOTH color schemes —
   the fleet canvas runs cream under light scheme, which framed every
   black tray in a pale outline on phones (James, 2026-10-16 21:12 PT). */
html,body{background:#000 !important}
.gh2{background:#000;

  --gh-bg:#000; --gh-s1:#101010; --gh-s2:#1B1B1B; --gh-line:#2C2C2C;
  --gh-silver:#A5ACAF; --gh-red:#E10600; --gh-text:#EDEDED; --gh-dim:#C9CCCE;
  --gh-disp:'Previously Display','Marathon Long Run Display',Arial,sans-serif;
  --gh-body:'Inter',-apple-system,'Segoe UI',Arial,sans-serif;
  background:var(--gh-bg); color:var(--gh-text);
  font-family:var(--gh-body); -webkit-font-smoothing:antialiased;
}
.gh2 *{box-sizing:border-box}
.gh2 img{display:block;max-width:100%}
.gh2 a{color:inherit}
.gh2 :focus-visible{outline:2px solid var(--gh-red);outline-offset:2px}
.gh-main{max-width:1320px;margin:0 auto;padding:0 0 8px}

/* ---------- local nav (prompt §5) ---------- */
.gh-nav{position:sticky;top:0;z-index:60;background:rgba(0,0,0,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.gh-nav__in{display:flex;gap:24px;align-items:center;max-width:1320px;margin:0 auto;padding:0 18px;overflow-x:auto;scrollbar-width:none}
.gh-nav__in::-webkit-scrollbar{display:none}
.gh-nav a{color:var(--gh-silver);text-decoration:none;font-family:var(--gh-disp);font-size:12.5px;letter-spacing:.15em;text-transform:uppercase;padding:13px 0 11px;white-space:nowrap;box-shadow:inset 0 -2px 0 transparent}
.gh-nav a:hover{color:#fff}
.gh-nav a.on{color:#fff;box-shadow:inset 0 -2px 0 var(--gh-red)}
.gh-nav__all{margin-left:auto;color:#fff !important}
.gh-nav__all:hover{color:var(--gh-red) !important}

/* ---------- L1 stage ---------- */
.gh-stage{position:relative;overflow:hidden;background:var(--gh-s1)}
.gh-stage__art{width:100%;height:480px;object-fit:cover;object-position:center 28%}
.gh-stage__fade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.46) 0%,rgba(0,0,0,.04) 34%,rgba(0,0,0,.30) 60%,#000 100%)}
.gh-stage__body{position:absolute;left:0;right:0;bottom:0;padding:20px 18px 22px;max-width:1320px;margin:0 auto}
.gh-kick{display:flex;gap:12px;align-items:center;margin:0}
.gh-kick__tag{background:var(--gh-red);color:#fff;font-family:var(--gh-disp);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;padding:5px 9px}
.gh-kick__sub{color:#fff;font-family:var(--gh-disp);font-size:11px;letter-spacing:.24em;text-transform:uppercase}
.gh-stage__title{font-family:var(--gh-disp);font-weight:400;font-size:44px;line-height:.96;text-transform:uppercase;margin:12px 0 0;max-width:10em}
.gh-stage__tag{color:#E3E3E3;font-size:14.5px;line-height:1.5;margin:10px 0 0;max-width:34em}
.gh-count{display:flex;gap:8px;margin-top:16px}
.gh-count__cell{background:rgba(16,16,16,.82);border-radius:12px;padding:9px 0 7px;min-width:64px;text-align:center;box-shadow:0 10px 24px rgba(0,0,0,.5)}
.gh-count__cell b{font-family:var(--gh-disp);font-weight:400;font-size:24px;line-height:1;display:block}
.gh-count__cell small{color:var(--gh-silver);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase}
.gh-stage__plats{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.gh-stage__plats span{background:rgba(27,27,27,.85);color:var(--gh-dim);font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:6px 10px;border-radius:8px}
.gh-stage__plats span.hot{background:var(--gh-red);color:#fff}
.gh-stage__cta{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:18px}
.gh-btn{font-family:var(--gh-disp);font-size:12.5px;letter-spacing:.17em;text-transform:uppercase;text-decoration:none;padding:13px 18px;border-radius:999px;display:inline-block}
.gh2 .gh-stage__cta a.gh-btn--solid{background:#fff;color:#000;font-size:14.5px;letter-spacing:.1em;padding:14px 24px}
.gh2 .gh-stage__cta a.gh-btn--solid:hover{background:var(--gh-red);color:#fff}
.gh2 .gh-stage__cta a.gh-btn--ghost{color:#fff}
.gh-btn--ghost{background:rgba(16,16,16,.82);color:#fff;box-shadow:0 10px 24px rgba(0,0,0,.5)}
.gh-btn--ghost:hover{background:#262626}
.gh-hype{display:inline-flex;gap:10px;align-items:center}
.gh-hype__btn{background:var(--gh-red);color:#fff;border:0;cursor:pointer;font-family:var(--gh-disp);font-size:12.5px;letter-spacing:.17em;padding:13px 18px;border-radius:999px}
.gh-hype__btn:hover{background:#ff1a10}
.gh-hype__n{color:var(--gh-dim);font-size:12px}
.gh-hype__n b{color:#fff;font-family:var(--gh-disp);font-weight:400;letter-spacing:.06em}

/* ---------- module shells ---------- */
.gh-mod{margin:18px 14px 0;border-radius:20px;background:linear-gradient(180deg,#141414,#0A0A0A);box-shadow:0 18px 44px rgba(0,0,0,.55);padding:20px 16px 22px}
.gh-mod__head h2{font-family:var(--gh-disp);font-weight:400;font-size:21px;letter-spacing:.14em;text-transform:uppercase;margin:0}
.gh-mod__head h2::after{content:"";display:block;width:44px;height:2px;background:var(--gh-red);margin-top:9px}
.gh-mod__sub{color:var(--gh-silver);font-size:13.5px;line-height:1.5;margin:9px 0 0;max-width:56em}
.gh-sub{margin-top:6px}
.gh-sub__head{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.gh-sub__head h3{font-family:var(--gh-disp);font-weight:400;font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:#fff;margin:0}
.gh-sub__link{color:var(--gh-silver);font-size:12.5px;text-decoration:none;margin-left:auto}
.gh-sub__link:hover{color:#fff}
.gh-panel__sub{color:var(--gh-silver);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;margin-left:auto}

/* ---------- L2 catalog ---------- */
.gh-cat__bar{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.gh-search{flex:1 1 260px;display:flex;align-items:center;gap:10px;background:var(--gh-s2);border-radius:12px;padding:0 14px}
.gh-search__ic{color:var(--gh-silver);font-size:17px}
.gh-search input{flex:1;background:transparent;border:0;color:#fff;font:inherit;font-size:15px;padding:13px 0;min-width:0}
.gh-search input::placeholder{color:var(--gh-silver)}
.gh-search input:focus{outline:none}
.gh-search:focus-within{box-shadow:0 0 0 2px var(--gh-red)}
.gh-sort{display:flex;align-items:center;gap:9px;background:var(--gh-s2);border-radius:12px;padding:0 14px;color:var(--gh-silver);font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.gh-sort select{background:transparent;border:0;color:#fff;font:inherit;font-size:14px;padding:12px 0;letter-spacing:0;text-transform:none;cursor:pointer}
.gh-sort select option{background:var(--gh-s2);color:#fff}
.gh-utabs{display:flex;gap:22px;margin-top:16px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.gh-utabs::-webkit-scrollbar{display:none}
.gh-utabs button{background:none;border:0;cursor:pointer;color:var(--gh-silver);font-family:var(--gh-disp);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;padding:0 0 8px;white-space:nowrap;box-shadow:inset 0 -2px 0 transparent}
.gh-utabs button:hover{color:#fff}
.gh-utabs button.on{color:#fff;box-shadow:inset 0 -2px 0 var(--gh-red)}
.gh-count-line{color:var(--gh-silver);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;margin:12px 0 0}
.gh-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 14px;margin-top:16px}
.gh-card{text-decoration:none;display:block}
.gh-card__artwrap{position:relative;display:block;border-radius:14px;overflow:hidden;box-shadow:0 14px 30px rgba(0,0,0,.55);background:var(--gh-s2);aspect-ratio:3/4}
.gh-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.gh-card:hover img,.gh-card:focus-visible img{transform:scale(1.035)}
.gh-card__typo{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:16px;text-align:center;font-family:var(--gh-disp);font-size:19px;line-height:1.15;text-transform:uppercase;color:var(--gh-dim);background:linear-gradient(160deg,#232323,#0C0C0C)}
.gh-card__chip{position:absolute;top:10px;left:10px;z-index:2;background:var(--gh-red);color:#fff;font-family:var(--gh-disp);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;padding:5px 8px;border-radius:6px}
.gh-card__t{display:block}
.gh-card__m{display:block}
.gh-card__t{font-size:15.5px;line-height:1.18;margin-top:10px;color:#fff}
.gh-card__m{color:var(--gh-silver);font-size:11.5px;margin-top:4px;letter-spacing:.03em;line-height:1.45}
.gh-card__m .star{color:var(--gh-red)}
.gh-empty{color:var(--gh-dim);font-size:14.5px;margin:22px 0 4px}
.gh-empty button{background:none;border:0;color:#fff;text-decoration:underline;cursor:pointer;font:inherit;padding:0}
.gh-more{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:22px}
.gh-more__btn{background:var(--gh-s2);color:#fff;border:0;cursor:pointer;font-family:var(--gh-disp);font-size:12.5px;letter-spacing:.17em;text-transform:uppercase;padding:14px 20px;border-radius:12px}
.gh-more__btn:hover{background:#262626}
.gh-more__all{color:#fff;text-decoration:none;font-family:var(--gh-disp);font-size:12.5px;letter-spacing:.17em;text-transform:uppercase}
.gh-more__all:hover{color:var(--gh-red)}

/* ---------- L3 stream kings ---------- */
.live-badge{display:inline-flex;align-items:center;gap:7px;color:#fff;font-family:var(--gh-disp);font-size:11px;letter-spacing:.2em}
.live-badge i{width:8px;height:8px;border-radius:50%;background:var(--gh-red);display:inline-block;animation:ghpulse 1.6s infinite}
@keyframes ghpulse{0%,100%{opacity:1}50%{opacity:.35}}
.king-stage{position:relative;margin-top:14px;border-radius:16px;overflow:hidden;background:var(--gh-s1)}
.live-art{position:relative;width:100%;aspect-ratio:16/9;border:0;padding:0;cursor:pointer;background-size:cover;background-position:center;background-color:var(--gh-s1);display:block;text-align:left}
.live-art::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 46%,rgba(0,0,0,.88))}
.live-meta{position:absolute;left:0;right:0;bottom:0;padding:16px;z-index:2;display:block}
.live-name{display:block;font-family:var(--gh-disp);font-size:24px;letter-spacing:.04em;text-transform:uppercase;color:#fff;line-height:1.05}
.live-title{display:block;color:var(--gh-dim);font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-top:5px}
.king-rail{position:absolute;top:12px;right:12px;z-index:3;max-width:46%;transition:opacity .3s}
.king-rail--hidden{opacity:0;pointer-events:none}
.king-stage:hover .king-rail,.king-stage:focus-within .king-rail{opacity:1;pointer-events:auto}
.king-rail__track{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}
.king-rail__track::-webkit-scrollbar{display:none}
.king-rail__thumb{position:relative;flex:0 0 auto;width:104px;border:0;padding:0;border-radius:10px;overflow:hidden;cursor:pointer;background:var(--gh-s1)}
.king-rail__art{width:100%;aspect-ratio:16/9;object-fit:cover}
.king-rail__live{position:absolute;top:5px;left:5px;background:var(--gh-red);color:#fff;font-size:8.5px;letter-spacing:.14em;padding:2px 5px;border-radius:4px}
.king-rail__name{display:block;color:#fff;font-size:10.5px;padding:5px 6px 1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.king-rail__views{display:block;color:var(--gh-silver);font-size:9.5px;padding:0 6px 6px}
.roster{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.king-card{position:relative;border:0;padding:0;cursor:pointer;background:var(--gh-s1);border-radius:14px;overflow:hidden;text-align:left;box-shadow:0 12px 26px rgba(0,0,0,.5);font:inherit;color:inherit}
.king-card__thumb{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--gh-s2)}
.king-card__thumb--empty{width:100%;aspect-ratio:16/9;background:linear-gradient(150deg,#232323,#0C0C0C)}
.king-card__meta{display:block;padding:10px 12px 12px}
.king-card__name{display:block;color:#fff;font-size:14.5px;line-height:1.2}
.king-card__game{display:block;color:var(--gh-silver);font-size:11.5px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.king-card__live{position:absolute;top:8px;left:8px;background:var(--gh-red);color:#fff;font-size:9px;letter-spacing:.14em;padding:3px 6px;border-radius:4px}
.king-card__viewers{position:absolute;top:8px;right:8px;background:rgba(0,0,0,.75);color:#fff;font-size:10.5px;padding:3px 7px;border-radius:4px}
.king-inline{position:relative;border-radius:16px;overflow:hidden;background:#000}
/* While a stream is playing, the featured <button> goes transparent to
   taps: a <button> swallows hit-testing for everything inside it, so the
   player iframe inside could never receive a tap on its own play button —
   every tap toggled the player closed instead (James, 2026-10-16: "the
   videos don't play"). The iframe and the × chip re-enable their own
   taps; the chip's own handler stops propagation, so closing still works
   exactly as built. */
.gh2 .live-art.king-playing{pointer-events:none}
.gh2 .live-art.king-playing .king-inline,
.gh2 .live-art.king-playing iframe,
.gh2 .live-art.king-playing .king-close{pointer-events:auto}
.king-inline iframe,.king-inline .vembed{width:100%;aspect-ratio:16/9;border:0;display:block}
.king-close{position:absolute;top:10px;right:10px;z-index:5;background:rgba(0,0,0,.8);color:#fff;border:0;border-radius:8px;padding:8px 12px;cursor:pointer;font-family:var(--gh-disp);font-size:11px;letter-spacing:.14em}

/* ---------- L3 panels ---------- */
.gh-live3{display:grid;gap:26px;margin-top:26px}
.gh-panel h3{margin:0}
.sync{color:var(--gh-silver);font-size:10.5px;letter-spacing:.14em;margin-left:auto}
#gos-steam-rows{margin-top:8px}
#gos-steam-rows .srow-extra{display:none}
#gos-steam.expanded #gos-steam-rows .srow-extra{display:flex}
.srow{display:flex;align-items:center;gap:12px;padding:11px 48px 11px 0;box-shadow:inset 0 -1px 0 var(--gh-line);text-decoration:none;color:inherit}
.srow:last-child{box-shadow:none}
.srow .rank{font-family:var(--gh-disp);font-size:16px;color:var(--gh-red);min-width:44px;display:flex;align-items:center;gap:5px;flex:0 0 auto}
.srow .pc{flex:0 0 auto}
.srow .rmove{font-size:10px;font-style:normal}
.rmove.up{color:#7ee787}.rmove.down{color:#ff7b72}.rmove.same{color:var(--gh-silver)}
.srow img{width:74px;height:34px;object-fit:cover;border-radius:6px}
.srow .nm{flex:1;min-width:0}
.srow .nm b{display:block;font-weight:600;font-size:14.5px;line-height:1.2;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.srow .nm span{display:block;color:var(--gh-silver);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.srow .pc{font-size:14px;text-align:right;color:#fff}
.srow .pc small{display:block;color:var(--gh-silver);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase}
.steam-climber{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline;padding:10px 0;box-shadow:inset 0 -1px 0 var(--gh-line)}
.climb-badge{color:var(--gh-red);font-family:var(--gh-disp);font-size:10.5px;letter-spacing:.18em}
.steam-climber a{color:#fff;font-weight:600;text-decoration:none}
.climb-reason{color:var(--gh-silver);font-size:12px}
.gh-expand{margin-top:12px;background:var(--gh-s2);color:#fff;border:0;cursor:pointer;font-family:var(--gh-disp);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;padding:11px 16px;border-radius:10px;width:100%}
.gh-expand:hover{background:#262626}
.pulse-grid{display:grid;gap:12px;margin-top:12px}
.pulse-card{background:var(--gh-s2);border-radius:12px;padding:14px}
.pulse-kicker{display:block;color:var(--gh-red);font-family:var(--gh-disp);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase}
.pulse-title{display:block;color:#fff;font-size:16.5px;line-height:1.25;margin-top:6px;font-weight:600}
.pulse-meta{display:block;color:var(--gh-silver);font-size:12px;margin-top:5px;line-height:1.5}

/* ---------- media cards (slate + reviews) ---------- */
.ds-media-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 14px;margin-top:14px}
.ds-media-card{position:relative;display:block;text-decoration:none;color:inherit}
.ds-media-card img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:14px;box-shadow:0 14px 30px rgba(0,0,0,.55);background:var(--gh-s2)}
.ds-media-card__body{display:block;margin-top:10px}
.ds-media-card__title{display:block;font-size:15px;line-height:1.2;color:#fff;margin-top:5px}
.ds-media-card__meta{display:block;color:var(--gh-silver);font-size:11.5px;margin-top:4px;letter-spacing:.04em}
.ds-pill{display:inline-block;background:var(--gh-s2);color:var(--gh-dim);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;padding:4px 8px;border-radius:6px}
.ds-pill-soon{background:var(--gh-red);color:#fff}
.ds-score{position:absolute;top:10px;right:10px;z-index:2;background:rgba(0,0,0,.82);color:#fff;font-family:var(--gh-disp);padding:6px 9px;border-radius:8px;font-size:14px}
.gos-view-more{margin-top:16px;background:var(--gh-s2);color:#fff;border:0;cursor:pointer;font-family:var(--gh-disp);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;padding:12px 18px;border-radius:10px;width:100%}
.gos-view-more:hover{background:#262626}
.gos-unavailable{color:var(--gh-silver);font-size:14px;line-height:1.55;margin-top:12px}

/* ---------- L4 wire ---------- */
.ds-hero{position:relative;display:block;border-radius:16px;overflow:hidden;margin-top:16px;text-decoration:none;box-shadow:0 16px 36px rgba(0,0,0,.55);background:var(--gh-s1)}
.ds-hero img{width:100%;height:300px;object-fit:cover}
.ds-hero__scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.55) 58%,rgba(0,0,0,.95))}
.ds-hero__body{position:absolute;left:0;right:0;bottom:0;padding:18px}
.ds-kicker{color:var(--gh-red);font-family:var(--gh-disp);font-size:11px;letter-spacing:.2em;text-transform:uppercase}
.ds-hero__title{display:block;font-family:var(--gh-disp);font-size:26px;line-height:1.04;text-transform:uppercase;color:#fff;margin-top:8px;max-width:22em}
.ds-hero__dek{display:block;color:var(--gh-dim);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;margin-top:8px}
.ds-wire-grid{display:grid;gap:4px;margin-top:10px}
.ds-wire-card{display:flex;gap:14px;padding:12px 0;box-shadow:inset 0 -1px 0 var(--gh-line);text-decoration:none;align-items:center}
.ds-wire-card:last-child{box-shadow:none}
.ds-wire-card__thumb{position:relative;flex:0 0 108px}
.ds-wire-card__thumb img{width:108px;height:68px;object-fit:cover;border-radius:8px}
.ds-wire-card__kick{position:absolute;top:6px;left:6px;background:rgba(0,0,0,.78);color:#fff;font-size:8.5px;letter-spacing:.13em;padding:3px 5px;border-radius:4px;text-transform:uppercase}
.ds-wire-card__body{flex:1;min-width:0}
.ds-wire-card__title{display:block;color:#fff;font-size:15px;line-height:1.3}
.ds-wire-card__meta{display:block;color:var(--gh-silver);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;margin-top:5px}

/* ---------- L4 awards ---------- */
.awards-rail{display:grid;grid-template-columns:1fr 1fr;gap:16px 14px;margin-top:16px}
.awards-card{text-decoration:none;display:block}
.awards-card__art{position:relative;display:block;border-radius:14px;overflow:hidden;box-shadow:0 14px 30px rgba(0,0,0,.55)}
.awards-card__art img{width:100%;aspect-ratio:3/4;object-fit:cover}
.awards-card__noposter{width:100%;aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;font-family:var(--gh-disp);font-size:44px;color:var(--gh-dim);background:linear-gradient(160deg,#232323,#0C0C0C)}
.gh2 .awards-card__art .pv-award-chip{position:absolute;top:auto;right:auto;left:10px;bottom:10px;width:auto;height:auto;background:var(--gh-red);color:#fff;font-size:9.5px;letter-spacing:.13em;padding:5px 7px;border-radius:6px;text-transform:uppercase;display:inline-flex;gap:5px;align-items:center}
.awards-card__name{display:block;color:#fff;font-size:15.5px;margin-top:10px;line-height:1.2}
.awards-card__meta{display:block;color:var(--gh-silver);font-size:11.5px;margin-top:4px;letter-spacing:.05em;text-transform:uppercase}

/* ---------- L4 versus ---------- */
.vs-polls{display:grid;gap:26px;margin-top:18px}
.vs-arena{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:stretch}
.vs-side{position:relative;border-radius:14px;overflow:hidden;background:var(--gh-s1);cursor:pointer;min-height:150px;box-shadow:0 12px 26px rgba(0,0,0,.5)}
.vs-side img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vs-side .vs-nm{position:absolute;left:0;right:0;bottom:0;padding:26px 12px 11px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.92));color:#fff;font-size:14.5px;line-height:1.2;display:block}
.vs-side .vs-pc{position:absolute;top:9px;right:9px;background:rgba(0,0,0,.78);color:#fff;font-family:var(--gh-disp);font-size:13px;padding:4px 8px;border-radius:6px;display:block}
.vs-mid{align-self:center;font-family:var(--gh-disp);color:var(--gh-red);font-size:17px}
.vs-bar{display:flex;height:7px;border-radius:4px;overflow:hidden;background:var(--gh-s2);margin-top:12px}
.vs-bar i{display:block;height:100%}
.vs-bar i.a{background:var(--gh-red)}
.vs-bar i.b{background:var(--gh-silver)}
.vs-cap{display:flex;justify-content:space-between;gap:12px;color:var(--gh-silver);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;margin-top:9px}
.vs-cap .lead{color:#fff}
.vs-links{display:flex;gap:16px;margin-top:7px}
.vs-links a{color:var(--gh-silver);font-size:12.5px}
.vs-links a:hover{color:#fff}
.vs-finals{margin-top:20px;background:var(--gh-s2);border-radius:12px;padding:15px}
.vs-finals-t{font-family:var(--gh-disp);font-size:11px;letter-spacing:.2em;color:var(--gh-red);text-transform:uppercase}
.vs-final{display:flex;justify-content:space-between;gap:10px;padding:9px 0 0;color:var(--gh-dim);font-size:13.5px}
.vs-final-v{color:#fff}

/* ---------- L4 reviews ---------- */
a.rev-card{background:var(--gh-s1);border-radius:14px;padding:12px;box-shadow:0 12px 26px rgba(0,0,0,.5)}
a.rev-card img{border-radius:9px;box-shadow:none}
.rev-score-badge{position:absolute;top:20px;right:20px;background:rgba(0,0,0,.85);color:#fff;border-radius:9px;padding:7px 10px;text-align:center}
.rev-score-badge.rev-score-high{background:var(--gh-red)}
.rev-score-num{display:block;font-family:var(--gh-disp);font-size:19px;line-height:1}
.rev-score-label{display:block;font-size:8.5px;letter-spacing:.13em;text-transform:uppercase;margin-top:3px}
.rev-quote{color:#E7E7E7;font-size:13.5px;line-height:1.55;margin:10px 0 0;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.rev-quote cite{display:block;color:var(--gh-silver);font-size:11.5px;font-style:normal;margin-top:6px;letter-spacing:.06em;text-transform:uppercase}
.rev-verdict{display:block;color:var(--gh-silver);font-size:11.5px;margin-top:7px;line-height:1.5;letter-spacing:.05em}

/* ---------- L4 daily poll ---------- */
.poll-q{font-family:var(--gh-disp);font-size:21px;line-height:1.15;text-transform:uppercase;margin-top:16px;color:#fff}
.poll-date{color:var(--gh-silver);font-size:11px;letter-spacing:.15em;text-transform:uppercase;margin-top:8px}
.poll-opts{display:grid;gap:10px;margin-top:16px}
.poll-opt{position:relative;display:flex;justify-content:space-between;align-items:center;gap:14px;background:var(--gh-s2);color:#fff;border:0;cursor:pointer;border-radius:12px;padding:15px 16px;text-align:left;font:inherit;font-size:15px;overflow:hidden;width:100%}
.poll-opt:hover{background:#262626}
.poll-opt .fill{position:absolute;inset:0;background:rgba(225,6,0,.30);display:block}
.poll-opt b{position:relative;font-weight:600}
.poll-opt>span:last-child{position:relative;color:var(--gh-silver);font-size:11px;letter-spacing:.13em;text-transform:uppercase;white-space:nowrap}
.poll-foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--gh-silver);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;margin-top:13px}

/* ---------- house slots (in place, off) ---------- */
.gh-ad{display:flex;gap:16px;align-items:center;margin:18px 14px 0;border-radius:16px;background:linear-gradient(180deg,#141414,#0A0A0A);box-shadow:0 14px 32px rgba(0,0,0,.5);padding:16px;text-decoration:none;color:inherit}
.gh-ad .tag{color:var(--gh-silver);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;align-self:flex-start}
.gh-ad .art img{width:96px;height:64px;object-fit:cover;border-radius:9px}
.gh-ad .tx{flex:1;min-width:0}
.gh-ad .tx b{display:block;font-size:15.5px;color:#fff}
.gh-ad .tx span{color:var(--gh-silver);font-size:12.5px}
.gh-ad .cta{font-family:var(--gh-disp);font-size:11.5px;letter-spacing:.15em;text-transform:uppercase;color:#fff;background:var(--gh-s2);padding:10px 14px;border-radius:9px}

/* ---------- L5 collections ---------- */
.gh-tiles{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}
.gh-tile{position:relative;border-radius:14px;overflow:hidden;min-height:132px;box-shadow:0 14px 30px rgba(0,0,0,.55);text-decoration:none;display:block;background:var(--gh-s1)}
.gh-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 22%}
.gh-tile__cap{position:absolute;inset:0;display:flex;align-items:flex-end;padding:12px;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.85));color:#fff;font-family:var(--gh-disp);font-size:16.5px;text-transform:uppercase;letter-spacing:.03em;line-height:1.1}
.gh-tile:hover img{transform:scale(1.03)}
.gh-tile img{transition:transform .35s ease}
.gh-coll-all{margin:18px 0 0}
.gh-coll-all a{color:#fff;font-family:var(--gh-disp);font-size:12.5px;letter-spacing:.17em;text-transform:uppercase;text-decoration:none}
.gh-coll-all a:hover{color:var(--gh-red)}

/* ---------- desktop composition ---------- */
@media (min-width:760px){
  .gh-grid{grid-template-columns:repeat(3,1fr)}
  .roster{grid-template-columns:repeat(3,1fr)}
  .ds-media-grid{grid-template-columns:repeat(3,1fr)}
  .awards-rail{grid-template-columns:repeat(3,1fr)}
  .gh-tiles{grid-template-columns:repeat(3,1fr)}
  .ds-wire-grid{grid-template-columns:1fr 1fr;column-gap:34px}
  .vs-polls{grid-template-columns:1fr}
}
@media (min-width:1100px){
  .gh-mod{margin:22px 18px 0;padding:26px 28px 28px}
  .gh-ad{margin:22px 18px 0}
  .gh-stage__art{height:560px}
  .gh-stage__body{padding:30px 40px 30px}
  .gh-stage__title{font-size:72px}
  .gh-stage__tag{font-size:16.5px}
  .gh-grid{grid-template-columns:repeat(4,1fr);gap:22px 18px}
  .roster{grid-template-columns:repeat(4,1fr)}
  .ds-media-grid{grid-template-columns:repeat(4,1fr)}
  .gh-live3{grid-template-columns:1.15fr 1fr 1fr;gap:34px;align-items:start}
  .awards-rail{grid-template-columns:repeat(4,1fr)}
  .gh-tiles{grid-template-columns:repeat(4,1fr)}
  .gh-tile{min-height:158px}
  .vs-polls{grid-template-columns:repeat(3,1fr);gap:22px}
  .vs-arena{grid-template-columns:1fr auto 1fr}
  .ds-hero img{height:380px}
  .ds-hero__title{font-size:34px}
  .poll-opts{grid-template-columns:1fr 1fr}
}

/* ---------- reduced motion ---------- */
@media (prefers-reduced-motion: reduce){
  .gh2 *, .gh2 *::before, .gh2 *::after{animation-duration:.01ms !important;transition-duration:.01ms !important}
  .live-badge i{animation:none}
}
