@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

:root{
  --ink:#0a0e0e; --teal:#123d3a; --navy:#0e1a19;
  --panel:#111e1c; --panel2:#162825;
  --line:rgba(255,255,255,.09); --line2:rgba(255,255,255,.14);
  --gold:#c69035; --gold-lt:#e6bd70; --green:#3bbf63; --red:#d4584c;
  --cream:#fffaf0; --txt:#eef4f1; --muted:#9db0aa; --muted2:#7d918b;
  --maxw:1120px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--ink);color:var(--txt);
  font-family:Inter,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
h1,h2,h3{line-height:1.1;letter-spacing:-.02em;font-weight:800}
section{padding:96px 0}
.kicker{color:var(--gold);font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px}
.sub{color:var(--muted);font-size:18px;max-width:680px;margin-top:12px}
.grad{background:linear-gradient(90deg,var(--green),var(--gold-lt));-webkit-background-clip:text;background-clip:text;color:transparent}

/* ══════════════════════════════════════════════════════════════════════════
   BLOG — index (blog.html) and articles (blog-<slug>.html), both generated by
   build_blog.py. Do not hand-edit those files; edit the POSTS dict and re-run.

   The article column is capped at 68ch on purpose. The landing page is a
   scannable sales page and can run full width; these are 1,500-word essays and
   long measure is what makes long-form unreadable.
   ═══════════════════════════════════════════════════════════════════════════ */
/* "read the full piece" pointers left behind on the landing page where a
   deep-dive was moved into an article. Muted on purpose — they are an exit, and
   the section still has to make its own argument without them being clicked. */
.dv-more,.lg-more,.story-more{margin-top:22px;font-size:14.5px;line-height:1.9;color:var(--muted2)}
.dv-more a,.lg-more a,.story-more a{color:var(--gold-lt);font-weight:600;
  border-bottom:1px solid rgba(230,189,112,.35)}
.dv-more a:hover,.lg-more a:hover,.story-more a:hover{border-bottom-color:var(--gold-lt)}
.story-more{font-size:15.5px}

/* contact.html — two cards, each one a real link (mailto: / tel:) so a phone opens
   the dialler rather than making the reader copy digits off a screen. */
.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:18px;margin:8px 0 12px}
.contact-card{display:flex;flex-direction:column;gap:7px;padding:24px 26px;
  border:1px solid var(--line2);border-radius:16px;background:var(--panel);
  transition:border-color .15s,transform .15s}
.contact-card:hover{border-color:var(--gold);transform:translateY(-2px)}
.cc-k{font-size:10.5px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--gold)}
/* 🛑 THE EMAIL MUST NEVER BREAK MID-WORD. "support@orthantfutures.co" + "m" on the next line
   (2026-08-14). First attempt used word-break:normal + overflow-wrap:break-word and it STILL
   broke: overflow-wrap is explicitly permission to break a too-long word, so as soon as the
   address was a hair wider than the card it split again. The old gmail address was 9 characters
   shorter and never reached that width, which is why this only appeared now.
   The fix is nowrap - no break is possible at all - with the size shrinking on narrow screens
   so it fits instead of overflowing. 20px is chosen with headroom: at the card's ~490px inner
   width the address measures ~425px. */
.cc-v{font-size:clamp(13px,3.4vw,20px);font-weight:800;color:var(--txt);letter-spacing:-.01em;
      white-space:nowrap}
.cc-n{color:var(--muted);font-size:14.5px;line-height:1.6;margin-top:4px}

/* story.html reuses the article shell but wants a slightly larger measure — it is a
   narrative, not a technical piece, and short lines make it feel like a listicle. */
.story-page .post-body .body{font-size:17.5px;max-width:70ch}

/* ── computed style card, inside a strategy card ─────────────────────────── */
.wu.sc summary .wu-open::before{content:"";}
.sc-body{display:flex;flex-direction:column;gap:0}
/* Stacked, not two-column: inside a narrow strategy card a label/value grid
   squeezes long values ("around the US open, and European hours") into ragged
   two-word lines. Label above, value below, both left-aligned. */
.sc-row{display:block;padding:9px 0;border-bottom:1px solid var(--line)}
.sc-row:last-of-type{border-bottom:none}
.sc-row>span{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--muted2);font-weight:700;margin-bottom:3px}
.sc-row>b{display:block;font-size:14.5px;font-weight:700;color:var(--txt);line-height:1.4}
.sc-row>b.pos{color:var(--green)} .sc-row>b.neg{color:var(--red)}
.sc-row>i{display:block;font-style:normal;font-size:11.5px;color:var(--muted2);
  line-height:1.5;margin-top:2px}
.sc-note{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);
  font-size:11.5px;line-height:1.6;color:var(--muted2)}
.sc-note a{color:var(--gold-lt);border-bottom:1px solid rgba(230,189,112,.4)}

/* ── DAILY P&L CALENDAR (calendar.html) ────────────────────────────────────
   Cells carry a tinted background rather than a saturated fill: at 20+ cells a
   month, full-strength red/green reads as an alarm panel instead of a record. */
.cal-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:14px;margin:6px 0 26px}
.cal-totals .cs{padding:18px 20px;border:1px solid var(--line);border-radius:14px;
  background:var(--panel)}
.cal-totals .cs b{display:block;font-size:27px;font-weight:800;letter-spacing:-.02em}
.cal-totals .cs b.pos{color:var(--green)} .cal-totals .cs b.neg{color:var(--red)}
.cal-totals .cs span{display:block;margin-top:5px;font-size:13px;color:var(--muted);line-height:1.5}
.cal-ramp{color:var(--muted2)}

.cal-filter{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0 16px}
.cal-filter label{display:inline-flex;align-items:center;gap:8px;cursor:pointer;
  padding:8px 13px;border:1px solid var(--line);border-radius:999px;font-size:13.5px;
  color:var(--muted2);background:transparent;user-select:none;transition:.15s}
.cal-filter label.on{border-color:var(--gold);color:var(--txt);background:rgba(198,144,53,.09)}
.cal-filter label small{color:var(--muted2);font-size:11.5px}
.cal-filter input{accent-color:var(--gold);width:14px;height:14px}

.cal-strip{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:26px}
.ys{flex:1 1 74px;padding:9px 6px;border-radius:10px;border:1px solid var(--line);
  background:var(--panel);cursor:pointer;text-align:center;transition:.15s}
.ys:hover{border-color:var(--gold-lt)}
.ys.on{border-color:var(--gold);background:rgba(198,144,53,.12)}
.ys b{display:block;font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.ys span{display:block;margin-top:3px;font-size:12.5px;font-weight:700;font-variant-numeric:tabular-nums}
.ys.up span{color:var(--green)} .ys.down span{color:var(--red)} .ys.even span{color:var(--muted2)}
.ys.on b{color:var(--gold-lt)}

.cal-nav{display:flex;align-items:center;justify-content:center;gap:18px;margin:10px 0 6px}
.cal-arrow{width:40px;height:40px;border-radius:10px;border:1px solid var(--line2);
  background:var(--panel);color:var(--txt);font-size:17px;cursor:pointer;transition:.15s}
.cal-arrow:hover:not(:disabled){border-color:var(--gold);color:var(--gold-lt)}
.cal-arrow:disabled{opacity:.3;cursor:not-allowed}
.cal-month{font-size:23px;font-weight:800;min-width:220px;text-align:center}
.cal-stats{text-align:center;color:var(--muted);font-size:13.5px;margin-bottom:20px;line-height:1.9}
.cal-stats b{font-weight:800} .cal-stats b.pos{color:var(--green)} .cal-stats b.neg{color:var(--red)}
.csep{font-style:normal;color:var(--line2);margin:0 10px}

.cal-wrap{overflow-x:auto}
.cm-dow{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-bottom:9px;min-width:640px}
.cm-dow span{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted2);
  text-align:center;font-weight:700}
.cm-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;min-width:640px}
.cd{min-height:104px;padding:12px 13px;border-radius:12px;border:1px solid var(--line);
  background:var(--panel);display:flex;flex-direction:column;gap:3px}
.cd.pad{background:none;border:none;min-height:0}
.cd-n{font-size:15px;font-weight:800;color:var(--txt)}
.cd-p{font-size:17px;font-weight:800;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.cd-m{font-size:11.5px;color:var(--muted2)}
.cd-x{font-size:12.5px;color:var(--muted2);margin-top:3px}
.cd.up{border-color:rgba(59,191,99,.42);background:rgba(59,191,99,.09)}
.cd.up .cd-p{color:var(--green)}
.cd.down{border-color:rgba(212,88,76,.42);background:rgba(212,88,76,.09)}
.cd.down .cd-p{color:var(--red)}
.cd.even .cd-p{color:var(--muted)}
.cd.none{background:transparent;border-style:dashed;border-color:var(--line)}
.cd.none .cd-n{color:var(--muted2)}
@media(max-width:720px){.cal-month{min-width:150px;font-size:19px}.cd{min-height:88px;padding:9px}}

/* Media-kit HOMEPAGE block (index.html #platform-partners). The logo boxes carry
   generous padding on purpose: the trademark guidelines require >=18px / .25in of
   clear space on all sides of a NinjaTrader or Kinetick logo. */
.partners{padding:var(--s7) 0;border-top:1px solid var(--line)}
.pn-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));
  gap:18px;margin-top:30px}
.pn-card{display:flex;gap:20px;align-items:flex-start;padding:24px;border-radius:16px;
  border:1px solid var(--line);background:var(--panel);transition:border-color .15s,transform .15s}
.pn-card:hover{border-color:var(--gold);transform:translateY(-2px)}
.pn-media{flex:0 0 132px;display:flex;align-items:center;justify-content:center;
  padding:18px;border-radius:12px;background:#fff;min-height:92px}
.pn-media img{max-width:100%;height:auto;display:block}
.pn-copy{display:flex;flex-direction:column;gap:7px}
.pn-copy b{font-size:16px;color:var(--txt)}
.pn-copy span{font-size:14.5px;line-height:1.6;color:var(--muted)}
.pn-copy em{font-style:normal;font-weight:700;font-size:13.5px;color:var(--gold-lt);margin-top:3px}
.pn-banner{display:block;width:max-content;max-width:100%;margin:26px auto 0;padding:18px;
  border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.03);line-height:0}
.pn-banner:hover{border-color:var(--gold)}
.pn-banner img{max-width:100%;height:auto;display:block}
.pn-more{margin-top:22px;font-size:14px}
.pn-more a{color:var(--gold-lt);font-weight:600;border-bottom:1px solid rgba(230,189,112,.4)}
@media(max-width:560px){.pn-card{flex-direction:column}.pn-media{flex:0 0 auto;width:100%}}

/* NinjaTrader Ecosystem media-kit blocks.
   .plat-why separates OUR reasoning from THEIR required copy so the media-kit text
   stays verbatim and identifiable. .kbanner holds the Kinetick&reg; "Get Started" images;
   the kit's logo guidance requires >=18px clear space on all sides, hence the padding. */
.plat-why{font-size:15px;letter-spacing:.04em;text-transform:uppercase;color:var(--gold);
  margin:30px 0 10px;padding-top:22px;border-top:1px solid var(--line)}
.plat-kit{margin:6px 0 14px}
.plat-banners{display:flex;flex-wrap:wrap;gap:22px;align-items:center;justify-content:center;
  padding-top:26px;margin-top:8px;border-top:1px solid var(--line)}
.kbanner{display:inline-block;padding:18px;border:1px solid var(--line);border-radius:12px;
  background:rgba(255,255,255,.03);line-height:0;transition:border-color .15s}
.kbanner:hover{border-color:var(--gold)}
.kbanner img{max-width:100%;height:auto;display:block}
@media(max-width:820px){.kbanner-box{display:none}}

/* trade-data.html — the download table. Deliberately under-designed so it reads as
   an export rather than as marketing; that is the whole point of publishing it. */
.td-wrap{overflow-x:auto;margin:8px 0 10px;border:1px solid var(--line);border-radius:12px}
.td-tbl{width:100%;border-collapse:collapse;font-size:14px;min-width:720px}
.td-tbl th{text-align:left;padding:12px 14px;background:var(--panel2);color:var(--muted);
  font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;
  border-bottom:1px solid var(--line)}
.td-tbl td{padding:11px 14px;border-bottom:1px solid var(--line);color:var(--muted)}
.td-tbl tr:last-child td{border-bottom:none}
.td-tbl td b{color:var(--txt)}
.td-tbl .num,.td-tbl th.num{text-align:right;font-variant-numeric:tabular-nums}
.td-tbl a{color:var(--gold-lt);font-weight:600;border-bottom:1px solid rgba(230,189,112,.4)}
.td-tbl .kb{display:block;color:var(--muted2);font-size:11.5px;font-weight:500}
/* contract expiry beside the symbol — NT Ecosystem compliance, 2026-08-07 */
.td-tbl .exp{color:var(--txt);font-weight:700;font-variant-numeric:tabular-nums}

/* "trade data behind this" pointer, sits directly under a results block */
.datalink{margin-top:12px;font-size:13px;color:var(--muted2);line-height:1.7}
.datalink a{color:var(--gold-lt);font-weight:600;border-bottom:1px solid rgba(230,189,112,.4)}
.datalink a:hover{border-bottom-color:var(--gold-lt)}

.bl-hero{padding:132px 0 40px;border-bottom:1px solid var(--line)}
.bl-h1{font-size:clamp(34px,5.4vw,58px);margin-bottom:18px}
.bl-sub{color:var(--muted);font-size:18px;max-width:62ch}
.bl-list{padding:56px 0 40px}
.bl-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:18px}
.bl-card{display:flex;flex-direction:column;gap:10px;padding:26px 26px 22px;
  border:1px solid var(--line);border-radius:16px;background:var(--panel);
  transition:border-color .15s,transform .15s}
.bl-card:hover{border-color:var(--gold);transform:translateY(-2px)}
.bl-topic{font-size:10.5px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--gold)}
.bl-card h2{font-size:22px;line-height:1.2}
.bl-card p{color:var(--muted);font-size:15px;line-height:1.6}
.bl-more{margin-top:auto;padding-top:8px;font-size:13px;font-weight:700;color:var(--gold-lt)}
.bl-more em{color:var(--muted2);font-style:normal;font-weight:600;margin-left:6px}
.bl-foot{padding:0 0 90px}
.bl-foot .body{color:var(--muted);font-size:16px;max-width:68ch}
.bl-foot a{color:var(--gold-lt);border-bottom:1px solid rgba(230,189,112,.4)}

.post{padding:120px 0 40px}
.post .wrap{max-width:820px}
.backlink{display:inline-block;color:var(--muted2);font-size:12.5px;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;margin-bottom:26px}
.backlink:hover{color:var(--gold-lt)}
.post-kicker{margin-bottom:12px}
.post-h1{font-size:clamp(30px,4.6vw,48px);margin-bottom:18px}
.post-dek{color:var(--muted);font-size:19px;line-height:1.55;max-width:64ch;
  padding-bottom:30px;border-bottom:1px solid var(--line)}
.post-body{margin-top:34px}
.post-body h2{font-size:clamp(22px,2.8vw,28px);margin:46px 0 4px}
.post-body h3{font-size:18px;margin:32px 0 2px;color:var(--gold-lt)}
.post-body .body{color:var(--muted);font-size:17px;line-height:1.72;margin-top:14px;max-width:68ch}
.post-body .body b{color:var(--txt)}
.post-body .body a{color:var(--gold-lt);border-bottom:1px solid rgba(230,189,112,.4)}
.post-body .callout{margin:28px 0;padding:20px 24px;border-left:3px solid var(--gold);
  border-radius:0 12px 12px 0;background:rgba(198,144,53,.07);max-width:68ch}
.post-body .callout p{color:var(--txt);font-size:16px;line-height:1.7}
.post-body .callout p+p{margin-top:10px}
.post-body .callout b{color:var(--gold-lt)}
.post-body .fine{margin-top:40px;padding-top:18px;border-top:1px solid var(--line);
  color:var(--muted2);font-size:12.5px;line-height:1.65;max-width:68ch}

/* monte carlo box */
.mc-box{margin-top:16px;padding:16px;border:1px solid var(--line2);border-radius:12px;background:rgba(255,255,255,.02)}
.mc-h{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);
  display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}
.mc-h span{color:var(--muted2);font-weight:600;letter-spacing:0;text-transform:none}
.mc-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:12px}
.mc-row>div{display:flex;flex-direction:column;gap:3px}
.mc-row span{color:var(--muted);font-size:12px}
.mc-row b{font-size:19px;font-weight:800}
.mc-mid{color:var(--gold-lt)}
.mc-note{color:var(--muted2);font-size:12px;margin-top:12px;line-height:1.45}
.mc-compact{margin-top:13px;padding:12px 13px}
.mc-compact .mc-h{font-size:10px}
.mc-compact .mc-row{gap:8px;margin-top:9px}
.mc-compact .mc-row b{font-size:15px}
.mc-compact .mc-row span{font-size:10.5px}
.reframe-note{color:var(--muted);font-size:14px;margin-top:22px;max-width:840px;line-height:1.6}
.reframe-note b{color:var(--txt)}
.reframe-note a{color:var(--gold-lt);border-bottom:1px solid rgba(198,144,53,.4)}
@media(max-width:640px){.mc-row{grid-template-columns:1fr}}

/* strategy vulnerability blurbs */
.vuln{margin-top:14px;padding-top:13px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:11px}
.v-line span{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;display:block;margin-bottom:3px}
.v-line p{font-size:12.5px;color:var(--muted);line-height:1.42}
.v-thr span{color:#7fe0a0}
.v-dur span{color:var(--gold-lt)}
/* ── the framework, in five seconds ───────────────────────────────────────────
   Deliberately light: numbers, four short headings, one line of body each. A
   visitor should be able to read only the headings and still have the model. */
.fw{padding:56px 0 50px;background:#0a0e0e;border-bottom:1px solid var(--line)}
.fw-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:26px 32px;margin-top:18px}
.fw-n{font-size:11px;font-weight:800;letter-spacing:.14em;color:var(--gold);margin-bottom:9px}
.fw-item h3{font-size:16.5px;font-weight:800;color:#e7ecf3;margin-bottom:7px;line-height:1.3}
.fw-item p{font-size:13.5px;line-height:1.6;color:var(--muted)}

/* ── the diversification objection ────────────────────────────────────────────
   Reads as an essay, not a feature block: this is the section that has to prove
   we understand portfolio theory better than the received wisdom, and that means
   prose plus one hard measurement. */
.dv{padding:78px 0;background:linear-gradient(180deg,#0c1413,#0a0e0e)}
.dv h2{font-size:clamp(26px,3.3vw,40px);font-weight:900;margin:6px 0 22px;max-width:22ch;line-height:1.15}
.dv-p{font-size:16px;line-height:1.78;color:var(--muted);max-width:74ch;margin-bottom:18px}
.dv-p b{color:#cfd7e2}
.dv-close{margin-top:8px;padding-top:20px;border-top:1px solid var(--line);color:#cdd9d4}
.dv-evi{margin:26px 0 28px;padding:24px 26px;border-radius:16px;
  border:1px solid rgba(198,144,53,.32);background:rgba(198,144,53,.06);max-width:74ch}
.dv-evi-h{font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
  color:var(--gold-lt);margin-bottom:12px}
.dv-evi p{font-size:14.5px;line-height:1.72;color:var(--muted)}
/* the four draws — scenario rows, tagged by how bad each one is */
.dv-scen{margin:26px 0 28px;max-width:78ch}
.dv-row{display:grid;grid-template-columns:186px 1fr;gap:20px;padding:16px 0;
  border-top:1px solid var(--line);align-items:start}
.dv-row:last-child{border-bottom:1px solid var(--line)}
.dv-tag{font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;
  padding:7px 11px;border-radius:8px;text-align:center;line-height:1.35}
.dv-ok{color:#7fe0a0;background:rgba(50,168,82,.12);border:1px solid rgba(50,168,82,.3)}
.dv-warn{color:#e2c489;background:rgba(198,144,53,.12);border:1px solid rgba(198,144,53,.32)}
.dv-bad2{color:#f0a1a1;background:rgba(212,88,76,.14);border:1px solid rgba(212,88,76,.38)}
/* methods/citation footnote — small, but present. The whole section rests on
   simulated numbers and quoted firm rules, so the reader gets the assumptions and
   the sources rather than being asked to trust the figures. */
.dv-fine{margin-top:22px;padding-top:16px;border-top:1px solid var(--line);
  font-size:12px;line-height:1.7;color:#7d8899;max-width:80ch}

/* Every price card gets its own CTA. A single button under one tier makes the
   other three look unavailable, and forces a reader who wants the cheapest entry
   to hunt for where to click. The featured card keeps the gold button; the rest
   get the ghost treatment so the recommended tier still leads. */
/* licensing steps in the trial section */
.lic-list{margin-top:26px;display:flex;flex-direction:column;gap:20px}
.lic-item{display:grid;grid-template-columns:38px 1fr;gap:16px;align-items:start}
.lic-n{font-size:11px;font-weight:800;letter-spacing:.1em;color:var(--gold);padding-top:3px}
.lic-item h4{font-size:15.5px;font-weight:800;color:#e7ecf3;margin-bottom:5px}
.lic-item p{font-size:13.5px;line-height:1.65;color:var(--muted)}
.signup-h{font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
  color:var(--gold-lt);margin-bottom:14px}
.signup-fine{margin-top:12px;font-size:11.5px;line-height:1.6;color:#7d8899}
.form-note{margin-top:12px;font-size:12.5px;line-height:1.65;color:#e2c489}

/* All four identical, and all pinned to the bottom of their card so they line up
   in a row regardless of how much copy sits above them. */
.price{display:flex;flex-direction:column}
.price > p{flex:1 0 auto}
.pcard-cta{display:block;width:100%;text-align:center;margin-top:18px;
  padding:13px 18px;border-radius:11px;font-size:14.5px;font-weight:800;
  letter-spacing:.01em;box-sizing:border-box}

/* the pricing formula, shown rather than asserted — the table is the argument */
.price-formula{margin-top:22px;padding:24px 26px;border-radius:16px;
  border:1px solid rgba(198,144,53,.3);background:rgba(198,144,53,.05)}
.pf-h{font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
  color:var(--gold-lt);margin-bottom:12px}
.price-formula p{font-size:14px;line-height:1.72;color:var(--muted);max-width:76ch}
.price-formula p b{color:#cfd7e2}
.pf-tbl{width:100%;border-collapse:collapse;margin:18px 0;font-size:13.5px;max-width:600px}
.pf-tbl th{text-align:right;font-size:10.5px;font-weight:800;letter-spacing:.06em;
  text-transform:uppercase;color:#8b95a6;padding:0 0 9px;border-bottom:1px solid var(--line)}
.pf-tbl th:first-child{text-align:left}
.pf-tbl td{padding:9px 0;border-bottom:1px solid rgba(255,255,255,.04);text-align:right;
  color:#cfd7e2;font-weight:700}
.pf-tbl td:first-child{text-align:left;font-weight:800;color:#e7ecf3}
.pf-tbl td span{display:inline-block;margin-left:8px;font-size:10px;font-weight:700;
  letter-spacing:.06em;color:#7d8899}
.pf-tbl td:last-child{color:#7fe0a0}
.pf-note{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}

/* the three terms that do not fit in a price card but change the deal */
.price-note{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px 28px;
  margin-top:20px;padding:18px 22px;border-radius:14px;border:1px solid var(--line);
  background:rgba(255,255,255,.02);font-size:13.5px;line-height:1.6;color:var(--muted)}
.price-note b{color:#cfd7e2}
.dv-row p{font-size:14.5px;line-height:1.72;color:var(--muted)}
.dv-row p b{color:#cfd7e2}
@media (max-width:700px){.dv-row{grid-template-columns:1fr;gap:10px}.dv-tag{justify-self:start}}

.dv-nums{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin:18px 0}
.dv-num{padding:16px 18px;border-radius:12px;border:1px solid var(--line);background:rgba(0,0,0,.25)}
.dv-num b{display:block;font-size:30px;font-weight:900;color:#7fe0a0;letter-spacing:-.02em}
.dv-num span{display:block;margin-top:5px;font-size:12.5px;line-height:1.5;color:#8b95a6}
.dv-bad b{color:#f0a1a1}

/* ── the copier / guru trap ───────────────────────────────────────────────────
   Problem on top in warm red, answer underneath in green. The pairing is the
   whole point: a list of grievances with no answer is just negativity, and a
   list of answers with no grievance is another feature grid. */
.whynot{padding:var(--s6,86px) 0;background:linear-gradient(180deg,#0a0e0e,#0c1413)}
.whynot h2{font-size:clamp(28px,3.6vw,44px);font-weight:900;margin:6px 0 16px}
.whynot-lede{font-size:16.5px;line-height:1.7;color:var(--muted);max-width:70ch;margin-bottom:34px}
.wn-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.wn-card{border:1px solid var(--line);border-radius:16px;padding:24px 24px 22px;
  background:linear-gradient(180deg,rgba(22,40,37,.55),rgba(17,30,28,.35))}
.wn-bad,.wn-good{font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
  margin-bottom:8px;display:flex;align-items:center;gap:8px}
.wn-bad{color:#f0a1a1}
.wn-bad::before{content:"";width:7px;height:7px;border-radius:50%;background:#d4584c;flex:none}
.wn-good{color:#7fe0a0;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.wn-good::before{content:"";width:7px;height:7px;border-radius:50%;background:#32a852;flex:none}
.wn-p{font-size:14px;line-height:1.68;color:var(--muted)}
.wn-card .wn-good + .wn-p{color:#cdd9d4}
/* The backtest-vs-live card spans the full row rather than being stranded alone
   on a second line. It is also the strongest claim in the section, so featuring
   it is the right emphasis, not just a layout fix. Problem and answer sit
   side-by-side here instead of stacked. */
.wn-wide{grid-column:1/-1;border-color:rgba(198,144,53,.35);
  background:linear-gradient(180deg,rgba(198,144,53,.07),rgba(17,30,28,.4))}
@media (min-width:900px){
  .wn-wide{display:grid;grid-template-columns:1fr 1fr;column-gap:34px;align-items:start}
  .wn-wide .wn-bad{grid-column:1;margin-bottom:8px}
  .wn-wide .wn-bad + .wn-p{grid-column:1}
  .wn-wide .wn-good{grid-column:2;grid-row:1;margin-top:0;padding-top:0;border-top:none}
  .wn-wide .wn-good + .wn-p{grid-column:2;grid-row:2}
}

.wn-firms{margin-top:26px;padding:16px 20px;border-radius:12px;border:1px solid var(--line);
  background:rgba(255,255,255,.02);font-size:13.5px;line-height:1.7;color:var(--muted);max-width:86ch}
.wn-firms b{color:#cfd7e2}
.wn-firms span{display:block;margin-top:6px;color:#7d8899;font-size:12.5px}

/* hero product shot — only on wide screens, where the hero has dead space to the
   right of the copy. Below 1180px it drops out entirely rather than shrinking to
   an illegible thumbnail; a chart screenshot at 300px wide communicates nothing. */
.hero-shot{display:none}
@media (min-width:1180px){
  /* The h1 shares the row with the shot, so it gets a smaller cap than the
     full-width clamp. At 64px this headline ran to six lines and pushed the
     lede, the buttons and every stat below the fold — the scanner saw a wall of
     type and nothing else. */
  /* NOTE: landing.css contains more than one .hero block, so a bare `.hero h1`
     rule here can lose on source order. Scoped to `.hero-inner > h1` to raise
     specificity rather than relying on where this sits in the file. */
  .hero .hero-inner > h1{font-size:clamp(32px,2.9vw,44px);line-height:1.1;max-width:min(700px,54%)}
  .hero .hero-inner > .lede{max-width:min(640px,52%)}
  /* The trust row sits BELOW the product shot, so it does not need the narrow
     column — constraining it made the three ticks stack one per line and pushed
     the stat tiles off screen. */
  .hero .hero-inner > .trust{max-width:none}
  .hero-shot{display:block;position:absolute;top:96px;right:24px;width:min(620px,40%);margin:0}
  .hero-shot img{width:100%;height:auto;display:block;border-radius:14px;
    border:1px solid rgba(143,180,240,.22);
    box-shadow:0 30px 70px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.03)}
  .hero-shot figcaption{margin-top:11px;font-size:12px;line-height:1.55;color:#8b95a6;max-width:56ch}
}
@media (min-width:1500px){ .hero-shot{width:min(700px,42%)} }

/* footer contact block */
.foot-contact{margin:18px 0 20px;padding:16px 20px;border-radius:12px;border:1px solid var(--line);
  background:rgba(255,255,255,.02);max-width:72ch}
.foot-c-h{font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
  color:var(--gold-lt);margin-bottom:7px}
.foot-contact p{font-size:13px;line-height:1.65;color:var(--muted)}
.foot-contact a{color:#8fb4f0;font-weight:700;text-decoration:none;border-bottom:1px solid rgba(143,180,240,.4)}
.foot-contact a:hover{color:#b9d0f8}

/* shared "how all of them run" panel under the strategy grid */
.howrun{margin-top:22px;padding:20px 24px;border-radius:14px;border:1px solid var(--line);background:var(--panel)}
.howrun-h{font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
  color:var(--gold-lt);margin-bottom:13px}
.howrun ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:13px 30px}
.howrun li{font-size:12.5px;line-height:1.55;color:var(--muted);padding-left:15px;position:relative}
.howrun li::before{content:"";position:absolute;left:0;top:7px;width:5px;height:5px;border-radius:50%;
  background:rgba(198,144,53,.75)}
.howrun li b{color:#cfd7e2;font-weight:700}
@media(max-width:820px){.howrun ul{grid-template-columns:1fr}}

/* per-strategy write-up — collapsed disclosure inside the strategy card.
   "Suffers in" gets the SAME type size and weight as everything else: the
   weakness is not a footnote, and shrinking it would be the quiet kind of
   dishonesty the rest of this site exists to avoid. */
.wu{margin-top:13px;padding-top:12px;border-top:1px solid var(--line)}
.wu summary{cursor:pointer;list-style:none;font-size:11.5px;font-weight:800;letter-spacing:.04em;
  color:var(--gold-lt);display:flex;align-items:center;gap:7px;padding:2px 0}
.wu summary::-webkit-details-marker{display:none}
.wu summary::before{content:"+";font-size:14px;font-weight:800;line-height:1;width:13px;
  display:inline-block;text-align:center;transition:transform .15s ease}
.wu[open] summary::before{content:"\2212"}
.wu summary:hover{color:#f0d9a8}
.wu-body{margin-top:12px;display:flex;flex-direction:column;gap:12px}
.wu-sec span{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  display:block;margin-bottom:4px;color:#8b95a6}
.wu-sec p{font-size:12.5px;color:var(--muted);line-height:1.55}
.wu-thr span{color:#7fe0a0}
.wu-suf span{color:#f0a1a1}

.strat-kicker{margin-top:22px;padding:18px 22px;border-radius:14px;border:1px solid rgba(198,144,53,.35);
  background:linear-gradient(180deg,rgba(198,144,53,.08),var(--panel));font-size:15px;color:var(--muted);line-height:1.55}
.strat-kicker b{color:var(--gold-lt)}

/* risk personas */
.persona-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:28px}
.persona{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px;
  cursor:pointer;transition:.18s;font-family:inherit;color:var(--txt)}
.persona:hover{transform:translateY(-3px);border-color:var(--line2)}
.persona.active{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold),0 12px 30px rgba(198,144,53,.18);
  background:linear-gradient(180deg,rgba(198,144,53,.09),var(--panel))}
.persona-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.persona-name{font-size:16px;font-weight:800;letter-spacing:-.01em}
.risk-meter{display:inline-flex;gap:3px;flex-shrink:0}
.risk-meter i{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.16)}
.risk-meter i.on{background:var(--gold-lt)}
.persona-tag{color:var(--muted);font-size:12.5px;margin:9px 0 14px;min-height:34px}
.persona-nums{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:11px}
.persona-nums b{font-size:14px}
@media(max-width:820px){.persona-grid{grid-template-columns:repeat(2,1fr)}}

/* risk picker */
.risk-pick{display:flex;align-items:center;gap:12px;margin-top:26px;flex-wrap:wrap}
.risk-pick label{font-weight:700;color:var(--muted)}
#riskSel{background:var(--panel);color:var(--txt);border:1px solid var(--line2);border-radius:10px;
  padding:11px 14px;font-size:15px;font-weight:600;font-family:inherit;min-width:340px;cursor:pointer}
#riskSel:focus{outline:none;border-color:var(--gold)}
.risk-out{margin-top:20px}
.risk-card{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:24px}
.risk-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}
.risk-name{font-size:20px;font-weight:800;letter-spacing:-.01em}
.risk-tag{color:var(--gold-lt);font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-top:3px}
.risk-net{text-align:right;white-space:nowrap}
.risk-net span{display:block;color:var(--muted);font-size:12px}
.risk-net b{font-size:26px;font-weight:900}
.gauge.lg{height:12px}
.risk-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.risk-stats>div{display:flex;flex-direction:column;gap:3px}
.risk-stats span{color:var(--muted);font-size:12px}
.risk-stats b{font-size:18px;font-weight:800}
.risk-note{color:var(--muted);font-size:14px;margin-top:16px}
.risk-note b{color:var(--txt)}
@media(max-width:640px){.risk-stats{grid-template-columns:repeat(2,1fr)}#riskSel{min-width:0;width:100%}}

/* solution pyramid */
.pyramid{max-width:720px;margin:38px auto 0;display:flex;flex-direction:column;align-items:center;gap:11px}
.tier{border-radius:13px;padding:16px 22px;text-align:center;border:1px solid var(--line);transition:.18s}
.tier:hover{transform:translateY(-2px);border-color:var(--line2)}
.tier b{display:block;font-size:17px;font-weight:800;letter-spacing:-.01em}
.tier span{color:var(--muted);font-size:12.5px}
.tier.t4{width:52%;background:linear-gradient(180deg,rgba(198,144,53,.24),var(--panel2))}
.tier.t3{width:68%;background:linear-gradient(180deg,rgba(93,173,226,.14),var(--panel))}
.tier.t2{width:84%;background:linear-gradient(180deg,rgba(59,191,99,.14),var(--panel))}
.tier.t1{width:100%;background:linear-gradient(180deg,rgba(198,144,53,.14),var(--panel))}
.tier.t1 b{background:linear-gradient(90deg,var(--green),var(--gold-lt));-webkit-background-clip:text;background-clip:text;color:transparent}
@media(max-width:640px){.tier{width:100% !important}}

/* no-optimization proof band */
.noopt{margin-top:38px;padding:28px;border:1px solid var(--line);border-radius:18px;
  background:linear-gradient(180deg,var(--panel2),var(--panel));text-align:center}
.noopt-h{font-size:23px;font-weight:800;letter-spacing:-.02em}
.noopt p{color:var(--muted);font-size:15px;max-width:730px;margin:10px auto 0}
.event-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px}
.event-chips span{font-size:13px;font-weight:700;color:var(--gold-lt);
  background:rgba(198,144,53,.1);border:1px solid rgba(198,144,53,.35);border-radius:999px;padding:7px 15px}
.noopt p b{color:var(--txt)}
.noopt-foot{color:var(--txt) !important;font-weight:600;margin-top:18px !important}
.noopt.fills{margin-top:16px}
.noopt.fills .event-chips span{color:#7fe0a0;background:rgba(59,191,99,.1);border-color:rgba(59,191,99,.35)}

/* scale / multi-account */
.scale-ctrl{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:30px}
.ctrl-lead{font-weight:700;font-size:15px;margin-right:4px}
.stepper{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:9px 14px}
.stepper>span{color:var(--muted);font-size:13px;font-weight:600}
.stepper button{width:30px;height:30px;border-radius:8px;border:1px solid var(--line2);background:rgba(255,255,255,.04);
  color:var(--txt);font-size:18px;font-weight:700;cursor:pointer;line-height:1;display:flex;align-items:center;justify-content:center}
.stepper button:hover{border-color:var(--gold);color:var(--gold-lt)}
.stepper b{min-width:18px;text-align:center;font-size:17px;font-weight:800}
.stepper-total{color:var(--muted);font-size:14px;font-weight:600}
.stepper-total b{color:var(--gold-lt);font-size:18px}
.acct-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:14px;margin-top:18px}
.acct{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px 16px;transition:.18s}
.acct:hover{border-color:var(--line2);transform:translateY(-3px)}
.acct-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.acct-name{font-weight:800;font-size:15px}
.badge{font-size:10px;font-weight:800;letter-spacing:.08em;padding:3px 9px;border-radius:999px}
.badge.eval{background:rgba(198,144,53,.16);color:var(--gold-lt);border:1px solid rgba(198,144,53,.4)}
.badge.pa{background:rgba(59,191,99,.16);color:#7fe0a0;border:1px solid rgba(59,191,99,.4)}
.acct-strat{color:var(--muted);font-size:12px;margin-bottom:14px;min-height:30px}
.acct-strats{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px;min-height:32px}
.mix{font-size:11px;font-weight:700;color:var(--txt);background:rgba(255,255,255,.05);
  border:1px solid var(--line2);border-radius:6px;padding:3px 8px}
.ctrl-note{color:var(--muted);font-size:13px;max-width:380px}
.gauge{position:relative;height:9px;border-radius:6px;background:#0c1614;border:1px solid var(--line);overflow:hidden}
.gfill{position:absolute;top:0;bottom:0;left:0;border-radius:6px}
.gfill.ok{background:linear-gradient(90deg,#2f9e63,#46c07d)}
.gfill.mid{background:linear-gradient(90deg,var(--gold),var(--gold-lt))}
.gfill.warn{background:linear-gradient(90deg,#b8433a,var(--red))}
.gauge-lbl{display:flex;justify-content:space-between;align-items:baseline;margin-top:7px}
.gval{font-size:14px;font-weight:800}
.gpct{color:var(--muted2);font-size:11px;font-weight:600}
.agg-row small{display:block;color:var(--muted);font-size:12px;font-weight:600;margin-top:3px}
.acct-net{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.acct-net span{color:var(--muted);font-size:12px}
.acct-net b{font-size:17px}
.scale-agg{margin-top:16px;padding:24px 26px;border:1px solid var(--line);border-radius:18px;
  background:linear-gradient(180deg,var(--panel2),var(--panel))}
.agg-k{font-weight:800;font-size:15px;color:var(--gold-lt);letter-spacing:.02em;margin-bottom:16px}
.agg-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.agg-row>div{display:flex;flex-direction:column;gap:5px}
.agg-row span{color:var(--muted);font-size:13px}
.agg-row b{font-size:27px;font-weight:900;letter-spacing:-.02em}
.agg-note{color:var(--muted);font-size:14px;margin-top:18px;max-width:780px}
.agg-note b{color:var(--txt)}
.roi-wrap{margin-top:26px}
.roi-h{font-size:16px;font-weight:700;color:var(--muted);margin-bottom:14px}
.roi-h b{color:var(--gold-lt)}
.roi-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.roi-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:22px}
.roi-card.feat{border-color:rgba(198,144,53,.5);background:linear-gradient(180deg,rgba(198,144,53,.09),var(--panel))}
.roi-badge{font-size:11px;font-weight:800;letter-spacing:.1em;color:var(--muted)}
.roi-mult{font-size:52px;font-weight:900;letter-spacing:-.03em;line-height:1.05;margin-top:4px;
  background:linear-gradient(90deg,var(--green),var(--gold-lt));-webkit-background-clip:text;background-clip:text;color:transparent}
.roi-sub{color:var(--muted);font-size:13px;margin-bottom:16px}
.roi-card ul{list-style:none;display:flex;flex-direction:column;gap:0}
.roi-card li{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--muted);
  border-top:1px solid var(--line);padding:9px 0}
.roi-card li b{font-size:16px}
.roi-note{color:var(--muted2);font-size:13px;margin-top:14px;max-width:800px}
@media(max-width:900px){.acct-grid{grid-template-columns:repeat(2,1fr)}.agg-row{grid-template-columns:1fr;gap:14px}.roi-cards{grid-template-columns:1fr}}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border-radius:12px;
  font-weight:700;font-size:15px;cursor:pointer;border:1px solid transparent;transition:.18s;white-space:nowrap}
.btn-gold{background:linear-gradient(180deg,var(--gold-lt),var(--gold));color:#221704;box-shadow:0 6px 22px rgba(198,144,53,.28)}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(198,144,53,.4)}
.btn-ghost{background:rgba(255,255,255,.04);border-color:var(--line2);color:var(--txt)}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold-lt)}

/* nav */
.nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;
  gap:20px;padding:14px 24px;background:rgba(10,14,14,.82);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:11px}
/* 2026-08-13 - 34 -> 40px. Bud: the mark reads too small in the header. The plate
   gives it visual mass but the drawing inside was tiny; the SVG's inner content was
   scaled up in the same pass. Wordmark and tagline sizes are unchanged, so the
   lockup grows without the nav getting taller. */
.brand-mark{width:40px;height:40px}
.brand-word{font-weight:800;font-size:20px;letter-spacing:-.01em}
.nav-links{display:flex;gap:28px}
.nav-links a{color:var(--muted);font-weight:600;font-size:15px}
.nav-links a:hover{color:var(--txt)}
/* Trial and Subscribe read as plain nav tabs, same as the rest (Bud, 2026-08-17).
   They were a gold button and a ghost button, which gave Trial visual priority over
   the paying action for no reason. The button padding is gone with them - these are
   .nav-item now and inherit its type. */
.nav-cta{padding:0;font-size:15px}

/* hero */
.hero{position:relative;overflow:hidden;padding:120px 0 150px;
  background:radial-gradient(1200px 600px at 70% -10%,rgba(18,61,58,.7),transparent 60%),linear-gradient(180deg,#0c1615,#0a0e0e)}
.hero-grid{position:absolute;inset:0;opacity:.35;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:64px 64px;mask-image:radial-gradient(900px 500px at 65% 0,#000,transparent 75%)}
.hero-glow{position:absolute;top:-160px;right:-120px;width:560px;height:560px;border-radius:50%;
  background:radial-gradient(circle,rgba(198,144,53,.20),transparent 62%);filter:blur(20px)}
.hero-inner{position:relative;max-width:var(--maxw);margin:0 auto;padding:0 24px}
.eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--muted);font-weight:600;font-size:14px;
  border:1px solid var(--line2);border-radius:40px;padding:7px 15px;margin-bottom:26px}
.eyebrow .dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(59,191,99,.18)}
.hero h1{font-size:clamp(34px,5.4vw,64px);font-weight:900;margin-bottom:22px}
.lede{font-size:clamp(17px,2vw,21px);color:#cdd9d4;max-width:660px}
.lede strong{color:var(--gold-lt)}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin:32px 0 22px}
.trust{display:flex;gap:22px;flex-wrap:wrap;color:var(--muted);font-size:14px;font-weight:600}
/* 2026-09-20: a fourth tile (days of forward testing) joined the band, and a hard
   repeat(3) left it stranded alone on a second row. auto-fit lets the band be 4 across
   on a wide screen, 2x2 on a tablet and 1 on a phone, and it will absorb a fifth. */
.hero-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));
  gap:16px;margin-top:52px;max-width:1040px}
.hstat{background:linear-gradient(180deg,rgba(22,40,37,.7),rgba(17,30,28,.5));border:1px solid var(--line);
  border-radius:16px;padding:20px 22px}
.hn{font-size:clamp(26px,3.4vw,38px);font-weight:900;color:var(--green);letter-spacing:-.02em}
.hn-red{color:var(--red)}
.hl{color:var(--muted);font-size:13px;margin-top:6px}
.hero-curve{position:absolute;left:0;right:0;bottom:0;width:100%;height:120px}
.hero-curve path{fill:none;stroke:url(#g);stroke:var(--gold);stroke-width:2.5;opacity:.55;
  filter:drop-shadow(0 0 10px rgba(198,144,53,.4))}

/* story */
.story{background:linear-gradient(180deg,#0a0e0e,#0c1413)}
.story h2{font-size:clamp(26px,3.6vw,40px);max-width:820px}
.story-body{margin-top:30px;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:30px 32px;max-width:860px}
.story-body p{color:#cdd9d4}
.story-arc{list-style:none;margin-top:18px;display:grid;gap:14px;counter-reset:s}
.story-arc li{position:relative;padding-left:44px;color:var(--muted)}
.story-arc li strong{color:var(--txt)}
.story-arc li::before{counter-increment:s;content:counter(s);position:absolute;left:0;top:-2px;
  width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font-weight:800;color:#221704;
  background:linear-gradient(180deg,var(--gold-lt),var(--gold))}
.draft{position:relative}
.draft-pill{display:inline-block;background:rgba(212,88,76,.14);color:#f0a89f;border:1px solid rgba(212,88,76,.4);
  font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:4px 10px;border-radius:20px;margin-bottom:14px}
.draft-pill.sm{margin:0 0 0 8px;vertical-align:middle}

/* proof */
.proof{background:linear-gradient(180deg,#0c1413,#0a0e0e)}
.proof-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:20px;margin-top:34px}
.pcard{background:linear-gradient(160deg,rgba(18,61,58,.5),rgba(17,30,28,.65));border:1px solid var(--line2);
  border-radius:20px;padding:28px 30px;position:relative;overflow:hidden}
.pcard-h{color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.1em;font-weight:700}
.pbig{font-size:clamp(38px,5.5vw,58px);font-weight:900;color:var(--green);margin:10px 0 4px;letter-spacing:-.02em}
.pcap{color:var(--muted)}
.pcard-spark{width:100%;height:80px;margin-top:16px}
.pcard-spark path.area{fill:rgba(59,191,99,.12)}
.pcard-spark path.line{fill:none;stroke:var(--green);stroke-width:2.5}
.pmetrics{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.pmetrics .m{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px}
.pmetrics .m span{color:var(--muted);font-size:13px;text-transform:uppercase;letter-spacing:.06em;font-weight:600}
.pmetrics .m strong{display:block;font-size:30px;font-weight:900;margin:6px 0 2px}
.pmetrics .m strong.red{color:var(--red)}
.pmetrics .m small{color:var(--muted2);font-size:12px}
.proof-cta{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:30px}
.proof-note{color:var(--muted);font-size:14px}

/* strategies */
.strat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px;margin-top:32px}
.scard{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:24px;transition:.18s}
.scard:hover{border-color:var(--gold);transform:translateY(-3px)}
.scard .sidx{color:var(--gold);font-weight:800;font-size:12px;letter-spacing:.1em}
.scard h3{font-size:20px;margin:6px 0 2px}
.scard .sinstr{display:inline-block;background:rgba(198,144,53,.14);color:var(--gold-lt);font-weight:700;
  font-size:12px;padding:3px 10px;border-radius:20px;margin-bottom:16px}
.scard .srow{display:flex;justify-content:space-between;padding:8px 0;border-top:1px solid var(--line);font-size:14px}
.scard .srow span{color:var(--muted)}
.scard .srow b{font-weight:800}
.pos{color:var(--green)} .neg{color:var(--red)}
.fineprint{color:var(--muted2);font-size:12.5px;margin-top:22px;max-width:760px}

/* pricing */
.pricing{background:linear-gradient(180deg,#0a0e0e,#0c1413)}
.price-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin-top:32px}
.price.mini{border-color:rgba(212,88,76,.4);background:linear-gradient(180deg,rgba(212,88,76,.07),var(--panel))}
.price{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:28px}
.price.featured{border-color:var(--gold);background:linear-gradient(180deg,rgba(198,144,53,.09),var(--panel));position:relative}
.ptag{color:var(--muted);font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.pprice{font-size:42px;font-weight:900;margin:10px 0 6px}
.pprice span{font-size:16px;color:var(--muted);font-weight:600}
.price p{color:var(--muted);font-size:14.5px;margin-bottom:18px}

/* pledge */
.pledge-in,.founders-in{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center}
.pledge h2,.founders h2{font-size:clamp(24px,3.2vw,34px)}
.pledge p{color:var(--muted);margin-top:12px}
.checks{list-style:none;display:grid;gap:12px}
.checks li{position:relative;padding-left:30px;color:var(--muted)}
.checks li::before{content:"✓";position:absolute;left:0;color:var(--gold);font-weight:900}

/* founders */
.founders{background:linear-gradient(180deg,#0c1413,#0a0e0e)}
.signup{display:grid;gap:12px}
.signup input,.signup select{background:var(--panel);border:1px solid var(--line2);border-radius:12px;
  padding:13px 15px;color:var(--txt);font-size:15px;font-family:inherit}
.signup input:focus,.signup select:focus{outline:none;border-color:var(--gold)}
/* The Machine ID is the one field that decides whether a request can be filled at
   all - without it we have to email the customer back and lose a day. On the dark
   panel it read as just another box and got skipped (Bud, 2026-08-17: "I missed the
   1st time as NT Machine ID is hiding behind the black screen"). Light ground + a
   gold rule so it cannot be scrolled past. Deliberately the ONLY field styled this
   way: make a second one light and this one stops standing out. */
.signup input.mid-field{background:var(--cream);color:#1a1f1e;border-color:var(--gold);
  font-family:ui-monospace,Consolas,"SF Mono",monospace;letter-spacing:.04em}
.signup input.mid-field::placeholder{color:#8a938f}
.signup input.mid-field:focus{border-color:var(--gold-lt);box-shadow:0 0 0 3px rgba(198,144,53,.28)}
.mid-help{margin:6px 0 2px;font-size:11.5px;line-height:1.6;color:var(--muted)}
.mid-help b{color:var(--gold-lt)}
/* nav: Trial and Subscribe sit side by side, styled like every other tab */
.nav-ctas{display:flex;align-items:center;gap:22px}
.form-note{color:var(--green);font-size:14px;min-height:18px}

/* faq */
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:30px}
.faq details{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:6px 20px}
.faq summary{cursor:pointer;list-style:none;padding:16px 0;font-weight:700;font-size:16px;display:flex;justify-content:space-between}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--gold);font-weight:800}
.faq details[open] summary::after{content:"–"}
.faq details p{color:var(--muted);padding:0 0 16px}

/* footer */
.foot{border-top:1px solid var(--line);padding:48px 0 0;background:#080b0b}
.foot-in{display:grid;grid-template-columns:1fr 1.4fr;gap:30px;align-items:start}
.foot-brand{display:flex;gap:12px;align-items:center}
.foot-brand .brand-mark{width:48px;height:48px}
.foot-brand strong{display:block;font-size:18px}
.foot-brand span{color:var(--muted);font-size:13px}
.risk{color:var(--muted2);font-size:12.5px}
.foot-base{border-top:1px solid var(--line);margin-top:34px;padding:18px 24px;text-align:center;color:var(--muted2);font-size:12.5px}

@media(max-width:860px){
  .nav-links{display:none}
  section{padding:66px 0}
  .proof-grid,.pledge-in,.founders-in,.price-grid,.faq-grid,.foot-in{grid-template-columns:1fr}
  .hero-stats{grid-template-columns:1fr}
  .pmetrics{grid-template-columns:1fr 1fr}
}

/* ============ DESIGN PRINCIPLES ============ */
.principles{padding:96px 0;border-top:1px solid rgba(255,255,255,.06)}
.principles h2{max-width:900px}
.principles .sub{max-width:820px}
.prin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));
  gap:20px;margin-top:44px}
.prin{position:relative;background:rgba(255,255,255,.025);
  border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:28px 26px 24px}
.prin-n{font-size:12px;font-weight:800;letter-spacing:.16em;color:var(--gold);margin-bottom:12px}
.prin h3{font-size:20px;line-height:1.3;margin:0 0 12px;font-weight:750}
.prin p{font-size:15px;line-height:1.68;color:#aab4c2;margin:0 0 12px}
.prin p:last-child{margin-bottom:0}
.prin b{color:#e7ecf3;font-weight:700}
.prin-fig{border-left:2px solid rgba(200,164,92,.5);padding-left:14px;
  background:rgba(200,164,92,.045);border-radius:0 8px 8px 0;padding-top:10px;padding-bottom:10px}
.prin .pos{color:#4ade80} .prin .neg{color:#f87171}
.principles .fineprint{margin-top:34px;max-width:860px}
@media (max-width:640px){.principles{padding:64px 0}.prin{padding:24px 20px}}

/* ============ THE PORTFOLIO ============ */
.portfolio{padding:96px 0;border-top:1px solid rgba(255,255,255,.06)}
.portfolio h2{max-width:900px}
.portfolio .sub{max-width:840px}
.pf-grid-wrap{margin-top:40px;overflow-x:auto;border:1px solid rgba(255,255,255,.08);
  border-radius:16px;background:rgba(255,255,255,.025)}
.pf-table{width:100%;border-collapse:collapse;font-size:15px;min-width:660px}
.pf-table th{text-align:left;padding:15px 18px;font-size:11px;letter-spacing:.09em;
  text-transform:uppercase;color:#8a97ab;font-weight:700;
  border-bottom:1px solid rgba(255,255,255,.09);white-space:nowrap}
.pf-table td{padding:15px 18px;border-bottom:1px solid rgba(255,255,255,.05);color:#c3ccd8}
.pf-table tbody tr:last-child td{border-bottom:none}
.pf-table tr.pf-sep td{border-top:1px solid rgba(255,255,255,.11)}
.pf-table td b{color:#e7ecf3;font-weight:750}
.pf-a{color:var(--gold);font-weight:800;font-variant-numeric:tabular-nums}
.pf-table .neg{color:#f87171;font-variant-numeric:tabular-nums}
.pf-table .dim{color:#6b7688}
.fam{display:inline-block;font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px;
  border:1px solid;white-space:nowrap}
.fam-eq{color:#7cc4ff;border-color:#2c4c6b;background:rgba(62,166,255,.09)}
.fam-gd{color:#d8bd82;border-color:#6b5a2c;background:rgba(200,164,92,.09)}
.pf-rules{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:26px}
.pf-rule{border-left:2px solid var(--gold);padding:4px 0 4px 18px}
.pf-rule h4{margin:0 0 8px;font-size:16px;font-weight:750;color:#e7ecf3}
.pf-rule p{margin:0;font-size:14.5px;line-height:1.65;color:#aab4c2}
.portfolio .fineprint{margin-top:32px;max-width:860px}
@media (max-width:640px){.portfolio{padding:64px 0}}

/* evidence block inside The Portfolio */
.pf-evidence{margin-top:34px;border:1px solid rgba(255,255,255,.08);border-radius:16px;
  background:rgba(255,255,255,.025);padding:26px 26px 22px}
.pf-ev-h{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);
  font-weight:800;margin-bottom:18px}
.pf-ev-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:22px}
.pf-ev b{display:block;font-size:30px;font-weight:800;color:#e7ecf3;letter-spacing:-.5px;margin-bottom:8px}
.pf-ev span{display:block;font-size:14px;line-height:1.62;color:#aab4c2}
.pf-ev-note{margin:22px 0 0;font-size:14px;line-height:1.65;color:#8a97ab;
  border-top:1px solid rgba(255,255,255,.07);padding-top:16px}
.pf-constraint{margin-top:26px;max-width:900px;font-size:15px;line-height:1.7;color:#c3ccd8;
  border-left:2px solid var(--gold);padding:12px 0 12px 18px;background:rgba(200,164,92,.045);
  border-radius:0 8px 8px 0}
.pf-constraint b{color:#e7ecf3}

/* ============ OPEN CHALLENGES ============ */
.challenges{padding:96px 0;border-top:1px solid rgba(255,255,255,.06)}
.challenges h2{max-width:920px}
.challenges .sub{max-width:860px}
.ch-list{margin-top:46px;display:flex;flex-direction:column;gap:18px}
.ch{display:flex;gap:24px;border:1px solid rgba(255,255,255,.08);border-radius:16px;
  background:rgba(255,255,255,.025);padding:28px 28px 24px}
.ch-n{flex:0 0 auto;font-size:34px;font-weight:800;color:rgba(200,164,92,.32);
  line-height:1;font-variant-numeric:tabular-nums}
.ch-body{flex:1;min-width:0}
.ch-body h3{margin:0 0 12px;font-size:21px;font-weight:750;line-height:1.3;color:#e7ecf3}
.ch-body p{margin:0 0 13px;font-size:15px;line-height:1.7;color:#aab4c2}
.ch-body b{color:#e7ecf3;font-weight:700}
.ch-ask{border-left:2px solid var(--gold);padding:10px 0 10px 16px;background:rgba(200,164,92,.05);
  border-radius:0 8px 8px 0;color:#c9d2de !important}
.ch-src{font-size:13px !important;color:#7d8899 !important;margin-bottom:0 !important;
  padding-top:10px;border-top:1px solid rgba(255,255,255,.06)}
.ch-src a{color:#7cc4ff}
.ch-open{margin-top:34px;border:1px dashed rgba(255,255,255,.14);border-radius:16px;padding:26px 28px}
.ch-open-h{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);
  font-weight:800;margin-bottom:16px}
.ch-open ul{margin:0;padding-left:20px}
.ch-open li{font-size:14.5px;line-height:1.7;color:#aab4c2;margin-bottom:12px}
.ch-open li:last-child{margin-bottom:0}
.ch-open b{color:#e7ecf3}
@media (max-width:640px){.challenges{padding:64px 0}.ch{flex-direction:column;gap:10px;padding:24px 20px}
  .ch-n{font-size:26px}}

/* ============ START HERE / COOKBOOK ============ */
.start{padding:90px 0;border-top:1px solid rgba(255,255,255,.06)}
.start h2{max-width:900px}
.start .sub{max-width:860px}
.warn-box{margin-top:34px;border:1px solid #7f2d2d;background:rgba(248,113,113,.07);
  border-radius:14px;padding:22px 24px}
.warn-tag{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.1em;
  text-transform:uppercase;background:#f87171;color:#2a0d0d;padding:5px 11px;
  border-radius:6px;margin-bottom:12px}
.warn-box p{margin:0;font-size:15.5px;line-height:1.7;color:#dfc7c7}
.warn-box b{color:#fff}
.steps{list-style:none;margin:34px 0 0;padding:0;display:flex;flex-direction:column;gap:16px;
  counter-reset:none}
.step{display:flex;gap:22px;border:1px solid rgba(255,255,255,.08);border-radius:16px;
  background:rgba(255,255,255,.025);padding:26px 26px 22px}
.step-n{flex:0 0 76px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  color:var(--gold);padding-top:4px}
.step-body{flex:1;min-width:0}
.step-body h3{margin:0 0 12px;font-size:20px;font-weight:750;line-height:1.32;color:#e7ecf3}
.step-body p{margin:0 0 12px;font-size:15px;line-height:1.7;color:#aab4c2}
.step-body p:last-child{margin-bottom:0}
.step-body b{color:#e7ecf3;font-weight:700}
.step-why{border-left:2px solid rgba(200,164,92,.5);padding:8px 0 8px 15px;
  background:rgba(200,164,92,.045);border-radius:0 8px 8px 0}
.step-do{border-left:2px solid rgba(74,222,128,.5);padding:8px 0 8px 15px;
  background:rgba(74,222,128,.05);border-radius:0 8px 8px 0}
.ladder{margin-top:32px;border:1px solid rgba(255,255,255,.08);border-radius:16px;
  background:rgba(255,255,255,.025);padding:24px 26px 20px;overflow-x:auto}
.ladder-h{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);
  font-weight:800;margin-bottom:16px}
.ladder-t{width:100%;border-collapse:collapse;font-size:14.5px;min-width:620px}
.ladder-t th{text-align:left;padding:11px 14px;font-size:11px;letter-spacing:.07em;
  text-transform:uppercase;color:#8a97ab;font-weight:700;
  border-bottom:1px solid rgba(255,255,255,.09)}
.ladder-t td{padding:13px 14px;border-bottom:1px solid rgba(255,255,255,.05);color:#c3ccd8}
.ladder-t tr:last-child td{border-bottom:none}
.ladder-t .neg{color:#f87171}
.ladder-note{margin:16px 0 0;font-size:13.5px;line-height:1.65;color:#8a97ab;
  border-top:1px solid rgba(255,255,255,.07);padding-top:14px}
.ladder-note b{color:#c3ccd8}
@media (max-width:640px){.start{padding:64px 0}.step{flex-direction:column;gap:8px;padding:22px 20px}
  .step-n{flex:none}}
/* hero tiles showing a range need to breathe more than a single figure */
.hn-range{font-size:clamp(21px,3.4vw,30px) !important;letter-spacing:-.3px;line-height:1.25}
.ladder-t .ld-n{color:var(--gold);font-weight:800;font-variant-numeric:tabular-nums}
.ladder-t .ld-i{font-size:11px;color:#8a97ab;margin-left:6px}
.ladder-t .ld-num{text-align:right;font-variant-numeric:tabular-nums}
.ladder-t .pos{color:#4ade80}
.ladder-t td b{color:#e7ecf3}
.ladder-t .dim{color:#6b7688}
.cov-star{color:var(--gold);font-weight:800;font-size:.72em;margin-left:1px;cursor:help}
.cov-note{margin:14px 0 0;font-size:13px;line-height:1.6;color:#d8bd82;
  background:rgba(200,164,92,.06);border-left:2px solid rgba(200,164,92,.5);
  padding:10px 14px;border-radius:0 8px 8px 0}
.cov-note:empty{display:none}
.cov-note b{color:var(--gold)}
/* founder story */
.story-body{max-width:760px;margin-top:26px}
.story-body p{font-size:16.5px;line-height:1.78;color:#b6c0cd;margin:0 0 18px}
.story-body b{color:#e7ecf3;font-weight:650}
.story-body a{color:#7cc4ff}
.story-pull{border-left:3px solid var(--gold);padding:14px 0 14px 20px;
  background:rgba(200,164,92,.05);border-radius:0 10px 10px 0;
  font-size:18px !important;color:#e2e8f0 !important;font-weight:500}

/* ============ TYPE & RHYTHM PASS ============ */
html,body{font-family:"Inter",-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4{letter-spacing:-.022em;font-feature-settings:"ss01" 1}
h1{letter-spacing:-.032em}

/* every money/percentage figure lines up in columns */
.hn,.pbig,.kpi-v,.ld-num,.pf-table td,.ladder-t td,.srow b,.m strong,
.mc-row b,.pf-ev b,.stat-v,.ld-n,.pf-a{font-variant-numeric:tabular-nums;
  font-feature-settings:"tnum" 1}

/* alternating section grounds so 15 sections read as chapters, not a wall */
.story,.start,.principles,.challenges,.scale,.pledge{background:rgba(255,255,255,.014)}
.proof,.strategies,.portfolio,.solution,.risk,.pricing,.founders,.faq{background:transparent}
section{position:relative}
.wrap{max-width:1120px;margin:0 auto;padding:0 28px}

/* kickers become the chapter marker */
.kicker{font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;
  color:var(--gold);margin:0 0 14px;display:flex;align-items:center;gap:10px}
.kicker::before{content:"";width:26px;height:2px;background:var(--gold);opacity:.55;
  display:inline-block;flex:0 0 auto}

h2{font-size:clamp(28px,4.2vw,42px);line-height:1.14;font-weight:800;margin:0 0 14px}
.sub{font-size:17px;line-height:1.7;color:#98a3b3}

.nav-links a{position:relative}
.nav-alt{color:#7cc4ff !important}
@media (max-width:860px){.nav-links{display:none}}

/* ============ WHO THIS ISN'T FOR ============ */
.notfor{padding:90px 0;border-top:1px solid rgba(255,255,255,.06)}
.notfor h2{max-width:860px}
.notfor .sub{max-width:780px}
.nf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:16px;margin-top:38px}
.nf{display:flex;gap:16px;border:1px solid rgba(248,113,113,.22);border-radius:14px;
  background:rgba(248,113,113,.04);padding:22px 22px 20px}
.nf-x{flex:0 0 26px;height:26px;border-radius:50%;display:flex;align-items:center;
  justify-content:center;font-size:13px;font-weight:800;background:rgba(248,113,113,.16);
  color:#f87171}
.nf h4{margin:0 0 8px;font-size:16.5px;font-weight:700;color:#e7ecf3;line-height:1.35}
.nf p{margin:0;font-size:14.5px;line-height:1.65;color:#aab4c2}
.nf b{color:#e7ecf3}
.nf-yes{border-color:rgba(74,222,128,.3);background:rgba(74,222,128,.05)}
.nf-yes .nf-tick{background:rgba(74,222,128,.16);color:#4ade80}
.nf-yes h4 em{color:#4ade80;font-style:normal}
@media (max-width:640px){.notfor{padding:64px 0}}

/* ── founder story: prose, not a card ─────────────────────────────────────── */
.story-body{
  background:none !important; border:none !important; padding:0 !important;
  max-width:68ch; margin-top:30px;
}
.story-body p{
  font-size:17px; line-height:1.85; color:#b9c3d0;
  margin:0 0 1.5em !important;          /* a full blank line between paragraphs */
}
.story-body p:last-child{margin-bottom:0 !important}
/* opening paragraph carries a touch more weight */
.story-body p:first-of-type{font-size:18px;color:#cbd4e0}
.story-pull{
  margin:1.9em 0 !important; padding:18px 0 18px 22px;
  font-size:19px !important; line-height:1.7; color:#e6ecf4 !important;
  border-left:3px solid var(--gold); background:rgba(200,164,92,.05);
  border-radius:0 10px 10px 0;
}
@media (max-width:640px){
  .story-body{max-width:none}
  .story-body p{font-size:16px;line-height:1.8}
}

/* ============ PALETTE DISCIPLINE (from competitive design audit) ============
   The "crypto scam" read is not darkness — it's neon, glow, countdowns and
   round numbers. Dark is correct for this audience (Topstep, NinjaTrader,
   TradingView, Two Sigma and Man Group are all dark). What has to change is
   the gold: brass, not bullion, and used for STRUCTURE only. P&L direction
   gets muted red/green, because traders read those as data, not decoration. */
:root{
  --gold:#c8a45c;          /* was var(--gold) — brass, not metallic yellow */
  --gold-dim:rgba(200,164,92,.42);
  --hair:rgba(255,255,255,.08);
  --body-ink:#c9d1d9;      /* body text: never pure white on near-black */
}
.kicker,.kicker::before,.pf-a,.ld-n,.step-n,.ch-n,.pf-ev-h,.ladder-h,.cov-star,
.warn-tag,.prin-n{color:var(--gold)}
.kicker::before{background:var(--gold)}
.cov-note{color:#d8bd82;background:rgba(200,164,92,.06);border-left-color:var(--gold-dim)}
.prin-fig,.ch-ask,.step-why,.pf-constraint,.story-pull{border-left-color:var(--gold-dim);
  background:rgba(200,164,92,.045)}
.pf-rule{border-left-color:var(--gold)}
.story-body p,.ch-body p,.prin p,.step-body p,.nf p{color:var(--body-ink)}

/* elevation by hairline, never by shadow — shadows are invisible on dark and
   end up faked with glow, which is the actual tell */
.prin,.ch,.step,.nf,.kpi,.pf-grid-wrap,.ladder,.pf-evidence,.ch-open{
  box-shadow:none !important;border-color:var(--hair) !important}

/* ── under-design the data (Numerai principle: an export, not a dashboard) ── */
.pf-table,.ladder-t{border-collapse:collapse}
.pf-table th,.ladder-t th{font-size:11px;letter-spacing:.085em;text-transform:uppercase;
  color:#7d8899;font-weight:700;border-bottom:1px solid var(--hair);padding:13px 16px}
.pf-table td,.ladder-t td{padding:15px 16px;border-bottom:1px solid rgba(255,255,255,.05)}
.pf-grid-wrap,.ladder{background:transparent !important;border-radius:10px}

/* every figure on the page lines up */
.pf-table td,.ladder-t td,.kpi-v,.hn,.pbig,.nf b,.pf-ev b{
  font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}

/* ── cost decomposition + worst-case stats ────────────────────────────────── */
.costs,.worst{margin-top:34px;border-top:1px solid var(--hair);padding-top:26px}
.costs-h{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);
  font-weight:800;margin-bottom:10px}
.costs-lede{font-size:14.5px;line-height:1.65;color:#8a97ab;max-width:720px;margin:0 0 20px}
.costs-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1px;
  background:var(--hair);border:1px solid var(--hair);border-radius:10px;overflow:hidden}
.cost{background:#0d1219;padding:18px 20px}
.cost b{display:block;font-size:26px;font-weight:800;color:#e7ecf3;
  font-variant-numeric:tabular-nums;letter-spacing:-.4px}
.cost span{display:block;font-size:12px;line-height:1.5;color:#7d8899;margin-top:6px}
.cost.neg b{color:#e08585}
.cost.tot{background:#11181f}.cost.tot b{color:#4ade80}
.costs-note{font-size:13px;line-height:1.7;color:#7d8899;margin:14px 0 0;max-width:780px}
.worst-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.wcard{border:1px solid var(--hair);border-radius:10px;padding:16px 18px}
.wname{font-weight:750;color:#e7ecf3;font-size:15px;margin-bottom:12px}
.wname span{font-size:10px;font-weight:700;color:#0c0f14;background:var(--gold);
  padding:2px 7px;border-radius:20px;margin-left:8px;vertical-align:2px}
.wrow{display:flex;justify-content:space-between;align-items:baseline;gap:10px;
  font-size:13px;color:#8a97ab;padding:5px 0}
.wrow b{color:#e7ecf3;font-variant-numeric:tabular-nums}
.wrow b.neg{color:#e08585}
.wrow em{font-style:normal;font-size:11px;color:#6b7688;flex:0 0 auto}

/* ── live strip ───────────────────────────────────────────────────────────── */
.livestrip{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:26px;
  padding:13px 18px;border:1px solid var(--hair);border-radius:999px;
  background:rgba(255,255,255,.03);text-decoration:none;max-width:max-content;
  transition:border-color .15s,background .15s}
.livestrip:hover{border-color:var(--gold);background:rgba(200,164,92,.06)}
.ls-dot{width:7px;height:7px;border-radius:50%;background:#4ade80;flex:0 0 auto;
  box-shadow:0 0 0 3px rgba(74,222,128,.16)}
.ls-lbl{font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:var(--gold)}
.ls-items{font-size:13.5px;color:#9aa6b6;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ls-items b{color:#e7ecf3;font-variant-numeric:tabular-nums;font-weight:750}
.ls-items b.pos{color:#4ade80}.ls-items b.neg{color:#e08585}
.ls-items i{width:1px;height:12px;background:var(--hair);display:inline-block}
.ls-as{color:#6b7688;font-size:12px}
.ls-go{font-size:12.5px;color:var(--gold);font-weight:700}
@media (max-width:640px){.livestrip{border-radius:12px}}

/* ── as-of stamps under every data block ──────────────────────────────────── */
.stamp{font-size:11.5px;letter-spacing:.03em;color:#6b7688;margin:14px 0 0;
  font-variant-numeric:tabular-nums}
.stamp:empty{display:none}

/* ═══════════════════════════════════════════════════════════════════════════
   DESIGN SYSTEM — one scale, one motif, repeated at every size.
   The Stripe lesson: craft doesn't come from any single element, it comes from
   one geometric idea recurring everywhere. Ours is the HAIRLINE + a 3px brass
   rule. It marks section heads, data blocks, quotes and active states — and
   nothing else does.
   ═══════════════════════════════════════════════════════════════════════════ */
:root{
  --s1:8px; --s2:16px; --s3:24px; --s4:32px; --s5:48px; --s6:64px; --s7:96px; --s8:128px;
  --measure:68ch;
  --rule:3px solid var(--gold);
}

/* one vertical rhythm for every section */
section{padding:var(--s7) 0}
@media (max-width:860px){section{padding:var(--s6) 0}}
@media (max-width:560px){section{padding:var(--s5) 0}}
.wrap{max-width:1180px;margin:0 auto;padding:0 var(--s4)}
@media (max-width:560px){.wrap{padding:0 20px}}

/* section head: the motif, used identically everywhere */
.kicker{margin-bottom:var(--s2)}
h2{margin-bottom:var(--s2);max-width:22ch}
h2 + .sub,.sub{margin-bottom:0;max-width:var(--measure)}
.sub + *{margin-top:var(--s5)}

/* data blocks all share the same left-rule motif */
.prin-fig,.ch-ask,.step-why,.pf-constraint,.story-pull,.cov-note{
  border-left:var(--rule);border-radius:0 8px 8px 0}
.step-do{border-left:3px solid rgba(74,222,128,.55)}
.pf-rule{border-left:var(--rule)}

/* hairline is the only divider on the page */
hr,.divider{border:0;height:1px;background:var(--hair);margin:var(--s6) 0}

/* ═══ MOBILE NAV — was simply hidden, which is a defect ══════════════════ */
.navtoggle{display:none;background:none;border:1px solid var(--hair);border-radius:9px;
  width:42px;height:42px;cursor:pointer;position:relative;flex:0 0 auto}
.navtoggle span,.navtoggle span::before,.navtoggle span::after{
  content:"";position:absolute;left:11px;width:20px;height:1.5px;background:#e7ecf3;
  transition:transform .22s,opacity .22s}
.navtoggle span{top:20px}
.navtoggle span::before{top:-6px;left:0}
.navtoggle span::after{top:6px;left:0}
.navtoggle[aria-expanded="true"] span{transform:rotate(45deg)}
.navtoggle[aria-expanded="true"] span::before{opacity:0}
.navtoggle[aria-expanded="true"] span::after{transform:rotate(-90deg) translateX(-6px)}

@media (max-width:860px){
  .navtoggle{display:block}
  .nav-links{display:flex !important;position:fixed;inset:64px 0 auto 0;
    flex-direction:column;gap:0;background:#0b0f14;border-bottom:1px solid var(--hair);
    padding:var(--s2) 0 var(--s3);transform:translateY(-140%);
    transition:transform .28s cubic-bezier(.4,0,.2,1);z-index:60;max-height:calc(100vh - 64px);
    overflow-y:auto}
  .nav-links.open{transform:translateY(0)}
  .nav-links a{padding:15px var(--s4);border-bottom:1px solid rgba(255,255,255,.04);
    font-size:16px}
  .nav-cta{display:none}
  .nav-ctas{display:none}
}

/* hero stat band — magnitude / risk / duration / structure */
.hero-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:1px;margin-top:var(--s5);background:var(--hair);
  border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.hstat{background:var(--ink);padding:var(--s3) var(--s3) var(--s3) 0}
.hstat:first-child{padding-left:0}
.hn{font-size:clamp(28px,3.6vw,40px);font-weight:800;letter-spacing:-.03em;line-height:1;
  color:#f2f5f9;font-variant-numeric:tabular-nums}
.hn-red{color:#e08585}
.hl{font-size:12.5px;line-height:1.5;color:#8a97ab;margin-top:10px;font-weight:600}
.hl em{display:block;font-style:normal;font-weight:400;font-size:11.5px;color:#66717f;margin-top:3px}
@media (max-width:640px){.hstat{padding:var(--s3) var(--s2) var(--s3) 0}}

/* ── lot-sizing evidence table ────────────────────────────────────────────── */
.sizetbl{margin:var(--s4) 0 var(--s3);border-top:1px solid var(--hair);padding-top:var(--s3)}
.stbl-wrap{overflow-x:auto}
.stbl{width:100%;border-collapse:collapse;font-size:13.5px;min-width:600px}
.stbl th{text-align:left;font-size:11px;letter-spacing:.085em;text-transform:uppercase;
  color:#7d8899;font-weight:700;padding:11px 14px;border-bottom:1px solid var(--hair)}
.stbl td{padding:11px 14px;color:#c3ccd8;font-variant-numeric:tabular-nums;
  border-bottom:1px solid rgba(255,255,255,.04)}
.stbl tr.stfirst td{border-top:1px solid var(--hair)}
.stbl td b{color:#e7ecf3;display:block}
.stbl td span{font-size:10px;font-weight:700;color:#0c0f14;background:var(--gold);
  padding:1px 7px;border-radius:20px;display:inline-block;margin-top:5px}
.stlots{color:#8a97ab}
.stbl .neg{color:#e08585}
.stp{font-weight:750}
.stp.ok{color:#4ade80}.stp.warn{color:#e0a760}.stp.bad{color:#e08585}
.stlab{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:700}
.stlab.ok{color:#4ade80}.stlab.warn{color:#e0a760}.stlab.bad{color:#e08585}

/* ── stress tests ─────────────────────────────────────────────────────────── */
.robust{background:rgba(255,255,255,.014)}
.rb-pick{margin-bottom:var(--s4)}
.rb-trip{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1px;
  background:var(--hair);border:1px solid var(--hair);border-radius:12px;overflow:hidden}
.rbcard{background:#0d1219;padding:var(--s3)}
.rb-med{background:#101820}
.rbh{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#8a97ab}
.rbh span{display:block;font-size:11px;letter-spacing:0;text-transform:none;font-weight:500;
  color:#66717f;margin-top:3px}
.rbn{font-size:32px;font-weight:800;letter-spacing:-.03em;margin-top:14px;
  font-variant-numeric:tabular-nums}
.rbn.pos{color:#4ade80}.rbn.neg{color:#e08585}
.rbl{font-size:11.5px;color:#66717f;margin-top:4px}
.rbd{margin-top:16px;padding-top:14px;border-top:1px solid var(--hair);font-size:17px;
  font-weight:700;color:#e08585;font-variant-numeric:tabular-nums}
.rbd span{display:block;font-size:11.5px;font-weight:400;color:#66717f;margin-top:3px}
.rb-bad .rbh{color:#e0a760}
.rb-note{font-size:14px;line-height:1.7;color:#8a97ab;margin:var(--s3) 0 var(--s5);max-width:var(--measure)}
.rb-note b{color:#e7ecf3}
.rb-batt{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}
.rbt{display:flex;gap:14px;border:1px solid var(--hair);border-radius:12px;padding:20px 22px}
.rbt-i{flex:0 0 26px;height:26px;border-radius:50%;display:flex;align-items:center;
  justify-content:center;font-size:14px;font-weight:800}
.rbt.ok .rbt-i{background:rgba(74,222,128,.14);color:#4ade80}
.rbt.no .rbt-i{background:rgba(224,167,96,.16);color:#e0a760}
.rbt h4{margin:0 0 6px;font-size:16px;font-weight:750;color:#e7ecf3}
.rbt-q{margin:0 0 8px;font-size:13.5px;line-height:1.6;color:#8a97ab;font-style:italic}
.rbt-r{margin:0;font-size:14px;line-height:1.55;color:#c9d1d9;font-variant-numeric:tabular-nums}

/* ── account allocator ────────────────────────────────────────────────────── */
.alloc{background:rgba(255,255,255,.014)}
.al-ctrls{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;
  margin-bottom:var(--s4)}
.al-ctrls input,.al-ctrls select{background:#131a24;color:#e7ecf3;border:1px solid var(--hair);
  border-radius:10px;padding:11px 14px;font-size:14px;font-family:inherit;width:100%}
.al-ctrls input:focus,.al-ctrls select:focus{outline:none;border-color:var(--gold)}
.al-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:1px;
  background:var(--hair);border:1px solid var(--hair);border-radius:12px;overflow:hidden}
.alc{background:#0d1219;padding:var(--s3) 20px}
.alc b{display:block;font-size:30px;font-weight:800;color:#f2f5f9;letter-spacing:-.03em;
  font-variant-numeric:tabular-nums}
.alc b.pos{color:#4ade80}.alc b.neg{color:#e08585}.alc b.warn{color:#e0a760}
.alc span{display:block;font-size:11.5px;line-height:1.5;color:#7d8899;margin-top:8px}
.alc-key{background:#111a16;box-shadow:inset 3px 0 0 var(--gold)}
.al-warn{margin-top:16px;border:1px solid rgba(224,167,96,.32);background:rgba(224,167,96,.07);
  border-radius:12px;padding:16px 20px;font-size:14.5px;line-height:1.65;color:#e6d3b4}
.al-warn b{color:#f0dcb8}
.al-tblwrap{overflow-x:auto;margin-top:var(--s3)}
.al-tbl{width:100%;border-collapse:collapse;font-size:13.5px;min-width:620px}
.al-tbl th{text-align:left;font-size:11px;letter-spacing:.085em;text-transform:uppercase;
  color:#7d8899;font-weight:700;padding:12px 14px;border-bottom:1px solid var(--hair)}
.al-tbl td{padding:13px 14px;border-bottom:1px solid rgba(255,255,255,.04);color:#c3ccd8;
  font-variant-numeric:tabular-nums}
.al-tbl td b{color:#e7ecf3}
.al-i{font-size:10px;font-weight:700;color:#0c0f14;background:var(--gold);padding:1px 7px;
  border-radius:20px;margin-left:8px}
.al-tbl .pos{color:#4ade80}.al-tbl .warn{color:#e0a760}.al-tbl .neg{color:#e08585}
.al-foot{font-size:12.5px;line-height:1.7;color:#6b7688;margin-top:var(--s3);max-width:78ch}
.costs-note.caveat{border-left:var(--rule);padding:13px 0 13px 17px;margin-top:14px;
  background:rgba(200,164,92,.05);border-radius:0 8px 8px 0;color:#bfae8e}
.costs-note.caveat b{color:#e6d3b4}
.stlab{color:#7d8899;font-weight:600;text-transform:none;letter-spacing:0;font-size:12.5px}
.al-note{margin-top:16px;border:1px solid var(--hair);background:rgba(255,255,255,.03);
  border-left:var(--rule);border-radius:0 12px 12px 0;padding:16px 20px;
  font-size:14.5px;line-height:1.7;color:#c3ccd8}
.al-note b{color:#e7ecf3}

/* ── what it actually pays ────────────────────────────────────────────────── */
.econ{background:rgba(255,255,255,.014)}
.econ-lead{margin-top:var(--s2)}
.ec-hero{display:grid;grid-template-columns:minmax(260px,1fr) 2fr;gap:1px;
  background:var(--hair);border:1px solid var(--hair);border-radius:14px;overflow:hidden}
.ec-big{background:#101a15;padding:var(--s4) var(--s3);display:flex;flex-direction:column;
  justify-content:center}
.ec-big b{font-size:clamp(38px,5.4vw,56px);font-weight:800;color:#4ade80;line-height:1;
  letter-spacing:-.035em;font-variant-numeric:tabular-nums}
.ec-big span{font-size:14.5px;line-height:1.6;color:#9aa6b6;margin-top:12px}
.ec-big span b{font-size:inherit;color:#e7ecf3;font-weight:700}
.ec-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;
  background:var(--hair)}
.ec-split > div{background:#0d1219;padding:var(--s3) 20px}
.ec-split b{display:block;font-size:26px;font-weight:800;color:#f2f5f9;letter-spacing:-.03em;
  font-variant-numeric:tabular-nums}
.ec-split span{display:block;font-size:12px;line-height:1.55;color:#7d8899;margin-top:8px}
.econ-tbl-wrap{overflow-x:auto;margin-top:var(--s4)}
.econ-tbl{width:100%;border-collapse:collapse;font-size:14px;min-width:640px}
.econ-tbl th{text-align:left;font-size:11px;letter-spacing:.085em;text-transform:uppercase;
  color:#7d8899;font-weight:700;padding:12px 14px;border-bottom:1px solid var(--hair)}
.econ-tbl td{padding:14px;border-bottom:1px solid rgba(255,255,255,.04);color:#c3ccd8;
  font-variant-numeric:tabular-nums}
.econ-tbl td b{color:#e7ecf3}
.econ-tbl .pos{color:#4ade80}
.ec-i{font-size:10px;font-weight:700;color:#0c0f14;background:var(--gold);padding:1px 7px;
  border-radius:20px;margin-left:8px}
/* totals row: the point of the table, so it reads as a conclusion not a 7th engine */
.econ-tbl .ec-total td{border-top:2px solid rgba(200,164,92,.55);border-bottom:none;
  padding-top:17px;padding-bottom:17px;background:rgba(200,164,92,.055);font-size:15px}
.econ-tbl .ec-total td b{color:var(--gold-lt,#e2c489);font-size:15px}
.econ-tbl .ec-total .pos{font-weight:800}
.econ-tbl .ec-total .ec-i{background:transparent;color:#8b95a6;padding:1px 0;margin-left:10px;
  font-weight:600;text-transform:none;letter-spacing:.02em}
.econ-tbl .ec-na{color:#5c6677}
.econ-note{font-size:12.5px;line-height:1.7;color:#6b7688;margin-top:var(--s3);max-width:80ch}

/* ── month-by-month matrix ────────────────────────────────────────────────── */
.mgrid-block{margin-top:var(--s6)}
.mgrid-h{font-size:clamp(20px,2.4vw,27px);font-weight:800;letter-spacing:-.02em;color:#e7ecf3;margin:0 0 8px}
.mgrid-sub{font-size:14.5px;line-height:1.75;color:#98a3b3;max-width:76ch;margin:0 0 var(--s3)}
.mgrid-sub b{color:#cfd7e2}
.mgrid-scroll{overflow-x:auto;border:1px solid var(--hair);border-radius:14px;background:rgba(255,255,255,.012);
  -webkit-overflow-scrolling:touch}
.mgrid{border-collapse:separate;border-spacing:0;width:100%;min-width:900px;
  font-size:12.5px;font-variant-numeric:tabular-nums}
.mgrid th,.mgrid td{padding:9px 10px;text-align:right;white-space:nowrap}
.mgrid thead th{position:sticky;top:0;z-index:2;background:#11161d;color:#7d8899;font-weight:700;
  font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--hair)}
.mgrid thead th i{font-style:normal;color:#5a6373;margin-left:2px}
/* engine column pinned so the row label survives horizontal scroll */
.mgrid .mg-name{position:sticky;left:0;z-index:3;text-align:left;background:#0e1319;
  color:#e7ecf3;font-weight:700;border-right:1px solid var(--hair);min-width:132px}
.mgrid thead .mg-name{z-index:4}
.mgrid .mg-i{display:block;font-size:9.5px;font-weight:600;color:#6f7a8a;letter-spacing:.05em;margin-top:2px}
.mgrid tbody td{border-bottom:1px solid rgba(255,255,255,.035);color:#aab4c2}
.mgrid tbody td.pos{color:#d3f5e0}
.mgrid tbody td.neg{color:#ffd9d9}
.mgrid .mg-none{color:#3b434f;background:repeating-linear-gradient(-45deg,transparent 0 5px,rgba(255,255,255,.022) 5px 10px)}
.mgrid .mg-tot{background:rgba(200,164,92,.07);color:var(--gold-lt,#e2c489);font-weight:800;
  border-left:1px solid rgba(200,164,92,.28)}
.mgrid thead .mg-tot{color:#b9975a}
.mgrid .mg-sum td,.mgrid .mg-sum th{border-top:2px solid rgba(200,164,92,.5);border-bottom:none;
  font-weight:800;font-size:13px;padding-top:12px;padding-bottom:12px;background:rgba(200,164,92,.055)}
.mgrid .mg-sum .mg-name{background:#141a21}
.mgrid .mg-sum td.pos{color:#5ee89b}
.mgrid .mg-sum td.neg{color:#ff8f8f}
.mgrid-legend{font-size:12.5px;line-height:1.75;color:#6b7688;margin-top:var(--s2);max-width:84ch}
.mgrid-legend b{color:#c3ccd8}
.mgrid-legend b.neg{color:#f08a8a}
@media (max-width:760px){.ec-hero{grid-template-columns:1fr}}

/* ── compliance: inline hypothetical notice + full legend ─────────────────── */
.hypo{font-size:11.5px;line-height:1.65;color:#7d8899;margin:16px 0 0;max-width:82ch;
  border-left:2px solid rgba(255,255,255,.12);padding-left:14px}
.hypo a{color:#8a97ab;text-decoration:underline}
.disclosures{border-top:1px solid var(--hair)}
.legend-box{margin-top:var(--s4);border:1px solid var(--hair);border-radius:14px;
  padding:var(--s4);background:rgba(255,255,255,.02);max-width:88ch}
.legend-box p{font-size:13.5px;line-height:1.75;color:#98a3b3;margin:0 0 16px}
.legend-box p:last-child{margin-bottom:0}
.legend-box b{color:#c9d1d9;font-weight:600}
.legend-box p:first-child b{display:block;font-size:12.5px;letter-spacing:.02em;color:#c3ccd8}
.legend-box .tm{border-top:1px solid var(--hair);padding-top:16px;font-size:12.5px;color:#7d8899}

/* ── mandated disclosures: adjacent, never behind a link ──────────────────── */
.hypo-block{margin:var(--s3) 0 0;border:1px solid var(--hair);border-radius:10px;
  padding:16px 18px;background:rgba(255,255,255,.02);max-width:88ch}
.hypo-lab{margin:0 0 10px;font-size:11px;letter-spacing:.1em;font-weight:800;color:#e0a760}
.hypo-legend{margin:0 0 12px;font-size:11px;line-height:1.7;color:#8a97ab;letter-spacing:.01em}
.hypo-assume{margin:0;font-size:11.5px;line-height:1.7;color:#8a97ab;
  border-top:1px solid var(--hair);padding-top:11px}
.nolive{max-width:1120px;margin:14px auto 0;padding:0 28px;font-size:14px;line-height:1.7;color:#c3ccd8}
.nolive b{color:#e7ecf3}
.site-legal{border-top:1px solid var(--hair);padding:var(--s5) 0;margin-top:var(--s6)}
.legal-risk{font-size:13.5px;line-height:1.75;color:#98a3b3;margin:0 0 16px;max-width:92ch}
.legal-risk b{color:#c9d1d9}
.legal-tm{font-size:13px;line-height:1.7;color:#7d8899;margin:0;max-width:92ch}

/* ── platform / data page ─────────────────────────────────────────────────── */
.plat-hero{padding:var(--s7) 0 var(--s5)}
.plat-h1{font-size:clamp(30px,4.6vw,46px);line-height:1.14;font-weight:800;
  letter-spacing:-.03em;margin:0 0 var(--s2);max-width:20ch}
.plat{padding:var(--s5) 0}
.plat-row{display:grid;grid-template-columns:minmax(200px,300px) 1fr;gap:var(--s5);
  align-items:start;padding:var(--s5) 0;border-top:1px solid var(--hair)}
.plat-row.reverse{direction:rtl}
.plat-row.reverse > *{direction:ltr}
.plat-media img{width:100%;max-width:260px;height:auto;display:block;
  background:rgba(255,255,255,.04);border:1px solid var(--hair);border-radius:12px;padding:22px}
.plat-media.missing img{display:none}
.plat-media.missing .asset-todo{display:block}
.asset-todo{display:none;font-size:12px;line-height:1.6;color:#e0a760;margin:10px 0 0;
  border:1px dashed rgba(224,167,96,.4);border-radius:8px;padding:10px 12px;background:rgba(224,167,96,.05)}
.asset-todo.big{display:block;max-width:70ch;margin-top:var(--s3)}
.asset-todo code{background:rgba(0,0,0,.35);padding:1px 6px;border-radius:4px}
.plat-copy h2{font-size:clamp(21px,2.6vw,27px);margin:0 0 14px;max-width:26ch}
.plat-copy p{font-size:15.5px;line-height:1.75;color:var(--body-ink);margin:0 0 14px;max-width:66ch}
.plat-list{margin:0 0 16px;padding-left:20px;max-width:66ch}
.plat-list li{font-size:15px;line-height:1.72;color:var(--body-ink);margin-bottom:11px}
.plat-list b{color:#e7ecf3}
.plat-cta a{color:var(--gold);font-weight:700;font-size:15px;text-decoration:none}
.plat-cta a:hover{text-decoration:underline}
.shot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;
  margin-top:var(--s4)}
.shot{margin:0;border:1px solid var(--hair);border-radius:12px;overflow:hidden;
  background:rgba(255,255,255,.02)}
.shot img{width:100%;display:block}
.shot.missing{min-height:170px;display:flex;align-items:center;justify-content:center;
  border-style:dashed}
.shot.missing img{display:none}
.shot figcaption{font-size:12.5px;line-height:1.6;color:#8a97ab;padding:13px 15px;
  border-top:1px solid var(--hair)}
.shot.missing figcaption{border:0}
@media (max-width:760px){.plat-row{grid-template-columns:1fr;gap:var(--s3)}
  .plat-row.reverse{direction:ltr}}

/* ── "what a big number actually costs" ───────────────────────────────────── */
.bignum{padding:var(--s7) 0;border-top:1px solid var(--hair);
  background:radial-gradient(1200px 500px at 50% -10%,rgba(200,164,92,.05),transparent 70%)}
.bn-picker{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:var(--s4) 0 var(--s5)}
.bn-plabel{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
  color:#7d8899;margin-right:4px}
.bn-picker button{background:rgba(255,255,255,.03);border:1px solid var(--hair);color:#aab4c2;
  border-radius:11px;padding:10px 16px;font:inherit;font-size:15px;font-weight:800;cursor:pointer;
  display:flex;align-items:baseline;gap:7px;transition:.16s}
.bn-picker button i{font-style:normal;font-size:10.5px;font-weight:600;color:#6f7a8a;letter-spacing:.04em}
.bn-picker button:hover{border-color:rgba(200,164,92,.42);color:#e7ecf3}
.bn-picker button.on{background:linear-gradient(180deg,rgba(200,164,92,.17),rgba(200,164,92,.06));
  border-color:rgba(200,164,92,.62);color:var(--gold-lt,#e2c489)}
.bn-picker button.on i{color:#b9975a}

.bn-routes{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:start}
.bn-card{border:1px solid var(--hair);border-radius:18px;padding:24px 22px 22px;
  background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,.008));
  display:flex;flex-direction:column;height:100%}
.bn-card h3{font-size:19px;font-weight:800;letter-spacing:-.015em;color:#e7ecf3;margin:0 0 9px}
.bn-lede{font-size:13.5px;line-height:1.7;color:#8c97a7;margin:0 0 18px}
.bn-tag{font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin-bottom:13px}
.bn-bad  {border-color:rgba(248,113,113,.34)}
.bn-warn {border-color:rgba(234,179,8,.34)}
.bn-good {border-color:rgba(74,222,128,.40);
  background:linear-gradient(180deg,rgba(74,222,128,.055),rgba(255,255,255,.008))}
.bn-bad .bn-tag{color:#f87171} .bn-warn .bn-tag{color:#eab308} .bn-good .bn-tag{color:#4ade80}

.bn-facts{margin:0 0 18px;display:flex;flex-direction:column;gap:0}
.bn-facts>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;
  padding:10px 0;border-bottom:1px solid rgba(255,255,255,.05)}
.bn-facts>div:last-child{border-bottom:none}
.bn-facts dt{font-size:12.5px;color:#7d8899;margin:0}
.bn-facts dd{margin:0;font-size:15px;font-weight:800;color:#e7ecf3;text-align:right;
  font-variant-numeric:tabular-nums;white-space:nowrap}
.bn-facts .bad dd{color:#f87171}
.bn-facts .ok  dd{color:#4ade80}
.bn-verdict{font-size:13px;line-height:1.75;color:#8c97a7;margin:auto 0 0;
  padding-top:16px;border-top:1px solid var(--hair)}
.bn-verdict b{color:#cfd7e2}
.bn-verdict b.x{color:#f87171} .bn-verdict b.warn{color:#eab308} .bn-verdict b.ok{color:#4ade80}
.bn-verdict a{color:var(--gold-lt,#e2c489);text-decoration:underline;text-underline-offset:2px}
.bn-note{font-size:12.5px;line-height:1.75;color:#6b7688;margin-top:var(--s4);max-width:88ch}

@media (max-width:1000px){.bn-routes{grid-template-columns:1fr}}

/* ── scale grid: the account cards were reading as one dense block ────────── */
.acct-grid{grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:20px;margin-top:22px}
.acct{position:relative;padding:20px 18px 18px 21px;overflow:hidden}
/* gold rail down the left edge -- the separator between one account and the next */
.acct::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(180deg,var(--gold),rgba(200,164,92,.15))}
.acct-top{padding-bottom:12px;margin-bottom:14px;border-bottom:1px solid var(--line)}
.acct-name{letter-spacing:.01em}
/* the engine chip is the point of the card -- give it room to breathe */
.acct-strats{margin:0 0 16px;min-height:0}
.acct .mix{font-size:12px;padding:5px 11px;background:rgba(200,164,92,.10);
  border-color:rgba(200,164,92,.32);color:var(--gold-lt,#e2c489)}
.acct-net{margin-top:16px;padding-top:13px}
@media(max-width:900px){.acct-grid{grid-template-columns:1fr;gap:16px}}

/* ── why multiple FIRMS (not just accounts) ───────────────────────────────── */
.firms{padding:var(--s7) 0;border-top:1px solid var(--hair)}
.fr-plain{max-width:74ch;margin-top:var(--s4)}
.fr-plain p{font-size:16px;line-height:1.82;color:#a7b1c0;margin:0 0 16px}
.fr-plain b{color:#e7ecf3;font-weight:700}
.fr-punch{font-size:clamp(19px,2.1vw,24px)!important;font-weight:800;letter-spacing:-.015em;
  color:var(--gold-lt,#e2c489)!important;line-height:1.45!important;
  border-left:3px solid var(--gold);padding:4px 0 4px 18px;margin:22px 0 20px!important}


.fr-rule{margin-top:var(--s5);border:1px solid rgba(200,164,92,.4);border-radius:18px;
  padding:28px 28px 24px;background:linear-gradient(180deg,rgba(200,164,92,.075),rgba(255,255,255,.008))}
.fr-rule-k{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold-lt,#e2c489);margin-bottom:18px}
.fr-rule ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:15px}
.fr-rule li{font-size:15px;line-height:1.75;color:#9aa5b4;padding-left:22px;position:relative}
.fr-rule li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:8px;
  border-radius:50%;background:var(--gold)}
.fr-rule li b{color:#e7ecf3;font-weight:800}
.fr-rule-tie{font-size:14px;line-height:1.8;color:#8c97a7;margin:22px 0 0;padding-top:19px;
  border-top:1px solid rgba(200,164,92,.25)}
.fr-rule-tie b{color:#cfd7e2}

@media (max-width:860px){.fr-ladder{grid-template-columns:1fr}}

/* ── hedging compliance: measured conflicts + compliant layouts ───────────── */
.fr-conflict{margin-top:var(--s5)}
.fr-c-h{font-size:14px;line-height:1.7;color:#98a3b3;max-width:70ch;margin-bottom:14px}
.fr-c-h b{color:#e7ecf3}
.fr-c-scroll{overflow-x:auto;border:1px solid var(--hair);border-radius:14px}
.fr-c-tbl{width:100%;border-collapse:collapse;font-size:13.5px;min-width:600px}
.fr-c-tbl th{text-align:left;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;
  color:#7d8899;font-weight:700;padding:12px 16px;border-bottom:1px solid var(--hair);background:#11161d}
.fr-c-tbl td{padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.04);color:#aab4c2;vertical-align:top}
.fr-c-tbl tr:last-child td{border-bottom:none}
.fr-c-tbl td b{color:#e7ecf3;font-weight:700}
.fr-c-tbl td i{font-style:normal;color:#6f7a8a;margin:0 3px}
.fr-c-tbl .fr-num{font-variant-numeric:tabular-nums;font-weight:800;color:#f0a1a1;white-space:nowrap}
.fr-ins{display:block;font-size:10.5px;color:#6f7a8a;letter-spacing:.05em;margin-top:3px}
.fr-c-tbl .fr-worst td{background:rgba(248,113,113,.075)}
.fr-c-tbl .fr-worst .fr-num{color:#ff8f8f}
.fr-flag{display:inline-block;font-size:9.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
  color:#ff8f8f;background:rgba(248,113,113,.13);border:1px solid rgba(248,113,113,.4);
  border-radius:5px;padding:2px 7px;margin-left:9px;vertical-align:2px}
.fr-c-note{font-size:13px;line-height:1.8;color:#8c97a7;margin-top:16px;max-width:88ch}
.fr-c-note b{color:#cfd7e2}

.fr-ladder-block{margin-top:var(--s6)}
.fr-l-h{font-size:clamp(20px,2.4vw,27px);font-weight:800;letter-spacing:-.02em;color:#e7ecf3;margin:0 0 8px}
.fr-l-sub{font-size:14.5px;line-height:1.75;color:#98a3b3;max-width:74ch;margin:0 0 var(--s4)}
.fr-ladder{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;align-items:stretch}
.fr-l-card{border:1px solid var(--hair);border-radius:18px;padding:20px 18px 18px;
  background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,.008));
  display:flex;flex-direction:column}
.fr-l-card.feat{border-color:rgba(200,164,92,.55);
  background:linear-gradient(180deg,rgba(200,164,92,.10),rgba(255,255,255,.008))}
.fr-l-top{display:flex;justify-content:space-between;align-items:baseline;
  padding-bottom:13px;margin-bottom:15px;border-bottom:1px solid var(--hair)}
.fr-l-firms{font-size:17px;font-weight:800;color:var(--gold-lt,#e2c489);letter-spacing:-.01em}
.fr-l-acc{font-size:11.5px;font-weight:700;color:#7d8899}
.fr-l-firmlist{display:flex;flex-direction:column;gap:11px;margin-bottom:16px}
.fr-l-firm{padding-left:11px;border-left:2px solid rgba(255,255,255,.10)}
.fr-l-flabel{display:block;font-size:9.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:#6f7a8a;margin-bottom:6px}
.fr-l-eng{display:block;font-size:13.5px;font-weight:800;color:#e7ecf3;margin-bottom:5px}
.fr-l-eng i{display:block;font-style:normal;font-size:10.5px;font-weight:600;color:#7d8899;
  letter-spacing:.04em;margin-top:1px}
.fr-l-eng.equity{border-left:2px solid rgba(96,165,250,.55);padding-left:8px;margin-left:-2px}
.fr-l-eng.gold{border-left:2px solid rgba(200,164,92,.65);padding-left:8px;margin-left:-2px}
.fr-l-out{display:flex;flex-direction:column;gap:8px;padding-top:14px;border-top:1px solid var(--hair)}
.fr-l-out>div{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.fr-l-out span{font-size:11.5px;color:#7d8899}
.fr-l-out b{font-size:16px;font-weight:800;font-variant-numeric:tabular-nums}
.fr-l-cap{font-size:12px;line-height:1.7;color:#7d8899;margin:14px 0 0;padding-top:13px;
  border-top:1px solid rgba(255,255,255,.05)}
.fr-l-note{font-size:12.5px;line-height:1.8;color:#6b7688;margin-top:var(--s4);max-width:90ch}
.fr-l-note b{color:#c3ccd8}
@media (max-width:1100px){.fr-ladder{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.fr-ladder{grid-template-columns:1fr}}

/* ── "you may decide to ignore this" — the honest trade-off ───────────────── */
.fr-choice{margin-top:var(--s6);border:1px solid var(--hair);border-radius:20px;padding:32px 30px 28px;
  background:linear-gradient(180deg,rgba(255,255,255,.032),rgba(255,255,255,.006))}
.fr-ch-k{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:#7d8899;margin-bottom:12px}
.fr-choice h3{font-size:clamp(19px,2.2vw,25px);font-weight:800;letter-spacing:-.02em;
  color:#e7ecf3;margin:0 0 20px;max-width:34ch;line-height:1.28}
.fr-ch-body{max-width:76ch}
.fr-ch-body p{font-size:14.5px;line-height:1.82;color:#98a3b3;margin:0 0 14px}
.fr-ch-body b{color:#e7ecf3;font-weight:700}
.fr-ch-body i{font-style:italic;color:#cfd7e2}

.fr-ch-scale{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:stretch;
  margin:var(--s5) 0 var(--s4)}
.fr-ch-side{border-radius:16px;padding:22px 20px;border:1px solid var(--hair)}
.fr-ch-side.win {border-color:rgba(74,222,128,.34);background:rgba(74,222,128,.05)}
.fr-ch-side.lose{border-color:rgba(248,113,113,.38);background:rgba(248,113,113,.055)}
.fr-ch-lbl{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:#7d8899;margin-bottom:10px}
.fr-ch-num{font-size:clamp(28px,3.4vw,40px);font-weight:900;letter-spacing:-.03em;line-height:1;
  font-variant-numeric:tabular-nums;margin-bottom:13px}
.fr-ch-num.pos{color:#4ade80} .fr-ch-num.neg{color:#f87171}
.fr-ch-num i{display:block;font-style:normal;font-size:11px;font-weight:700;color:#7d8899;
  letter-spacing:.06em;text-transform:uppercase;margin-top:7px}
.fr-ch-side p{font-size:13px;line-height:1.75;color:#8c97a7;margin:0}
.fr-ch-vs{align-self:center;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  color:#6f7a8a;white-space:nowrap;padding:0 2px}
.fr-ch-close{font-size:14.5px;line-height:1.85;color:#98a3b3;margin:0;padding-top:22px;
  border-top:1px solid var(--hair);max-width:88ch}
.fr-ch-close b{color:var(--gold-lt,#e2c489);font-weight:800}
@media (max-width:800px){
  .fr-ch-scale{grid-template-columns:1fr;gap:14px}
  .fr-ch-vs{justify-self:start;padding:2px 0}
}

/* ── independence disclosure (no prop-firm affiliation) ───────────────────── */
.fr-indep{margin-top:var(--s5);border:1px solid rgba(96,165,250,.30);border-radius:18px;
  padding:26px 26px 22px;background:linear-gradient(180deg,rgba(96,165,250,.06),rgba(255,255,255,.008))}
.fr-indep-k{font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;
  color:#8fb4f0;margin-bottom:15px}
.fr-indep p{font-size:14.5px;line-height:1.82;color:#98a3b3;margin:0 0 13px;max-width:80ch}
.fr-indep p:last-child{margin-bottom:0}
.fr-indep b{color:#e7ecf3;font-weight:700}
.fr-indep-punch{color:#cfd7e2!important;border-left:2px solid rgba(96,165,250,.55);
  padding-left:16px;margin:18px 0!important}

/* ── larger-accounts section (markup removed 2026-08-13; styles kept) ────────────────────────────────── */
.larger{padding:var(--s7) 0;border-top:1px solid var(--hair);
  background:radial-gradient(1100px 460px at 15% -10%,rgba(96,165,250,.05),transparent 70%)}
.lg-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:var(--s5)}
.lg-fact{border:1px solid var(--hair);border-radius:18px;padding:24px 22px;
  background:linear-gradient(180deg,rgba(255,255,255,.028),rgba(255,255,255,.008))}
.lg-f-n{font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:#8fb4f0;margin-bottom:12px}
.lg-fact h3{font-size:17px;font-weight:800;letter-spacing:-.015em;color:#e7ecf3;margin:0 0 11px;line-height:1.32}
.lg-fact p{font-size:13.5px;line-height:1.78;color:#8c97a7;margin:0}
.lg-fact b{color:#cfd7e2;font-weight:700}

.lg-calc{margin-top:var(--s6)}
.lg-c-head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:18px;
  margin-bottom:var(--s3)}
.lg-c-head h3{font-size:clamp(19px,2.3vw,25px);font-weight:800;letter-spacing:-.02em;color:#e7ecf3;margin:0}
.lg-picker{display:flex;flex-wrap:wrap;gap:9px}
.lg-picker button{background:rgba(255,255,255,.03);border:1px solid var(--hair);color:#aab4c2;
  border-radius:11px;padding:9px 14px;font:inherit;font-size:14px;font-weight:800;cursor:pointer;
  text-align:left;transition:.16s;line-height:1.25}
.lg-picker button i{display:block;font-style:normal;font-size:10px;font-weight:600;color:#6f7a8a;
  letter-spacing:.04em;margin-top:3px;text-transform:uppercase}
.lg-picker button:hover{border-color:rgba(143,180,240,.5);color:#e7ecf3}
.lg-picker button.on{background:linear-gradient(180deg,rgba(96,165,250,.18),rgba(96,165,250,.05));
  border-color:rgba(143,180,240,.6);color:#cfe0fb}
.lg-picker button.on i{color:#8fb4f0}

.lg-c-scroll{overflow-x:auto;border:1px solid var(--hair);border-radius:14px}
.lg-tbl{width:100%;border-collapse:collapse;font-size:13.5px;min-width:700px;font-variant-numeric:tabular-nums}
.lg-tbl th{text-align:right;font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;color:#7d8899;
  font-weight:700;padding:13px 16px;border-bottom:1px solid var(--hair);background:#11161d}
.lg-tbl th:first-child,.lg-tbl td:first-child{text-align:left}
.lg-tbl th:nth-child(3),.lg-tbl td:nth-child(3){text-align:left}
.lg-tbl td{padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.04);color:#aab4c2;text-align:right}
.lg-tbl td b{color:#e7ecf3;font-weight:800}
.lg-tbl td i{font-style:normal;color:#6f7a8a;font-size:12px}
.lg-ins{display:block;font-size:10px;color:#6f7a8a;letter-spacing:.06em;margin-top:2px}
.lg-tbl .lg-num{font-weight:800;color:#e7ecf3}
.lg-tbl .lg-dd{color:#f0a1a1}
.lg-tbl .pos{color:#4ade80}
.lg-tbl .lg-na{color:#5c6677;font-size:12px}
.lg-tbl .lg-total td{border-top:2px solid rgba(143,180,240,.5);border-bottom:none;
  background:rgba(96,165,250,.06);padding-top:16px;padding-bottom:16px;font-size:14.5px}
.lg-c-note{font-size:13px;line-height:1.8;color:#8c97a7;margin-top:16px;max-width:88ch}
.lg-c-note b{color:#cfd7e2}

.lg-limit{margin-top:var(--s5);border:1px solid rgba(234,179,8,.34);border-radius:18px;padding:26px 26px 22px;
  background:linear-gradient(180deg,rgba(234,179,8,.055),rgba(255,255,255,.008))}
.lg-lim-k{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#eab308;margin-bottom:14px}
.lg-limit p{font-size:14.5px;line-height:1.82;color:#98a3b3;margin:0 0 13px;max-width:84ch}
.lg-limit p:last-child{margin-bottom:0}
.lg-limit b{color:#e7ecf3;font-weight:700}
.lg-limit i{font-style:italic;color:#cfd7e2}
@media (max-width:980px){.lg-facts{grid-template-columns:1fr}}

/* variant rows: paired under their counterpart, visibly a variant */
.lg-tbl .lg-lead td{border-top:1px solid rgba(255,255,255,.10)}
.lg-tbl tbody tr:first-child td{border-top:none}
.lg-tbl .lg-full td{background:rgba(96,165,250,.055);border-bottom:none}
.lg-tbl .lg-full td:first-child{padding-left:26px}
.lg-arrow{color:#5c6677;margin-right:8px;font-size:14px}
.lg-ins.big{background:rgba(96,165,250,.16);border:1px solid rgba(143,180,240,.42);color:#bcd4f7;
  border-radius:5px;padding:2px 8px;display:inline-block;margin-top:0;font-weight:800;letter-spacing:.07em}
.lg-c-lede{font-size:14.5px;line-height:1.78;color:#98a3b3;max-width:80ch;margin:0 0 var(--s3)}
.lg-c-lede b{color:#e7ecf3}

/* ── "not a holy grail" credibility section ──────────────────────────────── */
.honest{padding:var(--s7) 0;border-top:1px solid var(--hair)}
.hn-what{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:var(--s5)}
.hn-col{border:1px solid var(--hair);border-radius:18px;padding:24px 22px}
.hn-not{background:rgba(248,113,113,.045);border-color:rgba(248,113,113,.26)}
.hn-is {background:rgba(74,222,128,.05);border-color:rgba(74,222,128,.30)}
.hn-k{font-size:10.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin-bottom:15px}
.hn-not .hn-k{color:#f87171} .hn-is .hn-k{color:#4ade80}
.hn-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:13px}
.hn-col li{font-size:14px;line-height:1.72;color:#98a3b3;padding-left:20px;position:relative}
.hn-col li::before{position:absolute;left:0;top:0;font-weight:800}
.hn-not li::before{content:"\2715";color:#f87171;font-size:11px;top:.28em}
.hn-is  li::before{content:"\2713";color:#4ade80;font-size:12px;top:.15em}
.hn-col b{color:#cfd7e2}

.hn-proof{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:var(--s4)}
.hn-p-card{border:1px solid rgba(200,164,92,.38);border-radius:18px;padding:26px 24px;
  background:linear-gradient(180deg,rgba(200,164,92,.075),rgba(255,255,255,.008))}
.hn-p-n{font-size:11px;font-weight:800;letter-spacing:.16em;color:#b9975a;margin-bottom:12px}
.hn-p-card h3{font-size:19px;font-weight:800;letter-spacing:-.018em;color:#e7ecf3;margin:0 0 12px}
.hn-p-card p{font-size:14px;line-height:1.8;color:#98a3b3;margin:0 0 13px}
.hn-p-card p:last-child{margin-bottom:0}
.hn-p-card b{color:#e7ecf3;font-weight:700}
.hn-p-why{padding-top:14px;border-top:1px solid rgba(200,164,92,.25)}
.hn-p-card a{color:var(--gold-lt,#e2c489);text-decoration:underline;text-underline-offset:2px}
@media (max-width:880px){.hn-what,.hn-proof{grid-template-columns:1fr}}

/* ── "four months underwater" figure ─────────────────────────────────────── */
.hn-under{display:grid;grid-template-columns:minmax(300px,0.85fr) 1.15fr;gap:26px;align-items:center;
  margin:var(--s5) 0 0;padding:28px;border:1px solid rgba(248,113,113,.30);border-radius:20px;
  background:linear-gradient(180deg,rgba(248,113,113,.05),rgba(255,255,255,.008))}
.hn-under .hn-p-n{color:#f08a8a}
.hn-u-copy h3{font-size:clamp(19px,2.2vw,24px);font-weight:800;letter-spacing:-.02em;color:#e7ecf3;
  margin:0 0 14px;line-height:1.3}
.hn-u-copy p{font-size:14px;line-height:1.8;color:#98a3b3;margin:0 0 13px}
.hn-u-copy p:last-child{margin-bottom:0}
.hn-u-copy b{color:#e7ecf3;font-weight:700}
.hn-u-punch{font-size:16px!important;font-weight:800;color:#ffb4b4!important;line-height:1.5!important;
  border-left:3px solid #f87171;padding:3px 0 3px 15px;margin:18px 0!important}
/* 2026-08-13 - was background:#fff, correct when this was a screenshot of NinjaTrader's
   white chart window. The figure is now a generated SVG drawn for a dark page, so a white
   plate behind it looked like a bug. */
.hn-u-img img{width:100%;height:auto;display:block;border-radius:12px;border:1px solid var(--hair);
  background:rgba(255,255,255,.02);padding:10px 12px}
.hn-u-img figcaption{font-size:11.5px;line-height:1.6;color:#6b7688;margin-top:11px}
@media (max-width:900px){.hn-under{grid-template-columns:1fr;padding:22px}}

/* combined-book row: the payoff line of that table */
.lg-tbl .lg-combined td{border-top:2px solid rgba(200,164,92,.55);border-bottom:none;
  background:rgba(200,164,92,.075);padding-top:17px;padding-bottom:17px;font-size:15px}
.lg-tbl .lg-combined td b{color:var(--gold-lt,#e2c489)}
.lg-tbl .lg-combined .lg-ins{background:none;border:none;color:#8b95a6;padding:0;margin-top:3px;
  font-weight:600;letter-spacing:.02em;text-transform:none;font-size:10.5px}
.lg-tbl .lg-hi{color:#4ade80;font-weight:900;font-size:16px}

/* scheduled-but-not-run row: visibly NOT a result. Muted, no color
   that could read as profit, and the engine name kept plain rather than bold-lit
   so it can never be mistaken for a published figure at a glance. */
.lg-tbl .lg-pending td{background:rgba(255,255,255,.015);border-bottom:1px dashed rgba(140,151,167,.25)}
.lg-tbl .lg-pending td:first-child b{color:#8b95a6;font-weight:700}
.lg-tbl .lg-pending .lg-na{color:#7d8899;font-size:12.5px;font-style:italic;text-align:left;white-space:normal}
.lg-tbl .lg-pending .lg-vs i{color:#7d8899}

/* ── 30-day sim trial ────────────────────────────────────────────────────── */
.trial{margin:var(--s5) 0 var(--s5);border:1px solid rgba(74,222,128,.34);border-radius:20px;
  background:linear-gradient(180deg,rgba(74,222,128,.06),rgba(255,255,255,.008));overflow:hidden}
.trial-badge{background:rgba(74,222,128,.13);border-bottom:1px solid rgba(74,222,128,.24);
  padding:11px 26px;font-size:11.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#7fe0a0}
.trial-body{padding:26px}
.trial-body h3{font-size:clamp(19px,2.2vw,25px);font-weight:800;letter-spacing:-.02em;color:#e7ecf3;
  margin:0 0 12px;line-height:1.32;max-width:40ch}
.trial-body>p{font-size:14.5px;line-height:1.8;color:#98a3b3;margin:0 0 var(--s3);max-width:80ch}
.trial-split{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:var(--s3) 0}
.tr-col{border-radius:14px;padding:20px 18px;border:1px solid var(--hair)}
.tr-yes{background:rgba(74,222,128,.05);border-color:rgba(74,222,128,.26)}
.tr-no {background:rgba(248,113,113,.045);border-color:rgba(248,113,113,.26)}
.tr-k{font-size:10.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:13px}
.tr-yes .tr-k{color:#4ade80} .tr-no .tr-k{color:#f87171}
.tr-k em{font-style:normal;text-decoration:underline;text-underline-offset:2px}
.tr-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}
.tr-col li{font-size:13.5px;line-height:1.7;color:#98a3b3;padding-left:19px;position:relative}
.tr-col li::before{position:absolute;left:0;font-weight:800}
.tr-yes li::before{content:"\2713";color:#4ade80;top:.1em}
.tr-no  li::before{content:"\2715";color:#f87171;font-size:11px;top:.25em}
.tr-col b{color:#e7ecf3}
.trial-punch{font-size:15.5px!important;line-height:1.72!important;color:#cfd7e2!important;
  border-left:3px solid #4ade80;padding:5px 0 5px 17px;margin:var(--s3) 0 var(--s3)!important;max-width:76ch}
.trial-punch b{color:#7fe0a0}
.trial-foot{font-size:13px;line-height:1.78;color:#7d8899;margin:0;max-width:82ch}
@media (max-width:860px){.trial-split{grid-template-columns:1fr}.trial-body{padding:20px}}
.lg-tag{display:inline-block;font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;
  border-radius:4px;padding:2px 7px;margin-left:9px;vertical-align:2px}
.lg-tag.t-micro{background:rgba(255,255,255,.06);color:#7d8899;border:1px solid var(--hair)}
.lg-tag.t-full {background:rgba(96,165,250,.18);color:#bcd4f7;border:1px solid rgba(143,180,240,.5)}
.lg-tbl .lg-micro td:first-child b{color:#8b95a6;font-weight:600}
.lg-c-count{font-size:13.5px;line-height:1.7;color:#8c97a7;margin:0 0 10px;max-width:80ch}
.lg-c-count b{color:var(--gold-lt,#e2c489)}
.lg-tbl .lg-combined .lg-ins{display:block;max-width:46ch;white-space:normal;line-height:1.5}
.lg-tbl .lg-vs{text-align:right;color:#7d8899;font-size:12.5px;white-space:nowrap}
.lg-tbl .lg-vs i{display:block;font-style:normal;font-weight:800;color:#8fb4f0;font-size:13.5px;margin-top:3px}

/* ── account builder ─────────────────────────────────────────────────────── */
.bld{margin-top:var(--s4)}
.bld-h{font-size:clamp(19px,2.3vw,25px);font-weight:800;letter-spacing:-.02em;color:#e7ecf3;margin:0 0 8px}
.bld-sub{font-size:14px;line-height:1.75;color:#98a3b3;max-width:82ch;margin:0 0 var(--s4)}
.bld-sub b{color:#e7ecf3}
.bld-accts{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:18px}
.bld-acct{border:1px solid var(--hair);border-radius:18px;padding:18px 17px;
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.008))}
.bld-acct.breached{border-color:rgba(248,113,113,.5);background:rgba(248,113,113,.05)}
.bld-a-top{display:flex;justify-content:space-between;align-items:center;
  padding-bottom:11px;margin-bottom:13px;border-bottom:1px solid var(--hair)}
.bld-a-name{font-size:14px;font-weight:800;color:var(--gold-lt,#e2c489);letter-spacing:.02em}
.bld-x{background:none;border:1px solid var(--hair);color:#7d8899;border-radius:7px;
  width:24px;height:24px;line-height:1;cursor:pointer;font-size:15px}
.bld-x:hover{border-color:rgba(248,113,113,.5);color:#f87171}
.bld-picks{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:13px}
.bld-pick{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;cursor:pointer;
  border:1px solid var(--hair);border-radius:8px;padding:5px 9px;color:#8b95a6;
  background:rgba(255,255,255,.02);transition:.14s;user-select:none}
.bld-pick:hover{border-color:rgba(200,164,92,.45);color:#cfd7e2}
.bld-pick.on{background:rgba(200,164,92,.14);border-color:rgba(200,164,92,.55);color:var(--gold-lt,#e2c489)}
.bld-pick input{accent-color:#c8a45c;width:13px;height:13px;margin:0;cursor:pointer}
.bld-p-ins{font-size:9.5px;font-weight:800;letter-spacing:.07em;color:#6f7a8a}
.bld-pick.on .bld-p-ins{color:#b9975a}
.bld-warn{font-size:11.5px;line-height:1.6;color:#ffcf8f;background:rgba(234,179,8,.10);
  border:1px solid rgba(234,179,8,.34);border-radius:9px;padding:8px 10px;margin-bottom:12px}
.bld-spark{width:100%;height:54px;display:block;margin-bottom:10px}
.bld-spark polyline{fill:none;stroke-width:1.8;vector-effect:non-scaling-stroke}
.bld-spark polyline.up{stroke:#4ade80} .bld-spark polyline.down{stroke:#f87171}
.bld-spark .bld-zero{stroke:rgba(255,255,255,.16);stroke-width:1;vector-effect:non-scaling-stroke;stroke-dasharray:3 3}
.bld-gauge{height:7px;border-radius:5px;background:#0c1116;border:1px solid var(--line);overflow:hidden;margin-bottom:12px}
.bld-fill{height:100%;border-radius:5px}
.bld-fill.ok{background:linear-gradient(90deg,#2f9e63,#46c07d)}
.bld-fill.mid{background:linear-gradient(90deg,var(--gold),var(--gold-lt))}
.bld-fill.over{background:linear-gradient(90deg,#b8433a,#f87171)}
.bld-nums{display:grid;grid-template-columns:1fr 1fr;gap:9px 12px}
.bld-nums>div{display:flex;flex-direction:column}
.bld-nums span{font-size:10.5px;color:#7d8899;letter-spacing:.03em}
.bld-nums b{font-size:15px;font-weight:800;font-variant-numeric:tabular-nums;margin-top:2px}
.bld-nums .pos{color:#4ade80} .bld-nums .neg{color:#f87171} .bld-nums .warn{color:#eab308}
.bld-breach{margin-top:12px;font-size:11.5px;line-height:1.6;color:#ffb4b4;
  background:rgba(248,113,113,.12);border:1px solid rgba(248,113,113,.4);border-radius:9px;padding:8px 10px}
.bld-empty{font-size:12.5px;color:#6f7a8a;margin:6px 0 0}
.bld-actions{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}
.bld-btn{background:rgba(200,164,92,.13);border:1px solid rgba(200,164,92,.5);color:var(--gold-lt,#e2c489);
  border-radius:11px;padding:10px 18px;font:inherit;font-size:14px;font-weight:800;cursor:pointer;transition:.15s}
.bld-btn:hover{background:rgba(200,164,92,.22)}
.bld-btn.ghost{background:none;border-color:var(--hair);color:#8b95a6}
.bld-btn.ghost:hover{border-color:var(--line2);color:#cfd7e2}
.bld-total{margin-top:var(--s4);border:1px solid rgba(200,164,92,.4);border-radius:18px;padding:22px 24px;
  background:linear-gradient(180deg,rgba(200,164,92,.08),rgba(255,255,255,.008))}
.bld-t-row{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.bld-t-row>div{display:flex;flex-direction:column}
.bld-t-row span{font-size:11px;color:#7d8899;letter-spacing:.04em}
.bld-t-row b{font-size:20px;font-weight:900;font-variant-numeric:tabular-nums;margin-top:3px;color:#e7ecf3}
.bld-t-row .pos{color:#4ade80} .bld-t-row .neg{color:#f87171}
.bld-t-note{font-size:12.5px;line-height:1.75;color:#7d8899;margin:18px 0 0;padding-top:16px;
  border-top:1px solid rgba(200,164,92,.25);max-width:92ch}
.bld-t-note b{color:#cfd7e2}
@media (max-width:800px){.bld-t-row{grid-template-columns:1fr 1fr}}

/* ── Grouped nav dropdowns (2026-08-11): pure CSS, no JS ───────────────────── */
.nav-item{color:var(--muted);font-weight:600;font-size:15px;background:none;border:0;
  font-family:inherit;cursor:pointer;padding:0;line-height:1.4}
.nav-item:hover,.nav-item.on,.nav-group.on>.nav-group-btn{color:var(--cream)}
.nav-group{position:relative;display:inline-flex;align-items:center}
.nav-group-btn{display:inline-flex;align-items:center;gap:5px}
.nav-caret{font-size:11px;transition:transform .18s;opacity:.8}
.nav-group:hover .nav-caret,.nav-group:focus-within .nav-caret{transform:rotate(180deg)}
.nav-menu{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%) translateY(6px);
  display:flex;flex-direction:column;min-width:190px;padding:8px;gap:2px;
  background:var(--panel);border:1px solid var(--hair);border-radius:12px;
  box-shadow:0 14px 40px rgba(0,0,0,.45);opacity:0;visibility:hidden;
  transition:opacity .16s,transform .16s;z-index:70}
.nav-group:hover .nav-menu,.nav-group:focus-within .nav-menu{
  opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
/* a hover bridge so the menu doesn't vanish crossing the 12px gap */
.nav-group::after{content:"";position:absolute;top:100%;left:0;right:0;height:14px}
.nav-menu a{display:block;padding:9px 12px;border-radius:8px;color:var(--muted);
  font-weight:600;font-size:14px;white-space:nowrap}
.nav-menu a:hover,.nav-menu a.on{background:rgba(255,255,255,.06);color:var(--cream)}

@media (max-width:860px){
  /* inside the mobile slide-down, flatten the dropdowns: labels + items stacked */
  .nav-group{display:block;width:100%}
  .nav-group-btn{width:100%;justify-content:flex-start;padding:12px 26px;
    text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:var(--muted2,var(--muted))}
  .nav-caret{display:none}
  .nav-menu{position:static;transform:none;opacity:1;visibility:visible;display:flex;
    min-width:0;padding:0;background:none;border:0;box-shadow:none}
  .nav-menu a{padding:11px 26px 11px 40px;font-size:15px}
  .nav-item{padding:12px 26px;width:100%}
  .nav-group::after{display:none}
}


/* "Not another collection of trading bots" (canonical 2026-08-11) */
.notbots{border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.notbots h2{font-size:clamp(24px,3.3vw,36px);font-weight:800;line-height:1.16;margin:14px 0 22px;color:var(--cream)}
.notbots-p{font-size:17px;line-height:1.72;color:var(--muted);max-width:70ch}
.notbots-kick{font-size:clamp(19px,2.4vw,25px);line-height:1.42;margin-top:26px;color:var(--muted)}
.notbots-kick b{color:var(--gold);font-weight:800}


/* "Why we built this" gap diagrams (2026-08-11) - conceptual, theme-aware inline SVG */
.thegap{border-top:1px solid var(--hair);border-bottom:1px solid var(--hair)}
.thegap h2{font-size:clamp(23px,3.1vw,34px);font-weight:800;line-height:1.18;margin:14px 0 16px;color:var(--cream)}
.gap-lede{font-size:17px;line-height:1.7;color:var(--muted);max-width:74ch;margin:0 0 34px}
.gapfig{margin:0 0 40px}
.gapfig svg{width:100%;height:auto;max-width:720px;display:block;margin:0 auto}
.gapfig figcaption{font-size:14px;line-height:1.65;color:var(--muted);max-width:74ch;margin:14px auto 0}
.gap-fact{display:block;margin-top:8px;color:var(--muted2,var(--muted));opacity:.85}
/* --- 2x2 map --- */
.dmap .ax{stroke:var(--hair);stroke-width:1.5}
.dmap .axh{fill:var(--hair)}
.dmap .axl{fill:var(--muted);font:600 12px/1 "Segoe UI",Arial,sans-serif;letter-spacing:.12em}
.dmap .frontier{stroke:var(--muted);stroke-width:1.4;stroke-dasharray:5 6;opacity:.55}
.dmap .frontier-l{fill:var(--muted);font:italic 11px "Segoe UI",Arial;opacity:.7}
.dmap .dot circle{fill:none;stroke:var(--muted);stroke-width:2}
.dmap .dl{fill:var(--cream);font:700 13px "Segoe UI",Arial}
.dmap .ds{fill:var(--muted);font:400 11.5px "Segoe UI",Arial}
.dmap .corner{fill:rgba(200,164,92,.07);stroke:var(--gold);stroke-width:1.2;stroke-dasharray:4 5}
.dmap .corner-l{fill:var(--gold);font:600 11px "Segoe UI",Arial;letter-spacing:.1em;opacity:.85}
.dmap .orb{fill:var(--gold)}
.dmap .orb-glow{fill:var(--gold);opacity:.18}
.dmap .orb-l{fill:var(--gold);font:800 15px "Segoe UI",Arial}
.dmap .orb-s{fill:var(--cream);font:600 12px "Segoe UI",Arial}
/* --- trilemma triangle --- */
.dtri .tri{fill:rgba(255,255,255,.02);stroke:rgba(255,255,255,.30);stroke-width:2;stroke-linejoin:round}
.dtri .tc{fill:var(--cream);font:800 14px "Segoe UI",Arial;letter-spacing:.06em}
.dtri .tcs{fill:var(--muted);font:400 11.5px "Segoe UI",Arial}
.dtri .ctr{fill:var(--red)}
.dtri .ctr-l{fill:var(--red);font:700 12px "Segoe UI",Arial}
.dtri .ctr-s{fill:var(--red);font:400 11px "Segoe UI",Arial;opacity:.9}
.dtri .ed{fill:none;stroke:var(--muted);stroke-width:2}
.dtri .ed.bad{stroke:var(--red)}
.dtri .edl{fill:var(--cream);font:700 13px "Segoe UI",Arial}
.dtri .eds{fill:var(--muted);font:400 11.5px "Segoe UI",Arial}
.dtri .orb{fill:var(--gold)}
.dtri .orb-glow{fill:var(--gold);opacity:.18}
.dtri .orb-l{fill:var(--gold);font:800 15px "Segoe UI",Arial}
.dtri .orb-s{fill:var(--cream);font:600 12px "Segoe UI",Arial}
/* --- tower vs grid --- */
.dstruct .floor{stroke:var(--muted);stroke-width:1.4;stroke-dasharray:4 5;opacity:.6}
.dstruct .floor.bad{stroke:var(--red);opacity:.9;stroke-dasharray:none}
.dstruct .floor-l{fill:var(--muted);font:600 11px "Segoe UI",Arial}
.dstruct .floor-l.bad{fill:var(--red)}
.dstruct .brk{fill:var(--panel2,#12201f);stroke:var(--muted);stroke-width:1.3}
.dstruct .brk.dd{fill:rgba(224,133,133,.28);stroke:var(--red)}
.dstruct .pil{fill:var(--panel2,#12201f);stroke:var(--teal,#7fa99f);stroke-width:1.3}
.dstruct .cap{fill:var(--green,#6fbf73);opacity:.85}
.dstruct .sumbar{stroke:var(--gold);stroke-width:1.6;stroke-dasharray:3 4}
.dstruct .sum{fill:var(--gold);font:700 13px "Segoe UI",Arial}
.dstruct .struct-h{fill:var(--cream);font:800 15px "Segoe UI",Arial}
.dstruct .struct-h.bad{fill:var(--red)}
.dstruct .struct-h.good{fill:var(--green,#6fbf73)}
.dstruct .struct-s{fill:var(--muted);font:400 12.5px "Segoe UI",Arial}
.dstruct .vs{fill:var(--muted);font:700 16px "Segoe UI",Arial;opacity:.6}
@media (max-width:680px){
  .gapfig figcaption,.gap-lede{font-size:13.5px}
}

/* ---- calendar day tooltip: which engine actually made that day ------------- */
.cd[data-d]{cursor:pointer}
.caltip{position:fixed;z-index:90;min-width:238px;max-width:320px;padding:12px 13px 10px;
  border-radius:12px;border:1px solid var(--line2);background:#0d1817;
  box-shadow:0 18px 44px rgba(0,0,0,.62);opacity:0;visibility:hidden;
  transform:translateY(4px);transition:opacity .12s ease,transform .12s ease;
  pointer-events:none}
.caltip.on{opacity:1;visibility:visible;transform:translateY(0)}
.caltip .ct-h{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted2);
  font-weight:800;margin-bottom:9px}
.caltip .ct-r{display:flex;justify-content:space-between;align-items:baseline;gap:18px;
  padding:4px 0;font-size:13px}
.caltip .ct-r.off{opacity:.34}
.caltip .ct-nm{color:#c3ccd8}
.caltip .ct-nm small{color:var(--muted2);font-size:10.5px;letter-spacing:.06em;
  margin-left:4px}
.caltip .ct-v{font-weight:750;font-variant-numeric:tabular-nums;color:var(--muted)}
.caltip .ct-v.pos{color:var(--green)}
.caltip .ct-v.neg{color:var(--red)}
.caltip .ct-t{margin-top:6px;padding-top:8px;border-top:1px solid var(--line);
  font-weight:800}
.caltip .ct-t .ct-nm{color:#e7ecf3}
.caltip .ct-f{margin-top:8px;font-size:10.5px;line-height:1.45;color:var(--muted2)}

/* ---- brand lockup: descriptor under the wordmark, tagline in the footer ---- */
.brand-txt{display:flex;flex-direction:column;line-height:1.12;gap:2px}
.brand-desc{font-size:10.5px;font-weight:600;letter-spacing:.02em;color:var(--muted2);
  white-space:nowrap}
@media (max-width:900px){ .brand-desc{display:none} }
.foot-brand{display:flex;flex-direction:column;gap:3px;margin:0 0 22px;
  padding-bottom:20px;border-bottom:1px solid var(--line)}
.foot-word{font-size:19px;font-weight:800;letter-spacing:-.01em;color:var(--cream)}
.foot-tag{font-size:15px;font-weight:700;color:var(--gold);letter-spacing:.01em}
.foot-sub{font-size:12.5px;color:var(--muted2)}
/* footer lockup must sit left like the disclosure under it, and keep its brass */
.site-legal .foot-brand{align-items:flex-start;text-align:left}
.site-legal .foot-tag{color:var(--gold)}
.pcard-sub{display:block;margin-top:10px;text-align:center}
.pcard-note{margin-top:12px;font-size:12px;line-height:1.55;color:var(--muted2)}

/* ---- track chooser: the one question that routes the reader (2026-08-13) ------
   The site has two audiences with different engines, names and prices. This block
   sits in the hero and sends them to micro.html or full.html. Cards are anchors,
   not buttons, so they work with no JS and can be middle-clicked. */
.track-pick{margin:30px 0 6px}
.track-q{font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
  color:var(--muted2);margin:0 0 12px}
.track-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(268px,1fr));gap:13px;
  max-width:760px}
.track-card{display:block;text-decoration:none;border:1px solid rgba(255,255,255,.11);
  border-radius:14px;padding:17px 18px;background:rgba(255,255,255,.025);
  transition:border-color .15s ease, background .15s ease}
.track-card:hover{border-color:var(--gold);background:rgba(200,164,92,.06)}
.track-k{display:block;font-size:10.5px;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;color:var(--gold)}
.track-n{display:block;font-size:19px;font-weight:850;letter-spacing:-.01em;
  color:var(--cream);margin:6px 0 7px}
.track-d{display:block;font-size:14px;line-height:1.6;color:var(--muted)}

/* fit-test footer note (2026-08-13): the risk sentence now appears ONCE, quietly, at the
   end of the section rather than as a fifth "reasons to leave" card. */
.nf-foot{margin:22px 0 0;color:var(--muted2);font-size:13.5px;line-height:1.7;max-width:78ch}

/* ---- the offer strip: the deal, in the hero (2026-08-13) ---------------------
   Four facts a burned reader wants before any argument: what they get, what it
   costs, how to try it, and whether the numbers are checkable. Deliberately not
   a pricing card — no button, no bullets, no fine print. */
.offer-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1px;
  margin:26px 0 6px;max-width:900px;background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.09);border-radius:14px;overflow:hidden}
.os-item{background:#0d1114;padding:15px 17px}
.os-item b{display:block;font-size:17px;font-weight:850;letter-spacing:-.01em;color:var(--cream)}
.os-item span{display:block;margin-top:5px;font-size:12.5px;line-height:1.55;color:var(--muted2)}
@media (max-width:640px){ .os-item{padding:13px 15px} }

/* ---- pain → what we do about it (2026-08-13) --------------------------------
   Two columns per row: the reader's problem on the left in their words, our answer
   on the right with a link to the page that proves it. The left column is muted and
   the right carries the brand gold, so the eye lands on the answer, not the pain. */
.probs{padding:64px 0 10px}
.pr-map{display:flex;flex-direction:column;gap:14px;margin:26px 0 0}
.pr-row{display:grid;grid-template-columns:1fr 1.15fr;gap:1px;background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.09);border-radius:14px;overflow:hidden}
.pr-pain,.pr-fix{background:#0d1114;padding:19px 21px}
.pr-fix{background:rgba(200,164,92,.045)}
.pr-pain>span,.pr-fix>span{display:block;font-size:10.5px;font-weight:800;letter-spacing:.13em;
  text-transform:uppercase;margin:0 0 9px}
.pr-pain>span{color:#7d918b}
.pr-fix>span{color:var(--gold)}
.pr-pain>b,.pr-fix>b{display:block;font-size:16.5px;font-weight:850;letter-spacing:-.01em;
  line-height:1.35;color:var(--cream)}
.pr-pain p,.pr-fix p{margin:9px 0 0;font-size:14.5px;line-height:1.68;color:var(--muted)}
.pr-pain p{color:var(--muted2)}
.pr-foot{margin:22px 0 0;color:var(--muted2);font-size:13.5px;line-height:1.7;max-width:80ch}
@media (max-width:820px){ .pr-row{grid-template-columns:1fr} }

/* primary CTA under the problem→solution map (2026-08-13) */
.pr-cta{display:flex;align-items:center;flex-wrap:wrap;gap:13px;margin:24px 0 0}
.pr-cta-note{color:var(--muted2);font-size:13px}

/* ---- what / who / why: the ten-second orientation (2026-08-13) --------------
   Sits above the offer strip. Three plain-English answers before any argument. */
.wwo{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;
  margin:28px 0 4px;max-width:940px}
.wwo-card{border-left:2px solid rgba(200,164,92,.5);padding:2px 0 2px 15px}
.wwo-k{display:block;font-size:10.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;
  color:var(--gold);margin:0 0 7px}
.wwo-card p{margin:0;font-size:14.5px;line-height:1.68;color:var(--muted)}

/* ---- the differentiator line (2026-08-13) ---------------------------------- */
.diffs{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:11px 22px;
  margin:22px 0 2px;max-width:940px}
.diff{font-size:14px;line-height:1.62;color:var(--muted2)}
.diff b{color:var(--cream);font-weight:800}

/* Dossier link on each strategy card. Added 2026-08-15 - the seven dossier pages
   existed but nothing linked to them. */
.scard .dosslink{display:block;margin-top:14px;padding-top:13px;border-top:1px solid var(--line);
  text-decoration:none;font-weight:600;font-size:13.5px;color:var(--gold);letter-spacing:.01em}
.scard .dosslink:hover{color:var(--gold-lt)}

/* ── Accessibility additions, 2026-08-15 (Abhi review H5) ────────────────────
   .vh  visually-hidden but announced by screen readers. Used for the trial-form
        labels, which were placeholder-only. NOT display:none - that would hide
        them from assistive tech too, which is the whole point of having them.
   .skip first focusable element on the page; invisible until focused, so a
        keyboard user can jump the nav instead of tabbing a 48,000px page. */
.vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}

.skip{position:absolute;left:-9999px;top:0;z-index:9999;
  background:var(--gold);color:#1a1206;font-weight:700;font-size:14px;
  padding:12px 18px;border-radius:0 0 9px 0;text-decoration:none}
.skip:focus{left:0}

/* Focus ring on every interactive element. The stylesheets had :focus rules but
   no :focus-visible, so keyboard focus was inconsistent and in places invisible.
   :focus-visible shows the ring for keyboard users without ringing mouse clicks. */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,
textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{
  outline:2px solid var(--gold-lt);outline-offset:2px;border-radius:4px}

/* ── C3 · HORIZONTAL OVERFLOW CONTAINMENT (Abhi review, 2026-08-15) ──────────
   Reported: the homepage scrolls sideways at 390px.

   The two causes named in the review already had their fix in place - .hero
   carries overflow:hidden and .econ-tbl-wrap carries overflow-x:auto - so the
   leak is coming from somewhere else. Rather than guess at which of ~27
   sections it is, contain it at the root.

   overflow-x:CLIP, not HIDDEN. They look equivalent and are not: overflow
   hidden on html/body creates a scroll container, which silently breaks every
   position:sticky descendant - and this site uses sticky table headers on the
   monthly grid. clip does the same visual job without establishing a scroll
   container, so sticky keeps working.

   Wide tables keep their own scroll wrappers; this is the backstop, not the
   mechanism. If a NEW wide element appears it will now be clipped rather than
   pushing the page sideways - which fails visibly at the element instead of
   invisibly for the whole document. */
html{overflow-x:clip}

/* Belt and braces for the wide data tables: never let one exceed its wrapper. */
.econ-tbl-wrap,.mgrid-scroll,.stbl-wrap,.al-tblwrap,.td-wrap,.cal-wrap,
.fr-c-scroll,.lg-c-scroll,.pf-grid-wrap{max-width:100%}

/* Media and embeds should never be the cause either. */
img,svg,video,canvas,iframe{max-width:100%}

/* Legal links row in the site-wide footer (privacy / terms / refunds / contact).
   Added 2026-08-15 - the three policy pages are required to be reachable, and a
   page nobody can navigate to satisfies nothing. */
.site-legal .legal-links{margin:0 0 12px;font-size:12px;color:#7f918c}
.site-legal .legal-links a{color:#9fb2ac;text-decoration:none}
.site-legal .legal-links a:hover{color:var(--gold);text-decoration:underline}

/* PROP FIRM PARTNER block under the hero (2026-09-14) */
.propfirm{padding:44px 0 8px}
.pf-card{display:flex;gap:28px;align-items:center;padding:24px 28px;border:1px solid var(--line2);
  border-radius:16px;background:linear-gradient(135deg,rgba(198,144,53,.08),rgba(255,255,255,.02))}
.pf-logo{width:200px;height:auto;border-radius:12px;flex:0 0 auto}
.pf-body .kicker{margin-bottom:6px}
.pf-title{font-size:26px;margin:0 0 8px}
.pf-text{color:#cfd7e2;margin:0 0 14px;line-height:1.55}
.pf-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-bottom:12px}
.pf-code{font-size:14px;color:#cfd7e2;padding:8px 12px;border:1px dashed var(--gold);border-radius:8px}
.pf-code b{color:var(--gold-lt);letter-spacing:.06em}
.pf-disclose{font-size:12.5px;color:#9aa5b5;margin:0}
.wn-firms span a{color:var(--gold-lt)}
@media (max-width:640px){.pf-card{flex-direction:column;align-items:flex-start;padding:20px}.pf-logo{width:150px}}

/* the fleet / offer / benched line, sitting with the offer summary. Bud, 2026-09-20:
   "we will not hide the fact that we have benched 5 of them and the reasons". */
.os-bench{margin:10px 0 0;font-size:13px;color:var(--muted);line-height:1.5}
.os-bench a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.os-bench a:hover{color:var(--ink,inherit)}

/* what the four personas are, said before a reader meets them */
.persona-intro{margin:0 0 18px;font-size:14.5px;line-height:1.6;color:var(--muted);max-width:68ch}
.persona-intro b{color:inherit;font-weight:700}

/* ── TWO TRACKS (2026-09-21): hero doors + two-column pricing ─────────────── */
.tt-wrap{margin:30px 0 0}
.tt-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.tt-card{display:flex;flex-direction:column;gap:9px;text-align:left;text-decoration:none;color:var(--txt);
  background:#0d1114;border:1px solid var(--line2);border-top:3px solid #c8a45c;border-radius:16px;
  padding:22px 22px 20px;transition:border-color .15s ease,transform .15s ease}
.tt-card:hover{transform:translateY(-2px);border-color:rgba(200,164,92,.55)}
.tt-mini{border-top-color:#5cc8b0}
.tt-mini:hover{border-color:rgba(92,200,176,.55)}
.tt-k{font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#c8a45c}
.tt-mini .tt-k{color:#5cc8b0}
.tt-h{font-size:24px;line-height:1.15;font-weight:850;letter-spacing:-.01em;color:var(--cream)}
.tt-p{font-size:14.5px;line-height:1.6;color:#c3ccd8}
.tt-f{font-size:13px;color:var(--muted);line-height:1.5}
.tt-go{margin-top:4px;font-size:14.5px;font-weight:750;color:#c8a45c}
.tt-mini .tt-go{color:#5cc8b0}
@media (max-width:760px){ .tt-grid{grid-template-columns:1fr} .tt-h{font-size:21px} }

.price-grid.tp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}
.tp-col{display:flex;flex-direction:column;gap:14px;min-width:0}
.tp-k{font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#c8a45c}
.tp-mini .tp-k{color:#5cc8b0}
.tp-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.tp-save{background:#c8a45c;color:#101416;font-size:12.5px;font-weight:850;letter-spacing:.06em;
  text-transform:uppercase;border-radius:999px;padding:5px 11px;white-space:nowrap}
.tp-mini .tp-save{background:#5cc8b0}
.tp-mini .tp-pkg{border-color:rgba(92,200,176,.45)}
.tp-was{font-size:18px;font-weight:600;color:var(--muted2);margin-left:8px}
.tp-line{font-weight:700;color:#e6bd70!important;flex:0 0 auto!important;margin:6px 0 0}
.tp-mini .tp-line{color:#7fdcc6!important}
.tp-single{font-size:13px;font-weight:750;color:var(--muted);margin:6px 0 0}
.tp-table{width:100%;border-collapse:collapse;font-size:14.5px;background:var(--panel);
  border:1px solid var(--line);border-radius:14px;overflow:hidden}
.tp-table th{font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);
  text-align:left;padding:11px 14px;border-bottom:1px solid var(--line2)}
.tp-table td{padding:11px 14px;border-bottom:1px solid var(--line);color:#c9d1d9}
.tp-table td b{color:var(--cream)}
.tp-table .r{text-align:right;white-space:nowrap}
.tp-mo{font-size:12px;color:var(--muted2);margin-left:1px}
.tp-sum td{color:var(--muted);font-size:13.5px;border-bottom:0}
.tp-pend{font-size:12.5px;color:var(--muted)}
.tp-foot{grid-column:1/-1;font-size:13px;line-height:1.65;color:var(--muted);margin:4px 0 0}
.tp-foot a{color:inherit;text-decoration:underline;text-underline-offset:2px}
@media (max-width:860px){ .price-grid.tp-grid{grid-template-columns:1fr} }
@media (max-width:420px){ .tp-table th,.tp-table td{padding:9px 9px} .tp-table{font-size:13.5px} }

/* ===== Forward vs same days last year (yoy.js), 2026-09-29 ===== */
.yoy{padding:48px 0 12px}
.yoy-title{font-size:clamp(22px,3.2vw,30px);font-weight:800;line-height:1.2;margin-bottom:10px}
.yoy-lede{color:var(--muted);max-width:760px;margin-bottom:22px;line-height:1.55}
.yoy-lede span{display:block;margin-top:6px;color:var(--muted2);font-size:13px}
.yoy-tables{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,480px),1fr));gap:20px}
.yoy-block{border:1px solid var(--line2);border-radius:14px;background:var(--panel);padding:16px 16px 10px;min-width:0}
.yoy-h{font-size:16px;font-weight:800;margin-bottom:10px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.yoy-h span{color:var(--gold-lt);font-weight:700;font-size:13px}
.yoy-scroll{overflow-x:auto}
.yoy-t{width:100%;border-collapse:collapse;font-size:14px}
.yoy-t th,.yoy-t td{padding:8px 6px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}
.yoy-t thead th{color:var(--muted2);font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:700}
.yoy-t tbody th a{color:var(--txt);font-weight:700;text-decoration:none}
.yoy-t .num{text-align:right;font-variant-numeric:tabular-nums}
.yoy-t .pos{color:var(--txt)} .yoy-t .neg{color:var(--muted)}
.yoy-sym{margin-left:6px;color:var(--muted2);font-size:11px;font-weight:600}
.yoy-bench,.yoy-note{margin-left:6px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  padding:1px 6px;border-radius:999px;border:1px solid var(--line2);color:var(--muted2)}
.yoy-v{font-weight:700;font-size:13px}
.yoy-v.ahead{color:var(--green)} .yoy-v.behind{color:var(--red)}
.yoy-v b{font-variant-numeric:tabular-nums}
.yoy-legend{color:var(--muted2);font-size:12.5px;line-height:1.55;margin-top:16px;max-width:900px}
.yoy-legend a{color:var(--gold-lt)}
.yoy-err{color:var(--muted)}
.yoy-why{margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}
.yoy-title2{font-size:clamp(20px,2.8vw,26px);font-weight:800;margin-bottom:10px}
.yoy-note2{color:var(--muted2);font-size:12px;line-height:1.5;margin-top:8px}
.yoy-t tr.yoy-hl th,.yoy-t tr.yoy-hl td{color:var(--gold-lt);font-weight:700}
