@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=Inter:wght@400;500;600&display=swap');

:root {
  --ink: #070b0e;
  --panel: #0c1318;
  --line: rgba(142, 195, 202, 0.17);
  --cyan: #75cbd1;
  --ember: #ef973f;
  --cream: #eee8dc;
  --muted: #8a989f;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--ink); }
body { margin: 0; color: var(--cream); background: var(--ink); font: 400 1rem/1.65 Inter, system-ui, sans-serif; overflow-x: hidden; }
a { color: inherit; }
.skip-link { position: fixed; left: 1rem; top: -5rem; z-index: 50; padding: .75rem 1rem; background: var(--cream); color: var(--ink); }
.skip-link:focus { top: 1rem; }
.signal-grid { position: fixed; inset: 0; pointer-events: none; z-index: 20; opacity: .13; background: linear-gradient(90deg, transparent 49.9%, rgba(117,203,209,.22) 50%, transparent 50.1%); background-size: 80px 100%; }

.site-header { position: absolute; inset: 0 0 auto; z-index: 30; height: 92px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 0 clamp(1.25rem, 4vw, 5rem); border-bottom: 1px solid rgba(255,255,255,.1); }
.brand { display: inline-flex; width: max-content; align-items: center; gap: .85rem; text-decoration: none; }
.brand > span:last-child { display: none; }
.brand strong { font: 700 1rem/1 Barlow Condensed, sans-serif; letter-spacing: .14em; }
.brand small { margin-top: .32rem; color: var(--muted); font-size: .58rem; letter-spacing: .18em; }
.brand-logo { display: block; width: 150px; height: auto; flex: 0 0 auto; object-fit: contain; filter: drop-shadow(0 0 18px rgba(0,214,232,.13)); }
.header-wordmark { width: max-content; color: var(--cream); font: 700 clamp(.82rem, 1.35vw, 1rem)/1 Barlow Condensed, sans-serif; letter-spacing: .16em; text-decoration: none; text-shadow: 0 0 24px rgba(239,151,63,.18); transition: color .2s ease, text-shadow .2s ease; }
.header-wordmark:hover, .header-wordmark:focus-visible { color: var(--orange); text-shadow: 0 0 26px rgba(239,151,63,.32); }
.brand-disc { position: relative; display: inline-grid; width: 38px; aspect-ratio: 1; place-items: center; border: 1px solid rgba(239,151,63,.7); border-radius: 50%; box-shadow: inset 0 0 0 7px rgba(239,151,63,.06); }
.brand-disc:before, .brand-disc:after, .brand-disc i { content: ''; position: absolute; width: 1px; height: 50%; bottom: 50%; left: 50%; transform-origin: bottom; background: rgba(239,151,63,.75); }
.brand-disc:after { transform: rotate(120deg); }
.brand-disc i { transform: rotate(240deg); }
nav { display: flex; gap: clamp(1.5rem, 4vw, 3.5rem); }
nav a, .contact-link { color: #bcc5c8; font: 600 .72rem Barlow Condensed, sans-serif; letter-spacing: .16em; text-decoration: none; text-transform: uppercase; }
nav a:hover, nav a:focus-visible, .contact-link:hover { color: var(--cream); }
nav a.active { color: var(--cream); }
nav a.active:after { content: ''; display: block; height: 1px; margin-top: .35rem; background: var(--ember); }
.contact-link { justify-self: end; padding-bottom: .25rem; border-bottom: 1px solid var(--ember); }

.hero { position: relative; min-height: 780px; height: 100svh; display: flex; align-items: center; overflow: hidden; }
.hero-art { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 58% center; }
.hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(4,7,9,.98) 0%, rgba(4,7,9,.86) 32%, rgba(4,7,9,.32) 62%, rgba(4,7,9,.12) 100%), linear-gradient(0deg, var(--ink), transparent 25%); }
.hero-content { position: relative; z-index: 2; width: min(740px, 88vw); margin-left: clamp(1.25rem, 8vw, 9rem); padding-top: 5rem; }
.eyebrow { color: var(--cyan); font: 600 .72rem/1.2 Barlow Condensed, sans-serif; letter-spacing: .2em; text-transform: uppercase; }
.eyebrow span { display: inline-block; width: 2rem; height: 1px; margin: 0 .6rem .25rem 0; background: var(--cyan); }
h1, h2, h3 { margin: 0; font-family: Barlow Condensed, sans-serif; text-transform: uppercase; }
h1 { margin-top: 1.6rem; font-size: clamp(4rem, 10vw, 8.8rem); line-height: .82; letter-spacing: -.035em; }
h1 em { color: var(--ember); font-style: normal; }
.hero-copy { width: min(570px, 100%); margin: 2.1rem 0 0; color: #b6c0c3; font-size: clamp(1.05rem, 1.7vw, 1.3rem); }
.hero-actions { display: flex; align-items: center; gap: 2rem; margin-top: 2.3rem; }
.primary-action { padding: 1rem 1.35rem; border: 1px solid var(--ember); background: rgba(239,151,63,.1); color: #ffd2a4; font: 600 .78rem Barlow Condensed, sans-serif; letter-spacing: .16em; text-decoration: none; text-transform: uppercase; box-shadow: inset 3px 0 var(--ember); }
.primary-action:hover { color: var(--ink); background: var(--ember); }
.text-action { color: #a8b4b8; font: 600 .76rem Barlow Condensed, sans-serif; letter-spacing: .14em; text-decoration: none; text-transform: uppercase; }
.text-action span { color: var(--cyan); margin-left: .5rem; }
.hero-status { position: absolute; z-index: 3; right: clamp(1.25rem, 4vw, 5rem); bottom: 2rem; display: flex; align-items: center; gap: 1.5rem; padding: .8rem 1rem; border: 1px solid var(--line); background: rgba(5,10,13,.72); backdrop-filter: blur(10px); }
.hero-status > div { display: grid; min-width: 110px; }
.hero-status small, .world-meta span { color: #728087; font: 600 .58rem Barlow Condensed, sans-serif; letter-spacing: .17em; }
.hero-status strong, .world-meta b { margin-top: .15rem; color: #c7d1d3; font: 600 .7rem Barlow Condensed, sans-serif; letter-spacing: .12em; }
.pulse { width: 8px; height: 8px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 14px var(--cyan); animation: pulse 2s infinite; }
@keyframes pulse { 50% { opacity: .35; } }

.section { max-width: 1440px; margin: 0 auto; padding: clamp(5rem, 10vw, 9rem) clamp(1.25rem, 6vw, 6rem); }
.section-label { margin-bottom: 3rem; padding-bottom: .75rem; border-bottom: 1px solid var(--line); color: #64747c; font: 600 .65rem Barlow Condensed, sans-serif; letter-spacing: .18em; }
h2 { font-size: clamp(2.8rem, 6vw, 5.5rem); line-height: .92; letter-spacing: -.025em; }
.mission-copy { display: grid; grid-template-columns: .65fr 1.35fr; gap: 2rem 4rem; }
.mission-statement { width: 100%; max-width: 610px; min-width: 0; justify-self: end; color: #a4afb2; font-size: 1.08rem; overflow-wrap: anywhere; }
.mission-statement p { margin: 0 0 1.4rem; }
.mission-statement p:last-child { margin-bottom: 0; }
.principles { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 5rem; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.principles article { padding: 2.2rem; border-right: 1px solid var(--line); }
.principles article:last-child { border: 0; }
.principles span { color: var(--ember); }
.principles h3 { margin: 1.5rem 0 .75rem; font-size: 1.5rem; letter-spacing: .03em; }
.principles p { margin: 0; color: var(--muted); font-size: .92rem; }

.community-section { max-width: none; background: linear-gradient(135deg, #0a1116, #06090c); }
.community-section > * { max-width: 1310px; margin-left: auto; margin-right: auto; }
.community-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: clamp(2rem, 7vw, 7rem); align-items: end; }
.community-copy { max-width: 580px; justify-self: end; }
.community-copy > p { margin: 0; color: #a4afb2; font-size: 1.08rem; }
.community-actions { display: flex; align-items: center; gap: 2rem; margin-top: 2.2rem; }

.world { max-width: none; background: linear-gradient(135deg, #0a1116, #06090c); }
.world > * { max-width: 1310px; margin-left: auto; margin-right: auto; }
.world-card { display: grid; grid-template-columns: 1.1fr .9fr; min-height: 580px; border: 1px solid var(--line); background: radial-gradient(circle at 75% 50%, rgba(50,131,139,.15), transparent 30%), rgba(8,14,18,.8); }
.world-copy { padding: clamp(2rem, 6vw, 5.5rem); }
.world-copy > p:not(.eyebrow) { max-width: 620px; margin: 1.7rem 0; color: #9da9ad; font-size: 1.05rem; }
.world-copy ul { display: grid; gap: .75rem; margin: 2rem 0 0; padding: 0; list-style: none; color: #c0c9cb; }
.world-copy li:before { content: '//'; margin-right: .8rem; color: var(--ember); font-family: monospace; }
.world-meta { display: flex; gap: 2rem; margin-top: 2.5rem; }
.world-meta span { display: grid; gap: .3rem; }
.relic-interface { position: relative; display: grid; min-height: 420px; place-items: center; overflow: hidden; border-left: 1px solid var(--line); }
.relic-core { position: relative; z-index: 2; display: grid; width: 150px; aspect-ratio: 1; place-items: center; border: 1px solid var(--ember); border-radius: 50%; color: var(--ember); box-shadow: 0 0 60px rgba(239,151,63,.13), inset 0 0 50px rgba(239,151,63,.08); font: 700 2rem/1 Barlow Condensed; letter-spacing: .15em; }
.relic-core span { font-size: 1.12rem; letter-spacing: .16em; }
.relic-core small { margin-top: -3.1rem; color: var(--cyan); font-size: .6rem; letter-spacing: .34em; }
.orbit { position: absolute; width: 320px; aspect-ratio: 1; border: 1px dashed rgba(117,203,209,.3); border-radius: 50%; animation: spin 24s linear infinite; }
.orbit:before, .orbit:after { content: ''; position: absolute; width: 9px; height: 9px; border: 1px solid var(--cyan); background: var(--panel); transform: rotate(45deg); }
.orbit:before { top: 18%; left: 8%; }.orbit:after { right: 10%; bottom: 16%; }
.orbit-two { width: 480px; animation-direction: reverse; animation-duration: 38s; }
@keyframes spin { to { transform: rotate(360deg); } }
.relic-interface p { position: absolute; bottom: 2rem; color: #5e737b; font: 600 .62rem/1.8 monospace; letter-spacing: .12em; text-align: center; }

.studio-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; align-items: end; }
.studio-note { max-width: 570px; justify-self: end; }
.studio-note p { color: #a4afb2; font-size: 1.08rem; }
.studio-note a { display: inline-block; margin-top: 1.5rem; padding-bottom: .4rem; border-bottom: 1px solid var(--cyan); color: var(--cream); text-decoration: none; }
.studio-note span { color: var(--cyan); }
.games-section { max-width: none; background: linear-gradient(135deg, #0a1116, #06090c); }
.games-section > *, .gameplay-section > *, .contact-section > * { max-width: 1310px; margin-left: auto; margin-right: auto; }
.games-heading, .story-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 4rem; align-items: end; }
.games-heading > p, .story-grid > p { margin: 0; color: #9da9ad; font-size: 1.08rem; }
.games-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 1rem; margin-top: 4rem; }
.game-card { position: relative; min-height: 390px; padding: clamp(2rem, 4vw, 4rem); border: 1px solid var(--line); color: var(--cream); text-decoration: none; overflow: hidden; }
.game-card h3 { margin-top: 4rem; font-size: clamp(2.6rem, 5vw, 4.8rem); line-height: .9; }
.game-card p { max-width: 520px; color: #99a6aa; }
.game-card b { position: absolute; left: clamp(2rem, 4vw, 4rem); bottom: 2.2rem; color: var(--cyan); font: 600 .72rem Barlow Condensed, sans-serif; letter-spacing: .16em; }
.game-card-live { background: radial-gradient(circle at 80% 15%, rgba(239,151,63,.2), transparent 30%), #0b1419; }
.game-card-live:hover { border-color: var(--ember); }
.game-card-live:after { content: ''; position: absolute; width: 280px; aspect-ratio: 1; right: -100px; top: -100px; border: 1px dashed rgba(239,151,63,.35); border-radius: 50%; }
.game-card-future { background: repeating-linear-gradient(135deg, rgba(117,203,209,.025) 0 2px, transparent 2px 18px); }
.game-card-future h3 { color: #6d7a80; }.game-card-future b { color: #56676e; }
.game-index { color: var(--ember); font: 600 .66rem Barlow Condensed, sans-serif; letter-spacing: .18em; }
.page-header { position: relative; background: rgba(7,11,14,.96); }
.catalog-hero { padding: clamp(5rem, 10vw, 9rem) clamp(1.25rem, 8vw, 9rem); background: radial-gradient(circle at 80% 30%, rgba(54,147,155,.14), transparent 30%), linear-gradient(135deg, #091117, #05080a); }
.catalog-hero h1 { margin-top: 1rem; }
.catalog-hero > p:last-child { max-width: 660px; color: #a7b2b5; font-size: clamp(1.05rem, 1.7vw, 1.25rem); }
.catalog-game { padding: clamp(5rem, 10vw, 9rem) clamp(1.25rem, 6vw, 6rem); }
.catalog-number { max-width: 1310px; margin: 0 auto 1rem; padding-bottom: .75rem; border-bottom: 1px solid var(--line); color: var(--ember); font: 600 .65rem Barlow Condensed, sans-serif; letter-spacing: .18em; }
.catalog-game-grid { display: grid; grid-template-columns: 1fr 1fr; max-width: 1310px; min-height: 560px; margin: 0 auto; border: 1px solid var(--line); background: radial-gradient(circle at 76% 44%, rgba(239,151,63,.13), transparent 30%), #091015; }
.catalog-game-grid > div:first-child { align-self: center; padding: clamp(2rem, 6vw, 5rem); }
.catalog-game h2 em { color: var(--ember); font-style: normal; }
.catalog-game-grid > div:first-child > p:not(.eyebrow) { max-width: 570px; margin: 1.6rem 0 2.4rem; color: #9da9ad; font-size: 1.05rem; }
.world-divider { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 1.2rem; max-width: 1310px; margin: 0 auto; padding: 0 clamp(1.25rem, 3vw, 3rem); color: #617078; font: 600 .64rem Barlow Condensed, sans-serif; letter-spacing: .18em; text-align: center; }
.world-divider span { height: 1px; background: linear-gradient(90deg, transparent, rgba(239,151,63,.55)); }
.world-divider span:last-child { background: linear-gradient(90deg, rgba(239,151,63,.55), transparent); }
.catalog-future { max-width: 1310px; margin: 0 auto; padding: clamp(6rem, 12vw, 11rem) clamp(1.25rem, 6vw, 6rem); text-align: center; }
.catalog-future h2 { color: #6d7a80; }
.catalog-future > p:last-child { max-width: 640px; margin: 1.5rem auto 0; color: #718087; }
.page-hero { display: grid; min-height: 680px; grid-template-columns: 1.1fr .9fr; align-items: stretch; padding: 0 clamp(1.25rem, 6vw, 6rem); background: radial-gradient(circle at 78% 40%, rgba(54,147,155,.15), transparent 30%), linear-gradient(135deg, #091117, #05080a); }
.page-hero-copy { align-self: center; max-width: 760px; padding: 5rem 0; }
.page-hero h1 { margin-top: 1.5rem; font-size: clamp(4rem, 8vw, 8rem); }
.page-hero-copy > p:last-of-type { max-width: 650px; color: #a7b2b5; font-size: clamp(1.05rem, 1.7vw, 1.25rem); }
.page-hero .relic-interface { border: 0; }
.game-story { border-bottom: 1px solid var(--line); }
.gameplay-section { max-width: none; background: #090f13; }
.feature-grid { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--line); }
.feature-grid article { min-height: 300px; padding: 2rem; border-right: 1px solid var(--line); }
.feature-grid article:last-child { border: 0; }
.feature-grid span { color: var(--ember); font: 600 .68rem Barlow Condensed, sans-serif; letter-spacing: .18em; }
.feature-grid h3 { margin: 5rem 0 1rem; font-size: 1.55rem; }
.feature-grid p { margin: 0; color: var(--muted); font-size: .92rem; }
.signal-banner { padding: clamp(5rem, 10vw, 9rem) 1.25rem; text-align: center; }
.beta-enrollment { scroll-margin-top: 6rem; }
.hh-beta-warning { margin: 1.5rem 0; padding: clamp(1rem, 3vw, 1.75rem); border: 1px solid var(--ember); border-left-width: 4px; background: rgba(239, 151, 63, .08); overflow-wrap: anywhere; }
.hh-beta-warning h3 { margin-top: 0; font-size: clamp(1.2rem, 4vw, 1.6rem); }
.hh-beta-warning p { max-width: 75ch; font-size: 1rem; line-height: 1.65; }
.beta-enrollment > p { max-width: 65ch; }
.beta-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; max-width: 1120px; margin: 2rem auto; padding: 0; list-style: none; counter-reset: beta-step; text-align: left; }
.beta-steps li { counter-increment: beta-step; min-width: 0; padding: 1.5rem; border: 1px solid var(--line); display: flex; flex-direction: column; }
.beta-steps li::before { content: "STEP " counter(beta-step); color: var(--ember); font-size: .875rem; letter-spacing: .12em; }
.beta-steps h3 { margin: 1rem 0 .5rem; font-size: 1.5rem; }
.beta-steps p { color: var(--muted); font-size: 1rem; margin: 0 0 1.5rem; }
.beta-steps .primary-action { display: block; margin-top: auto; font-size: .875rem; letter-spacing: .06em; text-align: center; overflow-wrap: anywhere; }
.beta-enrollment .beta-help { max-width: 85ch; font-size: 1rem; }
.beta-help a { color: var(--ember); text-underline-offset: .2em; }
@media (max-width: 850px) { .beta-steps { grid-template-columns: 1fr; max-width: 620px; } }
.signal-banner h2 { margin: .8rem 0 1.2rem; }.signal-banner > p:not(.eyebrow) { margin: 0 auto 2.3rem; color: var(--muted); }
.studio-hero { min-height: 620px; }
.studio-mark { display: grid; align-content: center; justify-items: center; gap: 2rem; border-left: 1px solid var(--line); color: #52656c; font: 700 3rem/.85 Barlow Condensed, sans-serif; letter-spacing: .1em; text-align: center; }
.studio-mark .brand-disc { width: 170px; }
.contact-section { max-width: none; background: linear-gradient(135deg, #0a1116, #06090c); }
.contact-card { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; padding: clamp(2rem, 5vw, 5rem); border: 1px solid var(--line); }
.contact-card p { color: var(--muted); }.contact-card > a { display: grid; grid-template-columns: 1fr auto; padding: 2rem; border: 1px solid rgba(239,151,63,.45); text-decoration: none; }
.contact-card a small { grid-column: 1 / -1; color: var(--muted); font: 600 .62rem Barlow Condensed, sans-serif; letter-spacing: .18em; }
.contact-card a strong { margin-top: .5rem; font-size: clamp(1rem, 2.2vw, 1.5rem); }.contact-card a span { align-self: end; color: var(--ember); }
.recognition-section { border-top: 1px solid var(--line); }
.recognition-grid { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--line); }
.recognition-grid article { min-height: 250px; padding: clamp(2rem, 4vw, 3.5rem); }
.recognition-grid article + article { border-left: 1px solid var(--line); }
.recognition-grid span { color: var(--ember); font: 600 .66rem Barlow Condensed, sans-serif; letter-spacing: .18em; }
.recognition-grid h3 { margin-top: 4rem; font-size: clamp(1.7rem, 3vw, 2.4rem); }
.recognition-grid p { max-width: 520px; color: var(--muted); }
.footer-links { display: flex; gap: 1.5rem; }.footer-links a { color: #8fa0a5; text-decoration: none; }
footer { display: flex; max-width: 1440px; margin: 0 auto; padding: 2rem clamp(1.25rem, 6vw, 6rem); align-items: center; justify-content: space-between; gap: 2rem; border-top: 1px solid var(--line); color: #65747a; font-size: .72rem; }
.footer-brand { color: var(--cream); }.footer-brand .brand-logo { width: 180px; height: auto; }
footer p { margin: 0; } footer > a:last-child { color: #8fa0a5; text-decoration: none; }

.legal-main { min-height: 70svh; padding: clamp(4rem, 8vw, 7rem) clamp(1.25rem, 6vw, 6rem); background: radial-gradient(circle at 80% 5%, rgba(54,147,155,.12), transparent 28%); }
.legal-wrap { width: min(900px, 100%); margin: 0 auto; }
.legal-wrap h1 { margin: 1rem 0 1.5rem; font-size: clamp(3.2rem, 7vw, 6rem); }
.legal-intro { color: #b8c3c6; font-size: 1.12rem; }
.legal-meta { padding: 1rem 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); color: var(--muted); font-size: .9rem; }
.legal-section { padding: 2rem 0; border-bottom: 1px solid var(--line); }
.legal-section h2 { margin-bottom: 1rem; font-size: clamp(1.8rem, 4vw, 2.7rem); }
.legal-section h3 { margin: 1.5rem 0 .5rem; font-size: 1.25rem; }
.legal-section p, .legal-section li { color: #aab6b9; }
.legal-section ul, .legal-section ol { display: grid; gap: .65rem; padding-left: 1.35rem; }
.legal-section a { color: var(--cyan); }
.support-card { margin-top: 2rem; padding: clamp(1.5rem, 4vw, 2.5rem); border: 1px solid rgba(239,151,63,.45); background: rgba(239,151,63,.04); }
.support-card strong { display: block; margin-top: .35rem; color: var(--cream); font-size: clamp(1.05rem, 3vw, 1.5rem); overflow-wrap: anywhere; }

@media (max-width: 850px) {
  .site-header { grid-template-columns: 1fr auto; height: auto; min-height: 78px; padding-top: .8rem; padding-bottom: .8rem; } nav { grid-column: 1 / -1; grid-row: 2; width: 100%; justify-content: center; gap: 1.4rem; padding-top: .8rem; }
  .hero { min-height: 700px; height: 100svh; align-items: flex-start; }
  .hero-art { object-position: 66% center; opacity: .76; }
  .hero-shade { background: linear-gradient(90deg, rgba(4,7,9,.97), rgba(4,7,9,.55)), linear-gradient(0deg, var(--ink), transparent 35%); }
  .hero-content { margin: 0; padding: 10rem 1.25rem 8rem; }
  .hero-status { right: 1.25rem; left: 1.25rem; justify-content: space-between; }
  .mission-copy, .studio-grid, .community-grid { grid-template-columns: 1fr; gap: 1.5rem; }
  .community-copy { justify-self: start; }
  .mission-statement, .studio-note { justify-self: start; }
  .principles { grid-template-columns: 1fr; }.principles article { border-right: 0; border-bottom: 1px solid var(--line); }
  .world-card { grid-template-columns: 1fr; }.relic-interface { min-height: 390px; border-top: 1px solid var(--line); border-left: 0; }
  .games-heading, .story-grid, .contact-card { grid-template-columns: 1fr; gap: 1.5rem; }
  .games-grid { grid-template-columns: 1fr; }.game-card { min-height: 340px; }
  .page-header { min-height: 112px; }.page-hero { grid-template-columns: 1fr; }
  .catalog-game-grid { grid-template-columns: 1fr; }.catalog-game-grid .relic-interface { min-height: 420px; border-top: 1px solid var(--line); border-left: 0; }
  .page-hero .relic-interface { min-height: 430px; }.studio-mark { min-height: 360px; border-top: 1px solid var(--line); border-left: 0; }
  .feature-grid { grid-template-columns: repeat(2, 1fr); }.feature-grid article:nth-child(2) { border-right: 0; }.feature-grid article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
}

@media (max-width: 560px) {
  .brand-logo { width: 138px; }.footer-brand .brand-logo { width: 160px; }
  .brand small { display: none; } .contact-link { font-size: .68rem; }
  h1 { max-width: 100%; font-size: clamp(3rem, 16.5vw, 4.7rem); line-height: .88; overflow-wrap: anywhere; }
  .hero-content { width: 100%; max-width: 100%; }
  .hero-content .eyebrow { max-width: 100%; font-size: .64rem; line-height: 1.45; overflow-wrap: anywhere; }
  .hero-copy { max-width: 100%; overflow-wrap: anywhere; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 1.25rem; }
  .hero-status > div:nth-of-type(2) { display: none; }
  .world-copy { padding: 2rem 1.25rem; }.world-meta { flex-direction: column; gap: 1rem; }
  .orbit-two { width: 390px; } footer { align-items: flex-start; flex-direction: column; }
  nav { justify-content: flex-start; overflow: visible; white-space: nowrap; }.contact-link { display: none; }
  .site-header { grid-template-columns: 1fr; }.page-header { min-height: 120px; }
  .feature-grid { grid-template-columns: 1fr; }.feature-grid article { min-height: 240px; border-right: 0; border-bottom: 1px solid var(--line); }.feature-grid article:last-child { border-bottom: 0; }.feature-grid h3 { margin-top: 3rem; }
  .contact-card { padding: 1.5rem; }.contact-card > a { padding: 1.25rem; }
  .community-actions { align-items: flex-start; flex-direction: column; gap: 1.25rem; }
  .world-divider { grid-template-columns: 1fr; }.world-divider span { display: none; }
  .recognition-grid { grid-template-columns: 1fr; }.recognition-grid article + article { border-top: 1px solid var(--line); border-left: 0; }
  .footer-links { flex-direction: column; gap: .6rem; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .pulse, .orbit { animation: none; }
}

/* Game selector */
.gallery-intro { max-width: 740px; margin: 1.5rem 0 2.5rem; color: #a4afb2; font-size: 1rem; }
.screenshot-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3rem 2rem; max-width: 1040px; margin: 0 auto; }
.screenshot-grid figure { margin: 0; min-width: 0; }
.screenshot-grid figure > a { display: block; border: 1px solid var(--line); border-radius: 12px; overflow: hidden; }
.screenshot-grid figure > a:focus-visible { outline: 3px solid var(--cyan); outline-offset: 5px; }
.screenshot-grid img { display: block; width: 100%; height: auto; }
.screenshot-grid figcaption { padding: 1.25rem .25rem 0; }
.screenshot-grid h3 { font-size: 1.75rem; color: var(--cream); }
.screenshot-grid figcaption p { color: #a4afb2; font-size: 1rem; margin: .5rem 0 0; }
@media (max-width: 600px) { .screenshot-grid { grid-template-columns: minmax(0, 1fr); } }

/* Orravane regional content ratings. */
.age-ratings { background: radial-gradient(circle at 82% 18%, rgba(117,203,209,.09), transparent 30%), #080d11; }
.ratings-heading { display: grid; grid-template-columns: 1.1fr .9fr; gap: clamp(2rem, 7vw, 7rem); align-items: end; }
.ratings-heading h2 { margin-top: 1rem; font-size: clamp(3.2rem, 7vw, 6.5rem); line-height: .88; }
.ratings-heading > p { max-width: 580px; margin: 0 0 .4rem; color: #a7b2b5; font-size: 1.05rem; }
.ratings-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 3.5rem 0 0; padding: 1px; list-style: none; background: var(--line); }
.ratings-grid li { display: grid; grid-template-columns: 4.6rem minmax(0, 1fr); gap: 1rem; min-width: 0; padding: 1.25rem; align-items: center; background: #0a1116; }
.rating-mark { display: grid; width: 4.6rem; min-height: 4.6rem; padding: .35rem; place-items: center; border: 2px solid var(--cream); color: var(--cream); font: 700 1.15rem/1 Barlow Condensed, sans-serif; letter-spacing: .04em; text-align: center; }
.ratings-grid strong, .ratings-grid small { display: block; overflow-wrap: anywhere; }
.ratings-grid strong { color: var(--cream); font-size: 1rem; line-height: 1.35; }
.ratings-grid small { margin-top: .35rem; color: #8f9ca0; font-size: .8rem; line-height: 1.45; }
.ratings-note { max-width: 82ch; margin: 1.5rem 0 0; color: #8f9ca0; font-size: .9rem; line-height: 1.7; }
@media (max-width: 900px) { .ratings-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 700px) { .ratings-heading { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 520px) {
  .ratings-grid { grid-template-columns: minmax(0, 1fr); }
  .ratings-grid li { grid-template-columns: 4rem minmax(0, 1fr); padding: 1rem; }
  .rating-mark { width: 4rem; min-height: 4rem; font-size: 1rem; }
}

.site-header nav { align-items: center; }
.games-nav { position: relative; }
.games-trigger { display: flex; align-items: center; gap: .45rem; min-height: 44px; cursor: pointer; list-style: none; color: #bcc5c8; font: 600 .875rem Barlow Condensed, sans-serif; letter-spacing: .16em; text-transform: uppercase; }
.games-trigger::-webkit-details-marker { display: none; }
.games-trigger.active, .games-trigger:hover, .games-nav[open] .games-trigger { color: var(--cream); }
.games-trigger.active { text-decoration: underline; text-decoration-color: var(--ember); text-underline-offset: .5rem; }
.games-trigger:focus-visible, .games-dropdown a:focus-visible { outline: 2px solid var(--cyan); outline-offset: 4px; }
.games-dropdown { position: absolute; top: 100%; left: 50%; width: min(360px, calc(100vw - 2.5rem)); max-height: 65svh; padding: .75rem; overflow-y: auto; overscroll-behavior: contain; transform: translateX(-50%); border: 1px solid var(--line); background: #0c1318; box-shadow: 0 18px 48px #0009; white-space: normal; }
nav .game-nav-card { display: flex; align-items: center; gap: 1rem; padding: .75rem; text-transform: none; letter-spacing: normal; }
.game-nav-card img { flex: 0 0 64px; width: 64px; height: 64px; border-radius: 14px; object-fit: cover; }
.game-nav-card > span { min-width: 0; }
.game-nav-card strong { display: block; color: var(--cream); font: 600 1rem/1.4 Inter, system-ui, sans-serif; overflow-wrap: anywhere; }
.game-nav-card small { display: block; margin-top: .3rem; color: #a4afb2; font: 400 .875rem/1.4 Inter, system-ui, sans-serif; }
.game-nav-card:hover, .game-nav-card[aria-current="page"] { background: rgba(117,203,209,.06); }
nav .games-all { display: block; margin-top: .5rem; padding: .75rem; border-top: 1px solid var(--line); font-size: .875rem; }

/* Hydraulic Havoc */
.catalog-game-hydraulic-havoc { padding-top: 0; }
.hydraulic-havoc-catalog-grid { background: radial-gradient(circle at 78% 45%, rgba(25,166,222,.14), transparent 31%), radial-gradient(circle at 22% 55%, rgba(239,112,36,.13), transparent 34%), #090d11; }
.catalog-game-art { position: relative; display: grid; min-height: 420px; overflow: hidden; border-left: 1px solid var(--line); background: #05080a; }
.catalog-game-art::after { position: absolute; inset: 0; content: ''; pointer-events: none; background: linear-gradient(90deg, #090d11 0, transparent 20%), linear-gradient(0deg, rgba(5,8,10,.48), transparent 35%); }
.catalog-game-art img { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform .45s ease; }
.catalog-game-art:hover img { transform: scale(1.025); }

.hydraulic-havoc-page {
  --hydraulic-blue: #19c8f4;
  --hydraulic-orange: #ff7a21;
  --hydraulic-steel: #bfc7ca;
  --hydraulic-panel: #0a1014;
  background: #05080a;
}
.hh-main { overflow: hidden; background: #05080a; }
.hh-hero { max-width: 1600px; margin: 0 auto; padding: clamp(1rem, 2.5vw, 2.5rem) clamp(1rem, 3vw, 3.5rem) 0; }
.hh-hero-media { position: relative; aspect-ratio: 1024 / 500; min-height: 430px; max-height: 720px; overflow: hidden; border: 1px solid rgba(255,255,255,.14); background: #020405; box-shadow: 0 28px 70px rgba(0,0,0,.4); }
.hh-hero-media > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.hh-hero-media::after { position: absolute; inset: 0; content: ''; pointer-events: none; background: linear-gradient(0deg, rgba(2,4,5,.76), transparent 23%), linear-gradient(90deg, rgba(0,0,0,.18), transparent 22%, transparent 78%, rgba(0,0,0,.2)); }
.hh-hero-frame { position: absolute; z-index: 2; inset: 14px; border: 1px solid rgba(255,255,255,.12); pointer-events: none; }
.hh-hero-frame::before, .hh-hero-frame::after { position: absolute; width: 72px; height: 4px; content: ''; top: -1px; background: var(--hydraulic-orange); box-shadow: 0 0 16px rgba(255,122,33,.5); }
.hh-hero-frame::before { left: -1px; }.hh-hero-frame::after { right: -1px; background: var(--hydraulic-blue); box-shadow: 0 0 16px rgba(25,200,244,.45); }
.hh-transmission { position: absolute; z-index: 3; left: 2rem; bottom: 1.4rem; color: #d3d9db; font: 600 .75rem Barlow Condensed, sans-serif; letter-spacing: .2em; }
.hh-command-bar { display: grid; grid-template-columns: 1.15fr 1fr auto; gap: 1.5rem clamp(2rem, 5vw, 5rem); align-items: center; padding: clamp(2rem, 4vw, 3.5rem); border: 1px solid rgba(255,255,255,.12); border-top: 0; background: linear-gradient(100deg, rgba(255,122,33,.08), transparent 34%), #090e12; }
.hh-title-lockup h1 { margin: .8rem 0 0; font-size: clamp(3.2rem, 6.5vw, 6.8rem); line-height: .84; white-space: nowrap; }
.hh-title-lockup h1 em { color: var(--hydraulic-orange); font-style: normal; }
.hh-lead { max-width: 580px; margin: 0; color: #b5c0c3; font-size: clamp(1rem, 1.35vw, 1.15rem); }
.hh-command-actions { display: grid; gap: 1rem; min-width: 190px; }
.hh-command-actions .text-action { padding-left: .1rem; }
.hh-specs { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin: .5rem 0 0; background: rgba(255,255,255,.1); }
.hh-specs div { padding: 1rem 1.25rem; background: #080d10; }
.hh-specs dt { color: #68777c; font: 600 .75rem Barlow Condensed, sans-serif; letter-spacing: .16em; text-transform: uppercase; }
.hh-specs dd { margin: .35rem 0 0; color: #d4dcde; font: 600 1rem Barlow Condensed, sans-serif; letter-spacing: .08em; text-transform: uppercase; }

.hh-section { max-width: 1440px; margin: 0 auto; padding: clamp(5rem, 10vw, 9rem) clamp(1.25rem, 6vw, 6rem); }
.hh-section-index { margin-bottom: clamp(2.5rem, 5vw, 4rem); padding-bottom: .8rem; border-bottom: 1px solid rgba(255,255,255,.13); color: #68777c; font: 600 .75rem Barlow Condensed, sans-serif; letter-spacing: .2em; }
.hh-section-index::before { display: inline-block; width: 2.5rem; height: 2px; margin: 0 .8rem .25rem 0; content: ''; background: var(--hydraulic-orange); }
.hh-machine { position: relative; }
.hh-machine::before { position: absolute; z-index: 0; width: 540px; aspect-ratio: 1; left: -260px; top: 8rem; content: ''; border: 1px dashed rgba(25,200,244,.13); border-radius: 50%; }
.hh-machine-grid { position: relative; z-index: 1; display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(2rem, 7vw, 7rem); }
.hh-machine-grid h2, .hh-doctrine-heading h2, .hh-combat-title h2, .hh-gallery-heading h2 { margin-top: 1rem; font-size: clamp(3.2rem, 7vw, 6.5rem); line-height: .86; }
.hh-machine-copy { max-width: 690px; color: #aeb9bc; font-size: 1.08rem; }
.hh-machine-copy p { margin: 0 0 1.35rem; }
.hh-parts-rail { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(11, auto); gap: .6rem; align-items: center; margin-top: clamp(3rem, 6vw, 5.5rem); padding: 1.2rem 1.4rem; overflow-x: auto; border: 1px solid rgba(255,122,33,.3); background: rgba(255,122,33,.035); color: #d3dbdd; font: 600 .82rem Barlow Condensed, sans-serif; letter-spacing: .13em; text-transform: uppercase; scrollbar-width: thin; }
.hh-parts-rail i { display: block; width: 100%; min-width: 26px; height: 1px; background: linear-gradient(90deg, var(--hydraulic-orange), rgba(255,122,33,.08)); }

.hh-doctrine { max-width: none; background: radial-gradient(circle at 85% 12%, rgba(25,200,244,.08), transparent 28%), #080d11; }
.hh-doctrine > * { max-width: 1310px; margin-left: auto; margin-right: auto; }
.hh-doctrine-heading, .hh-gallery-heading { display: grid; grid-template-columns: 1.1fr .9fr; gap: 3rem; align-items: end; }
.hh-doctrine-heading > p, .hh-gallery-heading > p { max-width: 560px; margin: 0 0 .35rem; color: #9fabad; font-size: 1.05rem; }
.hh-doctrine-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-top: 4rem; }
.hh-doctrine-card { position: relative; min-height: 460px; padding: 2rem; overflow: hidden; border: 1px solid rgba(255,255,255,.13); background: linear-gradient(150deg, rgba(255,255,255,.035), transparent 58%), #0b1115; }
.hh-doctrine-card::after { position: absolute; width: 220px; height: 220px; right: -110px; bottom: -110px; content: ''; border: 1px solid rgba(255,255,255,.09); transform: rotate(45deg); }
.hh-brawler { border-top: 3px solid var(--hydraulic-orange); }.hh-skirmisher { border-top: 3px solid var(--hydraulic-blue); }.hh-siege { border-top: 3px solid #d8a843; }
.hh-card-number { color: #68777c; font: 600 .8rem Barlow Condensed, sans-serif; letter-spacing: .16em; }
.hh-card-gauge { display: flex; height: 92px; margin: 2.2rem 0; align-items: end; gap: 6px; }
.hh-card-gauge b { display: block; width: 16px; height: 35%; background: #303a3f; transform: skew(-9deg); }.hh-card-gauge b:nth-child(2) { height: 52%; }.hh-card-gauge b:nth-child(3) { height: 72%; }.hh-card-gauge b:nth-child(4) { height: 100%; }.hh-card-gauge b:nth-child(5) { height: 82%; }.hh-card-gauge b:nth-child(6) { height: 58%; }
.hh-brawler .hh-card-gauge b { background: linear-gradient(#ff9a55, #a83e0a); }.hh-skirmisher .hh-card-gauge b { background: linear-gradient(#66ddfb, #08769b); }.hh-siege .hh-card-gauge b { background: linear-gradient(#efc969, #8b5b0e); }
.hh-doctrine-card h3 { font-size: clamp(2.2rem, 4vw, 3.5rem); }
.hh-doctrine-card > p { color: #9eaaad; }
.hh-doctrine-card ul { display: grid; gap: .65rem; margin: 2rem 0 0; padding: 0; list-style: none; color: #c8d0d2; font-size: .9rem; }
.hh-doctrine-card li::before { content: '+'; margin-right: .7rem; color: var(--hydraulic-orange); }

.hh-combat { max-width: none; padding-left: max(clamp(1.25rem, 6vw, 6rem), calc((100vw - 1310px) / 2)); padding-right: max(clamp(1.25rem, 6vw, 6rem), calc((100vw - 1310px) / 2)); background: linear-gradient(120deg, rgba(255,122,33,.08), transparent 34%), #05080a; }
.hh-combat-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(3rem, 8vw, 8rem); }
.hh-combat-title { position: sticky; top: 2rem; align-self: start; }
.hh-combat-steps { margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(255,255,255,.15); }
.hh-combat-steps li { display: grid; grid-template-columns: 70px 1fr; gap: 1.5rem; padding: 2rem 0; border-bottom: 1px solid rgba(255,255,255,.15); }
.hh-combat-steps li > span { color: var(--hydraulic-blue); font: 600 .8rem Barlow Condensed, sans-serif; letter-spacing: .15em; }
.hh-combat-steps h3 { font-size: 1.75rem; }.hh-combat-steps p { margin: .6rem 0 0; color: #9da9ac; }

.hh-gallery { max-width: 1440px; }
.hh-shot-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(2rem, 5vw, 4rem) 1.4rem; margin-top: 4rem; }
.hh-shot { margin: 0; }
.hh-shot-frame { position: relative; display: grid; aspect-ratio: 16 / 9; place-content: center; justify-items: center; overflow: hidden; border: 1px solid rgba(255,255,255,.16); background: linear-gradient(rgba(25,200,244,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(25,200,244,.04) 1px, transparent 1px), radial-gradient(circle at center, rgba(255,122,33,.09), transparent 36%), #090f13; background-size: 28px 28px, 28px 28px, auto, auto; text-align: center; }
.hh-shot-frame::before, .hh-shot-frame::after { position: absolute; inset: 14px; content: ''; pointer-events: none; border: 1px dashed rgba(255,255,255,.13); }.hh-shot-frame::after { inset: 50% auto auto 50%; width: 70px; height: 70px; border-radius: 50%; transform: translate(-50%,-50%); border-color: rgba(25,200,244,.24); }
.hh-shot-frame > span { position: absolute; top: 1.5rem; left: 1.5rem; color: var(--hydraulic-orange); font: 600 .8rem Barlow Condensed, sans-serif; letter-spacing: .15em; }
.hh-shot-frame img { position: absolute; width: 48%; max-width: 250px; opacity: .09; filter: grayscale(1); }
.hh-shot-frame strong, .hh-shot-frame small { position: relative; z-index: 2; }.hh-shot-frame strong { font: 700 clamp(1.8rem, 4vw, 3.2rem)/1 Barlow Condensed, sans-serif; text-transform: uppercase; }.hh-shot-frame small { margin-top: .8rem; color: var(--hydraulic-blue); font: 600 .72rem Barlow Condensed, sans-serif; letter-spacing: .16em; }
.hh-shot figcaption { padding: 1rem .25rem 0; color: #8f9ca0; font-size: .92rem; }

.hh-final { display: flex; max-width: 1310px; margin: 0 auto clamp(4rem, 8vw, 8rem); padding: clamp(2rem, 5vw, 4rem); align-items: end; justify-content: space-between; gap: 2rem; border: 1px solid rgba(255,122,33,.35); background: linear-gradient(110deg, rgba(255,122,33,.1), transparent 45%), #090e12; }
.hh-final h2 { margin: .8rem 0; font-size: clamp(3rem, 7vw, 6rem); }.hh-final p:not(.eyebrow) { margin: 0; color: #9dabad; }

@media (max-width: 1050px) {
  .hh-command-bar { grid-template-columns: 1fr 1fr; }.hh-command-actions { grid-column: 1 / -1; grid-template-columns: auto 1fr; align-items: center; }.hh-specs { grid-column: 1 / -1; }
  .hh-doctrine-grid { grid-template-columns: 1fr; }.hh-doctrine-card { min-height: 0; }.hh-card-gauge { height: 65px; }
}

@media (max-width: 850px) {
  .site-header nav { position: relative; }.games-nav { position: static; }.games-dropdown { left: 50%; }
  .catalog-game-art { min-height: 330px; border-top: 1px solid var(--line); border-left: 0; }
  .hh-hero { padding: 1rem 1rem 0; }.hh-hero-media { min-height: 390px; aspect-ratio: auto; }.hh-hero-media > img { object-position: center; }
  .hh-command-bar, .hh-machine-grid, .hh-doctrine-heading, .hh-combat-grid, .hh-gallery-heading { grid-template-columns: 1fr; }
  .hh-title-lockup h1 { white-space: normal; }.hh-command-actions { grid-column: auto; }.hh-specs { grid-column: auto; }
  .hh-combat-title { position: static; }.hh-shot-grid { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  .games-dropdown { left: 0; max-width: 100%; transform: none; }
  .hh-hero { padding: .75rem .75rem 0; }.hh-hero-media { min-height: 330px; }.hh-hero-media > img { object-position: 55% center; }.hh-hero-frame { inset: 8px; }.hh-transmission { left: 1.25rem; bottom: 1rem; font-size: .65rem; }
  .hh-command-bar { padding: 1.5rem; }.hh-command-actions { grid-template-columns: 1fr; }.hh-command-actions .primary-action { text-align: center; }
  .hh-specs { grid-template-columns: 1fr; }.hh-specs div { padding: .8rem 1rem; }
  .hh-machine-grid h2, .hh-doctrine-heading h2, .hh-combat-title h2, .hh-gallery-heading h2 { font-size: clamp(2.8rem, 15vw, 4.4rem); }
  .hh-parts-rail { grid-template-columns: repeat(11, max-content); }
  .hh-doctrine-card { padding: 1.5rem; }.hh-combat-steps li { grid-template-columns: 44px 1fr; gap: .8rem; }
  .hh-shot-frame { aspect-ratio: 4 / 3; }.hh-final { margin: 0 1rem 4rem; align-items: stretch; flex-direction: column; }.hh-final .primary-action { text-align: center; }
}

/* Orravane contributors and studio logo attribution. */
.game-credits h2 { margin: 0 0 2.5rem; }
.credits-roster { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 3rem; margin: 0; }
.credits-roster > div { min-width: 0; padding: 1.5rem 0; border-top: 1px solid var(--line); overflow-wrap: anywhere; }
.credits-roster dt { color: var(--cyan); font-size: .875rem; line-height: 1.5; }
.credits-roster dd { margin: .5rem 0 0; color: var(--cream); font-size: clamp(1.25rem, 2.5vw, 1.75rem); line-height: 1.3; }
.credits-development { max-width: 70ch; margin-top: 2.5rem; padding-left: 1.25rem; border-left: 2px solid var(--ember); }
.credits-development h3 { margin: 0 0 .75rem; font-size: 1.25rem; line-height: 1.3; }
.credits-development p { margin: 0; color: #9da9ad; font-size: 1rem; overflow-wrap: anywhere; }
footer:has(.footer-identity) { flex-wrap: wrap; }
.footer-identity { min-width: 0; max-width: 100%; flex: 0 1 17rem; }
.footer-identity .brand-logo { max-width: 100%; }
.footer-identity .logo-credit { margin-top: .875rem; color: #9da9ad; font-size: .875rem; line-height: 1.6; overflow-wrap: anywhere; }
.logo-credit a { display: inline-block; padding-block: .25rem; color: var(--cyan); text-underline-offset: .2em; }
.logo-credit a:hover { color: var(--cream); }
.logo-credit a:focus-visible { outline: 2px solid var(--ember); outline-offset: 3px; }
footer:has(.footer-identity) .footer-links { flex-wrap: wrap; min-width: 0; }
@media (max-width: 850px) { .footer-identity { flex-basis: auto; } }
@media (max-width: 600px) { .credits-roster { grid-template-columns: minmax(0, 1fr); } }
