/* The game's silver, red and teal identity, on a quiet dark background. */
.theme-petafab {
  color-scheme: dark;
  --paper: #090d11;
  --ink: #f1f4f5;
  --muted: #adb9c2;
  --faint: #94a3ad;
  --rule: #2a353d;
  --accent: #6ddbe3;
  --accent-dark: #b6f8fc;
  --wash: #111a21;
}
.theme-petafab ::selection { color: #090d11; background: #6ddbe3; }
.theme-petafab .site-header { background: #090d11; }
.theme-petafab .skip-link { background: #6ddbe3; color: #090d11; }
.theme-petafab .site-nav a { color: #bbc5cc; }
.theme-petafab .site-nav a[aria-current="page"] { color: var(--accent); }
.theme-petafab .site-footer { background: #090d11; }
.theme-petafab .eyebrow { font-family: var(--mono); font-size: 11px; letter-spacing: .14em; }
.theme-petafab h2 { font-size: clamp(29px, 3.5vw, 42px); line-height: 1.15; }
.game-hero { position: relative; isolation: isolate; overflow: hidden; text-align: center; }
.game-hero-art { position: absolute; z-index: -2; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; object-position: center top; opacity: .55; }
.game-hero::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(180deg, #090d1120, #090d1140 30%, #090d11 94%); content: ""; }
.game-hero-content { padding-top: clamp(100px, 12vw, 180px); padding-bottom: 65px; }
.game-hero .eyebrow { margin-bottom: 30px; color: #e0f6f7; text-shadow: 0 2px 8px #000; }
.game-hero h1 { max-width: 800px; margin: 0 auto 30px; }
.game-hero h1 img { width: 100%; filter: drop-shadow(0 8px 10px #000b); }
.game-tagline { margin-bottom: 14px; font-size: clamp(22px, 3vw, 34px); line-height: 1.3; letter-spacing: -.025em; }
.game-platforms { margin: 0 0 27px; color: #becad3; font-size: 13px; }
.game-platforms span { padding-inline: 12px; }
.game-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.game-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 28px; min-height: 49px; padding: 13px 21px; border: 1px solid #6ddbe3; background: #6ddbe3; color: #071416; font-size: 14px; line-height: 1.5; font-weight: 600; text-decoration: none; }
.game-button:hover { border-color: #b6f8fc; background: #b6f8fc; color: #071416; }
.game-button-secondary { border-color: #657580; background: #0d151bd9; color: var(--ink); }
.game-button-secondary:hover { border-color: #6ddbe3; background: #17272e; color: #b6f8fc; }
.game-overview, .game-story, .game-details, .press-overview { display: grid; grid-template-columns: 1fr 1.6fr; gap: 75px; }
.game-overview { padding: 50px 0 65px; }
.game-overview .eyebrow, .game-section .eyebrow { margin-bottom: 16px; }
.game-description { color: #c5d0d8; font-size: 18px; line-height: 1.8; }
.game-features { display: flex; flex-wrap: wrap; gap: 10px 24px; margin: 25px 0 0; padding: 0; list-style: none; color: #a9c6cd; font-family: var(--mono); font-size: 11px; }
.game-features li::before { margin-right: 8px; color: var(--accent); content: "+"; }
.game-section { padding-block: 52px 65px; border-top: 1px solid var(--rule); }
.game-section .section-head { margin-bottom: 30px; }
.game-section .section-head > a { color: #b2c3cd; white-space: nowrap; }
.game-video { aspect-ratio: 16 / 9; border: 1px solid var(--rule); background: #000; }
.game-video iframe { display: block; width: 100%; height: 100%; border: 0; }
.game-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.game-gallery > a { display: block; border: 1px solid var(--rule); }
.game-gallery > a:hover { border-color: var(--accent); }
.game-gallery img { width: 100%; aspect-ratio: 3838 / 2158; object-fit: cover; }
.game-story-copy { color: #bdc9d1; font-size: 16px; line-height: 1.85; }
.game-story-copy strong { color: var(--ink); font-weight: 600; }
.game-story-copy > :last-child { margin-bottom: 0; }
.game-contact { display: grid; grid-template-columns: 1fr 1fr; gap: 75px; padding-bottom: 80px; }
.game-contact h2 { font-size: 29px; }
.game-contact p:not(.eyebrow) { max-width: 480px; color: var(--muted); line-height: 1.8; }
.game-contact .text-link { margin-top: 15px; }
.download-note { margin-top: 15px; color: var(--muted); font-size: 12px; }
.game-facts { margin: 26px 0 0; }
.game-facts dt { margin-top: 16px; color: var(--muted); font-size: 12px; }
.game-facts dd { margin: 4px 0 0; font-size: 15px; }
.game-facts dd a { font-size: 13px; }
.press-overview h2 { font-size: 29px; }
.press-overview h3 { margin-top: 32px; }
.press-developer { margin-bottom: 25px; }
.press-assets { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.press-assets figure { min-width: 0; margin: 0; }
.press-logo-preview { display: flex; align-items: center; justify-content: center; height: 205px; padding: 25px; border: 1px solid var(--rule); background: #0e151b; }
.press-logo-preview img { max-height: 100%; width: auto; object-fit: contain; }
.press-assets > figure > img { width: 100%; height: 205px; object-fit: contain; background: #0e151b; border: 1px solid var(--rule); }
.press-assets figcaption { padding-top: 14px; }
.press-assets figcaption a { display: block; margin-bottom: 8px; font-size: 12px; }
.press-gallery figure { min-width: 0; margin: 0; }
.press-gallery figcaption { padding-top: 10px; font-size: 12px; }
.press-usage p { max-width: 780px; color: var(--muted); }
@media (max-width: 900px) {
  .game-overview, .game-story, .game-details, .press-overview { grid-template-columns: 1fr 1.4fr; gap: 35px; }
  .game-contact { gap: 35px; }
  .press-assets { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .game-hero-content { padding-top: 100px; padding-bottom: 40px; }
  .game-hero-art { object-position: 42% top; }
  .game-hero .eyebrow { font-size: 10px; }
  .game-hero h1 { margin-bottom: 25px; }
  .game-tagline { font-size: 23px; }
  .game-overview, .game-story, .game-details, .game-contact, .press-overview { grid-template-columns: 1fr; gap: 20px; }
  .game-overview { padding: 25px 0 40px; }
  .game-description { font-size: 16px; }
  .game-section { padding-block: 35px 40px; }
  .game-gallery { grid-template-columns: 1fr; gap: 18px; }
  .game-section .section-head { align-items: flex-start; flex-direction: column; gap: 13px; }
  .game-section .section-head h2 { font-size: 30px; }
  .game-contact { gap: 40px; }
  .press-assets { grid-template-columns: 1fr; }
  .press-logo-preview, .press-assets > figure > img { height: 240px; }
}
@media print {
  .theme-petafab { --paper: #fff; --ink: #000; --muted: #444; --accent: #000; --rule: #bbb; }
  .game-hero-art, .game-video, .game-hero::after { display: none; }
  .game-hero-content { padding-top: 20px; }
  .game-description, .game-story-copy, .game-platforms, .game-contact p:not(.eyebrow) { color: #333; }
  .game-overview, .game-story, .game-details, .game-contact, .press-overview { display: block; }
}
