/* Previously — game detail V3 "Immersive Hub" (James's verdict 2026-10-18;
   rollout 2026-10-19). Scoped under .gd3; composition + values follow the
   approved staged proof (game-detail-template-2026-10-18/staged/build.py). */
body.gd3-page{background:#05080d}
.gd3{
  --gd3-bg:#05080d; --gd3-panel:#0a111d; --gd3-line:rgba(255,255,255,.09);
  --gd3-ink:#eef1f6; --gd3-mut:#98a3b5; --gd3-mut2:#6d7889;
  --gd3-gold:#eda33c; --gd3-gold2:#f5b95c; --gd3-radius:12px;
  background:var(--gd3-bg); color:var(--gd3-ink);
  font-family:Inter,system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  -webkit-font-smoothing:antialiased;
}
.gd3 *, .gd3 *::before, .gd3 *::after{margin:0;padding:0;box-sizing:border-box}
.gd3 a{color:inherit;text-decoration:none}
.gd3 img{display:block}
.gd3 button{font:inherit;color:inherit}
.gd3-wrap{max-width:1360px;margin:0 auto;padding:0 40px}
.gd3-disp{font-family:'Barlow Condensed','Previously Display',Inter,sans-serif}
/* ---------- hero ---------- */
.gd3-hero{position:relative;min-height:600px;display:flex;align-items:flex-end;overflow:hidden;background:#000}
.gd3-hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%}
.gd3-hero-art--cover{object-fit:contain;object-position:right center;opacity:.85}
.gd3-hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,6,10,.42) 0%,rgba(4,6,10,.05) 34%,rgba(4,6,10,.55) 68%,var(--gd3-bg) 100%),linear-gradient(90deg,rgba(4,6,10,.72) 0%,rgba(4,6,10,.18) 55%,rgba(4,6,10,0) 80%)}
.gd3-hero-in{position:relative;width:100%;padding:120px 0 34px}
.gd3-crumb{font-size:12.5px;letter-spacing:.06em;color:#c9d2e0;margin-bottom:14px}
.gd3-crumb b{color:#fff;font-weight:600}
.gd3-crumb a:hover{text-decoration:underline}
.gd3-hero h1{font-family:'Barlow Condensed','Previously Display',Inter,sans-serif;font-weight:700;text-transform:uppercase;font-size:76px;line-height:.98;letter-spacing:.015em;max-width:820px;text-shadow:0 4px 34px rgba(0,0,0,.55)}
.gd3-hero-meta{margin-top:14px;font-size:14.5px;color:#d7dee9;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.gd3-hero-meta .dot{width:4px;height:4px;border-radius:50%;background:var(--gd3-gold);flex:0 0 auto}
.gd3-hero-acts{display:flex;gap:12px;margin-top:26px;align-items:center;flex-wrap:wrap}
.gd3-btn{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:15px;border-radius:9px;padding:13px 22px;border:1px solid transparent;cursor:pointer}
.gd3-btn-pri{background:var(--gd3-gold);color:#14100a}
.gd3-btn-pri svg{fill:#14100a}
.gd3-btn-ghost{background:rgba(10,16,26,.55);color:#fff;border-color:rgba(255,255,255,.28);backdrop-filter:blur(4px)}
/* ---------- tabs ---------- */
.gd3-tabs{border-bottom:1px solid var(--gd3-line);background:var(--gd3-bg)}
.gd3-tabs-in{display:flex;gap:30px;overflow-x:auto}
.gd3-tabs a{font-size:14.5px;font-weight:600;color:var(--gd3-mut);padding:15px 1px 13px;border-bottom:2px solid transparent;white-space:nowrap}
.gd3-tabs a.on{color:#fff;border-bottom-color:var(--gd3-gold)}
/* ---------- tile row ---------- */
.gd3-tiles{display:grid;gap:14px;margin:30px 0 6px}
.gd3-tile{position:relative;border-radius:var(--gd3-radius);overflow:hidden;aspect-ratio:16/8.2;background:#0a111d;box-shadow:0 14px 34px rgba(0,0,0,.45)}
.gd3-tile img{width:100%;height:100%;object-fit:cover}
.gd3-tile .t-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,7,12,0) 42%,rgba(4,7,12,.88) 100%)}
.gd3-tile .t-name{position:absolute;left:16px;bottom:13px;font-family:'Barlow Condensed','Previously Display',Inter,sans-serif;font-size:23px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.gd3-tile .t-arrow{position:absolute;right:13px;bottom:12px;width:27px;height:27px;border-radius:50%;border:1.5px solid rgba(255,255,255,.75);display:flex;align-items:center;justify-content:center;font-size:13px;color:#fff}
/* ---------- main columns ---------- */
.gd3-cols{display:grid;grid-template-columns:minmax(0,1fr) 322px;gap:44px;margin-top:30px}
.gd3-sec-h{font-size:13px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#fff;margin:0 0 14px}
.gd3-sec-h span{color:var(--gd3-gold)}
.gd3-trailer{position:relative;border-radius:var(--gd3-radius);overflow:hidden;aspect-ratio:16/9;background:#000;box-shadow:0 18px 44px rgba(0,0,0,.5)}
.gd3-trailer img{width:100%;height:100%;object-fit:cover;opacity:.94}
.gd3-trailer iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.gd3-facade{cursor:pointer}
.gd3-trailer .play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}
.gd3-trailer .play i{width:74px;height:74px;border-radius:50%;background:rgba(6,9,14,.55);border:1.5px solid rgba(255,255,255,.85);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(3px)}
.gd3-trailer .v-cap{position:absolute;left:0;right:0;bottom:0;padding:34px 18px 13px;background:linear-gradient(180deg,transparent,rgba(3,5,8,.88));display:flex;justify-content:space-between;align-items:flex-end;pointer-events:none}
.gd3-trailer .v-cap .vt{font-size:15px;font-weight:600}
.gd3-trailer .v-cap .vs{font-size:11px;letter-spacing:.18em;color:var(--gd3-gold2);text-transform:uppercase;font-weight:700}
.gd3-vid-strip{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.gd3-vid-mini{position:relative;border-radius:10px;overflow:hidden;aspect-ratio:16/9;background:#000}
.gd3-vid-mini img{width:100%;height:100%;object-fit:cover}
.gd3-vid-mini iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.gd3-vid-mini .play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}
.gd3-vid-mini .play i{width:44px;height:44px;border-radius:50%;background:rgba(6,9,14,.55);border:1.5px solid rgba(255,255,255,.85);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(3px)}
.gd3-vid-mini .v-cap{position:absolute;left:0;right:0;bottom:0;padding:22px 12px 9px;background:linear-gradient(180deg,transparent,rgba(3,5,8,.88));pointer-events:none}
.gd3-vid-mini .v-cap .vt{font-size:12.5px}
.gd3-about{margin-top:36px}
.gd3-about p{font-size:16.5px;line-height:1.62;color:#cfd7e2;margin-bottom:15px;max-width:66ch}
.gd3-about p b{color:#fff}
.gd3-note{font-size:13.5px;color:var(--gd3-mut);line-height:1.55}
.gd3-take{border-left:3px solid var(--gd3-gold);padding-left:14px}
.gd3-take-lab{color:var(--gd3-mut);font-weight:600}
/* facts rail */
.gd3-rail{border-top:1px solid var(--gd3-line)}
.gd3-rail .r-date{padding:4px 0 16px;border-bottom:1px solid var(--gd3-line)}
.gd3-rail .r-date .lab,.gd3-frow .lab{font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gd3-mut)}
.gd3-rail .r-date .big{font-family:'Barlow Condensed','Previously Display',Inter,sans-serif;font-size:37px;font-weight:700;letter-spacing:.03em;margin-top:5px;text-transform:uppercase;line-height:1.05}
.gd3-frow{padding:13px 0;border-bottom:1px solid var(--gd3-line)}
.gd3-frow .val{font-size:15.5px;font-weight:600;margin-top:4px;line-height:1.45}
.gd3-frow .val .sub{color:var(--gd3-mut);font-weight:500;font-size:13.5px}
.gd3-frow .val .score{color:var(--gd3-gold2)}
/* gallery + rails + coverage */
.gd3-gallery{display:grid;gap:14px;margin-top:8px}
.gd3-gallery figure{border-radius:10px;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.42)}
.gd3-gallery img{width:100%;height:100%;object-fit:cover;aspect-ratio:16/9}
.gd3-lower{margin-top:44px}
.gd3-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.gd3-gcard .cov{border-radius:10px;overflow:hidden;aspect-ratio:3/4;background:#0a111d;box-shadow:0 12px 28px rgba(0,0,0,.45)}
.gd3-gcard .cov img{width:100%;height:100%;object-fit:cover}
.gd3-gcard .gt{font-size:14px;font-weight:600;margin-top:9px;line-height:1.3}
.gd3-gcard .gm{font-size:12.5px;color:var(--gd3-mut);margin-top:2px}
.gd3-gcard .gm .rt{color:var(--gd3-gold2)}
.gd3-ccards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.gd3-ccard .cov{border-radius:10px;overflow:hidden;aspect-ratio:16/9;background:#0a111d;box-shadow:0 12px 28px rgba(0,0,0,.45)}
.gd3-ccard .cov img{width:100%;height:100%;object-fit:cover}
.gd3-ccard .gt{font-size:14.5px;font-weight:600;margin-top:9px;line-height:1.35}
.gd3-ccard .gm{font-size:12.5px;color:var(--gd3-mut);margin-top:2px}
.gd3-credit{margin-top:44px;color:var(--gd3-mut2);font-size:12.5px}
.gd3-ad{margin:34px 0 6px}
/* at a glance (mobile only) */
.gd3-glance{display:none}
/* ---------- mobile composition ---------- */
@media (max-width:820px){
  .gd3-wrap{padding:0 18px}
  .gd3-hero{min-height:480px}
  .gd3-hero-in{padding:96px 0 26px}
  .gd3-hero h1{font-size:47px}
  .gd3-tiles{grid-template-columns:1fr 1fr !important;margin-top:22px}
  .gd3-tile{aspect-ratio:4/3.4}
  .gd3-tile .t-name{font-size:15.5px;left:11px;bottom:10px;max-width:calc(100% - 48px);line-height:1.05}
  .gd3-cols{grid-template-columns:1fr;gap:0;margin-top:24px}
  .gd3-rail{display:none}
  .gd3-glance{display:block;margin-top:26px}
  .gd3-glance-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
  .gd3-glance-h .t{font-family:'Barlow Condensed','Previously Display',Inter,sans-serif;font-size:24px;font-weight:700;letter-spacing:.12em}
  .gd3-glance-h .acts{display:flex;gap:9px}
  .gd3-glance-h .acts .gact{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.3);border-radius:8px;padding:8px 12px;font-size:12px;font-weight:700;letter-spacing:.12em;color:#fff!important;background:rgba(10,16,26,.55)!important;cursor:pointer}
  .gd3-glance-h .acts .gact.sq{padding:8px 9px}
  .gd3-grow{display:flex;gap:13px;padding:15px 0;border-bottom:1px solid var(--gd3-line);position:relative;overflow:hidden}
  .gd3-grow .chip{flex:0 0 46px;width:46px;height:46px;border:1px solid rgba(255,255,255,.16);border-radius:11px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.02);position:relative;z-index:2}
  .gd3-grow .chip svg{stroke:var(--gd3-gold);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
  .gd3-grow .g-lab{font-size:10.5px;font-weight:700;letter-spacing:.19em;color:var(--gd3-mut);text-transform:uppercase}
  .gd3-grow .g-val{font-size:16.5px;font-weight:600;margin-top:3px;line-height:1.35;position:relative;z-index:2}
  .gd3-grow .g-sub{font-size:13px;color:var(--gd3-mut);margin-top:2px;position:relative;z-index:2}
  .gd3-grow .bleed{position:absolute;top:0;right:0;bottom:0;width:44%;object-fit:cover;opacity:.8;-webkit-mask-image:linear-gradient(90deg,transparent,#000 62%);mask-image:linear-gradient(90deg,transparent,#000 62%)}
  .gd3-grow::before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(5,8,13,.97) 52%,rgba(5,8,13,.25) 74%,rgba(5,8,13,0) 92%)}
  .gd3-grow .g-tx{position:relative;z-index:2;text-shadow:0 1px 8px rgba(0,0,0,.6)}
  .gd3-vid-strip{grid-template-columns:1fr 1fr}
  .gd3-gallery{grid-template-columns:1fr 1fr !important}
  .gd3-cards{grid-template-columns:repeat(3,1fr)}
  .gd3-ccards{grid-template-columns:1fr}
  .gd3-about p{font-size:15.5px}
}
