@font-face {
  font-family: "Anton";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/anton-v27-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: "Anton";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/anton-v27-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: "DM Sans";
  font-style: normal;
  font-weight: 100 1000;
  font-display: swap;
  src: url("/fonts/dm-sans-v17-latin-ext.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
  font-family: "DM Sans";
  font-style: normal;
  font-weight: 100 1000;
  font-display: swap;
  src: url("/fonts/dm-sans-v17-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  background: #0a0807;
  color: #f5efe9;
  font-family: "DM Sans", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  text-wrap: pretty;
}

a { color: #f2a83b; text-decoration: none; }
a:hover { color: #ffffff; }

[id] { scroll-margin-top: 92px; }

:focus-visible { outline: 2px solid #f2a83b; outline-offset: 3px; border-radius: 6px; }

img { max-width: 100%; }

/* --- Header ------------------------------------------------------------- */

.nav a:not(.cta):hover { color: #f5efe9; }
.cta:hover { filter: brightness(1.1); }
.store-primary:hover { filter: brightness(1.1); }
.store-secondary:hover { border-color: #f2a83b; }
.link-card:hover { border-color: #f2a83b; }

/* --- Screenshot slots ---------------------------------------------------- */

.shot {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 18px;
  aspect-ratio: 9 / 19.5;
  background: repeating-linear-gradient(135deg, #171312 0 12px, #141110 12px 24px);
  border: 1px dashed rgba(245, 239, 233, 0.18);
  color: rgba(245, 239, 233, 0.42);
  font-size: 13px;
  line-height: 1.45;
  letter-spacing: 0.02em;
}

.shot b {
  display: block;
  font-family: Anton, Impact, sans-serif;
  font-weight: 400;
  font-size: 17px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(245, 239, 233, 0.62);
  margin-bottom: 6px;
}

/* --- FAQ ----------------------------------------------------------------- */

details summary::-webkit-details-marker { display: none; }
details summary { list-style: none; cursor: pointer; }
details summary:hover { color: #f2a83b; }
details[open] .faq-sign { transform: rotate(45deg); }
.faq-sign { display: inline-block; transition: transform 0.18s ease; }

/* --- Legal pages --------------------------------------------------------- */

.legal-body h2 {
  font-family: Anton, Impact, sans-serif;
  font-weight: 400;
  font-size: 27px;
  line-height: 1.1;
  text-transform: uppercase;
  margin: 40px 0 0;
}

.legal-body h3 { font-size: 17px; margin: 26px 0 0; }
.legal-body p, .legal-body li { color: rgba(245, 239, 233, 0.7); }
.legal-body li { margin-top: 8px; }

/* --- Motion -------------------------------------------------------------- */

@keyframes tv-breathe { 0%, 100% { opacity: 0.5; } 50% { opacity: 1; } }

.breathe { animation: tv-breathe 7s ease-in-out infinite; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .breathe { animation: none; }
  .faq-sign { transition: none; }
}

@media (max-width: 560px) {
  .nav { gap: 14px; font-size: 14px; }
}
