    :root {
      --bg: #08100e;
      --panel: #0e1a18;
      --line: #2a3a37;
      --text: #ece9e2;
      --dim: #9fada9;
      --teal: #24c4b4;
      --amber: #e39444;
      --pink: #e8337f;

      color-scheme: dark;
      box-sizing: border-box;
  }

    *,
    *::before,
    *::after {
      box-sizing: inherit;
    }

    html {
      scroll-behavior: smooth;
      scroll-padding-top: env(safe-area-inset-top, 0px);
    }

    body {
      margin: 0;
      padding-bottom: 90px;
      background: var(--bg);
      color: var(--text);
      font: 17px/1.75 Lora, Georgia, serif;
    }

    a {
      color: var(--amber);
    }

    :focus-visible {
      outline: 2px solid var(--teal);
      outline-offset: 3px;
    }

    nav {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      align-items: center;
      gap: 8px 26px;
      padding: 24px 16px 18px;
      border-bottom: 1px solid var(--line);
    }

    nav a {
      color: var(--dim);
      text-decoration: none;
      font-size: 14px;
      font-family: "Bebas Neue", Impact, sans-serif;
      letter-spacing: 0.12em;
    }

    nav a:hover {
      color: var(--text);
    }

    nav .logo {
      flex-basis: 100%;
      text-align: center;
      font-family: "Bebas Neue", Impact, sans-serif;
      font-size: clamp(34px, 7vw, 48px);
      line-height: 1;
      color: var(--amber);
      letter-spacing: 0.14em;
      margin-bottom: 6px;
    }

    main {
      max-width: 860px;
      margin: 0 auto;
      padding: 40px 20px 72px;
    }

    main > * {
      margin-top: 0;
      margin-bottom: 28px;
    }

    .ban {
      position: relative;
      min-height: 230px;
      display: flex;
      align-items: flex-end;
      padding: 28px;
      background: var(--g);
      overflow: hidden;
    }

    .ban::after {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.65),
        transparent 70%
      );
    }

    .ban h2 {
      position: relative;
      z-index: 1;
      margin: 0;
      font-family: "Bebas Neue", Impact, sans-serif;
      font-weight: 400;
      font-size: clamp(44px, 9vw, 76px);
      line-height: 0.92;
      letter-spacing: 0.02em;
      border-bottom: 2px solid var(--text);
      padding-bottom: 10px;
    }

    .ban.slim {
      min-height: 0;
      padding: 36px 28px 22px;
    }

    .ban.hero {
      min-height: 340px;
      justify-content: center;
      align-items: center;
      text-align: center;
    }

    .ban.hero h1 {
      position: relative;
      z-index: 1;
      margin: 0;
      font-family: "Bebas Neue", Impact, sans-serif;
      font-weight: 400;
      font-size: clamp(56px, 14vw, 130px);
      letter-spacing: 0.14em;
      line-height: 1;
      color: var(--pink);
    }

    .ban.hero small {
      position: relative;
      z-index: 1;
      display: block;
      color: var(--teal);
      letter-spacing: 0.35em;
      font-size: 13px;
      margin-top: 6px;
    }

    p {
      margin: 0 0 1em;
    }

    .cta {
      text-align: center;
    }

    .btn {
      display: inline-block;
      background: var(--amber);
      color: #160d04;
      padding: 14px 30px;
      text-decoration: none;
      font-family: "Bebas Neue", Impact, sans-serif;
      font-size: 22px;
      letter-spacing: 0.1em;
    }

    .btn:hover {
      background: #f0a65a;
    }

    h3.say {
      text-align: center;
      font-family: "Bebas Neue", Impact, sans-serif;
      font-weight: 400;
      font-size: clamp(30px, 5vw, 44px);
      letter-spacing: 0.04em;
      margin-bottom: 20px;
    }

    .video {
      aspect-ratio: 16 / 9;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: 12px;
      background: radial-gradient(
        circle at 30% 30%,
        #173b36,
        #08100e 70%
      );
      border: 1px solid var(--line);
      color: var(--dim);
      text-align: center;
      padding: 16px;
    }

    .play {
      width: 68px;
      height: 68px;
      border-radius: 50%;
      background: var(--amber);
      position: relative;
    }

    .play::after {
      content: "";
      position: absolute;
      left: 27px;
      top: 20px;
      border-left: 22px solid #160d04;
      border-top: 14px solid transparent;
      border-bottom: 14px solid transparent;
    }

    .prog {
      padding: 8px 4px;
    }

    .prog .g {
      color: var(--dim);
      font-size: 15px;
    }

    .prog .n {
      font-family: "Bebas Neue", Impact, sans-serif;
      font-size: 64px;
      line-height: 1.1;
    }

    .track {
      height: 10px;
      background: var(--panel);
      border: 1px solid var(--line);
      margin: 6px 0 10px;
    }

    .track i {
      display: block;
      height: 100%;
      background: var(--amber);
      width: 0;
    }

    .note {
      color: var(--amber);
      font-style: italic;
      font-size: 16px;
    }

    .cast {
      background: #000;
      padding: 28px;
    }

    .cast h2 {
      margin: 0 0 22px;
    }

    .row {
      display: grid;
      grid-template-columns: 120px 1fr;
      gap: 20px;
      margin-bottom: 22px;
      align-items: start;
    }

    .pic {
      aspect-ratio: 3 / 4;
      background: repeating-linear-gradient(
        45deg,
        #0d1917 0 10px,
        #12221f 10px 20px
      );
      border: 1px dashed var(--line);
    }

    .row h3 {
      margin: 0;
      font-family: "Bebas Neue", Impact, sans-serif;
      font-weight: 400;
      font-size: 34px;
      letter-spacing: 0.04em;
    }

    .row em {
      color: var(--amber);
    }

    .row p {
      color: var(--text);
      font-size: 16px;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      margin: 4px 0 0;
    }

    .pie {
      background: var(--panel);
      padding: 24px 28px 12px;
    }

    .pie h3 {
      margin: 0 0 16px;
      font-family: "Bebas Neue", Impact, sans-serif;
      font-weight: 400;
      font-size: 40px;
    }

    .bar {
      display: flex;
      height: 26px;
      margin-bottom: 18px;
    }

    .bar i {
      display: block;
      height: 100%;
    }

    .rows {
      list-style: none;
      margin: 0;
      padding: 0;
    }

    .rows li {
      display: flex;
      justify-content: space-between;
      gap: 12px;
      padding: 10px 0;
      border-bottom: 1px solid var(--line);
    }

    .rows li b {
      font-weight: 400;
    }

    .rows li span:first-child::before {
      content: "";
      display: inline-block;
      width: 12px;
      height: 12px;
      background: var(--c);
      margin-right: 12px;
    }

    .math {
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 24px;
      background: #000;
      padding: 32px;
      align-items: center;
    }

    .math h3 {
      margin: 0;
      font-family: "Bebas Neue", Impact, sans-serif;
      font-weight: 400;
      font-size: clamp(44px, 8vw, 68px);
      line-height: 0.95;
      border-bottom: 2px solid var(--text);
      padding-bottom: 10px;
      display: inline-block;
    }

    .math p.s {
      color: var(--amber);
      font-size: 19px;
      font-weight: 700;
      margin: 14px 0 0;
      line-height: 1.4;
    }

    .eq {
      font-family: "Bebas Neue", Impact, sans-serif;
      font-size: 26px;
      line-height: 1.5;
      letter-spacing: 0.03em;
      white-space: nowrap;
    }

    .eq b {
      font-weight: 400;
      color: var(--amber);
      font-size: 32px;
    }

    .eq hr {
      border: 0;
      border-top: 1px solid var(--text);
      margin: 6px 0;
    }

    .tier {
      margin-bottom: 22px;
    }

    .tier strong {
      color: var(--amber);
      font-family: "Bebas Neue", Impact, sans-serif;
      font-size: 26px;
      font-weight: 400;
      letter-spacing: 0.05em;
    }

    .tier b {
      font-size: 18px;
    }

    .tier p {
      color: var(--dim);
      margin: 2px 0 0;
      font-size: 16px;
    }

    .stat {
      display: flex;
      gap: 28px;
      flex-wrap: wrap;
      margin: 20px 0 0;
    }

    .stat div {
      border: 1px solid var(--line);
      padding: 14px 20px;
    }

    .stat b {
      display: block;
      font-family: "Bebas Neue", Impact, sans-serif;
      font-weight: 400;
      font-size: 38px;
      color: var(--teal);
      line-height: 1;
    }

    .crew p {
      margin-bottom: 0.9em;
    }

    .crew strong {
      color: var(--amber);
    }

    footer {
      border-top: 1px solid var(--line);
      padding: 32px 20px;
      text-align: center;
      color: var(--dim);
      font-size: 14px;
    }

    footer p {
      max-width: 70ch;
      margin: 0 auto 10px;
    }

    .early {
      border: 1px solid var(--pink);
      padding: 16px 20px;
      color: var(--text);
    }

    .early b {
      color: var(--pink);
      font-family: "Bebas Neue", Impact, sans-serif;
      font-weight: 400;
      font-size: 26px;
      letter-spacing: 0.06em;
      display: block;
      line-height: 1.1;
    }

    .tl {
      list-style: none;
      margin: 0;
      padding: 0;
      counter-reset: t;
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
      gap: 12px;
    }

    .tl li {
      counter-increment: t;
      border-top: 3px solid var(--teal);
      padding-top: 10px;
      font-size: 15px;
      line-height: 1.4;
    }

    .tl li::before {
      content: "0" counter(t);
      display: block;
      font-family: "Bebas Neue", Impact, sans-serif;
      font-size: 28px;
      color: var(--teal);
    }

    .tl .d {
      display: block;
      margin-top: 6px;
      color: var(--amber);
      font-family: "Bebas Neue", Impact, sans-serif;
      font-size: 20px;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .tl li.now {
      border-color: var(--amber);
    }

    .tl li.now::before {
      color: var(--amber);
    }

    details {
      border-bottom: 1px solid var(--line);
      padding: 14px 0;
    }

    summary {
      cursor: pointer;
      font-family: "Bebas Neue", Impact, sans-serif;
      font-size: 26px;
      letter-spacing: 0.04em;
    }

    details p {
      margin: 10px 0 0;
      color: var(--dim);
    }

    .sg {
      display: flex;
      gap: 16px;
      align-items: baseline;
      padding: 10px 0;
      border-bottom: 1px solid var(--line);
    }

    .sg.on b {
      color: var(--teal);
    }

    .sg.on span::after {
      content: " UNLOCKED";
      color: var(--teal);
      font-family: "Bebas Neue", Impact, sans-serif;
      letter-spacing: 0.08em;
      margin-left: 8px;
    }

    .sg b {
      font-family: "Bebas Neue", Impact, sans-serif;
      font-weight: 400;
      font-size: 30px;
      color: var(--amber);
      min-width: 110px;
    }

    .sticky {
      position: fixed;
      left: 0;
      right: 0;
      bottom: 0;
      z-index: 9;
      background: rgba(8, 16, 14, 0.94);
      border-top: 1px solid var(--line);
      padding: 10px 16px calc(10px + env(safe-area-inset-bottom, 0px));
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 12px;
    }

    .sticky span {
      font-size: 14px;
      color: var(--dim);
    }

    .sticky .btn {
      padding: 8px 20px;
      font-size: 20px;
    }

    .social {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      margin: 0 0 28px;
    }

    .social a {
      border: 1px solid var(--dim);
      color: var(--text);
      text-decoration: none;
      padding: 8px 18px;
      font-family: "Bebas Neue", Impact, sans-serif;
      font-size: 22px;
      letter-spacing: 0.1em;
    }

    .social a:hover {
      border-color: var(--amber);
      color: var(--amber);
    }

    .wall {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
      gap: 10px 24px;
      border: 1px solid var(--line);
      background: var(--panel);
      padding: 24px 28px;
    }

    .wall span {
      font-family: "Bebas Neue", Impact, sans-serif;
      font-size: 26px;
      letter-spacing: 0.06em;
      line-height: 1.2;
    }

    .wall span::before {
      content: "\2605";
      color: var(--amber);
      margin-right: 8px;
      font-size: 18px;
    }

    .wall p {
      grid-column: 1 / -1;
      margin: 0;
      color: var(--dim);
      font-style: italic;
    }

    .herobanner {
      display: block;
      width: 100%;
      height: auto;
    }

    .sr {
      position: absolute;
      width: 1px;
      height: 1px;
      margin: -1px;
      padding: 0;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }

    .vid {
      aspect-ratio: 16 / 9;
      width: 100%;
      background: #000;
    }

    .vid iframe {
      width: 100%;
      height: 100%;
      border: 0;
      display: block;
    }

    @media (max-width: 620px) {
      .math {
        grid-template-columns: 1fr;
      }

      .row {
        grid-template-columns: 84px 1fr;
      }

      .ban {
        min-height: 190px;
        padding: 20px;
      }

      .ban.slim {
        padding: 28px 20px 18px;
      }

      .sticky span {
        font-size: 12px;
      }

      .sticky .btn {
        padding: 8px 14px;
        font-size: 18px;
      }

      .wall {
        padding: 20px;
        grid-template-columns: 1fr;
      }
    }

    .give{display:inline-block;margin-top:10px;background:var(--amber);color:#160d04;padding:6px 20px;text-decoration:none;font-family:'Bebas Neue',Impact,sans-serif;font-size:22px;letter-spacing:.08em}
.give:hover{background:#f0a65a}
.give[hidden]{display:none}
.give.any{font-size:26px;padding:10px 30px}

.clock{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 18px;border:1px solid var(--pink);padding:10px 16px}
.clock-label{font-family:'Bebas Neue',Impact,sans-serif;font-size:26px;letter-spacing:.14em;color:var(--pink);line-height:1}
.clock-time{display:flex;align-items:baseline;gap:3px}
.clock-time b{font-family:'Bebas Neue',Impact,sans-serif;font-weight:400;font-size:42px;line-height:1;color:var(--amber);font-variant-numeric:tabular-nums}
.clock-time b:not(:first-child){margin-left:12px}
.clock-time i{font-style:normal;font-family:'Bebas Neue',Impact,sans-serif;font-size:18px;letter-spacing:.08em;color:var(--dim)}