@font-face { font-family: "New Rocker"; src: url(/assets/fonts/new-rocker.woff2) format("woff2"); font-display: swap; }
  @font-face { font-family: "Grenze Gotisch"; src: url(/assets/fonts/grenze-gotisch.woff2) format("woff2"); font-display: swap; }
  @font-face { font-family: "Metal Mania"; src: url(/assets/fonts/metal-mania.woff2) format("woff2"); font-display: swap; }
  @font-face { font-family: "UnifrakturCook"; src: url(/assets/fonts/unifrakturcook.woff2) format("woff2"); font-display: swap; }
  @font-face { font-family: "Pirata One"; src: url(/assets/fonts/pirata-one.woff2) format("woff2"); font-display: swap; }
  @font-face { font-family: "Tiro Devanagari Hindi"; src: url(/assets/fonts/tiro-deva.woff2) format("woff2"); font-display: swap; unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+25CC, U+A830-A839, U+A8E0-A8FF; }
  @font-face { font-family: "Hanken Grotesk"; font-weight: 400; src: url(/assets/fonts/hanken-400.woff2) format("woff2"); font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
  @font-face { font-family: "Hanken Grotesk"; font-weight: 400; src: url(/assets/fonts/hanken-ext-400.woff2) format("woff2"); font-display: swap; unicode-range: U+0100-024F, U+20A0-20C0, U+2113; }
  @font-face { font-family: "Hanken Grotesk"; font-weight: 600; src: url(/assets/fonts/hanken-600.woff2) format("woff2"); font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
  @font-face { font-family: "Hanken Grotesk"; font-weight: 600; src: url(/assets/fonts/hanken-ext-600.woff2) format("woff2"); font-display: swap; unicode-range: U+0100-024F, U+20A0-20C0, U+2113; }
  @font-face { font-family: "Hanken Grotesk"; font-weight: 700; src: url(/assets/fonts/hanken-700.woff2) format("woff2"); font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
  @font-face { font-family: "Hanken Grotesk"; font-weight: 700; src: url(/assets/fonts/hanken-ext-700.woff2) format("woff2"); font-display: swap; unicode-range: U+0100-024F, U+20A0-20C0, U+2113; }
  @font-face { font-family: "Hanken Grotesk"; font-weight: 800; src: url(/assets/fonts/hanken-800.woff2) format("woff2"); font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
  @font-face { font-family: "Hanken Grotesk"; font-weight: 800; src: url(/assets/fonts/hanken-ext-800.woff2) format("woff2"); font-display: swap; unicode-range: U+0100-024F, U+20A0-20C0, U+2113; }
  :root {
    color-scheme: dark;
    --black: #050505;
    --panel: #0E0B0B;
    --panel-2: #151010;
    --rule: #2B1A1A;
    --paper: #ECE6DC;
    --muted: #958C83;
    --gold: #B3161A;
    --gold-bright: #E8343A;
    --gold-ink: #050505;
    --glow: #3DF2C4;
    --display: "Pirata One", "UnifrakturCook", Georgia, serif;
    --body: "Hanken Grotesk", "Segoe UI", system-ui, -apple-system, sans-serif;
    --mono: "Hanken Grotesk", "Segoe UI", system-ui, -apple-system, sans-serif;
    --deva: "Tiro Devanagari Hindi", "Noto Serif Devanagari", "Mangal", serif;
    --wrap: 1160px;
    --gutter: clamp(16px, 4vw, 40px);
    --radius: 4px;
  }
  [hidden] { display: none !important; }
  html.wait main, html.wait footer { visibility: hidden; }
  html.wait .hero-art { visibility: visible; } /* static image: paint it at once (LCP) */
  img { max-width: 100%; }
  html { background: var(--black); }
  body {
    background: var(--black);
    color: var(--paper);
    font-family: var(--body);
    font-size: 16px;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
  }
  a { color: inherit; }
  :focus-visible { outline: 2px solid var(--gold-bright); outline-offset: 3px; border-radius: 2px; }
  .wrap { max-width: var(--wrap); margin-inline: auto; padding-inline: var(--gutter); }
  .mono { font-family: var(--mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
  h1, h2, h3 { font-family: var(--display); font-weight: 800; line-height: .95; letter-spacing: .01em; text-wrap: balance; margin: 0; }
  h2 { font-size: clamp(40px, 6vw, 64px); text-transform: uppercase; }
  h3 { font-size: 26px; text-transform: uppercase; letter-spacing: .02em; }
  p { margin: 0; }
  .lede { color: var(--muted); max-width: 60ch; font-size: 17px; }

  /* Buttons */
  .btn {
    display: inline-flex; align-items: center; justify-content: center; gap: 10px;
    font-family: var(--mono); font-size: 13px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase;
    padding: 14px 20px; border-radius: var(--radius); text-decoration: none; cursor: pointer;
    border: 1px solid var(--gold); transition: background .2s, color .2s, border-color .2s;
  }
  .btn-gold { background: var(--gold); color: var(--gold-ink); }
  .btn-gold:hover { background: var(--gold-bright); border-color: var(--gold-bright); }
  .btn-ghost { background: transparent; color: var(--paper); border-color: var(--rule); }
  .btn-ghost:hover { border-color: var(--gold); color: var(--gold-bright); }

  /* Header + transport strip */
  header.top {
    position: sticky; top: env(safe-area-inset-top, 0px); z-index: 20;
    background: color-mix(in srgb, var(--black) 88%, transparent);
    backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
    border-bottom: 1px solid var(--rule);
  }
  .top-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-block: 12px; }
  .brand { display: flex; align-items: baseline; gap: 8px; text-decoration: none; }
  .brand .sb-mark { align-self: center; height: 30px; width: auto; display: block; }
  .brand b { font-family: var(--display); font-weight: 900; font-size: 24px; letter-spacing: .06em; }
  .brand span { font-family: var(--mono); font-size: 11px; letter-spacing: .18em; color: var(--gold); text-transform: uppercase; }
  nav.links { display: flex; gap: 22px; }
  nav.links a { font-family: var(--mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); text-decoration: none; }
  nav.links a:hover { color: var(--paper); }
  .top .btn { padding: 10px 14px; font-size: 12px; }
  .transport {
    display: flex; align-items: center; gap: 14px; flex-wrap: wrap;
    border-top: 1px solid var(--rule); padding-block: 7px;
    font-family: var(--mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted);
  }
  .rec { width: 8px; height: 8px; border-radius: 50%; background: var(--muted); flex: none; }
  .rec.on { background: var(--gold-bright); box-shadow: 0 0 0 4px color-mix(in srgb, var(--gold) 25%, transparent); animation: pulse 2.4s ease-in-out infinite; }
  @keyframes pulse { 50% { box-shadow: 0 0 0 7px color-mix(in srgb, var(--gold) 5%, transparent); } }
  .transport strong { color: var(--paper); font-weight: 600; }
  .transport .sep { color: var(--rule); }

  /* Hero */
  .hero { display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(24px, 4vw, 56px); align-items: center; padding-block: clamp(36px, 6vw, 72px) clamp(40px, 6vw, 80px); }
  .hero .eyebrow { color: var(--gold); margin-bottom: 18px; }
  .wordmark { font-size: clamp(64px, 11vw, 148px); font-weight: 900; line-height: .84; letter-spacing: .005em; text-transform: uppercase; }
  .wordmark .studios { display: block; font-family: var(--mono); font-weight: 400; font-size: clamp(13px, 1.4vw, 16px); letter-spacing: .5em; color: var(--muted); margin-top: 14px; }
  .promise { font-size: clamp(19px, 2vw, 23px); margin-top: 26px; max-width: 28ch; line-height: 1.35; }
  .deva { font-family: var(--deva); font-size: 20px; color: var(--gold); margin-top: 14px; }
  .deva small { font-family: var(--body); font-size: 14px; color: var(--muted); margin-left: 8px; }
  .hero-cta { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 30px; }
  .hero-photo { position: relative; border-radius: var(--radius); overflow: hidden; border: 1px solid var(--rule); aspect-ratio: 4 / 3; max-width: 100%; }
  .hero-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 45% 30%; display: block; }
  .hero-photo figcaption {
    position: absolute; left: 0; right: 0; bottom: 0; padding: 12px 14px;
    background: linear-gradient(to top, rgba(12,11,10,.9), rgba(12,11,10,0));
    font-family: var(--mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--paper);
  }

  .about { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: clamp(28px, 5vw, 64px); align-items: start; }
  .story p { margin: 0 0 16px; font-size: 17px; line-height: 1.7; color: #D9D1C3; max-width: 62ch; }
  .story p:first-child { font-size: clamp(19px, 2.2vw, 22px); color: var(--paper); line-height: 1.55; }
  .story .hero-line { font-family: var(--display); font-weight: 800; font-size: clamp(20px, 2.4vw, 26px); text-transform: uppercase; letter-spacing: .01em; line-height: 1.15; color: var(--paper); border-left: 2px solid var(--gold); padding-left: 16px; }
  .story .founder { margin: 20px 0 0; padding: 18px 20px; background: var(--panel); border: 1px solid var(--rule); border-radius: var(--radius); font-size: 17px; line-height: 1.6; color: var(--paper); font-style: italic; }
  .story .founder .founder-links { display: block; margin-top: 8px; font-style: normal; font-size: 14px; color: var(--muted); }
  .story .founder .founder-links a { color: var(--gold-bright); }
  .story .founder cite { display: block; margin-top: 10px; font-style: normal; font-family: var(--mono); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--gold); }
  .story .sign { font-family: var(--mono); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--gold); margin-top: 8px; }
  .pillars { display: grid; gap: 12px; }
  .pillar { border: 1px solid var(--rule); border-left: 2px solid var(--gold); border-radius: var(--radius); padding: 18px 20px; background: var(--panel); }
  .pillar b { display: block; font-family: var(--display); font-weight: 800; font-size: 20px; text-transform: uppercase; letter-spacing: .02em; margin-bottom: 4px; }
  .pillar span { color: var(--muted); font-size: 15px; }
  .proof { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: clamp(28px, 4vw, 40px); border-top: 1px solid var(--rule); padding-top: clamp(20px, 3vw, 28px); }
  .proof div b { display: block; font-family: var(--display); font-weight: 900; font-size: clamp(28px, 4vw, 40px); color: var(--gold-bright); line-height: 1; }
  .proof div span { color: var(--muted); font-size: 14px; }
  .motto { margin: clamp(28px, 4vw, 44px) 0 0; padding-top: clamp(20px, 3vw, 28px); border-top: 1px solid var(--rule); font-family: var(--display); font-weight: 900; font-size: clamp(26px, 4vw, 44px); text-transform: uppercase; letter-spacing: .01em; line-height: 1; color: var(--gold-bright); }
  @media (max-width: 760px) { .about, .proof { grid-template-columns: 1fr; } }
  section.block { padding-block: clamp(48px, 7vw, 96px); border-top: 1px solid var(--rule); }
  .head { display: grid; gap: 14px; margin-bottom: clamp(24px, 4vw, 40px); }
  .head .mono { color: var(--gold); }

  /* Slot board */
  .board { position: relative; border: 1px solid var(--rule); border-radius: var(--radius); background: var(--panel); overflow: hidden; }
  .board-inner { padding: clamp(18px, 3vw, 32px); display: grid; gap: 24px; }
  .board-top { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; flex-wrap: wrap; }
  .batch-title { font-family: var(--display); font-weight: 900; font-size: clamp(34px, 5vw, 52px); text-transform: uppercase; line-height: .9; }
  .state-pill { display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px; border-radius: 999px; border: 1px solid var(--rule); font-family: var(--mono); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; }
  .state-pill.open { border-color: var(--gold); color: var(--gold-bright); }
  .slots { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; }
  .slot { border: 1px solid var(--rule); border-radius: var(--radius); padding: 14px; display: grid; gap: 6px; min-height: 96px; background: var(--panel-2); }
  .slot .n { font-family: var(--mono); font-size: 11px; letter-spacing: .12em; color: var(--muted); }
  .slot .v { font-family: var(--display); font-weight: 800; font-size: 24px; text-transform: uppercase; line-height: 1; }
  .slot.open { border-color: var(--gold); border-style: dashed; }
  .slot.open .v { color: var(--gold-bright); }
  .slot.booked .v { color: var(--paper); }
  .slot.held .v { color: var(--gold-bright); }
  .slot .who { font-size: 14px; color: var(--muted); }
  .board-stats { display: flex; gap: 28px; flex-wrap: wrap; font-variant-numeric: tabular-nums; }
  .stat .k { font-family: var(--mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
  .stat .val { font-family: var(--display); font-weight: 800; font-size: 34px; line-height: 1.05; }
  .stat .val em { font-style: normal; color: var(--gold-bright); }
  .board-foot { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; border-top: 1px solid var(--rule); padding-top: 18px; }
  .board-foot p { color: var(--muted); font-size: 15px; max-width: 58ch; }

  .shutter {
    position: absolute; inset: 0; z-index: 3; pointer-events: none;
    background:
      repeating-linear-gradient(to bottom, #221F18 0 26px, #1A1812 26px 28px, #2B271F 28px 30px);
    border-bottom: 3px solid var(--gold);
    display: flex; align-items: flex-end; justify-content: center; padding-bottom: 18px;
    transform: translateY(0); transition: transform 1.1s cubic-bezier(.7, 0, .2, 1);
  }
  .shutter span { font-family: var(--mono); font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--muted); background: var(--black); padding: 6px 12px; border-radius: 4px; }
  .shutter.up { transform: translateY(calc(-100% + 6px)); }
  .shutter.up span { opacity: 0; }

  /* Pricing */
  .tiers { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
  .tier { --tp: clamp(18px, 3vw, 28px); overflow: hidden; border: 1px solid var(--rule); border-radius: var(--radius); padding: var(--tp); display: grid; gap: 14px; align-content: start; background: var(--panel); }
  .tier.feature { border-color: var(--gold); }
  .tier .plaque { display: block; margin: calc(-1 * var(--tp)) calc(-1 * var(--tp)) 4px; border-bottom: 1px solid var(--rule); background: #0C0B0A; }
  .tier .plaque img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; object-position: center 55%; }
  .tier.feature .plaque { border-bottom-color: var(--gold); }
  .tier .tag { font-family: var(--mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--gold); }
  .price { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; font-variant-numeric: tabular-nums; }
  .price b { font-family: var(--display); font-weight: 900; font-size: 46px; line-height: 1; }
  .price .after { font-size: 14px; color: var(--muted); }
  .tier ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; }
  .tier li { padding-left: 20px; position: relative; font-size: 15px; }
  .tier li::before { content: ""; position: absolute; left: 0; top: .72em; width: 10px; height: 1px; background: var(--gold); }
  .tier .js-tier { justify-self: start; margin-top: 4px; }
  .tier .prem { display: inline-block; background: var(--gold); color: #17130A; font-weight: 700; padding: 2px 8px; border-radius: 3px; margin-right: 8px; letter-spacing: .14em; }
  .tier .know { border-top: 1px solid var(--rule); padding-top: 12px; }
  .tier .know summary { cursor: pointer; font-family: var(--mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--gold); list-style: none; }
  .tier .know summary::-webkit-details-marker { display: none; }
  .tier .know summary::after { content: " +"; }
  .tier .know[open] summary::after { content: " −"; }
  .tier .know ul { margin-top: 12px; }
  .tier .pay { font-size: 13px; color: var(--muted); border-top: 1px solid var(--rule); padding-top: 12px; }
  .addons { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 16px; }
  .addon { border: 1px dashed var(--rule); border-radius: var(--radius); padding: 18px 20px; display: flex; justify-content: space-between; gap: 16px; align-items: baseline; flex-wrap: wrap; }
  .addon b { font-family: var(--display); font-size: 24px; font-weight: 800; text-transform: uppercase; }
  .addon span { color: var(--muted); font-size: 15px; }
  .launch-note { margin-top: 20px; font-size: 15px; color: var(--muted); display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
  .launch-note strong { color: var(--paper); font-variant-numeric: tabular-nums; }

  /* Tracklist */
  .tracks { border-top: 1px solid var(--rule); }
  .track { display: grid; grid-template-columns: 56px minmax(0, 1fr) auto; gap: 16px; align-items: center; padding-block: 16px; border-bottom: 1px solid var(--rule); }
  .track .no { font-family: var(--mono); font-size: 12px; color: var(--muted); }
  .track .t { font-family: var(--display); font-weight: 800; font-size: 26px; text-transform: uppercase; line-height: 1; }
  .track .meta { font-size: 14px; color: var(--muted); margin-top: 4px; }
  .track a.listen { font-family: var(--mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--gold-bright); text-decoration: none; border: 1px solid var(--rule); padding: 9px 12px; border-radius: var(--radius); white-space: nowrap; }
  .track a.listen:hover { border-color: var(--gold); }
  .sub { font-family: var(--mono); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); margin: 36px 0 8px; }

  /* Process */
  .steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; border: 1px solid var(--rule); border-radius: var(--radius); overflow: hidden; }
  .steps li { padding: 20px; display: grid; gap: 8px; align-content: start; border-right: 1px solid var(--rule); border-bottom: 1px solid var(--rule); background: var(--panel); }
  .steps li:nth-child(4n) { border-right: 0; }
  .steps li:nth-last-child(-n+4) { border-bottom: 0; }
  .steps .sn { font-family: var(--mono); font-size: 12px; color: var(--gold); }
  .steps b { font-family: var(--display); font-weight: 800; font-size: 22px; text-transform: uppercase; line-height: 1.05; }
  .steps p { font-size: 14px; color: var(--muted); }

  /* Tracker */
  .tracker { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: clamp(20px, 4vw, 48px); align-items: start; }
  .lookup { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 18px; }
  .lookup input {
    flex: 1 1 180px; min-width: 0; background: var(--panel); color: var(--paper); border: 1px solid var(--rule); border-radius: var(--radius);
    padding: 13px 14px; font-family: var(--mono); font-size: 15px; letter-spacing: .08em; text-transform: uppercase;
  }
  .lookup input::placeholder { color: #6E6657; }
  .hint { font-size: 14px; color: var(--muted); margin-top: 12px; }
  .hint button { background: none; border: 0; padding: 0; color: var(--gold-bright); font: inherit; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
  .result { border: 1px solid var(--rule); border-radius: var(--radius); background: var(--panel); padding: clamp(18px, 3vw, 28px); display: grid; gap: 18px; }
  .result .rtop { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; align-items: baseline; }
  .result .code { font-family: var(--mono); font-size: 14px; letter-spacing: .1em; color: var(--gold-bright); }
  .result .demo { font-family: var(--mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--gold-ink); background: var(--gold); padding: 3px 8px; border-radius: 3px; }
  .chain { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; }
  .chain li { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 12px; align-items: start; position: relative; padding-bottom: 14px; }
  .chain li::before { content: ""; position: absolute; left: 10px; top: 20px; bottom: 0; width: 2px; background: var(--rule); }
  .chain li:last-child::before { display: none; }
  .chain li.done::before { background: var(--gold); }
  .dot { width: 22px; height: 22px; border-radius: 50%; border: 2px solid var(--rule); background: var(--black); position: relative; z-index: 1; }
  .chain li.done .dot { background: var(--gold); border-color: var(--gold); }
  .chain li.now .dot { border-color: var(--gold-bright); box-shadow: 0 0 0 4px color-mix(in srgb, var(--gold) 22%, transparent); }
  .chain .lbl { font-size: 15px; padding-top: 1px; }
  .chain li:not(.done):not(.now) .lbl { color: var(--muted); }
  .chain li.now .lbl { color: var(--gold-bright); font-weight: 600; }
  .dates { display: flex; gap: 24px; flex-wrap: wrap; font-size: 14px; color: var(--muted); }
  .dates b { color: var(--paper); font-weight: 600; }
  .empty { color: var(--muted); font-size: 15px; }
  .payments { border-top: 1px solid var(--rule); padding-top: 16px; display: grid; gap: 10px; }
  .payments .ph { font-family: var(--mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
  .payrow { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; font-variant-numeric: tabular-nums; }
  .payrow .pl { font-size: 15px; }
  .payrow .paid { font-family: var(--mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--gold); }
  .payrow .later { font-size: 14px; color: var(--muted); }
  .payrow .btn { padding: 10px 14px; font-size: 12px; }
  .payrow .btn[aria-disabled="true"] { opacity: .55; pointer-events: none; }
  .secure { font-size: 13px; color: var(--muted); }
  .paybox { border: 1px solid var(--rule); border-radius: var(--radius); padding: 14px; display: grid; gap: 10px; background: var(--panel-2); }
  .paybox .opts { display: flex; gap: 10px; flex-wrap: wrap; }
  .paybox .btn { padding: 10px 14px; font-size: 12px; }
  .paybox .btn[aria-disabled="true"] { opacity: .55; pointer-events: none; }
  .upi { display: grid; gap: 8px; font-size: 14px; color: var(--muted); }
  .upi code { font-family: var(--mono); font-size: 14px; color: var(--paper); background: var(--black); border: 1px solid var(--rule); border-radius: 4px; padding: 6px 10px; user-select: all; overflow-wrap: anywhere; }
  .upi .row { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
  .upi img { width: 140px; height: 140px; background: #fff; border-radius: 4px; padding: 6px; }
  footer nav { display: flex; gap: 18px; flex-wrap: wrap; }
  footer nav a { color: var(--muted); text-decoration: none; }
  footer nav a:hover { color: var(--paper); }

  /* FAQ */
  .faq { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 40px; }
  .faq details { border-top: 1px solid var(--rule); padding-block: 16px; }
  .faq summary { cursor: pointer; font-weight: 600; font-size: 17px; list-style: none; display: flex; justify-content: space-between; gap: 16px; }
  .faq summary::-webkit-details-marker { display: none; }
  .faq summary::after { content: "+"; font-family: var(--mono); color: var(--gold); }
  .faq details[open] summary::after { content: "–"; }
  .faq details p { color: var(--muted); font-size: 15px; margin-top: 10px; max-width: 60ch; }

  /* Request */
  .request { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: clamp(20px, 4vw, 48px); align-items: start; }
  .emailbox { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-top: 18px; }
  .emailbox code { font-family: var(--mono); font-size: 16px; background: var(--panel); border: 1px solid var(--rule); border-radius: var(--radius); padding: 12px 14px; user-select: all; overflow-wrap: anywhere; }
  .template { background: var(--panel); border: 1px solid var(--rule); border-radius: var(--radius); padding: 18px 20px; }
  .template pre { margin: 0; white-space: pre-wrap; font-family: var(--mono); font-size: 13px; line-height: 1.75; color: var(--paper); user-select: all; }
  .template .row { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 12px; flex-wrap: wrap; }
  .toast { font-family: var(--mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--gold-bright); min-height: 1.2em; }
  .socials { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 22px; }

  dialog.book { width: min(560px, calc(100vw - 32px)); max-height: calc(100vh - 32px); padding: 0; border: 1px solid var(--gold); border-radius: var(--radius); background: var(--panel); color: var(--paper); overflow: auto; }
  .paid-hero { text-align: center; padding: 8px 0 4px; }
  .paid-tick { width: 64px; height: 64px; margin: 0 auto 12px; border-radius: 50%; border: 2px solid var(--gold); display: grid; place-items: center; color: var(--gold-bright); font-size: 30px; }
  .paid-hero h3 { font-size: clamp(26px, 5vw, 34px); }
  .paid-hero .amt { font-family: var(--display); font-weight: 900; font-size: 40px; color: var(--gold-bright); margin-top: 6px; }
  .rcpt { display: grid; gap: 0; border: 1px solid var(--rule); border-radius: var(--radius); margin: 18px 0; }
  .rcpt div { display: flex; justify-content: space-between; gap: 12px; padding: 10px 14px; border-top: 1px solid var(--rule); font-size: 14px; }
  .rcpt div:first-child { border-top: 0; }
  .rcpt dt { color: var(--muted); } .rcpt dd { margin: 0; text-align: right; font-variant-numeric: tabular-nums; word-break: break-all; }
  .paid-next { font-size: 15px; color: #D9D1C3; }
  .paid-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 14px; }
  .inv-link { font-family: var(--mono); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--gold); background: none; border: 0; padding: 0; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
  dialog.book::backdrop { background: rgba(6, 5, 4, .78); }
  .book-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; padding: 20px 22px 0; }
  .book-head h3 { font-size: 34px; margin-top: 6px; }
  .book-x { background: none; border: 1px solid var(--rule); color: var(--paper); border-radius: var(--radius); width: 36px; height: 36px; font-size: 20px; line-height: 1; cursor: pointer; flex: none; }
  .book-x:hover { border-color: var(--gold); }
  .book-body { padding: 16px 22px 22px; display: grid; gap: 18px; }
  .duet { display: flex; gap: 10px; align-items: center; font-size: 15px; cursor: pointer; }
  .duet input { width: 18px; height: 18px; accent-color: var(--gold); }
  .sched { border: 1px solid var(--rule); border-radius: var(--radius); font-variant-numeric: tabular-nums; }
  .sched div { display: flex; justify-content: space-between; gap: 12px; padding: 10px 14px; border-top: 1px solid var(--rule); font-size: 15px; }
  .sched div:first-child { border-top: 0; }
  .sched .now { background: color-mix(in srgb, var(--gold) 12%, transparent); color: var(--gold-bright); font-weight: 600; }
  .sched .muted { color: var(--muted); }
  footer .heritage { text-align: center; margin: 0 auto 14px; padding-inline: 16px; max-width: 60ch; font-size: 13px; letter-spacing: .02em; color: var(--muted); font-style: italic; }
  .bstep { display: grid; gap: 10px; }
  .agree { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; line-height: 1.45; cursor: pointer; }
  .agree input { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--gold); flex: none; }
  .agree a { color: var(--gold); }
  .bstep .btn[aria-disabled="true"] { opacity: .55; }
  .bstep .sh { font-family: var(--mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--gold); }
  .ref { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 14px; color: var(--muted); }
  .ref code { font-family: var(--mono); font-size: 15px; color: var(--paper); background: var(--black); border: 1px solid var(--rule); border-radius: 4px; padding: 6px 10px; user-select: all; letter-spacing: .06em; }
  .small { font-size: 13px; color: var(--muted); }
  .small a { color: var(--gold-bright); }
  .paymsg { font-size: 14px; min-height: 1.2em; }
  .paymsg.ok { color: var(--gold-bright); font-weight: 600; }
  .paymsg.err { color: #E58C6E; }
  .qnote { font-size: 14px; color: var(--muted); border-left: 2px solid var(--gold); padding-left: 12px; }
  footer { border-top: 1px solid var(--rule); padding-block: 28px; color: var(--muted); font-size: 14px; }
  footer .wrap { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; }

  @media (max-width: 900px) {
    nav.links { display: none; }
    .hero, .tracker, .request { grid-template-columns: 1fr; }
    .hero-photo { order: -1; }
    .steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .steps li:nth-child(4n) { border-right: 1px solid var(--rule); }
    .steps li:nth-child(2n) { border-right: 0; }
    .steps li:nth-last-child(-n+4) { border-bottom: 1px solid var(--rule); }
    .steps li:nth-last-child(-n+2) { border-bottom: 0; }
  }
  @media (max-width: 640px) {
    .tiers, .addons, .faq { grid-template-columns: 1fr; }
    .steps { grid-template-columns: 1fr; }
    .steps li, .steps li:nth-child(2n) { border-right: 0; border-bottom: 1px solid var(--rule); }
    .steps li:last-child { border-bottom: 0; }
    .track { grid-template-columns: 36px minmax(0, 1fr); }
    .track a.listen { grid-column: 2; justify-self: start; }
    .top .btn { display: none; }
  }
  @media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation: none !important; transition: none !important; }
  }

  /* ===== v2: venom identity ===== */
  body { background: radial-gradient(1100px 760px at 88% 0%, rgba(110, 8, 8, .30), transparent 62%), var(--black); background-attachment: fixed; }
  :focus-visible { outline-color: var(--glow); }
  .mono, nav.links a, .btn, .transport, .tier .tag, .tier .know summary, .slot .n, .stat .k, .state-pill, .shutter span,
  .track .no, .track a.listen, .sub, .steps .sn, .story .founder cite, .toast, .payments .ph, .inv-link, .bstep .sh,
  .result .demo, .founder-photo figcaption, .payrow .paid { font-family: var(--mono); font-weight: 700; }
  .head .mono, .tier .tag, .tier .know summary, .steps .sn, .story .founder cite, .bstep .sh { color: var(--gold-bright); }
  .btn { border-color: var(--gold); }
  .btn-gold { background: var(--glow); border-color: var(--glow); color: #050505; box-shadow: 0 0 18px rgba(61, 242, 196, .28); }
  .btn-gold:hover { background: #7DF8DA; border-color: #7DF8DA; box-shadow: 0 0 26px rgba(61, 242, 196, .5); }
  .btn-ghost { border-color: var(--gold); }
  .btn-ghost:hover { border-color: var(--gold-bright); color: var(--paper); background: rgba(179, 22, 26, .12); }

  h1, h2, h3, .batch-title, .pillar b, .track .t, .steps b, .addon b, .motto, .story .hero-line, .slot .v, .brand b, .close-line {
    font-family: var(--display); font-weight: 400; text-transform: none; letter-spacing: .005em;
  }
  h2 { font-size: clamp(44px, 6.4vw, 76px); line-height: .95; }
  h3 { font-size: clamp(38px, 4vw, 48px); line-height: 1; }
  .brand b { font-size: 32px; letter-spacing: .01em; }
  .price b, .stat .val, .proof div b, .paid-hero .amt { font-family: var(--mono); font-weight: 800; }
  .proof div b { color: var(--gold-bright); }

  /* hero */
  .hero { grid-template-columns: 1.1fr 1fr; padding-block: clamp(28px, 5vw, 64px) clamp(36px, 5vw, 72px); }
  .hero .eyebrow { font-family: var(--mono); font-weight: 700; font-size: 14px; letter-spacing: .14em; text-transform: uppercase; color: var(--gold-bright); margin-bottom: 18px; }
  .sig { font-family: "DejaVu Sans", "Segoe UI Symbol", sans-serif; margin-right: 6px; }
  .venom-h1 { font-family: var(--display); font-weight: 400; font-size: clamp(50px, 6.2vw, 90px); line-height: .94; margin: 0; }
  .venom-h1 span { display: block; }
  .venom-h1 .red { color: var(--gold-bright); text-shadow: 0 0 40px rgba(232, 52, 58, .35); }
  .deva { font-size: clamp(26px, 3vw, 34px); color: var(--paper); margin-top: 22px; }
  .deva small { display: block; margin: 4px 0 0; font-size: 14px; }
  .promise { color: var(--muted); font-size: clamp(17px, 1.6vw, 19px); max-width: 44ch; margin-top: 18px; }
  .hero-art img { display: block; width: 100%; height: auto; -webkit-mask-image: radial-gradient(circle at 50% 50%, #000 52%, transparent 72%); mask-image: radial-gradient(circle at 50% 50%, #000 52%, transparent 72%); }

  /* about */
  .story .hero-line { font-size: clamp(30px, 3.4vw, 40px); line-height: 1.05; border-left-color: var(--gold); }
  .pillar { border-left-color: var(--gold); }
  .pillar b { font-size: 30px; line-height: 1; }
  .founder-photo { position: relative; border: 1px solid var(--rule); border-radius: var(--radius); overflow: hidden; }
  .founder-photo img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; object-position: 40% 35%; }
  .founder-photo figcaption { position: absolute; left: 0; right: 0; bottom: 0; padding: 10px 12px; background: linear-gradient(to top, rgba(5,5,5,.92), transparent); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
  .motto { color: var(--paper); font-size: clamp(36px, 5vw, 60px); line-height: 1; }
  .motto span { display: block; color: var(--gold-bright); }
  .motto .ma { display: block; font-weight: inherit; color: var(--paper); }

  /* drop banner + board */
  .drop-banner { position: relative; border: 1px solid var(--rule); border-radius: var(--radius); overflow: hidden; margin-bottom: 18px; background: #000; }
  .drop-banner img { display: block; width: 100%; height: clamp(300px, 36vw, 440px); object-fit: cover; object-position: right center; }
  .drop-copy { position: absolute; inset: 0; padding: clamp(20px, 4vw, 48px); display: grid; align-content: center; gap: 14px; background: linear-gradient(90deg, rgba(5,5,5,.94) 38%, rgba(5,5,5,0) 75%); }
  .drop-copy .mono { color: var(--glow); }
  .drop-copy .lede { max-width: 46ch; }
  .shutter { background: repeating-linear-gradient(to bottom, #170F0F 0 26px, #100A0A 26px 28px, #1F1414 28px 30px); }
  .state-pill.open { border-color: var(--glow); color: var(--glow); }
  .slot.open { border-color: var(--glow); }
  .slot.open .v, .slot.held .v, .stat .val em { color: var(--glow); }
  .slot .v { font-size: 30px; }
  .batch-title { font-size: clamp(42px, 5vw, 60px); }

  /* tiers */
  .tier { background: linear-gradient(180deg, #110C0C, var(--panel)); }
  .tier .plaque img { aspect-ratio: 4 / 3; object-position: center; }
  .tier.wide { grid-column: 1 / -1; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); padding: 0; gap: 0; box-shadow: 0 0 0 1px var(--gold), 0 0 50px rgba(179, 22, 26, .18); }
  .tier.wide .plaque { margin: 0; border-bottom: 0; border-right: 1px solid var(--gold); display: flex; }
  .tier.wide .plaque img { flex: 1; object-fit: cover; }
  .tier.wide .plaque img { height: 100%; aspect-ratio: auto; min-height: 100%; }
  .tier-body { padding: var(--tp); display: grid; gap: 14px; align-content: start; }
  .tier .prem { background: var(--gold); color: var(--paper); }
  .tier li::before { background: var(--gold-bright); }
  .aura { font-family: var(--mono); font-weight: 800; font-size: 15px; letter-spacing: .14em; text-transform: uppercase; color: var(--glow); text-shadow: 0 0 14px rgba(61, 242, 196, .45); margin-top: -6px; }
  .desc { color: var(--paper); font-weight: 600; font-size: 17px; }
  .price { min-height: 46px; }
  .price .was { color: var(--muted); font-weight: 600; font-size: 22px; text-decoration: line-through; text-decoration-color: var(--gold-bright); text-decoration-thickness: 2px; }
  .price .after { color: var(--gold-bright); font-weight: 700; text-transform: uppercase; letter-spacing: .1em; font-size: 12px; }
  .price .book-amt { flex-basis: 100%; font-size: 14px; font-weight: 700; color: var(--glow); }
  .couple { font-size: 15px; color: var(--muted); font-style: italic; border-left: 2px solid var(--gold); padding-left: 12px; }
  .addon { border-color: var(--gold); }
  .addon b { font-size: 30px; }
  .launch-note strong { color: var(--glow); }

  /* rest */
  .track .t { font-size: 34px; }
  .steps b { font-size: 30px; }
  .steps-note { margin-top: 14px; font-size: 14px; color: var(--muted); }
  footer .lockup { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 18px 16px 30px; }
  footer .lockup img { height: 60px; width: auto; display: block; }
  footer .lockup b { font-family: var(--display); font-weight: 400; font-size: clamp(30px, 4vw, 40px); letter-spacing: .06em; color: var(--paper); margin-top: 12px; line-height: 1; }
  footer .lockup i { width: 56px; height: 1px; background: var(--gold); margin: 14px 0; }
  footer .lockup p { font-family: var(--deva); font-size: clamp(20px, 2.4vw, 26px); color: var(--gold-bright); margin: 0; }
  footer .lockup small { font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: var(--muted); margin-top: 8px; }
  footer .close-line { text-align: center; font-size: clamp(34px, 5vw, 56px); color: var(--paper); margin: 8px 0 12px; line-height: 1; }
  footer .heritage { font-style: normal; font-size: 14px; }
  @media (max-width: 900px) {
    .hero { grid-template-columns: 1fr; }
    .hero-art { order: -1; max-width: 340px; margin: 0 auto !important; }
    .tier.wide { grid-template-columns: 1fr; }
    .tier.wide .plaque { border-right: 0; border-bottom: 1px solid var(--gold); }
    .tier.wide .plaque img { aspect-ratio: 4 / 3; height: auto; }
  }
  @media (max-width: 640px) {
    .drop-banner img { height: 200px; }
    .drop-copy { position: static; background: none; }
  }

  /* ---- mobile menu ---- */
  .menu-btn, .nav-cta-m { display: none; }
  @media (max-width: 900px) {
    .top-row { position: relative; z-index: 3; }
    .menu-btn { display: inline-flex; align-items: center; gap: 10px; margin-left: auto; background: transparent; color: var(--paper); border: 1px solid var(--rule); border-radius: 6px; padding: 9px 12px; font-family: var(--mono); font-weight: 700; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; cursor: pointer; }
    .menu-btn .bars, .menu-btn .bars::before, .menu-btn .bars::after { display: block; width: 16px; height: 2px; background: currentColor; border-radius: 2px; transition: transform .2s, opacity .2s; }
    .menu-btn .bars { position: relative; }
    .menu-btn .bars::before, .menu-btn .bars::after { content: ""; position: absolute; left: 0; }
    .menu-btn .bars::before { top: -5px; } .menu-btn .bars::after { top: 5px; }
    header.top.open .menu-btn { border-color: var(--gold); }
    header.top.open .menu-btn .bars { background: transparent; }
    header.top.open .menu-btn .bars::before { transform: translateY(5px) rotate(45deg); }
    header.top.open .menu-btn .bars::after { transform: translateY(-5px) rotate(-45deg); }
    header.top.open nav.links { display: flex; flex-direction: column; gap: 0; position: absolute; left: calc(-1 * clamp(16px, 4vw, 40px)); right: calc(-1 * clamp(16px, 4vw, 40px)); top: 100%; padding: 6px clamp(16px, 4vw, 40px) 18px; background: #050505; border-bottom: 1px solid var(--gold); box-shadow: 0 24px 40px rgba(0, 0, 0, .6); z-index: 30; }
    header.top.open nav.links a { padding: 15px 0; font-size: 14px; color: var(--paper); border-bottom: 1px solid var(--rule); }
    header.top.open nav.links a[hidden] { display: none; }
    header.top.open nav.links .nav-cta-m { display: block; margin-top: 14px; border: 0; text-align: center; border-radius: 6px; padding: 14px; background: var(--glow, #3DF2C4); color: #050505; font-weight: 700; }
  }

/* on-site player */
.tracks .player { padding: 4px 0 16px; border-bottom: 1px solid var(--rule); }
.tracks .player iframe { display: block; width: 100%; max-width: 640px; height: 150px; border: 1px solid var(--rule); border-radius: var(--radius); background: #000; }
.tracks .player .player-out { display: inline-block; margin-top: 8px; font-family: var(--mono); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
/* WhatsApp chat button */
.wa-float { position: fixed; right: max(18px, env(safe-area-inset-right)); bottom: max(18px, env(safe-area-inset-bottom)); z-index: 60; width: 56px; height: 56px; border-radius: 50%; display: grid; place-items: center; background: #050505; border: 2px solid var(--gold); color: var(--paper); box-shadow: 0 0 0 4px rgba(179,22,26,.18), 0 8px 24px rgba(0,0,0,.6); transition: transform .15s ease, box-shadow .15s ease; }
.wa-float:hover, .wa-float:focus-visible { transform: scale(1.06); box-shadow: 0 0 0 6px rgba(232,52,58,.28), 0 8px 28px rgba(0,0,0,.7); }
.wa-float svg { width: 26px; height: 26px; fill: currentColor; }
@media print { .wa-float { display: none; } }
