.game-detail-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; gap:clamp(28px,5vw,72px); }
.game-detail-copy { min-width:0; }
.game-detail-copy h1 { margin:22px 0; font:500 clamp(40px,5.5vw,80px)/1.04 var(--font-display); letter-spacing:-.045em; overflow-wrap:anywhere; }
.game-detail-copy > p:not(.eyebrow) { color:var(--text-secondary); font-size:clamp(16px,1.4vw,19px); line-height:1.75; max-width:42ch; }
.game-breadcrumbs { display:flex; flex-wrap:wrap; align-items:center; gap:8px 14px; margin-bottom:32px; color:var(--text-secondary); font-size:12px; line-height:1.6; }
.game-breadcrumbs a { text-underline-offset:5px; }
.game-breadcrumbs a:hover { color:var(--text-primary); }
.game-detail-cover { margin:0; aspect-ratio:4/3; overflow:hidden; border-radius:24px; background:color-mix(in srgb,var(--game-accent) 12%,var(--bg-secondary)); border:1px solid var(--ed-line); }
.game-detail-cover img { display:block; width:100%; height:100%; object-fit:contain; }
.game-detail-facts { display:flex; flex-wrap:wrap; gap:8px; padding:0; margin:24px 0 30px; list-style:none; }
.game-detail-facts li { max-width:100%; padding:8px 12px; border:1px solid var(--ed-line); border-radius:30px; color:var(--text-secondary); font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.game-detail-actions { display:flex; flex-wrap:wrap; gap:14px 22px; align-items:center; }
.game-detail-actions :is(a,button) { max-width:100%; text-align:center; white-space:normal; }
.game-overview { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(28px,6vw,88px); align-items:start; }
.game-overview-copy p { margin:0 0 20px; color:var(--text-secondary); font-size:17px; line-height:1.85; }
.game-release-note { margin-top:32px; padding:24px; border:1px solid var(--ed-line); border-radius:18px; background:var(--ed-card); }
.game-release-note strong { display:block; margin:8px 0 12px; font-size:18px; color:var(--text-primary); }
.game-release-note p { margin:0; font-size:14px; }
.game-release-note small { color:var(--ed-ember); }
.gameplay-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:32px; }
.gameplay-frame { min-width:0; margin:0; }
.gameplay-frame button { position:relative; display:block; width:100%; aspect-ratio:var(--frame-ratio,16/9); padding:0; border:1px solid var(--ed-line); border-radius:18px; overflow:hidden; background:var(--bg-secondary); cursor:zoom-in; }
.gameplay-frame button:focus-visible { outline:2px solid var(--accent-primary); outline-offset:5px; }
.gameplay-frame img { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:contain; }
.gameplay-frame figcaption { display:flex; gap:12px; margin-top:16px; color:var(--text-secondary); font-size:14px; line-height:1.65; }
.gameplay-frame figcaption span { color:var(--ed-ember); font-family:var(--font-mono); }
.game-related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:32px; }
.game-related-card { display:block; min-width:0; overflow:hidden; border:1px solid var(--ed-line); border-radius:18px; background:var(--ed-card); }
.game-related-card img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; }
.game-related-card > span { display:block; padding:20px; }
.game-related-card strong { display:block; color:var(--text-primary); font-size:18px; line-height:1.4; }
.game-related-card small { display:block; margin-top:10px; color:var(--text-secondary); line-height:1.6; }
.game-related-card:hover { border-color:var(--ed-ember); }
.game-detail-contact { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:24px; }
.game-detail-contact h2 { max-width:18ch; }
@media(max-width:899px) { .game-detail-hero,.game-overview { grid-template-columns:minmax(0,1fr); } .game-detail-cover { max-width:680px; width:100%; } .gameplay-grid { grid-template-columns:minmax(0,1fr); gap:32px; } }
@media(max-width:599px) { .game-related-grid { grid-template-columns:minmax(0,1fr); } .game-detail-copy h1 { font-size:clamp(36px,10vw,56px); } .game-detail-contact .button-primary { width:100%; white-space:normal; text-align:center; } }
