:root {
  color-scheme: dark;
  --navy: #071924;
  --gold: #d9b979;
  --cream: #f8ecd2;
  --muted: #bdcbd0;
  font-family: Arial, Helvetica, sans-serif;
  background: var(--navy);
  color: var(--cream);
}
* { box-sizing: border-box; }
html { min-width: 280px; }
body { margin: 0; min-height: 100svh; display: flex; flex-direction: column; position: relative; isolation: isolate; }
a { color: inherit; text-decoration: none; }
a:focus-visible { outline: 2px solid #95deef; outline-offset: 6px; border-radius: 2px; }
::selection { background: #7ccbdd; color: var(--navy); }
.world { position: fixed; inset: 0; z-index: -1; overflow: hidden; background: var(--navy); pointer-events: none; }
.world picture, .world img { display: block; width: 100%; height: 100%; }
.world img { object-fit: cover; object-position: center; }
.world::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(3, 15, 24, .6), rgba(3, 15, 24, .12) 25%, rgba(3, 15, 24, .35) 50%, rgba(3, 15, 24, .84) 85%, #061620), radial-gradient(ellipse at 50% 47%, rgba(3, 14, 22, .75) 0%, rgba(3, 14, 22, .42) 37%, transparent 75%); }
.site-header { margin: 0 4.5%; padding: 28px 0 22px; display: flex; align-items: center; justify-content: space-between; gap: 24px; border-bottom: 1px solid rgba(218, 188, 127, .16); }
.studio-link { display: inline-flex; align-items: center; gap: 10px; font-family: Georgia, 'Times New Roman', serif; font-size: 19px; letter-spacing: .04em; color: #e4cd9e; }
.studio-mark { font-size: 28px; line-height: 1; color: var(--gold); }
.studio-suffix { font-size: 11px; text-transform: uppercase; letter-spacing: .17em; margin-left: 5px; }
.header-note { color: #c0cbd0; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; }
.teaser { flex: 1; width: 100%; max-width: 780px; margin: 0 auto; padding: 26px 24px 48px; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.game-logo { width: clamp(230px, 34vh, 330px); height: auto; max-width: 85vw; display: block; margin: 0 0 16px; filter: drop-shadow(0 12px 28px rgba(0, 8, 16, .65)); }
.eyebrow { display: flex; align-items: center; justify-content: center; gap: 14px; margin: 0 0 17px; font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: .25em; color: var(--gold); }
.eyebrow span { width: 30px; height: 1px; background: linear-gradient(90deg, transparent, var(--gold)); opacity: .6; }
.eyebrow span:last-child { transform: rotate(180deg); }
h1 { font-family: Georgia, 'Times New Roman', serif; font-size: clamp(42px, 5vw, 64px); line-height: 1.1; font-weight: 400; letter-spacing: -.035em; margin: 0; color: var(--cream); text-shadow: 0 3px 20px rgba(0, 0, 0, .6); }
.intro { max-width: 470px; margin: 19px 0 27px; font-size: 15px; line-height: 1.75; color: #d2dce0; text-wrap: balance; }
.actions { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 14px; }
.button { min-height: 48px; padding: 0 22px; display: inline-flex; align-items: center; justify-content: center; gap: 15px; font-size: 12px; font-weight: 600; letter-spacing: .02em; transition: background-color .18s, color .18s, border-color .18s; }
.button span { font-size: 17px; }
.button-gold { background: var(--gold); color: #102329; border: 1px solid var(--gold); box-shadow: 0 4px 24px rgba(0, 8, 18, .3); }
.button-gold:hover { background: #edce93; border-color: #edce93; }
.button-quiet { color: #dfd4bc; border: 1px solid rgba(217, 185, 121, .35); background: rgba(3, 16, 25, .3); }
.button-quiet:hover { border-color: var(--gold); background: rgba(217, 185, 121, .09); }
.site-footer { margin: 0 4.5%; padding: 23px 0 26px; display: flex; justify-content: space-between; align-items: center; gap: 20px; border-top: 1px solid rgba(218, 188, 127, .14); color: #a6b7bf; font-size: 11px; letter-spacing: .02em; }
.site-footer p { margin: 0; }
.site-footer a:hover { color: var(--cream); }
.footer-note { color: #879fa9; }
.community-link { display: inline-flex; align-items: center; gap: 9px; color: #c8bb9f; }
.skip-link { position: fixed; top: 12px; left: 12px; transform: translateY(-150%); padding: 12px 16px; background: var(--cream); color: var(--navy); z-index: 5; }
.skip-link:focus { transform: none; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.error-page .teaser { gap: 20px; min-height: 65svh; }
.error-page .eyebrow, .error-page .intro { margin: 0; }
@media (max-width: 700px) {
  .site-header { margin: 0 6%; padding: 22px 0 18px; justify-content: center; }
  .header-note { display: none; }
  .world img { object-position: 52% center; }
  .world::after { background: linear-gradient(180deg, rgba(3, 15, 24, .4), rgba(3, 15, 24, .58) 35%, rgba(3, 15, 24, .88) 78%, #061620); }
  .teaser { padding: 35px 20px 38px; }
  .game-logo { width: clamp(230px, 32vh, 290px); margin-bottom: 20px; }
  .eyebrow { font-size: 9px; letter-spacing: .2em; }
  .intro { font-size: 14px; margin: 17px 0 25px; }
  .desktop-break { display: none; }
  .actions { width: 100%; max-width: 320px; flex-direction: column; gap: 12px; }
  .button { width: 100%; }
  .site-footer { margin: 0 6%; padding: 20px 0 24px; flex-wrap: wrap; justify-content: center; font-size: 10px; gap: 12px 20px; }
  .footer-note { display: none; }
}
@media (prefers-reduced-motion: reduce) { .button { transition: none; } }
