/* Space Hunter artwork on the Spider Trouble page framework. */
:root {
  --forest: #233e6e;
  --forest-dark: #0a1732;
  --forest-soft: #e3eaf6;
  --leaf: #638dc8;
  --sun: #f2cb6e;
  --cream: #f6f3e9;
  --paper: #fffefb;
  --ink: #192741;
  --muted: #5c6a80;
  --line: #d0d9e6;
  --shadow: 0 18px 45px #0a17321a;
}
.site-header { background: #0a1732f7; }
.brand img, .footer-brand img { border-radius: 10px; }
.brand span { max-width: 235px; line-height: 1.25; white-space: normal; }
.site-footer { background: #0a1732; }
.site-footer p, .site-footer a { color: #c2cce0; }
.footer-brand { color: #fff; }
.home-hero { background: #07122b; }
.home-hero::before { background: linear-gradient(90deg,#07122bf7 0%,#07122bee 28%,#07122b8c 46%,#07122b00 70%),linear-gradient(0deg,#07122b88,transparent 23%); }
.home-hero__art img { object-position: center; }
.home-game-identity .eyebrow { color: #f2d77b; }
.home-game-category, .home-gameplay li { color: #cad4e7; }
.home-gameplay { border-color: #e2e9ff30; }
.home-hero__description { color: #e0e6f2; }
.home-hero .button.secondary { background: #0a173244; border-color: #e3e8f366; }
.home-game-icon { border-color: #dbe4f661; }
.screenshot-strip { grid-template-columns: repeat(3,minmax(0,1fr)); }
.screenshot-strip figure { min-width: 0; }
.screenshot-strip img { width: 100%; height: 480px; object-fit: contain; background: #07122b; }
.screenshot-strip figure > a { display: block; overflow: hidden; border-radius: 12px; }
.team-card img { object-fit: cover; }
.story-media img { width: 100%; aspect-ratio: 1.3; object-fit: cover; object-position: 65% center; }
.split-media img { object-fit: cover; object-position: 72% center; }
.scene-hero::before { width: 300px; height: 300px; right: -105px; top: -170px; border: 1px solid #6a85ae; border-radius: 50%; background: none; box-shadow: 0 0 0 36px #8296b012,0 0 0 72px #8296b00a; }
.scene-hero__spider { display: none; }
.scene-hero__leaf { width: 80px; height: 80px; right: -10px; bottom: 56px; border: 1px solid #a5b7d6; border-radius: 50%; background: #e9effb; transform: rotate(18deg); }
.scene-hero__leaf::after { top: 35px; left: -17px; width: 115px; height: 25px; border: 2px solid #9eafca; border-radius: 50%; background: transparent; transform: rotate(-35deg); }
.studio-game-art { border-radius: 140px 140px 22px 22px; }
.scene-hero--about .scene-hero__art { max-width: 405px; }
.scene-hero--contact .scene-hero__grid { min-height: 555px; }
.scene-hero--contact .scene-hero__intro { color: #ccd7e9; }
.policy-date { margin-top: 18px; color: #697b99; font-size: 12px; }
.legal-toc { max-height: calc(100vh - 125px); overflow-y: auto; scrollbar-width: thin; }
.legal-content { min-width: 0; }
.legal-content a, .footer-email { overflow-wrap: anywhere; }
.image-preview-open { overflow: hidden; }
.lightbox img { max-height: 88vh; width: auto; }
.store-hero { background: radial-gradient(ellipse at 83% 48%,#294b78 0,#152d54 38%,#0a1732 78%); }
.store-hero .kicker { color: #b9cdeb; }
.store-hero-copy > p:not(.kicker) { color: #d0dced; }
.store-game-link { color: #e1e7f1; }
.store-game-link small { color: #b6c6df; }
.store-garden-halo { border-color: #83a4d545; background: radial-gradient(circle at 50% 60%,#75a6dc30,#678bcc18 63%,transparent 65%); }
.store-garden-halo::after { border-color: #8fb3e92d; }
.store-garden-label { color: #d0dcf0; background: #132a4b; border-color: #a9c0e040; }
.store-hero-chest { top: 27%; width: 66%; left: 17%; transform: rotate(-7deg); filter: drop-shadow(0 22px 18px #030b1c66); }
.store-orbit-ship { position: absolute; top: 9%; right: 9%; width: 55px; transform: rotate(28deg); filter: drop-shadow(0 0 12px #87cfff66); }
.store-support-icon img { width: 56px; height: 68px; }
.store-page .product-visual img { object-fit: contain; }
.guide-hero { background: radial-gradient(ellipse at 84% 10%,#263e72 0,transparent 58%),var(--forest-dark); }
.guide-hero .guide-capture img { height: 360px; object-fit: cover; object-position: 70% center; }
.guide-hero-copy > p:not(.eyebrow) { color: #c8d5e8; }
.guide-hero .eyebrow, .guide-hero-facts span, .guide-hero .guide-capture figcaption { color: #bfcde5; }
.guide-tutorial-card .guide-capture img { height: 375px; object-fit: contain; }
.guide-tutorial-card .guide-capture figcaption:empty { display: none; }
.weapon-collage, .survival-captures { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 22px; }
.weapon-collage .guide-capture:first-child { transform: translateY(-20px); }
.weapon-collage .guide-capture:nth-child(2) { transform: translateY(20px); }
.weapon-collage .guide-capture > a, .survival-captures .guide-capture > a { border: 5px solid #ffffff2e; box-shadow: 0 20px 45px #0a173224; }
.weapon-collage .guide-capture img, .survival-captures .guide-capture img { width: 100%; height: auto; }
.ship-unlock { width: min(100%,320px); justify-self: center; }
.guide-gallery-track { grid-auto-columns: 238px; }
.guide-gallery-track .guide-capture img { height: 420px; width: 100%; object-fit: contain; }
.guide-chase { background: #101f3f; }
.guide-chase-copy p, .guide-chase-rules p { color: #c4d0e5; }
.guide-chase .eyebrow { color: #a9c7f0; }
.guide-chase-rules { border-color: #7189b444; }
.news-card-artwork { border-radius: 18px; }
.ship-trail-thread { stroke: #bceaff; }
.ship-burst-thread { stroke: #a3dafa; }
@media (min-width: 1600px) { .home-hero__art img { object-position: center; } }
@media (max-width: 1120px) { .brand span { max-width: 250px; } }
@media (max-width: 900px) {
  .screenshot-strip { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; }
  .screenshot-strip figure { flex: 0 0 270px; scroll-snap-align: start; }
  .screenshot-strip img { height: 440px; }
  .guide-tutorial-card .guide-capture img { height: 300px; }
}
@media (max-width: 760px) {
  .guide-hero .guide-capture img { height: 280px; }
  .guide-tutorial-card .guide-capture img { height: 420px; }
  .weapon-collage { margin-top: 20px; margin-bottom: 20px; }
  .weapon-collage, .survival-captures { max-width: 500px; margin-inline: auto; gap: 15px; }
  .guide-gallery-track { grid-auto-columns: 218px; }
  .scene-hero--contact .scene-hero__grid { min-height: 0; }
  .legal-toc { max-height: none; overflow-y: visible; }
}
@media (max-width: 700px) {
  .home-hero__art { margin-top: -15px; }
  .home-hero__art img { content: url('assets/game-art.webp'); width: 100%; aspect-ratio: 1.22; object-fit: cover; object-position: center 58%; border-radius: 0; }
  .home-hero__art::before { z-index: 1; height: 29%; background: linear-gradient(#07122b,#07122b00); }
  .home-hero__art::after { position: absolute; content: ''; inset: 0; border: 0; box-shadow: inset 0 -28px 24px -25px #07122b; pointer-events: none; }
  .home-hero__copy { padding-bottom: 34px; }
}
@media (max-width: 440px) {
  .brand { gap: 10px; }
  .brand span { max-width: 210px; font-size: 15px; }
  .home-hero h1 { font-size: clamp(64px,17vw,78px); }
  .guide-hero .guide-capture img { height: 225px; }
  .guide-tutorial-card .guide-capture img { height: 360px; }
  .store-garden { max-width: 340px; }
}
@media (max-width: 350px) {
  .brand span { max-width: 178px; font-size: 14px; }
  .brand img { width: 35px; height: 35px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* Keep the three upcoming games together in a single row. */
.restored-content #news-roadmap .news-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; }
.restored-content #news-roadmap .news-card { min-width: 0; padding: 24px; scroll-snap-align: start; }
.restored-content #news-roadmap .news-card-heading { gap: 16px; min-height: 80px; }
.restored-content #news-roadmap .news-card-artwork { width: 80px; height: 80px; flex-basis: 80px; }
.restored-content #news-roadmap .news-card-heading h3 { font-size: 22px; line-height: 1.25; }
.restored-content #news-roadmap .news-card > a { font-size: 14px; }
@media (min-width: 701px) and (max-width: 1000px) {
  .restored-content #news-roadmap .news-card-heading { flex-direction: column; align-items: flex-start; gap: 16px; min-height: 160px; }
  .restored-content #news-roadmap .news-card-artwork { width: 72px; height: 72px; flex-basis: 72px; }
  .restored-content #news-roadmap .news-card-heading h3 { font-size: 21px; }
}
@media (max-width: 700px) {
  .restored-content #news-roadmap .news-grid { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: min(90%, 340px); overflow-x: auto; padding-bottom: 12px; scroll-snap-type: x mandatory; }
}
