/* ═══════════════════════════════════════════════════════════════════════════
   PIPS LAB — LANDING PAGE STYLESHEET
   Ported from docs/design/pipslab_lp_mockup_v93.html, which is the DESIGN OF
   RECORD. Where this sheet and the mockup disagree, the mockup wins.
   ⚠ THE FILENAME IS AUTHORITATIVE ON VERSION; the mockup's <title> is metadata.

   ⛔ THE FONTS ARE SELF-HOSTED AND THAT IS RATIFIED, NOT A PREFERENCE.
      The mockup pulls five families from fonts.googleapis.com. This page ships
      under `default-src 'self'` on any front door without a browser pixel, so
      those requests are BLOCKED — the page would silently fall back to system
      faces and every measured type size would be wrong for a reason nothing
      reported. Self-hosting also keeps § SOVEREIGNTY's "no third-party
      requests on our surfaces" true.
      ⛔ DO NOT REINTRODUCE THE GOOGLE FONTS <link>. The failure is silent.
      ⚠ Inter and IBM Plex Sans are VARIABLE fonts — Google returns one file for
      every weight (verified byte-identical), so they are declared once across
      the full weight range rather than four times.

   ⛔ TOKENS FIRST, THEN COMPONENTS. No component below may hard-code a hex a
      token already covers.

   ✅ v93 FIXED TWO THINGS AT SOURCE, so there are no workarounds in here:
      the phone status-bar signal bars are `.sigbars` (they used to collide with
      the record document's `.sig` footer and inherit its border-top), and the
      static invalidation row now reads 2,329.90, agreeing with every JS state
      and with SL. Both are ported as-is.
   ═══════════════════════════════════════════════════════════════════════════ */

@font-face{font-family:'Archivo';src:url('/static/fonts/archivo-var.woff2') format('woff2');
  font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Inter';src:url('/static/fonts/inter-var.woff2') format('woff2');
  font-weight:100 900;font-style:normal;font-display:swap}
/* ⛔⛔ THE METRIC-MATCHED FALLBACK — THIS IS THE CLS FIX, AND THE NUMBER IS
   MEASURED, NOT CHOSEN. Inter is the BODY font for the whole page and renders
   **105.26% of the width** of the system sans-serif (measured via canvas
   measureText over a mixed sample at 100px). With `font-display:swap` the
   fallback paints first at 100% and Inter swaps in at ~3.4s on Slow-4G, every
   line gets 5.26% wider, A CHIP WRAPS TO A SECOND ROW, and everything below it
   drops exactly 40px — 0.1893 of a 0.237 CLS in one event.
   ⛔ THIS RESERVES THE SPACE RATHER THAN HIDING THE SHIFT: the fallback is
   scaled to occupy exactly the width Inter will, so the swap changes the
   glyphs and moves nothing.
   ⚠ SIZE-ADJUST ONLY, DELIBERATELY — no ascent/descent overrides. `body` sets
   a unitless `line-height:1.5` and most elements set their own, so vertical
   metrics barely reach block layout, while overriding them WOULD change how
   the page renders today. Width is the term that wraps a row; it is the one
   worth touching. Re-measure before adding the others.
   ⚠ THE OTHER FOUR FACES NEED NO MATCH: Archivo 99.86%, IBM Plex Sans 100.11%,
   JetBrains Mono 99.98%, IBM Plex Mono 99.98% — all inside 0.15%. */
@font-face{font-family:'Inter Fallback';
  src:local('Arial'),local('Helvetica Neue'),local('Helvetica');
  size-adjust:105.26%}
@font-face{font-family:'JetBrains Mono';src:url('/static/fonts/jetbrains-mono-var.woff2') format('woff2');
  font-weight:100 800;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('/static/fonts/ibm-plex-sans-var.woff2') format('woff2');
  font-weight:100 700;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('/static/fonts/ibm-plex-mono-400.woff2') format('woff2');
  font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('/static/fonts/ibm-plex-mono-500.woff2') format('woff2');
  font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('/static/fonts/ibm-plex-mono-600.woff2') format('woff2');
  font-weight:600;font-style:normal;font-display:swap}

:root{
  --bg:#030303;
  --card:#121211;
  --card2:#171715;
  --line:#252523;
  --line2:#2e2c26;
  --gold:#e8b44a;
  --gold-hi:#f5cf78;
  --gold-dim:#c39a3f;
  --candle:#d3a846;
  --txt:#f2f0ec;
  --muted:#9b968d;
  --dim:#8a857b;      /* lifted from #6b675f 2026-08-03 (AJ). Measured: 5.44:1 on --bg, 4.95:1 on --card, 4.89:1 worst across every surface a dim string sits on. #6b675f measured 3.19:1 worst and failed WCAG AA on 13 Lighthouse-reported strings. THE VALUE IS AJ'S OWN — it is what the 2026-08-02 scoped lift used, so lifting the token also RETIRES the one-off. */
  --green:#4bbd82;
  --red:#e35555;
  --verify:#0095f6;
  --stop:#93a0ad;      /* invalidation / stop — structural, not alarming */
  --section-space:48px;
  --r:14px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip;max-width:100%;overscroll-behavior-x:none}
/* ambient market backdrop — ZONED, not wallpaper */
.bgfx{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.bgfx .grid{position:absolute;left:0;right:0;top:0;height:1100px;opacity:.32;
  background-image:linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);
  background-size:100% 58px,58px 100%;
  -webkit-mask-image:linear-gradient(180deg,#000 0,#000 62%,transparent 100%);mask-image:linear-gradient(180deg,#000 0,#000 62%,transparent 100%)}
.bgfx .glow{position:absolute;left:0;right:0;top:0;height:900px;background:radial-gradient(85% 60% at 50% 0,rgba(232,180,74,.045),transparent 62%)}
.bgfx svg{position:absolute;opacity:.032;filter:blur(1.2px);
  -webkit-mask-image:radial-gradient(75% 75% at 50% 50%,#000 30%,transparent 78%);
  mask-image:radial-gradient(75% 75% at 50% 50%,#000 30%,transparent 78%)}
.bg1{top:40px;right:-14%;width:76%;height:320px}
.bg2{top:2560px;right:-16%;width:74%;height:300px}
nav,.ticker,.wrap,.sticky{position:relative;z-index:1}
.ticker{z-index:50}
/* content always sits above the backdrop — no veils, no blobs */
.hero,.method,.xau,.room,.comm,.why,.journey{position:relative;z-index:1}
body{width:100%;max-width:100%;background:var(--bg);color:var(--txt);font-family:'Inter','Inter Fallback',sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:clip;overscroll-behavior-x:none;position:relative}
.wrap{--market-progress:0;max-width:430px;margin:0 auto;padding:0 16px;isolation:isolate}
.market-journey{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:visible;
  color:var(--gold);filter:drop-shadow(0 0 5px rgba(232,180,74,.12));
  -webkit-mask-image:linear-gradient(90deg,#000 0,#000 10%,rgba(0,0,0,.05) 28%,rgba(0,0,0,.12) 55%,rgba(0,0,0,.48) 70%,#000 86%,#000 100%);
  mask-image:linear-gradient(90deg,#000 0,#000 10%,rgba(0,0,0,.05) 28%,rgba(0,0,0,.12) 55%,rgba(0,0,0,.48) 70%,#000 86%,#000 100%)}
.market-journey path,.market-journey line,.market-journey rect{vector-effect:non-scaling-stroke}
.market-journey-base,.market-journey-progress{fill:none;stroke-linecap:round;stroke-linejoin:round}
.market-journey-base{stroke:rgba(232,180,74,.09);stroke-width:1}
.market-journey-progress{stroke:rgba(247,201,99,.29);stroke-width:1.15;stroke-dasharray:1;
  stroke-dashoffset:calc(1 - var(--market-progress))}
.market-journey-cluster{opacity:.2}
.market-journey-level{stroke:rgba(232,180,74,.18);stroke-width:.7;stroke-dasharray:4 8}
.market-journey-candle line{stroke:#d9ae55;stroke-width:.85}
.market-journey-candle rect{stroke-width:.45}
.market-journey-candle.is-up rect{fill:#e8b44a;stroke:#ffe09a}
.market-journey-candle.is-down line{stroke:#6d6558}
.market-journey-candle.is-down rect{fill:#4f4a41;stroke:#776e60}
.market-journey-turn{fill:rgba(255,211,105,.38);opacity:.22;filter:url(#marketJourneyGlow)}
.wrap>.hero,.wrap>section,.wrap>.xau-divider{position:relative;z-index:1}
h1,h2,h3{font-family:'Archivo',sans-serif;letter-spacing:-.015em}
.gold{color:var(--gold)}
.slot{position:relative;background:linear-gradient(150deg,#171614,#0b0b0a);display:flex;align-items:center;justify-content:center;overflow:hidden}
.slot::before{content:attr(data-slot);font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.12em;color:#4a4740;text-transform:uppercase;border:1px dashed #2e2c26;padding:5px 10px;border-radius:5px;text-align:center}

.ticker{position:relative;z-index:50;background:#0a0a09;border-bottom:1px solid var(--line);overflow:hidden;padding-left:16px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent);
  mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent)}
.ticker-inner{display:flex;align-items:center;width:max-content;font-family:'JetBrains Mono',monospace;font-size:10.5px;animation:tick 26s linear infinite;will-change:transform}
.ticker-group{display:flex;align-items:center;gap:20px;flex:none;padding:8px 20px 8px 0}
@keyframes tick{to{transform:translateX(calc(-1 * var(--ticker-step,550px)))}}
.t-item{display:flex;align-items:center;gap:6px;color:var(--muted);white-space:nowrap}
.t-dot{width:5.5px;height:5.5px;border-radius:50%}
.t-dot.g{background:var(--gold)}
.t-dot.grn{background:var(--green);box-shadow:0 0 6px var(--green)}
.t-item b{color:var(--txt);font-weight:600}
.t-up{color:var(--green)}
.t-prime{color:var(--gold)}

nav{display:flex;align-items:center;justify-content:space-between;padding:16px;max-width:430px;margin:0 auto}
.logo{font-family:'Archivo',sans-serif;font-weight:800;font-size:18px;letter-spacing:.03em}
.logo span{color:var(--gold)}

.hero{position:relative;isolation:isolate;overflow:clip;padding:112px 0 0}
.hero::before{content:'';position:absolute;z-index:-1;left:-56px;right:-56px;top:-45px;height:640px;pointer-events:none;
  background:radial-gradient(ellipse 54% 45% at 84% 8%,rgba(255,210,101,.15),rgba(232,180,74,.035) 48%,transparent 76%),linear-gradient(25deg,transparent 40%,rgba(232,180,74,.035) 74%,transparent 92%)}
.hero-candles{position:absolute;top:4px;left:auto;right:-12px;width:min(108%,520px);height:96px;opacity:1;filter:drop-shadow(0 0 7px rgba(232,180,74,.24));z-index:0;pointer-events:none;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 24%,#000 88%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 24%,#000 88%,transparent 100%)}
.hero-candles .hero-price-guide{stroke:rgba(232,180,74,.1);stroke-width:.55;stroke-dasharray:1.5 5}
.hero-candles .hero-market-average{fill:none;stroke:rgba(245,198,94,.24);stroke-width:1.05}
.hero-candles .hero-market-label{fill:#a7a096;font:600 7px 'JetBrains Mono',monospace;letter-spacing:1.15px}
.hero-candles .hero-current-price{stroke:rgba(242,190,73,.5);stroke-width:.8;stroke-dasharray:3 3}
.hero-candles .hero-current-price-label{fill:#f0bd45;font:700 7px 'JetBrains Mono',monospace;letter-spacing:.4px}
.hero-candles .hero-candle{opacity:.42}
.hero-candles .hero-candle line{stroke:#d9ae55;stroke-width:1}
.hero-candles .hero-candle rect{stroke-width:.35}
.hero-candles .hero-candle.is-up rect{fill:#e8b44a;stroke:#ffe09a}
.hero-candles .hero-candle.is-down line{stroke:#625c50}
.hero-candles .hero-candle.is-down rect{fill:#4f4a41;stroke:#736b5e}
.hero-candles .hero-candle-consolidation{opacity:.3}
.hero-candles .hero-candle-terminal{opacity:.82;filter:drop-shadow(0 0 4px rgba(255,214,111,.62))}
.hero-candles .hero-terminal-glow{opacity:.34}
.hero>*:not(.hero-candles){position:relative;z-index:1}
.eyebrow{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.17em;color:var(--gold-dim);text-transform:uppercase;display:flex;align-items:center;gap:7px;margin-bottom:10px;position:relative;z-index:1}
.eyebrow::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--gold);flex-shrink:0}
.hero h1{font-size:31px;line-height:1.12;font-weight:800;letter-spacing:-.025em;margin-bottom:11px;position:relative}
.hero-title-line{display:block}
.hero .sub{color:var(--muted);font-size:13.5px;line-height:1.5;max-width:330px;margin-bottom:12px;position:relative;z-index:1}
.chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:9px;position:relative;z-index:1}
.chip{display:flex;align-items:center;justify-content:center;min-width:0;gap:5px;border:1px solid var(--line2);border-radius:100px;padding:7px 6px;font-size:9px;font-weight:600;white-space:nowrap}
.chip svg{width:13px;height:13px;stroke:var(--gold);fill:none;stroke-width:1.8}

.vsl{border-radius:var(--r);overflow:hidden;position:relative;aspect-ratio:16/13;border:1px solid var(--line);margin-bottom:12px}
.vsl .slot{position:absolute;inset:0}
.play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;border-radius:50%;border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;background:rgba(5,5,5,.35);cursor:pointer;transition:transform .18s}
.play:hover{transform:translate(-50%,-50%) scale(1.07)}
.play::after{content:'';border-left:14px solid var(--gold);border-top:8.5px solid transparent;border-bottom:8.5px solid transparent;margin-left:3px}
.vsl-cap{position:absolute;left:0;right:0;bottom:0;padding:9px 13px;background:linear-gradient(transparent,rgba(0,0,0,.9));font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#ddd8cd}
.mini-play{width:14px;height:14px;border-radius:50%;border:1.4px solid var(--gold);flex-shrink:0;position:relative}
.mini-play::after{content:'';position:absolute;top:50%;left:56%;transform:translate(-50%,-50%);border-left:4.5px solid var(--gold);border-top:2.6px solid transparent;border-bottom:2.6px solid transparent}

.class-card{border:1px solid rgba(232,180,74,.4);border-radius:var(--r);padding:15px 14px 14px;background:linear-gradient(180deg,#131210,#0f0f0d);margin-bottom:12px;box-shadow:0 22px 48px -28px rgba(0,0,0,.9)}
.class-card h2{font-size:20px;font-weight:800;line-height:1.16;margin-bottom:7px}
.meta{display:flex;align-items:center;gap:0;margin-bottom:14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.meta-row{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:11px 12px 10px;font-size:12.5px;color:var(--txt);position:relative;min-width:0}
.meta-row+.meta-row::before{content:'';position:absolute;left:0;top:24%;bottom:24%;width:1px;background:var(--line)}
.meta-row:first-child{padding-left:0}
.meta-row small{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--dim)}
.meta-row b{font-family:'Archivo',sans-serif;font-size:14px;font-weight:700;line-height:1.15;white-space:nowrap}
.meta-row.host b{font-size:12.5px;font-weight:600;white-space:normal}
.count{display:flex;align-items:baseline;justify-content:center;gap:7px;margin:2px 0 14px;padding:4px 0 2px;font-family:'JetBrains Mono',monospace;font-variant-numeric:tabular-nums}
.cunit{display:inline-flex;align-items:baseline;gap:2px;background:linear-gradient(180deg,#f7d77f 0%,#e8b44a 56%,#c98e28 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 3px 9px rgba(232,180,74,.18))}
.cunit b{font-size:25px;font-weight:760;line-height:1;letter-spacing:-.055em}.cunit small{font-size:12px;font-weight:700;line-height:1;text-transform:lowercase}
.cunit[hidden]{display:none}
.count.soon{margin-bottom:7px}.count-status{display:flex;align-items:center;justify-content:center;gap:7px;width:max-content;margin:0 auto 14px;color:var(--gold);font:700 9px 'JetBrains Mono',monospace;letter-spacing:.15em;text-transform:uppercase}
.count-status[hidden]{display:none!important}
.count-status::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px rgba(232,180,74,.08),0 0 12px rgba(232,180,74,.65);animation:glowdot 1.8s ease-in-out infinite}
.count-status.live{color:var(--green)}.count-status.live::before{background:var(--green);box-shadow:0 0 0 4px rgba(75,189,130,.08),0 0 12px rgba(75,189,130,.65)}
.btn{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;text-align:center;padding:15px;border-radius:11px;
  background:linear-gradient(180deg,#f0c869 0%,#e3ae43 52%,#cf9a35 100%);
  box-shadow:inset 0 1px 0 rgba(255,245,214,.55),0 10px 26px -12px rgba(232,180,74,.55);
  color:#1c1406;font-family:'Archivo',sans-serif;font-weight:700;font-size:15px;letter-spacing:.005em;border:none;cursor:pointer;transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,245,214,.6),0 14px 30px -12px rgba(232,180,74,.62)}
.ar{position:relative;display:inline-block;flex:0 0 auto;width:23px;height:12px;font-size:0!important;line-height:0!important;opacity:.9;transition:transform .2s cubic-bezier(.2,.8,.2,1)}
.ar::before{content:'';position:absolute;left:1px;right:2px;top:5px;height:1.5px;border-radius:2px;background:currentColor}
.ar::after{content:'';position:absolute;right:2px;top:2px;width:6px;height:6px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;transform:rotate(45deg)}
.btn:hover .ar,.btn-ghost:hover .ar,.direct-access:hover .ar{transform:translateX(4px)}
.under-cta{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 14px;margin-top:11px}
.under-cta i{font-style:normal;display:flex;align-items:center;gap:5px;font-size:11.5px;color:#8b857a}
.under-cta i::before{content:'';width:9px;height:5px;border-left:1.4px solid var(--gold-dim);border-bottom:1.4px solid var(--gold-dim);transform:rotate(-45deg) translateY(-1px);flex-shrink:0;opacity:.85}
/* class-card: START HERE + free access includes */
.cc-eyebrow{display:flex;align-items:center;gap:7px;font-family:'JetBrains Mono',monospace;font-size:10px;
  letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:9px}
.cc-eyebrow::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--gold)}
.incl{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.incl .incl-h{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);margin-bottom:12px;font-weight:700}/* ⛔ `font-weight:700` IS CARRIED EXPLICITLY, NOT INHERITED. This was `.incl h5` and h5 is bold by UA default, so the weight was never declared here. Changing the element to <p> for heading-order would have silently lightened it to 400 — measured 700 before and 700 after, so this line is what makes the swap invisible. */
.incl-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}
.ii b{display:block;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:4px}
.ii span{display:block;font-size:12px;line-height:1.45;color:#8b857a}

/* offer bridge */
.bridge-sec{padding-top:34px}
.bridge-sec h2{font-size:29px;font-weight:800;line-height:1.14;letter-spacing:-.02em;margin-bottom:12px}
.bridge-sec p{font-size:13.5px;line-height:1.55;color:var(--muted);max-width:34ch;margin-bottom:20px}
.bridge-line{font-family:'Archivo',sans-serif;font-size:17px;font-weight:700;color:var(--txt);line-height:1.4;
  padding:14px 0 0;border-top:1px solid var(--line)}
.course{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.course h3{font-size:22px;font-weight:800;line-height:1.22;margin-bottom:11px}
.course p{font-size:13.5px;line-height:1.6;color:var(--muted);margin-bottom:16px;max-width:340px}
.course ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.course li{display:flex;align-items:flex-start;gap:9px;font-size:12.5px;color:#c2bcb0;line-height:1.4}
.course li::before{content:'';width:9px;height:5px;border-left:1.5px solid var(--gold);border-bottom:1.5px solid var(--gold);
  transform:rotate(-45deg);flex-shrink:0;margin-top:5px}

/* optional paid support */
.opt{margin-top:26px;padding:20px 18px 18px;border:1px solid var(--line);border-radius:18px;background:#0c0c0b}
.opt-lab{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-dim);margin-bottom:8px}
.opt h3{font-size:17px;font-weight:800;line-height:1.3;margin-bottom:9px}
.opt p{font-size:12.5px;line-height:1.6;color:#8b857a;max-width:40ch}
.cline{font-family:'Archivo',sans-serif;font-size:15px;font-weight:800;color:var(--txt);margin-bottom:22px}
.close-extra{margin-top:13px;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#5a5750}
.xau-incl{display:inline-flex;align-items:center;gap:7px;font-family:'JetBrains Mono',monospace;font-size:8.5px;
  letter-spacing:.15em;text-transform:uppercase;color:var(--gold-dim);border:1px solid rgba(232,180,74,.3);
  border-radius:5px;padding:6px 10px;margin-bottom:16px}
/* v63 */
.xau-head{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin:-1px 0 18px}
.xau-head .ribbon.solid{background:linear-gradient(180deg,rgba(232,180,74,.085),rgba(232,180,74,.025));color:#d9b45d;border:1px solid rgba(232,180,74,.38);border-radius:8px;padding:8px 13px;
  box-shadow:inset 0 1px 0 rgba(255,240,196,.08),0 10px 24px -18px rgba(232,180,74,.8)}
.ribbon{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;
  font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
  color:#1c1406;font-weight:600;
  background:linear-gradient(180deg,#f0c869,#e3ae43 55%,#cf9a35);
  border:1px solid transparent;border-radius:100px;padding:9px 15px;
  box-shadow:inset 0 1px 0 rgba(255,245,214,.5),0 8px 20px -10px rgba(232,180,74,.55)}
.ribbon i{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.7;animation:glowdot 3.2s ease-in-out infinite}
/* v56 */
.pb-line{font-family:'Archivo',sans-serif;font-size:19px;font-weight:800;line-height:1.3;margin:-6px 0 20px}
/* v57 — THE PLAYBOOK SHOT STANDS ALONE (AJ, 2026-08-03).
   ⛔ DELETED HERE, NOT NEUTERED: `.sheet`, `.sheet.back`, `.sheet.front`,
   `.sheet-tag`, `.sheet-pg` and `.sheet-open` are GONE from this sheet because
   their elements are gone from the markup. A rule left behind for an element
   that no longer exists is rule 16's ninth instance (`.sweep`) — it renders
   identically to a rule that is satisfied, forever. Grep before restoring any
   of them: the markup is one <img> inside `.sheets`.
   ⚠ `.sheets` KEEPS `position:relative` even with nothing absolutely placed in
   it any more — it owns the full-bleed crop and the mask below is painted on
   the child. Dropping it is safe today and is exactly the kind of "safe today"
   that the next absolutely-positioned child discovers. */
.sheets{position:relative;cursor:default;overflow:hidden;aspect-ratio:4/2.95;
  /* FULL BLEED, THE SAFE WAY: this cancels `.wrap`'s 16px padding exactly.
     ⛔ NOT `width:100vw` — 100vw counts the scrollbar gutter, so on any width
     where a vertical scrollbar exists it overflows by its thickness, and the
     harness's viewport-overflow check is the thing that would then be right
     while the page looked fine on the machine it was written on. */
  width:calc(100% + 32px);margin-inline:-16px}
.sheets .slot{aspect-ratio:4/2.7}
/* THE MERGE IS DONE BY A MASK, NOT BY MATCHING A COLOUR.
   The render's backdrop is near-black and the page is #030303 — close enough
   that the frame was doing all the separating, and close enough that ANY value
   picked here would be a guess that goes wrong the day the asset is re-exported.
   A mask fades the image into WHATEVER is behind it, so it stays correct across
   a re-export, a section-ground change and a future light surface alike.
   ⚠ Two masks composited with `intersect` (sides AND bottom). `-webkit-`
   longhands ship alongside the standard ones because Safari is the majority
   browser for this audience, and a dropped mask fails OPEN — an unmasked hard
   edge, i.e. the thing this rule exists to remove, rendering as though it were
   the design. */
.sheet-img{display:block;width:100%;height:100%;aspect-ratio:auto;
  /* AJ's later phone ruling enlarges the document through an in-bounds cover
     crop. A transform looked right but extended the IMG's measured box past
     every phone viewport; changing the frame ratio zooms the pixels while the
     element itself remains exactly inside the full-bleed frame. */
  transform:none;transform-origin:50% 48%;
  object-fit:cover;object-position:center;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 12%,#000 88%,transparent 100%),
                     linear-gradient(to bottom,#000 0,#000 62%,transparent 100%);
  mask-image:linear-gradient(to right,transparent 0,#000 12%,#000 88%,transparent 100%),
             linear-gradient(to bottom,#000 0,#000 62%,transparent 100%);
  -webkit-mask-composite:source-in;mask-composite:intersect}/* height:auto IS LOAD-BEARING: the width/height ATTRIBUTES map to CSS as presentational hints, and an explicit height beats aspect-ratio — the image rendered 1080px tall (ratio 0.37) until this was added. The attributes still do their real job, which is reserving the box before the bytes arrive so CLS stays 0. */
@media(min-width:760px){.sheets{aspect-ratio:auto}.sheet-img{height:auto;aspect-ratio:4/2.7;transform:scale(1.06)}}
.pb-micro{font-size:12px;color:var(--dim);margin:12px 0 22px}
.fw{margin:0 0 20px;padding-top:16px;border-top:1px solid var(--line)}



.fw p{font-size:12.5px;line-height:1.55;color:var(--dim);max-width:38ch}






/* v55 — playbook */
.pb h2{font-size:29px;font-weight:800;line-height:1.14;letter-spacing:-.02em;margin-bottom:12px}
.pb-sub{font-size:13.5px;line-height:1.6;color:var(--muted);max-width:38ch;margin-bottom:20px}
.pb-preview{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;margin-bottom:20px;background:var(--card)}
.pb-preview .slot{aspect-ratio:4/2.9}
.pb-preview .slot::before{max-width:78%;line-height:1.6}
/* THE FOUR POINTS ARE ONE SLAB DIVIDED BY HAIRLINES, NOT FOUR FLOATING CELLS
   (AJ, 2026-08-03: "very close in a nice way"). ⛔ REUSED, NOT INVENTED — this
   is `.roomrow`'s and `.meta`'s device, already on this sheet: zero gap, one
   hairline top and bottom, INSET rules between cells. A fifth way of saying
   "these belong together" is what makes a page read as assembled.
   ⚠ THE SELECTORS DERIVE FROM THE COLUMN COUNT, NEVER THE ITEM COUNT (rule 16):
   `2n` is "the right-hand column" and `n+3` is "not the first row" — both stay
   correct if a fifth point is added. The one thing they are coupled to is the
   `1fr 1fr` above, which is declared once, here. */
.pb-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-bottom:22px;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.pbi{position:relative;padding:15px 15px 15px 0}
.pbi:nth-child(2n){padding-left:15px;padding-right:0}
/* Inset rules — they stop short of the edges so the grid reads as divided
   rather than as a table with ruled cells. Same 14–16% inset as `.rr`. */
.pbi:nth-child(2n)::before{content:'';position:absolute;left:0;top:15%;bottom:15%;width:1px;background:var(--line)}
.pbi:nth-child(n+3)::after{content:'';position:absolute;left:0;right:0;top:0;height:1px;background:var(--line)}
.pbi em{font-style:normal;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.16em;color:var(--gold);display:block;margin-bottom:7px}
.pbi b{display:block;font-family:'Archivo',sans-serif;font-size:15px;font-weight:800;line-height:1.2;margin-bottom:5px}
.pbi span{font-size:12.5px;line-height:1.45;color:var(--dim);display:block}
.watching{margin:0 0 20px;padding-top:16px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:7px;align-items:center}
.watching h5{flex:0 0 100%;font-family:'JetBrains Mono',monospace;font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-dim);margin-bottom:4px}
.watching span{font-family:'JetBrains Mono',monospace;font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:#a8a297;border:1px solid var(--line2);border-radius:4px;padding:6px 9px}
.method-risk{font-family:'Archivo',sans-serif;font-size:16px;font-weight:800;line-height:1.35;margin-top:16px}
/* v45 */
.cc-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}
.cc-top .cc-eyebrow{margin-bottom:0}
.cc-signal{display:flex;align-items:center;gap:9px;flex-wrap:wrap;min-width:0}
.cc-spot{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(232,180,74,.52);border-radius:999px;padding:8px 12px;
  background:rgba(232,180,74,.09);color:var(--gold);font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;line-height:1;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.cc-spot::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--gold);box-shadow:0 0 8px rgba(232,180,74,.78)}
@keyframes limitedSpotPulse{0%,100%{box-shadow:0 0 5px rgba(232,180,74,.55);transform:scale(.9)}50%{box-shadow:0 0 15px 3px rgba(232,180,74,.78);transform:scale(1.18)}}
.cc-spot::before,.close-limited i,.sk-lab i{animation:limitedSpotPulse 1.8s ease-in-out infinite}
.cc-when{text-align:right;flex-shrink:0;padding-top:1px}
.cc-when b{display:block;font-family:'Archivo',sans-serif;font-size:14.5px;font-weight:800;line-height:1.15;color:var(--gold);white-space:nowrap}
.cc-when span{display:block;font-size:10.5px;color:var(--dim);line-height:1.3;margin-top:3px}
@media(max-width:519px){
  .class-card.live-session .cc-top{display:block}
  .class-card.live-session .cc-when{text-align:left;margin-top:9px}
  .class-card.live-session .cc-when b{white-space:normal}
}
/* v41 */









.albox{width:11px;height:11px;border-radius:3px;background:var(--gold);display:inline-block;flex-shrink:0}
.fd-sub{font-size:13px;line-height:1.55;color:var(--muted);max-width:34ch;margin-bottom:15px}
.journey-line{position:relative;margin-bottom:24px}
.journey-line::before{content:'';position:absolute;left:21.5px;top:14px;bottom:14px;width:1px;background:linear-gradient(180deg,rgba(232,180,74,.22),rgba(232,180,74,.06))}
.jstep{display:flex;gap:14px;align-items:flex-start;padding:0 0 22px}
.jstep:last-child{padding-bottom:0}
.jstep em{position:relative;z-index:1;flex:0 0 44px;height:44px;border-radius:50%;border:1px solid rgba(232,180,74,.42);
  background:var(--bg);display:flex;align-items:center;justify-content:center;
  font-style:normal;font-family:'JetBrains Mono',monospace;font-size:14px;font-weight:700;color:var(--gold);box-shadow:0 0 0 5px rgba(232,180,74,.025)}
.jstep b{display:block;font-family:'Archivo',sans-serif;font-size:19px;font-weight:800;line-height:1.2;margin:5px 0 6px;letter-spacing:-.01em}
.jstep span{font-size:14px;line-height:1.5;color:var(--muted);display:block;max-width:34ch}
/* v40 */
.cc-line{font-size:12.5px;line-height:1.5;color:#8b857a;margin:0 0 12px;max-width:38ch}
.rail4{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -16px 18px;padding:0 16px}
.rail4::-webkit-scrollbar{display:none}
.r4{flex:0 0 46%;scroll-snap-align:start;border:1px solid var(--line);border-radius:12px;background:var(--card);padding:14px 13px}
.r4 em{font-style:normal;font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.16em;color:var(--gold);display:block;margin-bottom:9px}
.r4 b{display:block;font-family:'Archivo',sans-serif;font-size:15px;font-weight:800;margin-bottom:4px}
.r4 span{font-size:11.5px;color:var(--dim);line-height:1.4}
.coursenote{border-top:1px solid var(--line);padding-top:15px}
.coursenote b{display:block;font-family:'JetBrains Mono',monospace;font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-dim);margin-bottom:8px}
.coursenote p{font-size:12.5px;line-height:1.55;color:var(--muted);margin-bottom:7px;max-width:330px}
.coursenote span{font-size:11px;color:var(--dim)}
.method-close{margin-top:16px;font-size:13px;line-height:1.55;color:var(--muted);max-width:340px}
.xau-punch{font-family:'Archivo',sans-serif;font-size:22px;font-weight:800;line-height:1.24;letter-spacing:-.01em;margin:14px 0 10px;position:relative}
.incl-banner{border:1px solid rgba(232,180,74,.4);border-radius:12px;background:linear-gradient(160deg,rgba(232,180,74,.06),transparent 60%),var(--card);padding:15px 14px;margin-bottom:20px;position:relative}
.incl-banner em{font-style:normal;font-family:'JetBrains Mono',monospace;font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-dim);display:block;margin-bottom:6px}
.incl-banner b{display:block;font-family:'Archivo',sans-serif;font-size:19px;font-weight:800;color:var(--gold);margin-bottom:6px}
.incl-banner span{font-size:12px;line-height:1.5;color:#8b857a;display:block}
.reaches{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.reaches h5,.uselearn h5{font-family:'JetBrains Mono',monospace;font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-dim);margin-bottom:12px}
.reaches ul{list-style:none;display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}
.reaches li{font-size:11.5px;color:#c2bcb0;border:1px solid var(--line2);border-radius:5px;padding:6px 10px}
.reaches p{font-size:12px;line-height:1.55;color:#8b857a;max-width:330px}
.uselearn{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.ul-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ul-cols em{font-style:normal;font-family:'JetBrains Mono',monospace;font-size:8.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:7px}
.ul-cols p{font-size:12px;line-height:1.5;color:#b0aa9e}
.ul-foot{margin-top:14px;font-size:11.5px;line-height:1.6;color:var(--dim)}
.rec-ask{font-size:16px;line-height:1.35;color:#cbc5ba;margin-bottom:8px}

.room-line{font-family:'Archivo',sans-serif;font-size:15px;font-weight:700;line-height:1.45;color:var(--txt);max-width:62ch;margin:0 auto 18px;text-align:center}
.feedwin{border:1px solid var(--line);border-radius:var(--r);background:var(--card);padding:14px 13px;margin-bottom:18px}
.fw-head{display:flex;align-items:center;gap:10px;padding-bottom:11px;border-bottom:1px solid #1b1a17;margin-bottom:11px}
.fw-head b{display:block;font-size:13.5px;font-weight:600;line-height:1.2}
.fw-head span{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.11em;text-transform:uppercase;color:var(--dim)}
.fw-msgs{display:flex;flex-direction:column;gap:9px}
.fm{background:#151412;border:1px solid #201f1c;border-radius:10px;padding:9px 11px}
.fm.mentor{background:rgba(232,180,74,.07);border-color:rgba(232,180,74,.26)}
.fm b{font-size:11px;font-weight:600;color:var(--gold-dim);display:block;margin-bottom:3px}
.fm p{font-size:12.5px;line-height:1.5;color:#d0cabe}
.mshot{position:relative;flex:0 0 calc((100vw - 32px)*.64);scroll-snap-align:start;border:1px solid rgba(232,180,74,.25);border-radius:18px;background:#0b0b0a;padding:4px;overflow:hidden;box-shadow:0 18px 40px -28px rgba(232,180,74,.58)}
.mshot .slot{aspect-ratio:9/12}
/* ⛔⛔ THE REAL SCREENSHOTS NEEDED THEIR OWN RULE AND DID NOT HAVE ONE.
   `.mshot .slot` was a styled DIV; swapping in a bare <img> left it with NO
   css at all, so it rendered at its NATURAL 1181x2090 inside a 247px card and
   the section grew to 2,433px tall on a phone. Measured, not guessed:
   img 1181x2090 in a card 247x2099. That is what "looks very bad and off" was.
   ⛔ `height:auto`, NOT `aspect-ratio:9/12` + cover. The slots were 9:12
   placeholders; these are 9:16-ish phone screenshots (0.565), and cropping them
   to 9:12 would cut a quarter of the conversation off — the messages ARE the
   content. Letting height follow width shows each one whole.
   ⚠ `width`/`height` stay on the <img> in the markup so the box is reserved
   before the bytes arrive; that is what keeps CLS at 0. */
.mshot img{display:block;width:100%;height:auto;border-radius:14px;border:1px solid rgba(255,255,255,.07)}
/* ── CASUAL-SAVING DETERRENT, CSS HALF (2026-08-03) ────────────────────────
   ⛔⛔ THIS IS A DETERRENT AND IT IS NOT PROTECTION. Every file here is served
   from a public URL that is in the page source by design — anyone who opens a
   network tab, or View Source, already has it. This raises the effort of a
   one-gesture save. It does not prevent copying and must never be described
   as if it did.
   ⛔ `-webkit-touch-callout` IS THE ONE THAT MATTERS ON MOBILE: without it a
   long-press on iOS offers "Save to Photos" on every image, which is the
   gesture most people would actually use. The context-menu handler in lp.js
   does nothing about it — that is a desktop event.
   ⚠ NOT `pointer-events:none`: that would kill the hero's tap-to-play and the
   community rail's drag. The goal is to stop a SAVE, not to stop touching. */
img,video{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;
  -webkit-user-drag:none}
/* ⛔ THE 64% CARD IS A MOBILE SPEC AND WAS APPLYING AT EVERY WIDTH. At
   1100px it made each card 600px wide and 1061px tall — a phone
   screenshot blown up past life size, which is not what 'the next one
   peeks' was ever about. Capped so the rail keeps its peek on a phone
   and reads as a row of phones on a desktop. Measured before: card
   600x1061 at 1100px. */
@media(min-width:760px){
  .mshot{flex:0 0 250px}
  .mshot:nth-child(3n+2){transform:translateY(14px)}
  .mshot:nth-child(3n){transform:translateY(6px)}
}
.opt p{font-size:12.5px;line-height:1.6;color:#8b857a}
.opt-note{margin-top:10px;font-size:11.5px;color:var(--dim)}
.opt-link{display:inline-flex;align-items:center;min-height:44px;gap:7px;margin-top:4px;padding:0;background:none;border:0;border-bottom:1px solid rgba(232,180,74,.35);font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);text-decoration:none;cursor:pointer}.opt-link:hover .ar{transform:translateX(4px)}

.stat-band{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:var(--r);background:var(--card);margin-bottom:12px;overflow:hidden}
.stat{padding:13px 6px 12px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;position:relative;min-width:0}
.stat+.stat::before{content:'';position:absolute;left:0;top:20%;bottom:20%;width:1px;background:var(--line)}
.stat svg{width:16px;height:16px;stroke:var(--gold);fill:none;stroke-width:1.7;flex-shrink:0}
.stat b{display:block;font-family:'Archivo',sans-serif;font-size:15px;font-weight:800;line-height:1;white-space:nowrap}
.stat span{display:block;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);line-height:1.35;margin-top:4px}

section{padding:0}
/* Fixed decorative XAU levels, never live-price claims. Each divider is hidden
   from assistive technology in the template: it creates visual trading rhythm
   without inserting invented market data into the page's meaning. */
.wrap>section:not(.xau){padding-top:0}
.wrap>.hero+section,.wrap>section+section{margin-top:var(--section-space)}
.wrap>section+.xau-divider-before-card{margin-top:var(--section-space)}
.xau-divider{position:relative;height:16px;margin:0 0 27px;color:rgba(232,180,74,.48);font-family:'JetBrains Mono',monospace;
  font-size:7.5px;line-height:1;letter-spacing:.14em;font-weight:500;font-variant-numeric:tabular-nums}
.xau-divider::after{content:'XAU · ' attr(data-level);position:absolute;z-index:3;right:0;top:50%;
  padding-left:14px;white-space:nowrap;background:linear-gradient(90deg,transparent,var(--bg) 12px);
  transform:translateY(-50%)}
.xau-divider>i{display:block;position:absolute;left:0;right:0;top:50%;height:1px;
  background:linear-gradient(90deg,transparent 0,rgba(232,180,74,.12) 5%,rgba(232,180,74,.34) 64%,rgba(232,180,74,.12) 88%,transparent 100%)}
.xau-divider>i::before{content:'';position:absolute;z-index:2;left:50%;top:50%;width:11px;height:11px;
  background:linear-gradient(135deg,#fff1b8 0,#e8b44a 58%,rgba(232,180,74,.45) 100%);
  clip-path:polygon(50% 0,59% 40%,100% 50%,59% 60%,50% 100%,41% 60%,0 50%,41% 40%);
  transform:translate(-50%,-50%);filter:drop-shadow(0 0 3px rgba(255,214,112,.72))}
.xau-divider>i::after{content:'';position:absolute;z-index:1;left:50%;top:50%;width:20px;height:20px;
  border-radius:50%;background:radial-gradient(circle,rgba(255,218,128,.34) 0,rgba(232,180,74,.13) 30%,transparent 68%);
  transform:translate(-50%,-50%)}
.xau-divider-before-card{margin:0 0 12px}
.xau-divider-before-card+.xau{margin-top:0}
.card{border:1px solid var(--line);border-radius:var(--r);background:var(--card);overflow:hidden}

.freedom{display:flex;flex-direction:column}
.freedom-body{padding:20px 16px 6px}
.freedom h2{font-size:24px;font-weight:800;line-height:1.18;letter-spacing:-.015em;margin-bottom:12px}
.check-list{display:flex;flex-direction:column;gap:9px;margin-bottom:16px}
.check-item{display:flex;align-items:flex-start;gap:9px;font-size:12.5px;line-height:1.4;color:#d3cec4}
.ck{width:17px;height:17px;border-radius:50%;border:1.5px solid var(--gold);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
.ck::after{content:'';width:7px;height:4px;border-left:1.6px solid var(--gold);border-bottom:1.6px solid var(--gold);transform:rotate(-45deg) translate(.5px,-1px)}
.freedom-media{position:relative;margin:0;aspect-ratio:16/7;overflow:hidden;border-top:1px solid var(--line);background:#0b0b0a}
.freedom-media::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(8,8,7,.18),rgba(8,8,7,.48)),linear-gradient(90deg,rgba(8,8,7,.32),rgba(8,8,7,.06) 58%,rgba(8,8,7,.24))}
.freedom-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 57%}

.method>.eyebrow{justify-content:center}
.method h2{font-size:29px;font-weight:800;line-height:1.08;letter-spacing:-.025em;max-width:26ch;margin:0 auto 11px;text-align:center;text-wrap:balance}
.method .sub{color:var(--muted);font-size:13px;line-height:1.5;max-width:48ch;margin:0 auto 18px;text-align:center}
.chart{position:relative;height:136px;max-width:760px;margin-inline:auto;border:1px solid rgba(232,180,74,.24);border-bottom:none;border-radius:18px 18px 0 0;background:radial-gradient(80% 100% at 50% 0,rgba(232,180,74,.045),transparent 70%),var(--card);overflow:hidden}
.lvl{position:absolute;left:52px;right:0;border-top:none}
.lvl .num{position:absolute;left:-52px;top:-15px;width:31px;height:31px;border-radius:50%;background:var(--bg);display:flex;align-items:center;justify-content:center;font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:600}
.lvl .stub{display:none}
.lvl .tip{display:none;position:absolute;right:10px;top:-16px;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;padding:2px 6px;border-radius:4px;background:var(--card)}
.lvl.gold-l{top:32%}.lvl.gold-l .num{border:1.5px solid var(--gold);color:var(--gold)}.lvl.gold-l .tip{color:var(--gold)}
.lvl.grey-l{top:57%}.lvl.grey-l .num{border:1.5px solid #b0aa9d;color:#c2bcae}.lvl.grey-l .tip{color:#b8b2a5}
.lvl.red-l{top:82%}.lvl.red-l .num{border:1.5px solid var(--stop);color:var(--stop)}.lvl.red-l .tip{color:var(--stop);background:rgba(147,160,173,.1)}

.mcv{position:absolute;inset:0;width:100%;height:100%;display:block}
.anchors{position:relative;max-width:760px;margin-inline:auto;border:1px solid rgba(232,180,74,.24);border-top:none;border-radius:0 0 18px 18px;background:linear-gradient(180deg,#11110f,#0e0e0d);padding:0 13px 7px}
.anchors::before{content:'';position:absolute;left:25px;top:0;bottom:45px;border-left:1px dashed rgba(232,180,74,.30)}
.anchor{display:flex;gap:11px;align-items:center;min-height:43px;padding:6px 0}
.anchor+.anchor{border-top:1px solid var(--line)}
.anchor .num{width:24px;height:24px;border-radius:50%;background:#11110f;display:flex;align-items:center;justify-content:center;font-family:'JetBrains Mono',monospace;font-size:8.5px;font-weight:600;flex-shrink:0;position:relative;z-index:1}
.anchor.a1 .num{border:1.3px solid var(--gold);color:var(--gold)}
.anchor.a2 .num{border:1.3px solid #8b867a;color:#a8a297}
.anchor.a3 .num{border:1.3px solid var(--stop);color:var(--stop)}
.anchor.a4 .num{border:1.3px solid rgba(232,180,74,.55);color:var(--gold-dim)}
.mctx{display:flex;flex-wrap:wrap;gap:5px;padding:8px 0 1px;margin-top:1px;border-top:1px solid var(--line)}
.mctx span{font-family:'JetBrains Mono',monospace;font-size:8px;letter-spacing:.13em;text-transform:uppercase;
  color:var(--dim);border:1px solid var(--line);border-radius:4px;padding:5px 8px}
.anchor b{font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;display:block;margin-bottom:1px}
.anchor p{font-size:11.5px;color:var(--muted);line-height:1.28}

/* Every candle shares one market-gold token. Direction is communicated by
   geometry, not by introducing a second candle palette. */
.bg1 line,.bg2 line,.hero-candles line,.xau-candles line{stroke:var(--candle)}
.bg1 rect,.bg2 rect,.hero-candles rect,.xau-candles rect{fill:var(--candle)}

.xau{position:relative;isolation:isolate;overflow:clip;margin:14px 0 26px;padding:34px 17px 30px;
  border:1px solid rgba(232,180,74,.22);border-radius:22px;
  background:radial-gradient(130% 60% at 50% 0,rgba(232,180,74,.07),transparent 60%),linear-gradient(180deg,#0e0c08,#0a0906 55%,#090807);
  box-shadow:0 0 70px -26px rgba(232,180,74,.30),inset 0 1px 0 rgba(232,180,74,.07)}
.xau .phone{background:#0d0c09}
.xau .panel{background:#141209;border-color:#2a2519}
.xau-candles{position:absolute;top:10px;right:-34px;width:200px;height:220px;opacity:.04;filter:blur(.8px);pointer-events:none;-webkit-mask-image:linear-gradient(to left,black 28%,transparent);mask-image:linear-gradient(to left,black 28%,transparent)}
.xau h2{font-size:29px;font-weight:800;line-height:1.14;letter-spacing:-.02em;max-width:22ch;margin:0 auto 12px;position:relative;text-align:center}
.xau .sub{color:var(--muted);font-size:13.5px;line-height:1.55;max-width:48ch;margin:0 auto 10px;position:relative;text-align:center}
.bridge-wrap{display:flex;justify-content:center;margin:0 0 16px}
.bridge-pill{display:inline-flex;align-items:center;gap:5px;flex-wrap:wrap;justify-content:center;
  font-size:12.5px;line-height:1.4;color:var(--muted);text-align:center;
  border:1px solid var(--line2);border-radius:100px;padding:9px 16px;background:rgba(255,255,255,.014)}
.bridge-pill b{color:var(--gold);font-weight:500}
.xau h2 .l1{display:block;font-size:.84em;color:#cfc9bd;font-weight:700}
.xau h2 .l2{display:block}
.xau-product-mark{position:relative;display:flex;align-items:center;justify-content:center;gap:15px;margin:0 auto 11px;color:#f2d17c;font:600 clamp(27px,8vw,36px)/1 ui-serif,Georgia,'Times New Roman',serif;letter-spacing:.015em;text-shadow:0 0 28px rgba(232,180,74,.19)}
.xau-product-mark i{width:11px;height:11px;background:#fff0ad;clip-path:polygon(50% 0,58% 42%,100% 50%,58% 58%,50% 100%,42% 58%,0 50%,42% 42%);filter:drop-shadow(0 0 7px rgba(255,231,150,.9));animation:xauMarkSpark 3.8s ease-in-out infinite}.xau-product-mark i:last-child{width:8px;height:8px;animation-delay:-1.8s}@keyframes xauMarkSpark{0%,100%{transform:rotate(0) scale(.45);opacity:.3}48%{transform:rotate(34deg) scale(1.08);opacity:1}70%{transform:rotate(52deg) scale(.68);opacity:.55}}
.xau-gradient,.footer-gradient{display:inline-block;background:linear-gradient(96deg,#f5f2ea 0%,#eee7d8 26%,#e8bb58 70%,#f2d17c 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 7px 20px rgba(232,180,74,.16))}
.xau-alert-promise{position:relative;display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:14px;width:min(100%,470px);margin:0 auto 20px;padding:13px 16px 13px 13px;overflow:hidden;border:1px solid rgba(232,180,74,.29);border-radius:16px;background:radial-gradient(circle at 9% 50%,rgba(232,180,74,.14),transparent 27%),linear-gradient(112deg,rgba(30,25,13,.96),rgba(13,12,9,.98) 62%,rgba(10,10,8,.98));box-shadow:inset 0 1px 0 rgba(255,244,208,.055),0 16px 34px -28px rgba(232,180,74,.75);text-align:left}
.xau-alert-promise::before{content:'';position:absolute;inset:10px auto 10px 0;width:2px;border-radius:0 2px 2px 0;background:linear-gradient(180deg,transparent,#f0c45d 28%,#b97916 72%,transparent);box-shadow:0 0 12px rgba(232,180,74,.5)}
.xau-alert-icon{position:relative;display:grid;place-items:center;width:54px;height:54px;border:1px solid rgba(232,180,74,.34);border-radius:15px;background:radial-gradient(circle at 34% 24%,rgba(255,225,144,.12),transparent 36%),linear-gradient(145deg,#1b170d,#0d0c09);box-shadow:inset 0 1px 0 rgba(255,247,220,.08),0 10px 24px -18px rgba(232,180,74,.95)}
.xau-alert-icon::after{content:'';position:absolute;right:7px;top:7px;width:5px;height:5px;border-radius:50%;background:#f0c45d;box-shadow:0 0 9px rgba(240,196,93,.95)}
.xau-alert-icon svg{width:39px;height:39px;overflow:visible;fill:none;stroke:var(--gold);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px rgba(232,180,74,.15))}.xau-alert-icon .alert-device{stroke:#e9c66f}.xau-alert-icon .alert-screen{stroke:#8f7945}.xau-alert-icon .alert-pulse{stroke:#f1c75d}.xau-alert-icon .alert-check{stroke:#f4d986;stroke-width:2}
.xau-alert-copy{display:block;min-width:0}.xau-alert-copy>b,.xau-alert-copy>small{display:block}.xau-alert-meta{display:flex;align-items:center;gap:7px;margin-bottom:4px;color:#9f8b58;font:600 8px 'JetBrains Mono',monospace;letter-spacing:.14em;text-transform:uppercase}.xau-alert-meta em{color:#d8ad45;font-style:normal}.xau-alert-meta i{width:3px;height:3px;border-radius:50%;background:#6f5b2d}.xau-alert-meta small{font:inherit;color:#80765f}.xau-alert-copy>b{margin-bottom:3px;color:#f2ede4;font-family:'Archivo',sans-serif;font-size:14.5px;font-weight:800;line-height:1.25;letter-spacing:-.01em}.xau-alert-copy>small{color:#aaa398;font-size:11.75px;line-height:1.42}
.xau .sub{margin-bottom:8px}
.xau .sub2{font-size:13.5px;line-height:1.55;color:#c2bcb0;font-weight:500;max-width:48ch;margin:0 auto 18px;position:relative;text-align:center}
.xau>.fw{margin:0 auto 20px;text-align:center}
.xau>.fw p{max-width:48ch;margin-inline:auto}
.xau>.xau-punch{max-width:24ch;margin-inline:auto;text-align:center}
.xau>.rec-cta{text-align:center}
.xau>.rec-cta .rec-ask{margin-inline:auto}


/* live status trail */
.track{display:flex;align-items:center;gap:7px;margin-bottom:18px;font-family:'JetBrains Mono',monospace;font-size:8px;letter-spacing:.13em;text-transform:uppercase}
.st{display:flex;align-items:center;gap:5px;color:#4e4b45;transition:color .5s}
.st .pip{width:5px;height:5px;border-radius:50%;background:#302e29;transition:.5s}
.st.done{color:#6e6a62}.st.done .pip{background:#4a4740}
.st.act{color:var(--gold)}.st.act .pip{background:var(--gold);box-shadow:0 0 0 3px rgba(232,180,74,.14)}
.trail{flex:1;height:1px;background:#242320;position:relative;overflow:hidden}
.trail i{position:absolute;left:0;top:0;bottom:0;width:0;background:#4a4740;transition:width .7s ease}
.trail.fill i{width:100%}

/* phone */
.stage{display:flex;flex-direction:column;align-items:center}
.phone{width:300px;max-width:74vw;background:#0b0b0a;border:3px solid #292824;border-radius:34px;padding:12px 11px 14px;position:relative;overflow:hidden;box-shadow:0 28px 56px -28px #000}
.ph-status{display:flex;align-items:center;justify-content:space-between;padding:0 5px 7px;
  font-family:'Inter','Inter Fallback',sans-serif;font-size:9.5px;font-weight:600;color:#c9c4b9}
.pst-ico{display:flex;align-items:center;gap:4px;color:#c9c4b9}
.pst-ico svg{width:12px;height:9px;fill:currentColor}
.sigbars{display:flex;align-items:flex-end;gap:1px;height:8px;font-style:normal}
.sigbars b{width:2px;background:currentColor;border-radius:.5px}
.sigbars b:nth-child(1){height:3px}.sigbars b:nth-child(2){height:5px}.sigbars b:nth-child(3){height:6.5px}.sigbars b:nth-child(4){height:8px}
.bat{width:15px;height:8px;border:1px solid currentColor;border-radius:2px;position:relative;display:block;opacity:.85;font-style:normal}
.bat::after{content:'';position:absolute;right:-2.5px;top:2px;width:1.5px;height:4px;background:currentColor;border-radius:0 1px 1px 0}
.bat b{position:absolute;inset:1px;width:70%;background:currentColor;border-radius:1px;display:block}
.notch{width:58px;height:4px;border-radius:3px;background:#232220;margin:0 auto 11px}
.ph-top{display:flex;align-items:center;gap:8px;font-family:'JetBrains Mono',monospace;font-size:8.5px;letter-spacing:.1em;color:var(--dim);padding-bottom:9px;border-bottom:1px solid #1b1a17}
.ph-top .live{display:flex;align-items:center;gap:4px;color:#4bbd82}
.ph-top .live i{width:5px;height:5px;border-radius:50%;background:#4bbd82;animation:blip 2.4s ease-in-out infinite}
@keyframes blip{0%,100%{opacity:1}50%{opacity:.3}}
.ph-top b{color:var(--txt);font-size:9.5px;font-weight:600;letter-spacing:.06em}
.ph-top .sess{margin-left:auto}

/* chart */
.mkt{position:relative;height:168px;margin:11px 0 12px;border:1px solid #1b1a17;border-radius:9px;background:#0d0d0b;overflow:hidden;contain:paint;isolation:isolate}
.mktcv{position:absolute;inset:0;width:100%;height:100%;display:block}
.grid{position:absolute;inset:0;background-image:linear-gradient(#171613 1px,transparent 1px),linear-gradient(90deg,#171613 1px,transparent 1px);background-size:100% 28px,38px 100%}
.zone{position:absolute;left:0;right:0;top:40%;height:11px;background:rgba(232,180,74,.07);border-top:1px solid rgba(232,180,74,.5);transition:background .6s,border-color .6s}
.inval{position:absolute;left:0;right:0;top:80%;border-top:1px dashed rgba(227,85,85,.45)}
.mkt .tag{position:absolute;right:7px;font-family:'JetBrains Mono',monospace;font-size:7px;letter-spacing:.09em;padding:1px 4px;border-radius:3px;background:#0d0d0b}
.tag.lv{top:calc(40% - 9px);color:var(--gold)}
.tag.iv{top:calc(80% - 9px);color:var(--red)}
.scan{position:absolute;top:0;bottom:0;width:46px;opacity:0;transition:opacity .3s;
  background:linear-gradient(90deg,transparent,rgba(232,180,74,.10) 60%,rgba(232,180,74,.55) 96%,rgba(232,180,74,.9));
  animation:scan 1.2s linear infinite;will-change:transform,opacity;backface-visibility:hidden}
.scan.s2{animation-delay:-.6s;opacity:0}
.mkt.watch .scan,.mkt.hold .scan{opacity:1}
@keyframes scan{from{transform:translate3d(-50px,0,0)}to{transform:translate3d(300px,0,0)}}
.mkt.watch::after,.mkt.hold::after{content:'';position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(0deg,rgba(232,180,74,.045) 0 1px,transparent 1px 3px);
  animation:jitter 1.1s ease-in-out infinite;will-change:opacity}
@keyframes jitter{0%{opacity:.5}100%{opacity:1}}
.ticks{position:absolute;left:6px;top:6px;font-family:'JetBrains Mono',monospace;font-size:6.5px;letter-spacing:.08em;color:rgba(232,180,74,.65);opacity:0;visibility:hidden;transition:opacity .3s}
.mkt.watch .ticks,.mkt.hold .ticks{opacity:1;visibility:visible}

/* confirmation compute overlay */
/* target-reached success state */
.win{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
  background:radial-gradient(120% 90% at 50% 45%,rgba(75,189,130,.20),rgba(6,10,7,.90) 72%);
  opacity:0;visibility:hidden;transform:scale(.96);pointer-events:none;
  transition:opacity .45s ease,transform .5s cubic-bezier(.22,1.2,.36,1),visibility 0s .45s}
.mkt.done .win{opacity:1;visibility:visible;transform:none;transition:opacity .45s ease,transform .5s cubic-bezier(.22,1.2,.36,1)}
.win-ring{width:30px;height:30px;border-radius:50%;border:1.6px solid #4bbd82;position:relative;margin-bottom:4px}
.win-ring::after{content:'';position:absolute;top:9.5px;left:8px;width:12px;height:6px;
  border-left:2px solid #4bbd82;border-bottom:2px solid #4bbd82;transform:rotate(-45deg) scale(0);
  transform-origin:center;animation:none}
.mkt.done .win-ring::after{animation:wtick .35s .22s ease-out forwards}
@keyframes wtick{to{transform:rotate(-45deg) scale(1)}}
.mkt.done .win-ring{animation:wpulse 1.8s .3s ease-out infinite}
@keyframes wpulse{0%{box-shadow:0 0 0 0 rgba(75,189,130,.45)}70%{box-shadow:0 0 0 14px rgba(75,189,130,0)}100%{box-shadow:0 0 0 0 rgba(75,189,130,0)}}
.win em{font-style:normal;font-family:'JetBrains Mono',monospace;font-size:8.5px;letter-spacing:.2em;
  text-transform:uppercase;color:#4bbd82}
.win b{font-family:'Archivo',sans-serif;font-size:38px;font-weight:800;line-height:1;letter-spacing:-.035em;
  color:#5fd694;text-shadow:0 0 22px rgba(75,189,130,.35)}
.win-sub{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.08em;color:#8fbfa4}
.win-sub i{font-style:normal;color:#4bbd82;font-weight:600}
.calc{position:absolute;inset:0;background:rgba(8,8,7,.72);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s;
  display:flex;flex-direction:column;justify-content:center;gap:5px;padding:0 12px}
.mkt.compute .calc{opacity:1;visibility:visible}
.calc .cline{font-family:'JetBrains Mono',monospace;font-size:7.5px;letter-spacing:.06em;color:#c39a3f;display:flex;justify-content:space-between;gap:8px;white-space:nowrap}
.calc .cline em{font-style:normal;color:var(--dim)}
.calc .cline.conf span{color:#4bbd82;font-weight:600;font-size:9px}
.calc .cline{align-items:center}
.calc .dot{width:5px;height:5px;border-radius:50%;background:#4a4034;flex:0 0 5px;margin-right:1px;transition:background .3s,box-shadow .3s}
.calc .cline.pass .dot{background:#4bbd82;box-shadow:0 0 6px rgba(75,189,130,.6)}
.calc .cline.pass em{color:#8fbfa4}
.meter{display:flex;gap:2px;height:9px;align-items:flex-end;margin:5px 0 4px}
.meter i{flex:1;height:100%;background:#241f14;border-radius:1px;transition:background .18s,transform .18s;transform-origin:bottom}
.meter i.on{background:var(--gold);transform:scaleY(1)}
.meter i.on.hi{background:#e2963a}
.meter i.on.top{background:#4bbd82}
.meter i.pk{animation:pk .5s ease-out}
@keyframes pk{0%{transform:scaleY(.35)}100%{transform:scaleY(1)}}

.mkt.hold .zone{background:rgba(226,150,58,.18);border-top-color:rgba(226,150,58,.9)}
.mkt.hold.compute .zone{background:rgba(221,122,52,.2);border-top-color:rgba(221,122,52,.95)}
.mkt.ok .zone{background:rgba(75,189,130,.12);border-top-color:rgba(75,189,130,.7)}
.cc{opacity:0;transition:opacity .6s}
.mkt.ok .cc{opacity:1}

/* status + rows (fixed skeleton — never re-flows) */
.pstat{display:flex;align-items:center;gap:8px;font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);padding:9px 0 11px;border-bottom:1px solid #1b1a17;transition:color .4s}
.pstat{color:#f0c14b;transition:color .45s}
.pstat .ico{width:15px;height:15px;border-radius:50%;position:relative;flex-shrink:0;
  border:1.4px solid currentColor;border-top-color:transparent;border-right-color:transparent;
  animation:spin .9s linear infinite;opacity:.9;transition:border-color .3s;
  will-change:transform;backface-visibility:hidden;transform:translateZ(0)}
@keyframes spin{from{transform:translateZ(0) rotate(0deg)}to{transform:translateZ(0) rotate(360deg)}}
.pstat.lemon{color:#f0c14b}
.pstat.amber{color:#e2963a}
.pstat.orange{color:#dd7a34}
.pstat.green{color:#4bbd82}
/* confirmed only: the spinner resolves into a green check */
.pstat.green .ico{border:1.5px solid #4bbd82;animation:none;opacity:1;
  box-shadow:0 0 12px -2px rgba(75,189,130,.45);transform:none}
.pstat.green .ico::after{content:'';position:absolute;top:3.6px;left:2.9px;width:6.5px;height:3.2px;
  border-left:1.6px solid #4bbd82;border-bottom:1.6px solid #4bbd82;transform:rotate(-45deg);
  animation:checkin .28s ease-out}
@keyframes checkin{from{opacity:0;transform:rotate(-45deg) scale(.5)}to{opacity:1;transform:rotate(-45deg) scale(1)}}
/* processing line stops once confirmed */
.pstat.green ~ .rows{--x:0}
.loadline{height:1.5px;background:#181715;border-radius:2px;overflow:hidden;margin:9px 0 -2px;opacity:1;transition:opacity .35s}
.phone.done .loadline{opacity:0}
.loadline i{display:block;height:100%;width:36%;border-radius:2px;
  background:linear-gradient(90deg,transparent,currentColor,transparent);animation:slide 1.15s linear infinite;will-change:transform;backface-visibility:hidden}
.stage .phone{color:#f0c14b;transition:color .45s}
.stage .phone.warm{color:#e2963a}.stage .phone.hot{color:#dd7a34}.stage .phone.done{color:#4bbd82}
@keyframes slide{0%{transform:translate3d(-100%,0,0)}100%{transform:translate3d(178%,0,0)}}
.rows{padding-top:2px}
.prow{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:9px 0;border-bottom:1px solid #161512}
.prow:last-child{border-bottom:none}
.prow span{font-family:'JetBrains Mono',monospace;font-size:8px;letter-spacing:.13em;text-transform:uppercase;color:var(--dim);flex-shrink:0}
.prow b{font-size:11.5px;font-weight:600;color:#e6e0d4;text-align:right;transition:color .4s}
.prow b.gold{color:var(--gold)}.prow b.red{color:var(--stop)}.prow b.grn{color:#4bbd82}.prow b.dim{color:#8b857a;font-weight:500}

/* iOS-style banner — stays inside the device */
.alert{position:absolute;left:9px;right:9px;top:36px;background:rgba(26,25,22,.97);border:1px solid #35322a;border-radius:16px;padding:12px 13px;box-shadow:0 18px 36px -12px rgba(0,0,0,.95);opacity:0;transform:translateY(-118%);transition:transform .48s cubic-bezier(.2,1.25,.35,1),opacity .25s;pointer-events:none;z-index:5}
.alert.on{opacity:1;transform:translateY(0)}
.al-top{display:flex;justify-content:space-between;align-items:center;font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.14em;color:var(--dim);margin-bottom:9px}
.al-top b{color:var(--gold);font-weight:600;display:flex;align-items:center;gap:6px;font-size:10px}
.al-top .tg{width:17px;height:17px;fill:currentColor;flex-shrink:0}
.al-h{font-family:'Archivo',sans-serif;font-size:15.5px;font-weight:800;letter-spacing:-.01em;margin-bottom:1px;color:var(--txt)}
.al-sym{font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.14em;color:#8b857a;margin-bottom:9px;display:flex;align-items:center;gap:7px}
.al-sym .dir{color:#4bbd82;border:1px solid rgba(75,189,130,.5);background:rgba(75,189,130,.1);border-radius:4px;padding:2px 6px;font-size:8.5px;letter-spacing:.16em}
.alert .prow{padding:6px 0;border-color:#26241f}
.al-rows{display:flex;flex-direction:column;gap:5px;margin:9px 0 2px}
.al-rows div{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.al-rows span{font-family:'JetBrains Mono',monospace;font-size:7.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}
.al-rows b{font-family:'JetBrains Mono',monospace;font-size:10.5px;font-weight:600;color:#e6e0d4}
.al-rows b.red{color:var(--stop)}.al-rows b.grn{color:#4bbd82}
.al-sym .dir{text-transform:none;letter-spacing:.06em}
.al-view{margin-top:8px;display:flex;align-items:center;justify-content:space-between;font-family:'JetBrains Mono',monospace;font-size:8.5px;letter-spacing:.13em;color:var(--gold);border-top:1px solid #26241f;padding-top:9px}

.state-cap{margin-top:16px;text-align:center;max-width:300px;min-height:34px;font-size:13.5px;color:var(--muted);line-height:1.45;transition:opacity .3s}
.compliance{margin:14px auto 0;max-width:340px;text-align:center;font-size:11px;line-height:1.6;color:#5f5b54;border-top:1px solid var(--line);padding-top:12px}

/* ── LIVE CLASSES ── */
.room{margin-top:22px}
.room>.eyebrow{justify-content:center;margin-bottom:9px}
.room h2{font-size:29px;letter-spacing:-.02em;font-weight:800;line-height:1.16;max-width:26ch;margin:0 auto 12px;text-align:center;text-wrap:balance}
.room .sub{color:var(--muted);font-size:13.5px;line-height:1.55;max-width:58ch;margin:0 auto 14px;text-align:center}
.room-constellation{position:relative;isolation:isolate;display:grid;grid-template-columns:1fr;gap:10px;margin:22px 0 8px}
.room-constellation::before{content:'';position:absolute;z-index:-1;inset:4% -8% 10%;pointer-events:none;
  background:radial-gradient(ellipse at 50% 28%,rgba(232,180,74,.18),rgba(232,180,74,.05) 45%,transparent 72%);filter:blur(18px)}
.room-card{position:relative;z-index:2;box-sizing:border-box;padding:17px 16px;background:radial-gradient(circle at 72% 0,rgba(232,180,74,.075),transparent 36%),linear-gradient(145deg,#0d0d0c,#090908 72%);border:1px solid rgba(232,180,74,.42);border-radius:16px;overflow:hidden;box-shadow:0 16px 38px -25px rgba(232,180,74,.72),inset 0 1px 0 rgba(255,237,190,.055)}
.room-card::before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(120deg,rgba(255,232,174,.035),transparent 28%,transparent 76%,rgba(232,180,74,.025))}
.room-card h3{position:relative;font-family:'Archivo',sans-serif;font-size:15px;line-height:1.16;font-weight:800;letter-spacing:-.01em;color:var(--gold);margin:8px 0 6px}
.room-card p{position:relative;font-size:12px;line-height:1.48;color:#c6c0b5}
.room-icon{position:relative;width:24px;height:24px;display:block;fill:none;stroke:var(--gold);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.room-center{z-index:4;min-height:230px;padding:22px 18px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:20px;border-color:#f7d57c;background:radial-gradient(circle at 50% 6%,rgba(255,249,213,.52),transparent 36%),linear-gradient(145deg,#f3ca65,#cf941e 78%);box-shadow:0 26px 58px -22px rgba(232,180,74,.92),inset 0 1px 0 rgba(255,255,255,.62)}
.room-broadcast{width:34px;height:34px;fill:none;stroke:#241906;stroke-width:1.8;stroke-linecap:round;margin-bottom:4px;overflow:visible;animation:liveSignalLift 2.2s ease-in-out infinite}
.room-broadcast circle{transform-origin:center}.room-broadcast path{transform-origin:center;animation:liveRayPulse 1.8s ease-in-out infinite}
.room-live{animation:liveWordBreath 2.2s ease-in-out infinite}
@keyframes liveSignalLift{50%{transform:translateY(-3px) scale(1.04)}}@keyframes liveRayPulse{0%,100%{transform:scale(.88);opacity:.4;stroke-width:1.45}50%{transform:scale(1.08);opacity:1;stroke-width:2.15;filter:drop-shadow(0 0 4px rgba(76,49,4,.35))}}@keyframes liveWordBreath{50%{text-shadow:0 0 20px rgba(255,248,212,.44);transform:scale(1.018)}}
.room-live{font-family:'Archivo',sans-serif;font-size:clamp(54px,18vw,74px);font-weight:900;line-height:.82;letter-spacing:-.07em;text-transform:uppercase;color:#100d07}
.room-center h3{font-size:clamp(17px,4.6vw,20px);line-height:1;font-weight:850;letter-spacing:-.035em;color:#100d07;margin:14px 0 8px;white-space:nowrap}.room-center p{font-size:11px;color:#3d2b0b;font-weight:650;margin-bottom:11px}
.room-center strong{display:inline-flex;align-items:center;justify-content:center;min-width:148px;padding:9px 16px;border-radius:999px;border:1px solid rgba(232,180,74,.8);background:linear-gradient(180deg,#f1c65a,#c9911d);color:#100d07;font-family:'Archivo',sans-serif;font-size:13px;font-weight:850;line-height:1;box-shadow:0 5px 18px -8px rgba(232,180,74,.9)}
.room-center strong{color:#f5cf78;background:#11100d;border-color:#2b210d;box-shadow:0 8px 20px -10px rgba(0,0,0,.8)}
.room-orbits{position:absolute;inset:0;pointer-events:none}.room-orbits i{position:absolute;width:14px;height:14px;background:#fff1b2;clip-path:polygon(50% 0,58% 42%,100% 50%,58% 58%,50% 100%,42% 58%,0 50%,42% 42%);filter:drop-shadow(0 0 5px #fff1b2) drop-shadow(0 0 12px rgba(232,180,74,.9));animation:roomSparkle 3.4s ease-in-out infinite}.room-orbits i:first-child{left:11%;top:23%}.room-orbits i:nth-child(2){right:13%;top:17%;width:10px;height:10px;animation-delay:-1.2s}.room-orbits i:nth-child(3){right:19%;bottom:15%;width:12px;height:12px;animation-delay:-2.35s}@keyframes roomSparkle{0%,100%{transform:rotate(0) scale(.45);opacity:.32}42%{transform:rotate(28deg) scale(1.18);opacity:1}66%{transform:rotate(48deg) scale(.72);opacity:.6}}
.room-avatars{position:relative;display:flex;align-items:center;margin-top:11px;padding-left:2px}
.room-avatars i{display:grid;place-items:center;width:24px;height:24px;margin-left:-5px;border:2px solid #0b0b0a;border-radius:50%;color:#fff;font-family:'Archivo',sans-serif;font-size:9px;font-style:normal;font-weight:800;box-shadow:0 4px 10px rgba(0,0,0,.35)}
.room-avatars i:first-child{margin-left:0;background:#8f5723}.room-avatars i:nth-child(2){background:#426c86}.room-avatars i:nth-child(3){background:#6c5a86}.room-avatars i:nth-child(4){background:#39705d}
.room-breakdown,.room-community,.room-class{min-height:132px}.room-class .room-icon{width:30px;height:30px}.room-class h3{margin:8px 0 5px}



/* ── RECORD CTA + MODAL ── */
.rec-cta{display:flex;flex-direction:column;align-items:center;gap:9px;margin-top:24px}
.btn-ghost{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;padding:15px;border-radius:11px;
  background:rgba(232,180,74,.05);border:1px solid rgba(232,180,74,.42);color:var(--gold);
  font-family:'Archivo',sans-serif;font-weight:700;font-size:14px;cursor:pointer;transition:background .2s,border-color .2s}
.btn-ghost:hover{background:rgba(232,180,74,.09);border-color:rgba(232,180,74,.65)}
.btn-ghost .ar{font-size:13px;opacity:.8}
.rec-stamp{display:flex;align-items:center;gap:7px;font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--dim)}
.rec-stamp svg{width:12px;height:12px;stroke:var(--gold-dim);fill:none;stroke-width:1.8}
.xau .rec-cta{gap:7px}
.xau .rec-stamp{gap:9px;margin-top:6px;color:#d8e9ff;font-size:11.5px;font-weight:600;letter-spacing:.11em}
.xau .rec-stamp .verified-badge{width:23px;height:23px;overflow:visible;filter:drop-shadow(0 0 7px rgba(0,149,246,.40))}
.xau .rec-stamp .verified-badge circle{fill:var(--verify);stroke:none}
.xau .rec-stamp .verified-badge path{fill:none;stroke:#fff;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}
/* record sheet — reading note */
.readnote{padding:18px;border-top:1px solid #a8a8a8;background:#c2c2c2}
.readnote h4{font-family:'IBM Plex Mono',monospace;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:#565656;margin-bottom:12px}
.readnote p{font-size:11.5px;line-height:1.65;color:#3d3d3d}
.readnote p+p{margin-top:9px;color:#4a4a4a}

/* ══ THE RECORD — greyscale document, chart-first ══ */
.modal{position:fixed;inset:0;z-index:200;display:flex;align-items:flex-end;justify-content:center;
  background:rgba(0,0,0,0);visibility:hidden;pointer-events:none;transition:background .28s ease,visibility 0s .28s}
.modal.on{background:rgba(0,0,0,.72);visibility:visible;pointer-events:auto;transition:background .28s ease}
.doc{width:100%;max-width:560px;max-height:86vh;display:flex;flex-direction:column;
  background:#c9c9c9;color:#1a1a1a;font-family:'IBM Plex Sans',sans-serif;
  border-radius:10px 10px 0 0;overflow:hidden;
  transform:translateY(101%);transition:transform .34s cubic-bezier(.32,.72,0,1);
  box-shadow:0 -10px 30px rgba(0,0,0,.45)}
.modal.on .doc{transform:none}
.sheet-grab{display:none}
.dbar{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:10px 16px 11px;background:#bdbdbd;border-bottom:1px solid #1a1a1a}
.dbar-copy{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}
.dbar-title{font-family:'IBM Plex Mono',monospace;font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:#3d3d3d}
.doc-x{width:24px;height:24px;border:1px solid #8f8f8f;background:none;color:#3d3d3d;font-size:13px;line-height:1;cursor:pointer;border-radius:3px}
.dbody{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;padding-bottom:calc(18px + env(safe-area-inset-bottom))}
.record-source-link{display:inline-flex;align-items:center;justify-content:flex-start;gap:6px;
  margin:0;padding:7px 10px;background:rgba(255,255,255,.12);border:1px solid #929292;
  border-radius:4px;color:#3f3f3f;box-shadow:inset 0 1px rgba(255,255,255,.18);
  font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:600;
  line-height:1.25;letter-spacing:.035em;text-decoration:none}
.record-source-link span:first-child{text-decoration:none}
.record-source-link span:last-child{flex:0 0 auto;color:inherit;font-size:11px;line-height:1;
  transform:none;transition:none}
.record-source-link:hover{background:rgba(255,255,255,.24);border-color:#777;color:#292929}
.record-source-link:focus-visible{background:rgba(255,255,255,.24);border-color:#666;color:#202020;outline:2px solid #555;outline-offset:2px}
.record-source-link:hover span:last-child,.record-source-link:focus-visible span:last-child{
  color:inherit;transform:none}

/* compact letterhead */
.dh{padding:14px 16px 12px;border-bottom:1.5px solid #1a1a1a}
.dh-mark{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#1a1a1a;font-weight:600;margin-bottom:7px;line-height:1.5}
.dh-mark i{font-style:normal;color:#565656;font-weight:400}
.dh p{font-size:12px;line-height:1.55;color:#3d3d3d;max-width:52ch}

/* headline figures */
.kf{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #a8a8a8}
.kf div{padding:16px 16px 15px}
.kf div+div{border-left:1px solid #b2b2b2}
.kf b{display:block;font-family:'IBM Plex Mono',monospace;font-size:31px;font-weight:600;letter-spacing:-.035em;line-height:1;margin-bottom:8px}
.kf span{font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:#4a4a4a}
.kfline{padding:11px 16px;border-bottom:1px solid #a8a8a8;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.08em;color:#3a3a3a;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}

/* monthly gain chart — the hero of the document */
.mg{padding:16px 16px 14px;border-bottom:1px solid #a8a8a8}
.mg h4{font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:#4a4a4a;margin-bottom:16px;display:flex;justify-content:space-between;gap:10px}
.mgbars{display:flex;align-items:flex-end;gap:4px;height:138px;border-bottom:1px solid #1a1a1a}
.mgb{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%}
.mgb em{font-style:normal;font-family:'IBM Plex Mono',monospace;font-size:clamp(7px,1.75vw,9.5px);font-weight:600;color:#1a1a1a;margin-bottom:5px;letter-spacing:-.055em;white-space:nowrap}
.mgb i{display:block;width:100%;background:#4a4a4a}
.mgb.hi i{background:#1a1a1a}
.mgx{display:flex;gap:4px;margin-top:6px}
.mgx span{flex:1;text-align:center;font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:500;color:#3d3d3d}
.mgyr{display:flex;margin-top:8px;font-family:'IBM Plex Mono',monospace;font-size:9px;letter-spacing:.18em;color:#565656}
.mgyr span{text-align:center}

/* secondary blocks */
.ds{padding:14px 16px;border-bottom:1px solid #a8a8a8}
.ds h4{font-family:'IBM Plex Mono',monospace;font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;color:#565656;margin-bottom:11px}
.cumdoc{position:relative;height:66px;border-left:1px solid #1a1a1a;border-bottom:1px solid #1a1a1a}
.cumdoc svg{position:absolute;inset:0;width:100%;height:100%}
.cumcap{display:flex;justify-content:space-between;font-family:'IBM Plex Mono',monospace;font-size:7.5px;letter-spacing:.08em;color:#565656;margin-top:6px}
.meta{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
.meta div{min-width:0}
.meta dt{font-family:'IBM Plex Mono',monospace;font-size:7.5px;letter-spacing:.14em;text-transform:uppercase;color:#565656;margin-bottom:3px}
.meta dd{font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:#242424}
.readnote{padding:14px 16px;background:#c2c2c2;border-bottom:1px solid #a8a8a8}
.readnote h4{font-family:'IBM Plex Mono',monospace;font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;color:#565656;margin-bottom:9px}
.readnote p{font-size:10.5px;line-height:1.55;color:#3d3d3d}
.readnote p+p{margin-top:7px;color:#4a4a4a}
.stamp{margin:14px 16px 0;border:1px solid #4a4a4a;color:#333;padding:9px 11px;
  font-family:'IBM Plex Mono',monospace;font-size:9px;line-height:1.55}
.stamp b{display:block;font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:4px;color:#1a1a1a}
.disc{padding:13px 16px 0;font-size:9.5px;line-height:1.65;color:#4a4a4a}
.disc strong{color:#1a1a1a;font-weight:600}
.sig{margin:12px 16px 0;padding-top:11px;border-top:1px solid #a8a8a8;display:flex;justify-content:space-between;
  font-family:'IBM Plex Mono',monospace;font-size:8px;letter-spacing:.1em;color:#565656}
@media(min-width:760px){.doc{max-height:84vh;border-radius:4px;margin-bottom:5vh}}

/* ── WHO'S TEACHING — editorial ── */
.ap-kicker{justify-content:center;text-align:center;margin:0 0 14px}
.ap-heading{min-width:0;max-width:720px;margin:0 auto 30px;text-align:center}
.ap-heading h2{font-size:30px;font-weight:800;line-height:1.08;margin:0;letter-spacing:-.035em;text-wrap:balance}
.ap-story::after{content:'';display:block;clear:both}
.ap-portrait{position:relative;float:right;width:154px;margin:0 0 18px 18px;aspect-ratio:1/1.3;overflow:hidden;background:transparent;box-shadow:0 28px 60px -44px rgba(232,180,74,.9);-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 5%,#000 94%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 5%,#000 94%,transparent 100%)}
.ap-portrait-img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 58%;transform:scale(1.1);transform-origin:50% 55%}
.ap-portrait .slot{height:100%}
.ap-body{display:grid;grid-template-columns:minmax(118px,38%) minmax(0,1fr);column-gap:15px;min-width:0}
.ap-copy{grid-column:1 / -1;min-width:0}.ap-photo{float:none;grid-column:1;grid-row:2;position:relative;width:100%;max-width:158px;min-height:0;margin:8px 0 0;aspect-ratio:auto;align-self:stretch;overflow:hidden;border-radius:12px;border:1px solid rgba(232,180,74,.24);box-shadow:0 18px 40px -30px rgba(232,180,74,.55)}
.ap-closing{grid-column:2;grid-row:2;min-width:0;margin-left:0}
.ap-photo .slot{height:100%}
.ap-photo .slot::before{font-size:7.5px;line-height:1.6;max-width:86%;padding:5px 7px}
.ap-body p{font-size:14px;line-height:1.6;color:#b8b2a6;margin-bottom:11px}
.ap-body p:last-child{margin-bottom:0}
.ap-quote{border-left:1px solid rgba(232,180,74,.5);padding:2px 0 2px 12px;margin:4px 0 15px}
.ap-quote p{font-size:12.5px;line-height:1.55;color:#9c958a}
.ap-close{font-family:'Archivo',sans-serif;font-size:14px;font-weight:700;line-height:1.38;color:var(--txt);padding-top:14px;border-top:1px solid var(--line)}
.ap-life{--ap-life-h:clamp(240px,66vw,290px);position:relative;isolation:isolate;width:calc(100% + 32px);height:var(--ap-life-h);margin:-12px -16px 30px;overflow:hidden;background:#07090a;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 8%,#000 90%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 8%,#000 90%,transparent 100%)}
/* RULING COLLISION, LATEST ONE APPLIES (AJ, 2026-08-05): "view the video in
   full" meant keep the HORIZONTAL BACKDROP and lift the source within that
   crop so its subjects remain visible — not letterbox the portrait recording.
   `cover` therefore stays. AJ's latest adjustment raises the footage inside
   the fixed backdrop by 30 percentage points (`36%` -> `66%`); the section box
   itself does not move or resize.
   One player still means one decoder/request; reduced-motion/saveData remain
   src-less. The superseded contain reasoning stays above in history. */
.ap-life-video{position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 66%;opacity:.77;filter:saturate(.9) contrast(1.06) brightness(.88);transform:scale(1.02);transform-origin:50% 66%;pointer-events:none}
.ap-life::before{content:'';position:absolute;z-index:2;inset:0;background:linear-gradient(180deg,rgba(3,3,3,.18),transparent 22%,transparent 68%,rgba(3,3,3,.7)),linear-gradient(90deg,#030303 0,transparent 10%,transparent 90%,#030303 100%);pointer-events:none}
@media(max-width:519px){
  .ap-heading{max-width:340px;margin-bottom:30px}
  .ap-heading h2{font-size:28px;line-height:1.08}
}
@media(max-width:759px){
  /* The main portrait remains a readable opening beat. The desk photograph is
     different: it is a supporting proof image, so it forms one compact editorial
     spread with the quote and close instead of becoming a second full-width hero. */
  .ap-story{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
  .ap-story::after{display:none}
  .ap-portrait{float:none;width:min(100%,360px);margin:0 auto 26px;aspect-ratio:4/5;border-radius:18px;
    -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 3%,#000 96%,transparent 100%);
    mask-image:linear-gradient(180deg,transparent 0,#000 3%,#000 96%,transparent 100%)}
  .ap-portrait-img{object-position:50% 57%;transform:scale(1.035);transform-origin:50% 56%}
  .ap-body{display:grid;grid-template-columns:minmax(122px,36%) minmax(0,1fr);column-gap:15px;width:100%;min-width:0}
  .ap-copy{grid-column:1 / -1;width:100%}
  .ap-body p{font-size:14.5px;line-height:1.65}
  .ap-photo{display:block;grid-column:1;grid-row:2;width:100%;max-width:none;height:auto;aspect-ratio:2/3;margin:22px 0 0;border-radius:14px;align-self:start}
  .ap-photo .slot{height:100%}
  .ap-photo>.ap-img{object-position:50% 48%;transform:none}
  .ap-life>.ap-life-video{transform:none}
  .ap-closing{display:block;grid-column:2;grid-row:2;width:100%;margin:22px 0 0;align-self:center}
  .ap-quote{margin:0 0 14px;padding:2px 0 2px 12px}
  .ap-quote p{font-size:12.5px;line-height:1.58}
  .ap-close{font-size:14px;line-height:1.42;padding-top:14px}
}
@media(max-width:374px){
  .ap-body{grid-template-columns:minmax(108px,34%) minmax(0,1fr);column-gap:12px}
  .ap-quote p{font-size:12px}.ap-close{font-size:13px}
}

@media(min-width:760px) and (max-width:999px){.ap-closing{align-self:center}}
/* ── COMMUNITY ── */
.comm h2{font-size:29px;letter-spacing:-.02em;font-weight:800;line-height:1.18;margin-bottom:10px}
.comm-accent{color:var(--gold)}
.comm .sub{color:var(--muted);font-size:13.5px;line-height:1.5;margin-bottom:22px;max-width:340px}

/* phone feed */
.feed-wrap{display:flex;justify-content:center;margin-bottom:22px}
.feed-phone{width:280px;background:#0b0b0a;border:3px solid #292824;border-radius:32px;padding:11px 10px 14px;box-shadow:0 26px 54px -28px #000}
.fnotch{width:56px;height:4px;border-radius:3px;background:#232220;margin:0 auto 10px}
.fhead{display:flex;align-items:center;gap:9px;padding-bottom:10px;border-bottom:1px solid #1b1a17;margin-bottom:11px}
.favi{width:30px;height:30px;border-radius:9px;background:linear-gradient(150deg,#2a2418,#15130d);border:1px solid #332c1c;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.favi svg{width:15px;height:15px;fill:var(--gold)}
.fhead b{display:block;font-size:11.5px;font-weight:600;line-height:1.2}
.fhead span{font-family:'JetBrains Mono',monospace;font-size:7.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--dim)}
.fpin{display:flex;align-items:center;gap:6px;background:rgba(232,180,74,.07);border:1px solid rgba(232,180,74,.24);border-radius:8px;padding:8px 10px;margin-bottom:11px;
  font-size:10.5px;color:#cfc7b4;line-height:1.3}
.fpin em{font-style:normal;font-family:'JetBrains Mono',monospace;font-size:7px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);flex-shrink:0}
.msgs{display:flex;flex-direction:column;gap:9px}
.msg{max-width:88%;background:#151412;border:1px solid #201f1c;border-radius:12px 12px 12px 4px;padding:8px 10px 7px}
.msg.me{align-self:flex-end;border-radius:12px 12px 4px 12px;background:rgba(232,180,74,.08);border-color:rgba(232,180,74,.26)}
.msg .who{font-size:9px;font-weight:600;color:var(--gold-dim);margin-bottom:3px;display:flex;justify-content:space-between;gap:8px}
.msg .who i{font-style:normal;font-family:'JetBrains Mono',monospace;font-size:7px;color:#514d46;font-weight:400}
.msg p{font-size:10.5px;line-height:1.42;color:#d0cabe}
.react{display:flex;gap:5px;margin-top:6px}
.react span{font-size:8.5px;background:#1c1b18;border:1px solid #262420;border-radius:20px;padding:2px 6px;color:#9b958a}
.vnote{display:flex;align-items:center;gap:8px;margin-top:2px}
.vplay{width:22px;height:22px;border-radius:50%;background:rgba(232,180,74,.14);border:1px solid rgba(232,180,74,.4);flex-shrink:0;position:relative}
.vplay::after{content:'';position:absolute;top:50%;left:54%;transform:translate(-50%,-50%);border-left:6px solid var(--gold);border-top:3.5px solid transparent;border-bottom:3.5px solid transparent}
.wave{flex:1;display:flex;align-items:center;gap:2px;height:18px}
.wave i{flex:1;background:rgba(232,180,74,.42);border-radius:1px}
.vlen{font-family:'JetBrains Mono',monospace;font-size:7.5px;color:var(--dim)}
.fthumb{height:62px;border-radius:8px;margin-top:6px;overflow:hidden;position:relative;background:#0f0f0d;border:1px solid #201f1c}
.fthumb svg{position:absolute;inset:0;width:100%;height:100%}
.fthumb em{position:absolute;left:6px;bottom:5px;font-style:normal;font-family:'JetBrains Mono',monospace;font-size:7px;letter-spacing:.1em;color:var(--gold);background:rgba(8,8,7,.75);padding:2px 5px;border-radius:3px}

/* message cards */
/* ⛔ NO scroll-snap: IT FIGHTS THE AUTO-SLIDE. `scroll-snap-type: x
   mandatory` re-snaps after every programmatic scrollLeft change, so a
   continuous marquee stutters against its own snap points. Free scroll
   is also what makes a drag feel like a drag rather than a carousel.
   ⚠ `overscroll-behavior-x: contain` stops a horizontal drag at the end
   of the rail from triggering the browser's back-swipe on iOS. */
.mcards{overflow-x:auto;scrollbar-width:none;
  overscroll-behavior-x:contain;margin:0 -16px 18px;
  border-block:1px solid rgba(232,180,74,.13);
  background:linear-gradient(90deg,rgba(232,180,74,.035),transparent 16%,transparent 84%,rgba(232,180,74,.035))}
.mcards::-webkit-scrollbar{display:none}
.mtrack{display:flex;gap:12px;width:max-content;padding:20px 16px 30px;will-change:transform}
.comm-actions{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:12px;padding-top:2px;text-align:center}
.comm-actions .tg-note{max-width:32ch;margin:0;color:#c9c3b8;font-size:13px;line-height:1.45}
.comm-actions .btn-ghost{width:min(100%,340px);margin:0}
.mcard{flex:0 0 74%;scroll-snap-align:start;border:1px solid var(--line);border-radius:13px;background:var(--card);padding:15px 14px}
.mtop{display:flex;align-items:center;gap:9px;margin-bottom:11px}
.mav{width:32px;height:32px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  font-family:'Archivo',sans-serif;font-size:11px;font-weight:700;color:#0f0d08;background:linear-gradient(150deg,#e8b44a,#b98f34)}
.mtop b{display:block;font-size:12px;font-weight:600;line-height:1.2}
.mtop span{font-family:'JetBrains Mono',monospace;font-size:7.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--dim)}
.mcard p{font-size:13.5px;line-height:1.5;color:#d2ccc0;margin-bottom:11px}

/* ── WHY PIPSLAB WORKS — one before→after system ── */
.why>.eyebrow{justify-content:center}
.why h2{font-size:29px;letter-spacing:-.02em;font-weight:800;line-height:1.18;margin:0 auto 20px;text-align:center}
.cmp-flow{overflow:hidden;border:1px solid rgba(232,180,74,.34);border-radius:16px;
  background:linear-gradient(155deg,rgba(232,180,74,.065),transparent 42%),#0d0d0c;
  box-shadow:0 22px 54px -38px rgba(232,180,74,.45);max-width:760px;margin-inline:auto}
.cmp-axis,.cmp-row{display:grid;grid-template-columns:minmax(0,.85fr) 48px minmax(0,1.15fr);align-items:center}
.cmp-axis{padding:17px 16px 15px;border-bottom:1px solid var(--line)}
.cmp-axis>div{display:flex;flex-direction:column;gap:4px;min-width:0}
.cmp-axis>div:last-child{grid-column:3;align-items:flex-start}
.cmp-axis span{font-family:'JetBrains Mono',monospace;font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
.cmp-axis b{font-family:'Archivo',sans-serif;font-size:15px;color:#a9a398}
.cmp-axis>div:last-child b{font-size:17px;color:var(--gold)}
.cmp-row{min-height:58px;padding:0 16px;border-bottom:1px solid rgba(255,255,255,.055);
  background:linear-gradient(90deg,transparent 48%,rgba(232,180,74,.055) 48%,rgba(232,180,74,.13) 100%)}
.cmp-from,.cmp-to{font-size:13.5px;line-height:1.32}
.cmp-from{color:#8f8b83;padding-right:6px;text-decoration:line-through;text-decoration-color:rgba(143,139,131,.42);text-decoration-thickness:1px}
.cmp-to{color:#efc45d;padding-left:9px;font-weight:650}
/* Each relationship gets ONE arrow centred in a dedicated lane. The 48px lane
   keeps the arrowhead clear of the answer even at 375px. */
.cmp-row>i{position:relative;justify-self:center;width:22px;height:1px;background:rgba(232,180,74,.52)}
.cmp-row>i::before{content:'';position:absolute;left:-1px;top:-2px;width:5px;height:5px;border-radius:50%;background:#514a3b}
.cmp-row>i::after{content:'';position:absolute;right:0;top:-3px;width:6px;height:6px;border-top:1px solid var(--gold);border-right:1px solid var(--gold);transform:rotate(45deg)}
.res-split{padding:16px}
.res-split>span{display:block;font-family:'JetBrains Mono',monospace;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);margin-bottom:11px}
.res-list{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 22px}
.res-list i{position:relative;font-style:normal;font-size:12.5px;color:#bdb7ac;line-height:1.3;padding-left:12px}
.res-list i::before{content:'';position:absolute;left:0;top:.48em;width:4px;height:4px;border-radius:50%;background:var(--gold)}

/* ── FREE CLASS — 2x2 grid ── */
.journey h2{font-size:28px;font-weight:800;line-height:1.2;margin-bottom:6px}
.journey .sub{color:var(--muted);font-size:13.5px;margin-bottom:18px}
.grid4{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:24px}
.blk{border:1px solid var(--line);border-radius:15px;background:var(--card);padding:20px 16px 19px;min-height:172px;display:flex;flex-direction:column}
.blk em{font-style:normal;font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:.16em;color:var(--gold);display:block;margin-bottom:14px}
.blk b{display:block;font-family:'Archivo',sans-serif;font-size:17.5px;font-weight:800;margin-bottom:7px;line-height:1.18;letter-spacing:-.01em}
.blk span{font-size:12.5px;color:var(--muted);line-height:1.45;display:block;margin-top:auto}

/* ── FINAL CLOSE ── */
.close{position:relative;overflow:hidden;width:min(100%,900px);border:1px solid rgba(232,180,74,.32);border-radius:18px;
  background:radial-gradient(ellipse 55% 34% at 50% 0,rgba(232,180,74,.09),transparent 72%),linear-gradient(180deg,#141311,#0d0d0c);
  box-shadow:0 34px 66px -30px #000;padding:34px 20px 28px;margin:40px auto 0;text-align:center}
.close-ready{width:max-content;max-width:100%;margin:0 auto 13px;color:#f5f3ee;font-family:'Archivo',sans-serif;font-size:clamp(23px,6.4vw,30px);font-weight:850;line-height:1;letter-spacing:-.035em;text-wrap:balance}
.close-limited{display:inline-flex;align-items:center;justify-content:center;gap:7px;margin:0 auto 11px;color:var(--gold);font-family:'JetBrains Mono',monospace;font-size:9px;font-weight:700;letter-spacing:.17em;text-transform:uppercase}
.close-limited i{width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px rgba(232,180,74,.72)}
.close h2{font-size:33px;letter-spacing:-.025em;font-weight:800;line-height:1.12;max-width:23ch;margin:0 auto 16px}
.footer-gradient{background-image:linear-gradient(98deg,#f7df9d 0%,#d49420 18%,#fff1b8 43%,#f0bd4c 62%,#fff8dd 78%,#c9871a 100%);filter:drop-shadow(0 8px 24px rgba(232,180,74,.2))}
.csub{font-size:13.5px;line-height:1.55;color:var(--muted);max-width:43ch;margin:0 auto 15px}
.close .btn{width:min(100%,520px);min-height:56px;padding:17px 24px;margin-inline:auto;font-size:16.5px}
.cwhen{margin:15px auto 0;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:7px 10px;
  font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-dim)}
.cwhen i{font-style:normal;color:var(--dim);padding-left:10px;border-left:1px solid var(--line2)}
.cwhen b{font-family:'Archivo',sans-serif;font-size:14px;letter-spacing:.015em;color:var(--gold);font-variant-numeric:tabular-nums}
[data-class-countdown]{text-transform:none}
.cwhen.soon,.cwhen.starting-now{color:var(--gold)}
.close .under-cta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:11px auto 0;width:min(100%,430px);font-size:11px}
.close .under-cta i{justify-content:center;white-space:nowrap;font-size:clamp(9px,2.55vw,11px)}
.footsep{height:1px;background:var(--line);margin:34px 0 22px}

/* ── STICKY CONVERSION BAR ── */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:80;
  background:linear-gradient(180deg,rgba(10,10,9,.97),rgba(6,6,5,.99));backdrop-filter:blur(18px) saturate(120%);
  border-top:1px solid rgba(232,180,74,.30);box-shadow:0 -20px 38px -20px rgba(0,0,0,.95);
  padding:11px 15px calc(9px + env(safe-area-inset-bottom));
  transform:translateY(115%);opacity:0;visibility:hidden;
  transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .3s,visibility 0s .42s}
.sticky.on{transform:none;opacity:1;visibility:visible;
  transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .3s}
/* ⛔ `visibility` IS WHAT KEEPS THE HIDDEN BAR OUT OF THE TAB ORDER, AND IT WAS
   MISSING. `opacity:0` and `translateY(115%)` hide a control from the EYE and
   from NOTHING ELSE — both of the bar's buttons stayed focusable, so a keyboard
   user tabbing down the page landed on "Save My Free Seat" and the includes
   toggle while they were fully transparent and parked off the bottom of the
   viewport. Focus was somewhere they could not see, with no way to tell where.
   ⛔ AND IT CANNOT BE FIXED BY SCROLLING: the bar is `position:fixed`, so unlike
   a control below the fold there is no scroll position that reveals it.
   ⚠ The delayed `visibility 0s .42s` on the hidden state is the same device
   `.modal` uses at line 565 — the bar must stay visible for the length of its
   own slide-out, then disappear. Removing the delay makes it vanish instantly
   and the transition plays on nothing. */
.sk-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(154px,1.05fr);
  grid-template-areas:"event cta" "incl cta";gap:7px 10px;align-items:center;max-width:430px;margin:0 auto}
.sk-event{grid-area:event;min-width:0;display:flex;align-items:flex-end;gap:0;flex-wrap:nowrap;padding-left:11px}
.sk-lab{position:relative;display:flex;align-items:center;gap:0;font-family:'JetBrains Mono',monospace;font-size:9px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:0;flex-shrink:0;align-self:flex-start}
.sk-lab i{position:absolute;left:-11px;top:50%;width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 8px 1px rgba(232,180,74,.5);
  animation:glowdot 3.2s ease-in-out infinite;transform:translateY(-50%)}
.sticky.live .sk-lab{color:#4bbd82}
.sticky.live .sk-lab i{background:#4bbd82;box-shadow:0 0 8px 1px rgba(75,189,130,.6)}
.sticky.live .sk-zoom{display:none}
.sticky.soon .sk-lab,.sticky.starting-now .sk-lab{color:#f3c65e}
.sk-stack{min-width:0;display:flex;flex-direction:column;gap:5px}
.sk-stack>b{display:flex;flex-direction:column;gap:2px;font-family:'Archivo',sans-serif;font-size:13.5px;font-weight:800;line-height:1;letter-spacing:-.01em;white-space:nowrap}
#skWhenLabel{color:#f2eee6}
#skWhenTime{font-family:'JetBrains Mono',monospace;font-size:10.5px;font-weight:600;line-height:1.2;letter-spacing:.015em;color:#c8ad68}
@media(max-width:759px){.sk-stack>b{line-height:1.15}.sticky.live .sk-stack>b{font-size:12px}}
.sk-zoom{font-style:normal;display:none;font-size:10px;color:var(--dim)}
.sk-div{display:none}
.sk-incl{grid-area:incl;align-self:center;display:flex;align-items:center;gap:7px;background:none;border:none;padding:0;
  color:#b0aa9e;font-size:12.5px;font-family:'Inter','Inter Fallback',sans-serif;cursor:pointer;text-align:left;min-width:0}
.sk-incl svg{width:15px;height:15px;stroke:var(--gold);fill:none;stroke-width:1.7;flex-shrink:0}
.sk-incl-full{display:none}
.sk-incl-min{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sk-chevron{width:12px!important;height:12px!important;flex:0 0 12px;stroke:#a49d91!important;stroke-width:1.7!important;stroke-linecap:round;stroke-linejoin:round;fill:none!important;transition:transform .25s,color .25s}
.sk-incl[aria-expanded="true"] .sk-chevron{transform:rotate(180deg);stroke:var(--gold)!important}
.sk-cta{grid-area:cta;align-self:stretch;justify-self:stretch;width:100%;padding:11px 10px;font-size:13.5px;border-radius:9px;gap:7px;
  min-width:0;box-shadow:inset 0 1px 0 rgba(255,245,214,.5),0 6px 18px -10px rgba(232,180,74,.5)}
.sk-cta .ar{transition:transform .18s}
.sk-cta .ar svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.sk-cta:hover .ar{transform:translateX(3px)}
.sk-sheet{display:none;max-width:430px;margin:8px auto 0;padding-top:8px;border-top:1px solid var(--line)}
.sk-sheet.on{display:block}
.sk-sheet h6{font-family:'JetBrains Mono',monospace;font-size:8px;letter-spacing:.17em;text-transform:uppercase;color:var(--gold-dim);margin-bottom:8px}
.sk-sheet ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}
.sk-sheet li{display:flex;align-items:center;gap:7px;font-size:11.5px;color:#b0aa9e}
.sk-sheet li::before{content:'';width:8px;height:4.5px;border-left:1.4px solid var(--gold-dim);
  border-bottom:1.4px solid var(--gold-dim);transform:rotate(-45deg) translateY(-1px);flex-shrink:0}
@media(min-width:760px){
  .sk-in{display:flex;align-items:center;gap:22px;max-width:1000px}
  .sk-event{flex-direction:row;align-items:center;gap:14px}
  .sk-zoom{display:none}
  .sk-stack>b{font-size:15px}
  #skWhenTime{font-size:11.5px}
  .sk-stack{gap:2px}
  .sk-event .sk-dot{display:none}
  .sk-event,.sk-incl{flex:0 0 auto}
  .sk-div{height:34px;align-self:center}
  .sk-incl{margin-right:auto}
  .sk-event b{font-size:17px}
  .sk-zoom{display:block;margin-top:2px}
  .sk-div{display:block;width:1px;background:var(--line)}
  .sk-incl-full{display:inline}.sk-incl-min{display:none}
  .sk-cta{flex:0 0 auto;width:auto;min-width:250px;padding:14px 22px;font-size:14.5px}
  .sticky{padding:17px 26px calc(17px + env(safe-area-inset-bottom))!important}
  .sk-sheet{display:none}
}
@media(min-width:760px) and (max-width:999px){
  .sk-in{gap:12px}
  .sk-event{flex:0 0 auto}.sk-zoom{display:none}
  .sk-incl{flex:1 1 auto;min-width:0;overflow:hidden}
  .sk-incl-full{display:none}.sk-incl-min{display:inline}
  .sk-cta{min-width:200px;padding:12px 14px}
}
@media(max-width:759px){
  .sticky{left:8px;right:8px;bottom:calc(3px + env(safe-area-inset-bottom));
    padding:10px 11px;border:1px solid rgba(232,180,74,.30);border-radius:16px;
    box-shadow:0 18px 48px rgba(0,0,0,.72),inset 0 1px 0 rgba(255,255,255,.025)}
  .sk-in{max-width:400px}
  .sk-sheet{width:100%;max-width:400px;margin:9px auto 0;padding:11px 4px 3px;border-top:1px solid rgba(232,180,74,.18)}
  .sk-sheet h6{text-align:center;margin-bottom:10px}
  .sk-sheet ul{gap:8px 14px;padding-inline:4px}
  #recModal .doc{height:75dvh;max-height:none;border-radius:18px 18px 0 0;
    transition:height .32s cubic-bezier(.22,1,.36,1),transform .34s cubic-bezier(.32,.72,0,1)}
  #recModal.full .doc{height:calc(100dvh - max(12px,env(safe-area-inset-top)))}
  #recModal.dragging .doc{transition:none}
  #recModal .sheet-grab{display:flex;align-items:center;justify-content:center;flex:0 0 28px;
    background:#bdbdbd;touch-action:none;cursor:grab}
  #recModal .sheet-grab i{display:block;width:42px;height:4px;border-radius:99px;background:#777}
  #recModal .dbar{padding-top:7px}
}
@media(max-width:340px){
  .sk-in{grid-template-columns:minmax(0,1fr) 154px;column-gap:8px}
  .sk-lab{font-size:8px;letter-spacing:.11em}
  .sk-cta{padding-inline:7px;font-size:12.5px;gap:5px}
}
.disclaimer{text-align:center;font-size:11px;color:var(--dim);line-height:1.6;padding:4px 8px 140px}/* 140 = measured 97px Pro Max bar + 40px clearance, rounded up. The prior 126 belonged to the shorter bar. */

/* ═══ REGISTRATION — ONE SHORT PATH FROM EVERY ENROLMENT CTA ═══════════════ */
.body-locked{overflow:hidden}
.modal-backdrop[hidden],.signup-card [hidden]{display:none!important}
.modal-backdrop{position:fixed;inset:0;z-index:240;display:grid;place-items:center;
  padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));
  overflow-y:auto;background:rgba(0,0,0,.84);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.signup-card{position:relative;width:min(100%,620px);max-height:calc(100dvh - 32px);overflow-y:auto;
  overscroll-behavior:contain;padding:30px;border:1px solid rgba(232,180,74,.42);border-radius:25px;
  background:radial-gradient(80% 48% at 50% 0,rgba(232,180,74,.13),transparent 70%),
    linear-gradient(155deg,#15140f 0,#0e0e0c 52%,#090909 100%);
  box-shadow:0 34px 90px rgba(0,0,0,.72),0 0 54px rgba(232,180,74,.08),inset 0 1px 0 rgba(255,255,255,.06)}
.signup-card::before{content:'';position:absolute;left:14%;right:14%;top:0;height:1px;
  background:linear-gradient(90deg,transparent,#f4c75e 50%,transparent);box-shadow:0 0 18px rgba(232,180,74,.75)}
.modal-backdrop:not([hidden]){animation:quizBackdropIn .24s ease-out both}
.modal-backdrop:not([hidden]) .signup-card{animation:quizCardIn .48s cubic-bezier(.18,.86,.24,1) both}
@keyframes quizBackdropIn{from{opacity:0}to{opacity:1}}
@keyframes quizCardIn{from{opacity:0;transform:translate3d(0,42px,0) scale(.975)}to{opacity:1;transform:none}}
.modal-close{position:absolute;z-index:2;right:16px;top:16px;width:38px;height:38px;display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.1);border-radius:50%;background:rgba(0,0,0,.3);color:#c9c3b8;cursor:pointer}
.modal-close svg{width:13px;height:13px}.modal-close:hover{color:#fff;border-color:rgba(232,180,74,.45)}
.signup-orbit{display:flex;align-items:center;justify-content:center;gap:8px;width:190px;margin:2px auto 18px}
.signup-orbit i{height:1px;flex:1;background:linear-gradient(90deg,transparent,rgba(232,180,74,.5))}
.signup-orbit i:last-child{background:linear-gradient(90deg,rgba(232,180,74,.5),transparent)}
.signup-orbit span{width:14px;height:14px;border:1px solid var(--gold);border-radius:50%;background:var(--gold);
  box-shadow:0 0 0 5px rgba(232,180,74,.08),0 0 18px rgba(232,180,74,.7)}
.signup-head{text-align:center}.modal-kicker{margin:0 0 9px;color:var(--gold);font-size:9px;letter-spacing:.2em;text-transform:uppercase}
.signup-head h2,.signup-success h2{margin:0;color:#f5f2ec;font-family:'Archivo',sans-serif;font-size:32px;font-weight:800;line-height:1.08;letter-spacing:-.03em}
.modal-sub{max-width:54ch;margin:13px auto 23px;color:#aaa398;font-size:14px;line-height:1.6}
.signup-schedule{display:grid;grid-template-columns:auto auto;align-items:center;justify-content:center;gap:7px 10px;width:max-content;max-width:100%;margin:-7px auto 21px;padding:9px 14px 10px;border:1px solid rgba(232,180,74,.26);border-radius:15px;background:rgba(232,180,74,.055);transition:border-color .2s,box-shadow .2s}
.signup-schedule strong{color:var(--gold);font-size:12px}.signup-schedule span{padding-left:10px;border-left:1px solid rgba(255,255,255,.11);color:#aaa398;font-size:11px}.signup-schedule em{grid-column:1 / -1;padding-top:7px;border-top:1px solid rgba(255,255,255,.08);color:#e9dfcd;font:800 13px/1 'Archivo',sans-serif;font-style:normal;letter-spacing:.025em;font-variant-numeric:tabular-nums}.signup-schedule.soon,.signup-schedule.starting-now{border-color:rgba(232,180,74,.52);box-shadow:0 0 24px -14px rgba(232,180,74,.9)}.signup-schedule.soon em,.signup-schedule.starting-now em{color:var(--gold)}.signup-schedule.live{border-color:rgba(75,189,130,.5)}.signup-schedule.live strong,.signup-schedule.live em{color:var(--green)}
#quiz-flow{margin:0}.signup-intro{text-align:center;padding:4px 8px 2px}.signup-start{min-height:58px;margin-top:4px;font-size:15px}
.quiz-progress{display:flex;align-items:center;gap:13px;margin:0 0 15px;padding-right:44px}
.quiz-progress>span{flex:0 0 auto;color:#8f887d;font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.13em;text-transform:uppercase}.quiz-progress>span b{color:var(--gold);font-weight:600}.quiz-progress>span i{font-style:normal;color:#f4efe5}
.quiz-progress>div{height:3px;flex:1;overflow:hidden;border-radius:99px;background:#28251f}.quiz-progress>div i{display:block;width:25%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#b77d17,#f2c85f);transition:width .3s ease}
.signup-schedule--compact{margin:0 0 25px}.signup-schedule--success{margin:14px auto 12px}.quiz-step{min-height:500px;padding:0}.quiz-step>.modal-kicker{text-align:left;margin-bottom:10px}
.quiz-question{max-width:18ch;margin:0 0 26px;color:#f4f0e9;font-family:'Archivo',sans-serif;font-size:31px;font-weight:820;line-height:1.08;letter-spacing:-.035em}
.quiz-choice-hint{margin:-13px 0 15px;color:var(--gold);font-size:9px;font-weight:600;letter-spacing:.15em;text-transform:uppercase}
.signup-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.signup-field{min-width:0}.signup-field--wide{grid-column:1 / -1}.quiz-label{display:block;margin:0 0 7px;color:#ddd7cd;font-size:12px;font-weight:700}
.quiz-input{display:block;width:100%;height:52px;padding:0 14px;border:1px solid #38342c;border-radius:11px;
  outline:0;background:#090908;color:#f5f2ec;font:500 15px 'Archivo',sans-serif;transition:border-color .18s,box-shadow .18s}
.quiz-input::placeholder{color:#6f6a61}.quiz-input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(232,180,74,.12)}
.quiz-select{appearance:none;-webkit-appearance:none;padding-right:42px;background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);background-position:calc(100% - 18px) 22px,calc(100% - 13px) 22px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.email-proof{display:flex;align-items:flex-start;gap:6px;margin:7px 2px 0;color:#888177;font-size:10px;line-height:1.4}
.email-proof span{flex:0 0 auto;color:var(--gold)}
.quiz-error,.quiz-hint{margin:7px 2px 0;color:#ef857a;font-size:11px;line-height:1.4}
.email-hint-btn{padding:0;border:0;border-bottom:1px solid rgba(232,180,74,.4);background:none;color:var(--gold);font:inherit;cursor:pointer}
.quiz-error--server{padding:10px 12px;border:1px solid rgba(239,133,122,.3);border-radius:8px;background:rgba(239,133,122,.06)}
.quiz-nav{display:grid;grid-template-columns:minmax(90px,.34fr) minmax(0,1fr);gap:10px;align-items:stretch;margin-top:auto;padding-top:28px}.quiz-nav--forward{grid-template-columns:1fr;margin-left:34%}.quiz-nav .btn,.quiz-nav .signup-submit{margin:0}
.quiz-back{min-height:54px;border:1px solid #38342c;border-radius:11px;background:#0b0b09;color:#b5aea3;font-family:'Archivo',sans-serif;font-size:13px;font-weight:700;cursor:pointer}.quiz-back:hover{border-color:rgba(232,180,74,.5);color:#f2eee6}
.experience-options{display:grid;gap:12px}.experience-options button{position:relative;width:100%;min-height:72px;padding:15px 48px 15px 17px;text-align:left;border:1px solid #38342c;border-radius:13px;background:rgba(8,8,7,.72);color:#efeae1;cursor:pointer;transition:border-color .18s,background-color .18s,box-shadow .18s}.experience-options button::after{content:'';position:absolute;right:17px;top:50%;width:15px;height:15px;border:1px solid #625d53;border-radius:50%;transform:translateY(-50%)}.experience-options button[aria-checked="true"]{border-color:var(--gold);background:rgba(232,180,74,.08);box-shadow:0 0 0 3px rgba(232,180,74,.08)}.experience-options button[aria-checked="true"]::after{border:4px solid #11100d;background:var(--gold);box-shadow:0 0 0 1px var(--gold)}.experience-options b,.experience-options span{display:block}.experience-options b{font:760 15.5px/1.2 'Archivo',sans-serif}.experience-options span{margin-top:4px;color:#aaa398;font-size:12.5px;line-height:1.35}
.interest-options button::after{border-radius:4px}.interest-options button[aria-checked="true"]::after{border:1px solid var(--gold);background:var(--gold);box-shadow:0 0 0 3px rgba(232,180,74,.1)}
.interest-options button[aria-checked="true"]::before{content:'';position:absolute;z-index:1;right:21px;top:50%;width:7px;height:4px;border-left:1.8px solid #181106;border-bottom:1.8px solid #181106;transform:translateY(-65%) rotate(-45deg)}
.quiz-step:not([hidden]){display:flex;flex-direction:column;animation:quizStepIn .28s cubic-bezier(.22,.75,.3,1) both}
@keyframes quizStepIn{from{opacity:0;transform:translate3d(0,10px,0)}to{opacity:1;transform:none}}
.quiz-answer-note{margin:10px 0 20px;padding:14px 15px;border-left:2px solid var(--gold);border-radius:0 10px 10px 0;background:linear-gradient(90deg,rgba(232,180,74,.12),rgba(232,180,74,.035));color:#d3ccc1}
.quiz-answer-note>span{display:block;margin-bottom:7px;color:var(--gold);font:600 8px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase}
.quiz-answer-note p{margin:0;font-size:13px;line-height:1.52}
.quiz-answer-note p span{color:#d3ccc1}.quiz-answer-note p strong{color:#f3c65e;font-weight:720}
.signup-submit,.direct-access{width:100%;min-height:54px;margin-top:18px;text-decoration:none}.signup-submit:disabled{opacity:.65;cursor:wait}
.quiz-under{margin:11px 0 0;text-align:center;color:#716b62;font-size:8px;line-height:1.5;letter-spacing:.1em;text-transform:uppercase}
.signup-success{text-align:center;padding:8px 0 2px}
.success-mark{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 18px;border:1px solid rgba(232,180,74,.5);border-radius:50%;
  background:radial-gradient(circle,rgba(232,180,74,.25),rgba(232,180,74,.04));box-shadow:0 0 36px rgba(232,180,74,.16)}
.success-mark span{color:var(--gold);font-size:29px}.success-copy{max-width:44ch;margin:15px auto 2px;color:#b9b2a7;font-size:15px;line-height:1.58}
.success-email-edit{display:flex;align-items:center;justify-content:center;min-height:44px;margin:0 auto 10px;padding:7px 12px;border:0;background:transparent;color:var(--gold);font:700 12.5px 'Archivo',sans-serif;text-decoration:underline;text-decoration-color:rgba(232,180,74,.45);text-underline-offset:4px;cursor:pointer}
.success-email-edit:hover{color:#f4ca6a;text-decoration-color:currentColor}.success-email-edit:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:8px}
.success-copy strong{color:#eee9df}.access-code{margin:0 0 16px;padding:15px;border:1px solid rgba(232,180,74,.27);border-radius:13px;background:rgba(232,180,74,.055)}
.access-code span{display:block;margin-bottom:7px;color:#9b9387;font-family:'JetBrains Mono',monospace;font-size:9px;letter-spacing:.17em;text-transform:uppercase}
.access-code b{display:block;color:var(--gold);font-family:'JetBrains Mono',monospace;font-size:25px;letter-spacing:.12em}
.direct-access{margin-top:0;font-weight:750}.direct-access .ar{width:12px}.direct-access .ar::before{display:none}.direct-access .ar::after{right:2px;top:2px;width:7px;height:7px}
.direct-note{max-width:48ch;margin:14px auto 0;color:#9b948a;font-size:12.5px;line-height:1.55}
@media(max-width:599px){
  .hero h1{font-size:31px;line-height:1.08;letter-spacing:-.028em}
  .hero-title-line{white-space:nowrap}
  .hero-title-line:first-child{font-size:clamp(31px,8.35vw,36px)}
  .hero-title-line:last-child{font-size:clamp(17.5px,4.65vw,20px);margin-top:4px}
  .comm-actions .tg-note{max-width:none;white-space:nowrap;font-size:clamp(10.5px,3vw,12px);letter-spacing:-.01em}
  .method h2,.bridge-sec h2,.pb h2,.ap h2,.xau h2,.room h2,.comm h2,.why h2,.journey h2,.close h2{font-size:clamp(25px,6.7vw,28px);line-height:1.13;text-wrap:balance}
  .chip{padding-inline:4px;font-size:clamp(7.8px,2.25vw,9.4px);letter-spacing:-.01em}.chip svg{width:11px;height:11px}
  .class-card .under-cta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:11px}.class-card .under-cta i{justify-content:center;text-align:center;font-size:9.5px;line-height:1.3}
  .modal-backdrop{place-items:end center;padding-inline:10px}
  .signup-card{width:100%;max-height:calc(100dvh - max(18px,env(safe-area-inset-top)));padding:19px 18px 20px;border-radius:22px 22px 12px 12px}
  .signup-fields{grid-template-columns:1fr;gap:13px}.signup-field--wide{grid-column:auto}.signup-head h2,.signup-success h2{font-size:27px}
  .signup-intro{padding-inline:0}.modal-sub{font-size:13px;margin-bottom:14px}.signup-schedule{margin-bottom:14px}.modal-close{right:10px;top:10px}.signup-orbit{margin:0 auto 7px}
  .quiz-step{min-height:520px}.quiz-question{font-size:27px;margin-bottom:17px}.quiz-progress{margin-bottom:8px;padding-right:42px}.signup-schedule--compact{margin-bottom:8px}.quiz-nav{margin-top:auto;padding-top:24px}.quiz-nav--forward{margin-left:0}
  .experience-options{gap:11px}.experience-options button{min-height:72px;padding:15px 46px 15px 15px}.experience-options b{font-size:15px}.experience-options span{font-size:12px}
  .signup-success .modal-kicker{font-size:10px}.success-copy{font-size:14.5px}.direct-access{min-height:58px;padding-inline:9px;gap:5px;white-space:nowrap;font-size:clamp(11.5px,calc(5vw - 4.5px),15px);letter-spacing:-.03em}.direct-note{font-size:12px}
}
@media(max-width:380px),(max-height:720px){
  .signup-card{padding-bottom:14px}.signup-schedule--compact{margin-bottom:2px}.quiz-step{min-height:455px}.experience-options{gap:8px}.experience-options button{min-height:64px;padding-block:12px}.quiz-nav{padding-top:14px}.quiz-answer-note{margin:12px 0 14px;padding:11px 13px}.quiz-answer-note>span{margin-bottom:5px}.quiz-answer-note p{font-size:12px;line-height:1.42}
}

/* ═══ REDUCED MOTION — BLANKET, THEN ONE DELIBERATE EXEMPTION ═══════════════
   ⛔⛔ THIS RULE USED TO READ `.sweep,.ticker-inner{animation:none}` AND HALF
   OF IT HAD NEVER MATCHED ANYTHING. `.sweep` appears EXACTLY ONCE in the whole
   codebase — in that rule. The class is `.scan`. So the page's only
   reduced-motion protection covered ONE element, while 8 of the 10 @keyframes
   below were never named at all.
   ⛔ CLAUDE.md RULE 16's SHAPE, AND THE REASON IT IS CITED HERE: a selector
   that matches nothing is INDISTINGUISHABLE, in the source and in every
   screenshot, from a rule that is satisfied. Nothing renders wrong; the rule
   simply does nothing, forever. Enumerating the elements to calm was the
   mistake — the blanket describes the SHAPE instead.
   ⚠ Found by `verify_lp.py --steps reduced-motion --reduced-motion`, which is
   the gate that previously could not fail (rule 17 / AJ 2026-08-03).

   ⛔ WHY `animation:none` AND NOT THE .01ms TRICK: a 0.01ms duration makes
   every animation COMPLETE instantly, which parks `scan` at translateX(300px)
   and `tick` mid-marquee. `none` returns each element to its authored base
   state, which is the honest resting position for all of them BUT ONE.

   ⛔⛔ THE ONE EXEMPTION, AND IT IS THE PARKED-ALERT TRAP AGAIN: NEVER NULL AN
   ANIMATION WITHOUT CHECKING WHAT ITS ELEMENT LOOKS LIKE AT REST.
   `.win-ring::after` is authored at `rotate(-45deg) scale(0)` — INVISIBLE —
   and `wtick` is what draws it, with `forwards`. Killing that animation alone
   would delete the confirmation checkmark outright for every reduced-motion
   visitor, and nothing would report it. So the end state is restated
   statically. Every other keyframe here (tick · blip · scan · jitter · wpulse ·
   pk · spin · checkin · slide) reverts to a correct base and needs nothing.
   ═════════════════════════════════════════════════════════════════════════ */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .mkt.done .win-ring::after{transform:rotate(-45deg) scale(1)!important}
  .wrap{--market-progress:1!important}
  .market-journey-progress{stroke-dashoffset:0!important}
  html{scroll-behavior:auto!important}
}
/* ⛔ TRANSITIONS ARE KILLED TOO (AJ, 2026-08-03). `transition:width` is the
   loading meter and the compute bar — ANIMATED PROGRESS, which is precisely
   what a motion-sensitive visitor is asking not to see. AJ's ruling: there is
   no case on this page where a transition carries meaning its end state does
   not.
   ⚠ AND THE REASON THIS NEEDED NO EXEMPTION WHILE THE ANIMATIONS DID — the
   structural difference, checked element by element rather than assumed:
   A TRANSITION NEVER HOLDS A STATE. It interpolates between two states that
   BOTH already exist in the CSS (`.alert` → `.alert.on`, `.modal` →
   `.modal.on`, `.doc` → `.modal.on .doc`), so killing it makes the change
   INSTANT and the element still lands on the authored value. An ANIMATION with
   `forwards` can hold an end state that exists ONLY inside the keyframe — which
   is exactly `.win-ring::after`, authored at scale(0) and drawn only by
   `wtick`. That asymmetry is why one exemption was needed above and none is
   needed here. Verified by measuring `.win`, `.alert`, `#recModal` and `.doc`
   end states in BOTH motion modes — all four identical. */

/* ⛔ THE SCRIPTLESS CAPTURE PATH. These rules only ever apply inside
   <noscript>, so they are invisible to every scripted visitor and cannot move
   a pixel in the v93 diff. Deliberately plain: this is the fallback that has
   to work when everything clever has already failed. */
.ns-reg{max-width:34rem;margin:0 auto;padding:2rem 1.25rem;color:#e8e4dc;
  font-family:system-ui,-apple-system,'Segoe UI',sans-serif;line-height:1.5}
.ns-reg h2{font-size:1.5rem;margin:0 0 .5rem}
.ns-reg p{margin:0 0 1rem;color:#b3aca0;font-size:.95rem}
.ns-reg p[role=alert]{color:#e35555}
.ns-reg label{display:block;margin:.9rem 0 .3rem;font-size:.85rem;
  letter-spacing:.04em;text-transform:uppercase;color:#b3aca0}
.ns-reg input,.ns-reg select{width:100%;padding:.7rem .75rem;font-size:1rem;
  background:#151310;color:#e8e4dc;border:1px solid #3a352c;border-radius:6px}
.ns-reg input:focus,.ns-reg select:focus,.ns-reg button:focus{
  outline:2px solid #c9a227;outline-offset:2px}
.ns-reg button{width:100%;margin-top:1.25rem;padding:.85rem 1rem;font-size:1rem;
  font-weight:600;color:#151310;background:#c9a227;border:0;border-radius:6px;
  cursor:pointer}
@media(min-width:760px){
  :root{--section-space:68px}
  .hero{padding-top:128px}
  .hero-candles{top:5px;right:0;width:78%;height:112px}
  .wrap,nav{max-width:1000px}
  .hero h1{font-size:52px}
  .method h2,.xau h2,.room h2,.comm h2,.why h2,.journey h2,.close h2{font-size:38px}
  .hero .sub{font-size:15px}
  .phones{justify-content:center}
  .tg-shot{flex-basis:300px}
  .chips{gap:8px}.chip{padding:8px 14px;font-size:11.5px}
  .room-constellation{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:30px 0 14px}
  .room-constellation::before{inset:4% 12% 2%;background:radial-gradient(ellipse at 50% 24%,rgba(232,180,74,.13),rgba(232,180,74,.03) 48%,transparent 74%);filter:blur(22px)}
  .room-card{padding:22px;border-radius:22px}
  .room-card h3{font-size:18px;margin:10px 0 7px}.room-card p{font-size:13.5px;line-height:1.5}
  .room-icon{width:30px;height:30px;stroke-width:1.55}
  .room-center{grid-column:1 / -1;width:min(100%,640px);min-height:300px;margin:0 auto 4px;padding:28px 40px;border-radius:28px}
  .room-broadcast{width:44px;height:44px;margin-bottom:8px}.room-live{font-size:96px}
  .room-center h3{font-size:25px;line-height:1;margin:16px 0 10px}.room-center p{font-size:15px;margin-bottom:16px}
  .room-center strong{min-width:210px;padding:12px 25px;font-size:16px}
  .room-breakdown,.room-community,.room-class{min-height:190px}
  .room-avatars{margin-top:16px}.room-avatars i{width:34px;height:34px;font-size:12px;margin-left:-8px}
  .room-class .room-icon{width:30px;height:30px}.room-class p{font-size:13px}
  .freedom{flex-direction:row}
  .freedom-body{flex:1;padding:30px 26px}
  .freedom-media{flex:0 0 42%;aspect-ratio:auto;border-top:0;border-left:1px solid var(--line)}
.sticky{padding:12px 26px;gap:26px;justify-content:center}
  .sticky>*{flex:0 0 auto}
  .sk-txt{flex:0 0 auto}
  .sk-txt em{display:inline;margin-left:8px}
  .sticky .btn{flex:0 0 auto;padding:13px 26px}
  .ap-heading{max-width:680px;margin-bottom:36px}.ap-heading h2{font-size:42px}
  .ap-story{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:34px;align-items:start}
  .ap-portrait{float:none;grid-column:2;grid-row:1;width:100%;margin:0}
  .ap-body{grid-column:1;grid-row:1;display:grid;grid-template-columns:220px minmax(0,1fr);column-gap:30px}
  .ap-copy{grid-column:1 / -1}.ap-photo{float:none;grid-column:1;grid-row:2;width:100%;max-width:220px;margin:4px 0 0;position:relative;align-self:stretch}
  .ap-closing{grid-column:2;grid-row:2;margin-left:0}
  .ap-life{--ap-life-h:350px;height:var(--ap-life-h);margin-bottom:36px}
  .cmp-axis,.cmp-row{grid-template-columns:minmax(0,.82fr) 68px minmax(0,1.18fr)}
  .cmp-from,.cmp-to{font-size:14px}
  .step p{font-size:11.5px}
}

/* ── RESPONSIVE COMPOSITION ───────────────────────────────────────────────
   Tablet is not a small desktop: keep its readable single-column sequence,
   but stop media from expanding just because the desktop type scale begins.
   At a real desktop width, the hero becomes an intentional two-column opening
   instead of a 1,000px-wide phone layout. */
@media(min-width:760px) and (max-width:999px){
  .hero{display:flex;flex-direction:column;align-items:stretch}
  .hero>.vsl,.hero>.class-card,.hero>.stat-band,.hero>.freedom{width:min(100%,640px);margin-inline:auto}
  .hero>.eyebrow{justify-content:center}
  .hero>h1,.hero>.sub{max-width:680px;margin-inline:auto;text-align:center}
  .hero>.stat-band{order:4;margin-top:18px;margin-bottom:16px}
  .hero>.vsl{order:5;aspect-ratio:16/9;margin-bottom:14px}
  .hero>.class-card{order:6;margin-bottom:16px}
  .hero>.freedom{order:7}
  .sheets{width:min(100%,600px);margin-inline:auto}
  .room-card{padding:18px;border-radius:20px}
  .room-card h3{font-size:16px;margin:8px 0 6px}
  .room-card p{font-size:12px;line-height:1.46}
  .room-icon{width:27px;height:27px}
  .room-center{padding:24px 30px;border-radius:26px}
  .room-center h3{font-size:22px}.room-center p{font-size:13px}
  .room-avatars{margin-top:12px}.room-avatars i{width:30px;height:30px}
  .ap-story{grid-template-columns:minmax(0,1fr) minmax(280px,38%);gap:36px}
  .ap-portrait{aspect-ratio:4/5;border-radius:18px}
  .ap-portrait-img{object-position:50% 57%;transform:scale(1.035)}
  .ap-body{grid-template-columns:190px minmax(0,1fr);column-gap:24px}
  .ap-body>.ap-photo{max-width:190px;border-radius:14px}
  .bridge-sec>p{max-width:56ch}
  .bridge-sec>.journey-line{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:26px;border-block:1px solid var(--line)}
  .bridge-sec>.journey-line::before{display:none}
  .bridge-sec .jstep{padding:20px;min-width:0}
  .bridge-sec .jstep:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .bridge-sec .jstep:nth-child(2n){border-left:1px solid var(--line)}
}
@media(min-width:1000px){
  :root{--section-space:84px}
  .hero{display:flex;flex-direction:column;align-items:stretch;padding-top:136px}
  .hero-candles{top:7px;right:0;width:70%;height:118px}
  .hero>.eyebrow{order:1;justify-content:center;margin:0 0 3px}
  .hero>h1{order:2;width:100%;max-width:900px;margin:0 auto;text-align:center;font-size:52px;line-height:1.06}
  .hero>.sub{order:3;max-width:64ch;margin:13px auto 0;text-align:center;font-size:16px;line-height:1.55}
  .hero>.stat-band{order:4;width:min(100%,820px);margin:22px auto 16px}
  .hero>.stat-band .stat{justify-content:center;padding-block:15px}
  .hero>.vsl{order:5;width:min(100%,820px);aspect-ratio:16/9;margin:0 auto 14px;align-self:center}
  .hero>.class-card{order:6;width:min(100%,820px);margin:0 auto;padding:24px 26px 22px;align-self:center;text-align:center}
  .hero>.class-card .cc-top{margin-bottom:16px}
  .hero>.class-card h2{max-width:none;font-size:25px;margin-bottom:9px}
  .hero>.class-card .cc-line{max-width:54ch;margin:0 auto 13px;font-size:14px}
  .hero>.class-card .count{justify-content:center}
  .hero>.class-card .btn{width:min(100%,520px);margin-inline:auto}
  .hero>.class-card .incl{margin-top:18px}
  .hero>.class-card .incl-grid{grid-template-columns:repeat(4,minmax(0,1fr));text-align:left}
  .hero>.freedom{order:7;margin:24px 0 0;align-self:stretch}
  .hero>.freedom .freedom-body{display:block;width:auto;padding:30px 32px 28px}
  .hero>.freedom h2{margin:0 0 14px;font-size:30px}
  .hero>.freedom .fd-sub{margin:0 0 17px;max-width:58ch;font-size:14px}
  .hero>.freedom .check-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}
  section.ap{display:block}
  .ap-life{--ap-life-h:410px;height:var(--ap-life-h);margin-bottom:38px}
  .ap-kicker{font-size:12px;margin-bottom:16px}
  .ap-heading{max-width:800px;margin:0 auto 44px}
  .ap-heading h2{font-size:46px;line-height:1.08}
  .ap-story{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(350px,.92fr);column-gap:64px;align-items:start}
  .ap-portrait{float:none;grid-column:2;grid-row:1;width:100%;margin:0;aspect-ratio:724/1086;align-self:start}
  .ap-body{grid-column:1;grid-row:1;display:grid;grid-template-columns:180px minmax(0,1fr);column-gap:26px;max-width:none;margin:0}
  .ap-body>.ap-photo{grid-column:1;grid-row:2;width:100%;max-width:180px;margin:8px 0 0;position:relative;align-self:stretch}
  .ap-copy{grid-column:1 / -1;grid-row:1;max-width:58ch}
  .ap-closing{grid-column:2;grid-row:2;max-width:none;align-self:start;margin-left:0}
  .ap-body p{font-size:15.5px;line-height:1.62;margin-bottom:13px}
  .ap-quote{margin:10px 0 20px;padding-left:16px}
  .ap-quote p{font-size:14.5px;line-height:1.62}
  .ap-close{font-size:17px;line-height:1.4;padding-top:18px}
  .method-risk,.method-close{text-align:center;margin-inline:auto;max-width:620px}
  .method-risk{margin-top:22px}
  .method-close{max-width:560px}
  .method{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;align-items:start}
  .method>.xau-divider{grid-column:1 / -1;grid-row:1}
  .method>.eyebrow{grid-column:1;grid-row:2;margin-bottom:14px}
  .method>h2{grid-column:1;grid-row:3;width:100%;max-width:700px;margin:0 0 16px}
  .method>.bridge-wrap{grid-column:1;grid-row:4;justify-content:center;margin:0 0 14px}
  .method>.sub{grid-column:1;grid-row:5;max-width:58ch;margin:0;font-size:14px}
  .method>.chart{grid-column:1;grid-row:6;width:100%;max-width:900px;height:180px;margin-top:30px}
  .method>.anchors{grid-column:1;grid-row:7;width:100%;max-width:900px}
  .method>.method-risk{grid-column:1 / -1;grid-row:8;width:100%}
  .method>.method-close{grid-column:1 / -1;grid-row:9;width:100%}
  .xau>h2{max-width:26ch}
  .xau .phone{max-width:none;zoom:1.2}
  .xau>h2{font-size:42px;line-height:1.12}
  .xau>.sub,.xau>.sub2{max-width:62ch;font-size:15px;line-height:1.6}
  .xau>.sub2{margin-bottom:22px}
  .xau>.track{font-size:9px;margin-bottom:22px}
  .xau .state-cap{font-size:14.5px;max-width:360px;margin-top:19px}
  .xau>.fw{width:min(100%,720px);margin:0 auto 20px;text-align:center}
  .xau>.fw p{max-width:60ch;margin-inline:auto;font-size:14px;line-height:1.65}
  .xau>.xau-punch{max-width:620px;margin:20px auto 12px;text-align:center;font-size:25px}
  .xau>.rec-cta{width:100%;margin-top:24px;text-align:center}
  .xau>.rec-cta .btn-ghost{width:min(100%,340px)}
  .xau>.rec-cta .rec-ask{margin-inline:auto;font-size:17px}
  .mshot{flex-basis:280px}
  .comm{text-align:center}
  .comm>.eyebrow{justify-content:center;margin-bottom:12px}
  .comm>h2{margin:0 auto}
  .comm>.sub{max-width:52ch;margin:15px auto 0}
  .comm>.mcards{margin-top:30px;margin-bottom:0;
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 3.5%,#000 96.5%,transparent 100%);
    mask-image:linear-gradient(90deg,transparent 0,#000 3.5%,#000 96.5%,transparent 100%)}
  .comm>.tg-note{display:flex;align-items:center;justify-content:center;gap:9px;margin:22px auto 0;color:#c9c3b8;font-size:13.5px}
  .comm>.tg-note::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px rgba(232,180,74,.55);flex:0 0 auto}
  .comm>.btn-ghost{width:min(100%,340px);margin:14px auto 0}
  .room>h2{max-width:760px}
  .room>.sub{max-width:64ch}
  .room>.room-line{max-width:68ch;margin-bottom:24px}
  .why>h2{max-width:760px;margin-bottom:26px}
  .close{padding:46px 52px 38px;border-radius:22px}
  .close .eyebrow{margin-bottom:13px}
  .close h2{font-size:40px;max-width:760px;margin-bottom:18px}
  .close .cline{margin-bottom:24px}
  .bridge-sec{display:grid;grid-template-columns:minmax(0,1fr);align-items:start}
  .bridge-sec>.xau-divider{grid-column:1 / -1}
  .bridge-sec>.eyebrow{grid-column:1;grid-row:2;margin-bottom:11px}
  .bridge-sec>h2{grid-column:1;grid-row:3;font-size:38px;margin-bottom:0;max-width:18ch}
  .bridge-sec>p{grid-column:1;grid-row:4;margin:14px 0 0;max-width:56ch}
  .bridge-sec>.journey-line{grid-column:1 / -1;grid-row:5;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:30px 0 0;padding:24px 0 4px;border-block:1px solid var(--line)}
  .bridge-sec>.journey-line::before{display:none}
  .bridge-sec .jstep{position:relative;display:block;padding:0 24px 22px 0;min-width:0}
  .bridge-sec .jstep:not(:last-child)::after{content:'';position:absolute;left:48px;right:0;top:23px;height:1px;background:linear-gradient(90deg,rgba(232,180,74,.38),rgba(232,180,74,.12))}
  .bridge-sec .jstep em{width:48px;height:48px;margin-bottom:14px;font-size:15px}
  .bridge-sec .jstep b{font-size:17px;margin:0 0 7px}
  .bridge-sec .jstep span{font-size:12.5px;max-width:24ch}
  .pb{display:grid;grid-template-columns:minmax(0,1.24fr) minmax(0,.76fr);column-gap:52px;align-items:start}
  .pb>.xau-divider{grid-column:1 / -1}
  .pb>.eyebrow{grid-column:2;grid-row:2}
  .pb>h2{grid-column:2;grid-row:3}
  .pb>.pb-sub{grid-column:2;grid-row:4;margin-bottom:16px}
  .pb>.pb-line{grid-column:2;grid-row:5;margin:0}
  .pb>.sheets{grid-column:1;grid-row:2 / span 4;width:100%;margin:0;align-self:center}
  .pb>.pb-micro{grid-column:1;grid-row:6;width:100%;margin:10px 0 0;text-align:center;justify-self:center}
  .pb>.pb-grid{grid-column:1 / -1;grid-row:7;grid-template-columns:repeat(4,minmax(0,1fr));margin:30px 0 0}
  .pb-grid .pbi{padding:18px 18px 19px}
  .pb-grid .pbi:nth-child(n)::after{display:none}
  .pb-grid .pbi:nth-child(n)::before{content:'';display:block;position:absolute;left:0;top:15%;bottom:15%;width:1px;background:var(--line)}
  .pb-grid .pbi:first-child::before{display:none}
}

/* On wide screens the conversion bar is a contained trading dock, not a
   full-viewport strip. The bright trace gives it one clear top edge while the
   three blocks keep event, access and action in a compact reading order. */
@media(min-width:1000px){
  .sticky{background:transparent;border:0;box-shadow:none;backdrop-filter:none;
    padding:0 24px calc(12px + env(safe-area-inset-bottom))!important}
  .sk-in{position:relative;display:grid;grid-template-columns:280px minmax(260px,1fr) 240px;
    gap:12px;align-items:stretch;width:min(100%,1100px);max-width:none;margin:0 auto;padding:10px;
    border:1px solid rgba(232,180,74,.34);border-radius:18px;overflow:hidden;
    background:radial-gradient(ellipse 42% 110% at 50% -30%,rgba(232,180,74,.10),transparent 70%),
      linear-gradient(180deg,rgba(18,17,14,.985),rgba(8,8,7,.99));
    box-shadow:0 22px 58px rgba(0,0,0,.72),0 0 0 1px rgba(255,255,255,.018) inset}
  .sk-in::before{content:'';position:absolute;left:8%;right:8%;top:-1px;height:1px;
    background:linear-gradient(90deg,transparent,rgba(232,180,74,.42) 28%,#f4ca64 50%,rgba(232,180,74,.42) 72%,transparent);
    box-shadow:0 0 12px rgba(232,180,74,.45);pointer-events:none}
  .sk-event,.sk-incl,.sk-cta{grid-area:auto}
  .sk-event{min-width:0;padding:7px 8px 7px 10px;align-items:center;gap:12px;border-right:1px solid rgba(255,255,255,.07)}
  .sk-stack{gap:6px}.sk-lab{font-size:8px;letter-spacing:.17em}.sk-stack>b{font-size:17px}
  .sk-zoom{display:block;align-self:flex-end;margin:0 0 2px;font-family:'JetBrains Mono',monospace;font-size:8px;letter-spacing:.08em;white-space:nowrap}
  .sk-div{display:none}
  .sk-incl{align-self:stretch;justify-content:center;margin:0;padding:0 13px;border:1px solid rgba(255,255,255,.065);border-radius:12px;
    background:rgba(255,255,255,.018);font-size:12.5px;color:#c6c0b5;white-space:nowrap}
  .sk-incl svg{width:18px;height:18px}.sk-incl-full{display:inline}.sk-incl-min{display:none}
  .sk-cta{align-self:stretch;min-width:0;width:100%;padding:0 20px;border-radius:12px;font-size:15px;box-shadow:inset 0 1px 0 rgba(255,245,214,.58),0 10px 28px -13px rgba(232,180,74,.8)}
  .sticky.expanded .sk-in{border-radius:18px 18px 0 0}
  .sk-sheet.on{display:block;width:min(100%,1100px);max-width:none;margin:-1px auto 0;padding:14px 20px 16px;border:1px solid rgba(232,180,74,.34);border-top-color:rgba(255,255,255,.07);border-radius:0 0 18px 18px;background:linear-gradient(180deg,rgba(12,11,9,.99),rgba(8,8,7,.995));box-shadow:0 24px 58px rgba(0,0,0,.72)}
  .sk-sheet h6{text-align:center;margin-bottom:11px}
  .sk-sheet ul{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 20px;max-width:900px;margin-inline:auto}
  .sk-sheet li{justify-content:center}
  .disclaimer{padding-bottom:160px}
}
@media(min-width:760px) and (max-width:999px){
  .sticky{background:transparent;border:0;box-shadow:none;backdrop-filter:none;
    padding:0 12px calc(9px + env(safe-area-inset-bottom))!important}
  .sk-in{position:relative;width:100%;max-width:740px;margin:0 auto;padding:9px 10px;border:1px solid rgba(232,180,74,.30);border-radius:16px;overflow:hidden;
    background:linear-gradient(180deg,rgba(18,17,14,.985),rgba(8,8,7,.99));box-shadow:0 18px 48px rgba(0,0,0,.68)}
  .sk-in::before{content:'';position:absolute;left:10%;right:10%;top:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(232,180,74,.5),transparent);box-shadow:0 0 10px rgba(232,180,74,.4)}
  .sk-incl{justify-content:center;padding:0 8px}
  .sk-cta{border-radius:10px}
  .sticky.expanded .sk-in{border-radius:16px 16px 0 0}
  .sk-sheet.on{display:block;width:min(100%,740px);max-width:none;margin:-1px auto 0;padding:12px 16px 14px;border:1px solid rgba(232,180,74,.30);border-top-color:rgba(255,255,255,.07);border-radius:0 0 16px 16px;background:linear-gradient(180deg,rgba(12,11,9,.99),rgba(8,8,7,.995));box-shadow:0 18px 48px rgba(0,0,0,.68)}
  .sk-sheet h6{text-align:center}
  .sk-sheet ul{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 12px}
}

/* Resting content is always visible. Intersection only starts a one-time
   entrance, so full-page capture, no-JS and a failed observer all stay honest. */
.scroll-reveal.is-seen{animation:scrollReveal .42s cubic-bezier(.2,.75,.25,1) both;animation-delay:var(--reveal-delay,0ms)}
@keyframes scrollReveal{from{opacity:.52;transform:translate3d(0,10px,0) scale(.995)}to{opacity:1;transform:none}}
.jstep.scroll-reveal em{transform:scale(.72);opacity:1}
.jstep.scroll-reveal.is-seen em{animation:stepNumberIn .46s cubic-bezier(.16,.8,.24,1) both;animation-delay:calc(var(--reveal-delay,0ms) + 55ms)}
@keyframes stepNumberIn{from{opacity:1;transform:scale(.72) rotate(-8deg)}to{opacity:1;transform:none}}

/* ── MEDIA SURFACES (AJ, 2026-08-02) ───────────────────────────────────────
   ⛔ THESE FILL THE MOCKUP'S EXISTING FRAMES AND RESTYLE NOTHING. `.vsl` keeps
   its 16/13 box. The portrait is centred and shorter on mobile, then returns
   to the editorial side-float at tablet width; only the media inside is new.
   ⚠ THE HERO FILE IS 16/9 IN A 16/13 FRAME, so `cover` crops top and bottom
   rather than letterboxing. On a hero, bars read as a broken embed and a crop
   reads as a composition — and AP is centred in frame, verified on the poster.
   ⛔ THE VIDEO SITS UNDER THE PLAY CONTROL AND THE CAPTION: both are later
   siblings with their own stacking, so no z-index is needed here. Do not add
   one — it would have to be kept in step with `.play`'s. */
.vsl-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;background:#0b0b0a}
/* Once it is a real player the decorative control has done its job. */
.vsl.is-playing .play,
.vsl.is-playing .vsl-cap{display:none}
.ap-img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:52% 42%;transform:scale(1.18);transform-origin:52% 42%}

/* ═══ MOBILE A+ PRIVATE-PREVIEW PASS — AJ 2026-08-06 ═══════════════════════
   One decision per screen, readable body type, and a shorter visual rhythm.
   This block intentionally changes only the phone composition; the copy above
   remains shared so the private review evaluates one honest message. */
@media(max-width:759px){
  body{font-size:16px;line-height:1.58}
  .wrap{padding-inline:16px}
  nav{padding:14px 18px 12px}
  .logo{font-size:19px}
  .ticker-group{padding-block:7px}.ticker-inner{font-size:10px}

  /* Conversion order: understand the promise, see the proof, watch, then act. */
  .hero{display:flex;flex-direction:column;padding-top:74px}
  .hero>.eyebrow{order:1}.hero>h1{order:2}.hero>.sub{order:3}
  .hero>.stat-band{order:4}.hero>.vsl{order:5}.hero>.class-card{order:6}.hero>.freedom{order:7}
  .hero>.hero-candles{order:0}
  .hero::before{top:-38px;height:520px}
  .hero-candles{top:0;right:-7px;width:116%;height:68px;opacity:1;
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 17%,#000 92%,transparent 100%),linear-gradient(0deg,transparent 0,#000 26%);
    -webkit-mask-composite:source-in;
    mask-image:linear-gradient(90deg,transparent 0,#000 17%,#000 92%,transparent 100%),linear-gradient(0deg,transparent 0,#000 26%);
    mask-composite:intersect}
  .eyebrow{font-size:10px;line-height:1.45;letter-spacing:.145em;margin-bottom:10px}
  .hero h1{margin-bottom:12px}
  .hero .sub{max-width:36ch;margin-bottom:16px;font-size:15.5px;line-height:1.55;color:#b4aea3}

  .class-card{padding:17px 16px 16px;margin-bottom:13px;border-radius:17px;background:radial-gradient(circle at 80% 0,rgba(232,180,74,.08),transparent 34%),linear-gradient(180deg,#15130f,#0d0d0b)}
  .class-card .cc-top{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:9px;margin-bottom:13px}
  .cc-signal{min-width:0}.cc-spot{font-size:10px;letter-spacing:.15em;white-space:nowrap}
  .class-card .cc-when{text-align:left;margin:0;padding:0;max-width:none}
  .class-card .cc-when b{font-size:14px;white-space:nowrap}.class-card .cc-when span{font-size:10px}
  .class-card h2{font-size:22px;line-height:1.12;margin-bottom:9px;max-width:18ch}
  .cc-line{max-width:34ch;margin-bottom:10px;color:#b0aa9f;font-size:14.5px;line-height:1.52}
  .count{justify-content:flex-start;margin:3px 0 13px}.cunit b{font-size:26px}.cunit small{font-size:12px}
  .class-card .btn{min-height:54px;font-size:15.5px}
  .class-card .under-cta{gap:5px}.class-card .under-cta i{font-size:10px}
  .class-card .incl{display:none}
  .vsl{aspect-ratio:16/10;margin:0 0 13px;border-radius:17px}
  .play{width:56px;height:56px}.vsl-cap{font-size:9.5px;padding:8px 11px}
  .stat-band{margin-bottom:13px;border-radius:15px}.stat{padding:12px 4px 11px;gap:6px}.stat b{font-size:15px}.stat span{font-size:8.5px;letter-spacing:.06em}.stat svg{width:15px;height:15px}
  .freedom{border-radius:17px}.freedom-body{padding:20px 17px 18px}.freedom h2{font-size:26px;line-height:1.13;margin-bottom:11px}.fd-sub{max-width:35ch;margin-bottom:14px;font-size:15px;line-height:1.58}.check-list{gap:9px}.check-item{font-size:14px}.freedom-media{aspect-ratio:16/6.7}

  .xau-divider{height:14px;margin-bottom:22px}.xau-divider::after{font-size:6.5px;letter-spacing:.14em}
  .bridge-sec h2,.pb h2,.method h2,.ap h2,.room h2,.comm h2,.why h2,.close h2{font-size:clamp(27px,7.35vw,31px);line-height:1.1;letter-spacing:-.032em}
  .bridge-sec p,.pb-sub,.method-close,.comm .sub,.room .sub{font-size:15.5px;line-height:1.6;color:#aaa49a;max-width:36ch}
  .bridge-sec p{margin-bottom:23px}
  .journey-line{margin-bottom:12px}.journey-line::before{left:23px}
  .jstep{gap:14px;padding-bottom:21px}.jstep em{flex-basis:46px;height:46px;font-size:14px}.jstep b{font-size:18px;margin-top:4px}.jstep span{font-size:14.5px;line-height:1.48}

  .pb-line{font-size:19px;margin-bottom:16px}.sheets{margin-top:2px}.pb-micro{margin:8px auto 22px;max-width:31ch;text-align:center;font-size:13.5px;line-height:1.5}
  .pbi{padding-block:17px}.pbi b{font-size:15.5px}.pbi span{font-size:13.25px;line-height:1.48}.pbi em{font-size:9.5px}

  .xau-divider-before-card{margin-top:26px;margin-bottom:10px}
  .xau{margin-bottom:20px;padding:28px 15px 27px;border-radius:20px}
  .xau-product-mark{font-size:32px;margin-bottom:10px}.xau-head{margin-bottom:15px}.xau-head .ribbon.solid{font-size:9.5px;padding:8px 12px}
  .xau h2{max-width:23ch;margin-bottom:12px;font-size:29px}.xau h2 .l1{font-size:.8em;margin-bottom:3px}
  .xau .sub,.xau .sub2{max-width:34ch;font-size:15px;line-height:1.58}.xau .sub2{margin-bottom:17px}
  .xau-alert-promise{grid-template-columns:48px minmax(0,1fr);gap:12px;margin-bottom:17px;padding:12px}.xau-alert-icon{width:48px;height:48px}.xau-alert-icon svg{width:35px;height:35px}.xau-alert-copy>b{font-size:14px}.xau-alert-copy>small{font-size:12px}
  .track{gap:5px;margin-bottom:15px;font-size:7.5px;letter-spacing:.08em}
  .phone{width:min(306px,83vw);max-width:none}
  .state-cap{font-size:13.5px;line-height:1.5}
  .fw p{font-size:14px;line-height:1.58}.xau-punch{font-size:22px;margin-top:17px}
  .rec-ask{font-size:15px}.xau .rec-cta .btn-ghost{width:min(100%,310px);min-height:52px;font-size:14.5px}.xau .rec-stamp{font-size:10.5px}.compliance{font-size:10.5px;line-height:1.55}

  .method>.eyebrow,.ap-kicker{justify-content:flex-start;text-align:left}
  .method h2,.ap-heading{text-align:left;margin-inline:0}.method h2{margin-bottom:14px}
  .bridge-wrap{justify-content:flex-start}.bridge-pill{justify-content:flex-start;text-align:left;padding:9px 13px;font-size:13px}
  .anchor b{font-size:13px}.anchor p{font-size:12.5px;line-height:1.35}.method-risk{font-size:17px}.method-close{max-width:35ch}

  .ap-life{--ap-life-h:210px;height:var(--ap-life-h);margin-top:-8px;margin-bottom:24px}
  .ap-heading{max-width:350px;margin-bottom:24px}.ap-heading h2{font-size:29px;line-height:1.1}
  .ap-portrait{width:min(100%,300px);margin-bottom:23px;aspect-ratio:4/5}
  .ap-body p{font-size:15.5px;line-height:1.62}.ap-copy p{margin-bottom:12px}
  .ap-body{grid-template-columns:minmax(124px,38%) minmax(0,1fr);column-gap:15px}
  .ap-photo{margin-top:20px}.ap-closing{margin-top:20px}.ap-quote p{font-size:13.5px;line-height:1.58}.ap-close{font-size:14.5px;line-height:1.45}

  .room>.eyebrow,.room>h2,.room>.sub,.room>.room-line{text-align:left;margin-inline:0}.room>.sub{max-width:35ch}.room-line{font-size:15.5px;line-height:1.5}
  .room-constellation{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:19px}
  .room-center{grid-column:1 / -1;min-height:218px;padding:20px 16px}.room-live{font-size:64px}.room-center h3{font-size:19px;white-space:normal;max-width:16ch}.room-center p{max-width:29ch;font-size:12px}.room-center strong{min-width:170px;font-size:13.5px}
  .room-card{padding:15px 14px}.room-card h3{font-size:15px}.room-card p{font-size:12.5px;line-height:1.48}.room-breakdown,.room-community{min-height:180px}.room-class{grid-column:1 / -1;min-height:112px;display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:center}.room-class h3{margin-top:0}

  .comm>.eyebrow,.comm>h2,.comm>.sub{text-align:left;justify-content:flex-start;margin-inline:0}.comm h2{margin-bottom:12px}.comm .sub{margin-bottom:19px}
  .mcards{margin-bottom:16px}.mtrack{gap:11px;padding-block:16px 24px}.mshot{flex-basis:calc((100vw - 36px)*.63);border-radius:16px}.mshot img{border-radius:12px}
  .comm-actions{gap:10px}.comm-actions .tg-note{white-space:normal;max-width:31ch;font-size:13px;line-height:1.45}.comm-actions .btn-ghost{min-height:52px}

  .why>.eyebrow{justify-content:flex-start}.why h2{text-align:left;margin-inline:0;margin-bottom:18px}
  .cmp-axis,.cmp-row{grid-template-columns:minmax(0,.9fr) 38px minmax(0,1.1fr)}
  .cmp-axis,.cmp-row{padding-inline:13px}.cmp-row{min-height:62px}.cmp-from,.cmp-to{font-size:13.25px}.cmp-to{padding-left:6px}.res-list{justify-content:flex-start;gap:10px 18px}

  .journey>.opt{display:none}
  .close{margin-top:28px;padding:29px 16px 25px;border-radius:20px}.close-ready{font-size:26px}.close h2{max-width:17ch;margin-bottom:15px}.csub{font-size:15px;line-height:1.58}.cline{font-size:15px;margin-bottom:18px}.close-extra{display:none}.close .btn{min-height:56px;font-size:16px}.cwhen{font-size:10px}.cwhen b{font-size:13px}

  /* A compact two-column dock: event details on the left, one action right. */
  .sticky{left:7px;right:7px;bottom:calc(4px + env(safe-area-inset-bottom));padding:9px 10px;border-radius:15px}
  .sk-in{grid-template-columns:minmax(0,1fr) minmax(154px,.9fr);grid-template-areas:"event cta";gap:6px 10px}
  .sk-incl,.sk-sheet{display:none!important}.sk-event{align-items:center}.sk-stack{gap:4px}.sk-stack>b{font-size:13px}.sk-lab{font-size:8.5px}
  .sk-cta{min-height:54px;padding:10px 9px;font-size:13.5px}
  .disclaimer{padding-bottom:120px}

  .modal-close,.doc-x{width:44px;height:44px;min-width:44px}.doc-x{font-size:17px}
  .signup-card{padding:21px 18px 20px}.modal-sub{font-size:15px;line-height:1.55}.quiz-under{font-size:9px}
  .opt-link{background:none;cursor:pointer}
}

@media(max-width:374px){
  .wrap{padding-inline:16px}
  .hero .sub{font-size:15px}
  .class-card{padding-inline:14px}.class-card h2{font-size:21px}.class-card .cc-when{max-width:144px}.class-card .cc-when b{font-size:13px}
  .ap-body{grid-template-columns:minmax(112px,36%) minmax(0,1fr);column-gap:12px}
  .room-card{padding-inline:12px}.room-card h3{font-size:14px}
  .sk-in{grid-template-columns:minmax(0,1fr) 148px}.sk-cta{font-size:13px}
}

/* ═══ HEADER + LIVE DOCK REFINEMENT — AJ 2026-08-06 ═══════════════════════
   The logo now shares the hero atmosphere instead of occupying a separate
   black strip. The live dock reads left-to-right as event, access and action;
   its SVG arrow is the only arrow rendered there. */
nav{position:absolute;z-index:55;top:32px;left:50%;width:100%;margin:0;transform:translateX(-50%);background:transparent}
.hero{padding-top:112px}
.count{gap:clamp(5px,2vw,9px)}
.sk-event{justify-self:start;text-align:left}
.sk-stack{align-items:flex-start}
.sk-cta{gap:10px;white-space:nowrap}
.sk-cta .ar{width:18px;height:18px;opacity:1}
.sk-cta .ar::before,.sk-cta .ar::after{display:none}

@media(min-width:760px){
  .hero{padding-top:128px}
  .sk-event{align-items:center}
}

@media(min-width:1000px){
  .hero{padding-top:136px}
}

@media(max-width:759px){
  nav{padding:14px 16px 10px}
  .hero{padding-top:74px}
  .count{justify-content:flex-start}
  .cunit b{font-size:24px}
  .sk-in{grid-template-columns:minmax(0,1fr) minmax(164px,.98fr)}
  .sk-stack{gap:3px}
  .sk-stack>b{font-size:12.5px}
  .sk-cta{padding-inline:8px;font-size:12.75px}
}

@media(max-width:374px){
  .sk-in{grid-template-columns:minmax(0,1fr) 160px}
  .sk-cta{font-size:12px;gap:6px}
}
