/* Midas / Go X — landing
   Palette: midas2 (near-black + warm off-white + gold accent)
   Fonts: Fraunces (serif display), Inter (body), JetBrains Mono (labels) */

*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0}
/* Smooth scroll on desktop only; on mobile it can interfere with native touch */
@media(min-width:821px){ html{scroll-behavior:smooth} }
/* Perf: keep scrolling on the main document only, offload compositor */
html,body{overscroll-behavior-y:none;-webkit-overflow-scrolling:touch}
/* Reduce paint work on offscreen sections after initial hero */
@media(max-width:820px){
  section:not(.hero):not(.leap){
    content-visibility:auto;
    contain-intrinsic-size:1200px;
  }
}

:root{
  --bg:#0A0A0B;
  --bg-2:#0F0F13;
  --bg-3:#141419;
  --bg-band:#0D0D10;
  --card:#131318;
  --card-2:#191921;
  --text:#F5F5F0;
  --text-2:#B8B8B0;
  --text-3:#7A7A75;
  --border:rgba(255,255,255,.08);
  --border-2:rgba(255,255,255,.14);
  --border-3:rgba(255,255,255,.22);
  --gold:#F5C443;
  --gold-2:#F5D060;
  --gold-dim:rgba(245,196,67,.28);
  --gold-glow:rgba(245,196,67,.10);
  --green:#22C55E;
  --orange:#F97316;
  --violet:#A78BFA;
  --cyan:#22D3EE;
  --blue:#4A9EFF;
  --red:#F5675A;

  --f-serif:'Fraunces',Georgia,serif;
  --f-sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --f-mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;

  --max:1240px;
  --r-sm:8px;
  --r-md:12px;
  --r-lg:16px;
  --r-xl:20px;
  --r-full:999px;
}

body{
  font-family:var(--f-sans);
  background:var(--bg);
  color:var(--text);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  font-size:16px;
  line-height:1.55;
}

.wrap{max-width:var(--max);margin:0 auto;padding:0 40px}
@media(max-width:720px){.wrap{padding:0 24px}}

a{color:var(--text);text-decoration:none;transition:color .18s ease}
a:hover{color:var(--gold)}

.eyebrow{
  font-family:var(--f-mono);
  font-size:11px;
  font-weight:500;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:32px;
}
.eyebrow-mute{color:var(--text-3)}

.section-h{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(40px,5.5vw,72px);
  line-height:1.02;
  letter-spacing:-.02em;
  color:var(--text);
  margin:0 0 48px;
  max-width:960px;
}
.section-h em{font-style:italic;color:var(--gold);font-weight:500}

.lead{
  font-size:19px;
  line-height:1.6;
  color:var(--text-2);
  max-width:720px;
  margin:0 0 40px;
}

.figure-foot{
  margin-top:32px;
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.06em;
  color:var(--text-3);
  line-height:1.6;
  text-transform:uppercase;
}
.figure-foot a{color:var(--text-2);text-decoration:underline;text-decoration-color:var(--border-2)}

/* ================== NAV ================== */
.nav{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;
  padding:20px 40px;
  background:rgba(10,10,11,.72);
  backdrop-filter:saturate(160%) blur(12px);
  -webkit-backdrop-filter:saturate(160%) blur(12px);
  border-bottom:1px solid var(--border);
}
.brand{display:flex;align-items:center;gap:10px;color:var(--text);font-family:var(--f-serif);font-size:20px;font-weight:600;letter-spacing:-.01em}
.brand:hover{color:var(--gold)}
.nav-links{display:flex;gap:28px}
.nav-links a{
  font-family:var(--f-mono);
  font-size:12px;
  letter-spacing:.10em;
  text-transform:uppercase;
  color:var(--text-2);
}
.nav-cta{
  font-family:var(--f-mono);
  font-size:12px;
  font-weight:500;
  letter-spacing:.10em;
  text-transform:uppercase;
  padding:10px 18px;
  border-radius:var(--r-full);
  background:var(--gold);
  color:var(--bg);
}
.nav-cta:hover{background:var(--gold-2);color:var(--bg)}
@media(max-width:820px){.nav-links{display:none}.nav{padding:16px 24px}}

/* ================== HERO ================== */
.hero{
  padding:180px 0 140px;
  border-bottom:1px solid var(--border);
}
.live-badge{
  display:inline-flex;align-items:center;gap:10px;
  padding:8px 16px;
  border-radius:var(--r-full);
  border:1px solid var(--border-2);
  background:rgba(0,0,0,.4);
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--text);
  margin-bottom:40px;
}
.live-dot{
  width:8px;height:8px;border-radius:50%;
  background:var(--green);
  box-shadow:0 0 0 3px rgba(34,197,94,.20);
  animation:pulse 2s ease-in-out infinite;
}
@keyframes pulse{50%{box-shadow:0 0 0 6px rgba(34,197,94,0)}}
/* Disable pulse on mobile to reduce initial-load paint work */
@media(max-width:820px){ .live-dot{animation:none} }

.hero-h{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(56px,10vw,128px);
  line-height:.96;
  letter-spacing:-.035em;
  margin:0 0 40px;
  color:var(--text);
  max-width:1160px;
}
.hero-h em{font-style:italic;color:var(--gold);font-weight:500}

.hero-sub{
  font-family:var(--f-sans);
  font-size:22px;
  line-height:1.5;
  color:var(--text-2);
  max-width:780px;
  margin:0 0 56px;
}

.hero-meta{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  border-top:1px solid var(--border);
  padding-top:36px;
  max-width:900px;
}
.hero-meta > div{
  padding-right:28px;
  border-right:1px solid var(--border);
}
.hero-meta > div:last-child{border-right:none;padding-right:0;padding-left:28px}
.hero-meta > div:first-child{padding-left:0}
.hero-meta > div:nth-child(2){padding-left:28px}
.hero-meta .k{
  display:block;
  font-family:var(--f-serif);
  font-size:36px;
  font-weight:500;
  letter-spacing:-.01em;
  color:var(--gold);
  margin-bottom:8px;
  line-height:1;
}
.hero-meta .v{
  display:block;
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--text-2);
}
@media(max-width:720px){
  .hero{padding:120px 0 80px}
  .hero-meta{grid-template-columns:1fr;gap:24px;border-top:1px solid var(--border);padding-top:28px}
  .hero-meta > div{border-right:none;border-bottom:1px solid var(--border);padding:0 0 24px 0!important}
  .hero-meta > div:last-child{border-bottom:none;padding-bottom:0!important}
}

/* ================== GO X — THE ONE MOMENT ================== */
.gox{
  padding:140px 0;
  border-bottom:1px solid var(--border);
  background:var(--bg-2);
}
.gox-tag{
  display:inline-flex;align-items:center;gap:10px;
  padding:8px 16px;
  border-radius:var(--r-full);
  border:1px solid var(--border-2);
  background:rgba(0,0,0,.4);
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--text);
  margin-bottom:36px;
}
.gox-h{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(48px,7vw,96px);
  line-height:1.02;
  letter-spacing:-.03em;
  color:var(--text);
  margin:0 0 32px;
  max-width:1160px;
}
.gox-h em{font-style:italic;color:var(--gold);font-weight:500}
.gox-sub{
  font-size:20px;
  line-height:1.55;
  color:var(--text-2);
  max-width:780px;
  margin:0 0 64px;
}

.gox-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-bottom:80px;
}
.gnum{
  padding:32px 28px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--r-lg);
}
.gnum-n{
  font-family:var(--f-serif);
  font-size:clamp(44px,4.5vw,60px);
  font-weight:500;
  line-height:1;
  letter-spacing:-.03em;
  color:var(--gold);
  margin-bottom:16px;
}
.gnum-l{
  font-family:var(--f-mono);
  font-size:11px;
  font-weight:500;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--text-2);
  line-height:1.5;
}
@media(max-width:900px){.gox-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.gox-stats{grid-template-columns:1fr}}

.gox-steps{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-bottom:56px;
}
.gstep{
  padding:32px 28px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--r-lg);
}
.gstep-n{
  font-family:var(--f-mono);
  font-size:12px;
  font-weight:500;
  letter-spacing:.14em;
  color:var(--gold);
  margin-bottom:18px;
}
.gstep-h{
  font-family:var(--f-serif);
  font-size:22px;
  font-weight:600;
  line-height:1.15;
  color:var(--text);
  margin:0 0 12px;
}
.gstep-p{
  font-size:14px;
  line-height:1.55;
  color:var(--text-2);
  margin:0;
}
@media(max-width:900px){.gox-steps{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.gox-steps{grid-template-columns:1fr}}

.gox-caption{
  font-family:var(--f-mono);
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--text-3);
  margin-top:24px;
}

/* ================== BIG IDEA ================== */
.idea{padding:140px 0;border-bottom:1px solid var(--border)}
.idea-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.tile{
  padding:44px 36px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  min-height:280px;
  display:flex;flex-direction:column;
}
.tile-cap{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:24px;
}
.tile-h{
  font-family:var(--f-serif);
  font-size:36px;
  font-weight:500;
  line-height:1.05;
  color:var(--text);
  margin-bottom:20px;
}
.tile-h em{font-style:italic;color:var(--gold);font-weight:500}
.tile p{
  font-size:15px;
  line-height:1.55;
  color:var(--text-2);
  margin:0;
}
@media(max-width:820px){.idea-grid{grid-template-columns:1fr}}

/* ================== WHY NOW ================== */
.whynow{padding:140px 0;border-bottom:1px solid var(--border);background:var(--bg-2)}
.whynow-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  margin-bottom:32px;
}
.wn-card{
  padding:44px 36px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--r-xl);
}
.wn-num{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(64px,8vw,108px);
  line-height:.95;
  letter-spacing:-.03em;
  color:var(--gold);
  margin-bottom:24px;
}
.wn-card p{font-size:15px;line-height:1.6;color:var(--text-2);margin:0}
.whynow-tag{
  padding:44px 40px;
  border:1px solid var(--gold-dim);
  border-radius:var(--r-xl);
  background:linear-gradient(180deg,var(--gold-glow),transparent);
}
.whynow-tag-h{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:28px;
  line-height:1.2;
  letter-spacing:-.01em;
  color:var(--text);
  margin-bottom:16px;
}
.whynow-tag-h em{font-style:italic;color:var(--gold);font-weight:500}
.whynow-tag p{font-size:15px;line-height:1.6;color:var(--text-2);margin:0;max-width:820px}
@media(max-width:820px){.whynow-grid{grid-template-columns:1fr}}

/* ================== QUADRANT (which businesses first) ================== */
.quad{padding:140px 0;border-bottom:1px solid var(--border)}
.quad-viz{
  padding:40px 32px;
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  background:var(--card);
}
.quad-viz svg{width:100%;height:auto;display:block}

/* ================== ERAS ================== */
.chart-page{padding:140px 0;border-bottom:1px solid var(--border);background:var(--bg-2)}
.eras{
  display:grid;
  grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;
  gap:14px;
  margin-bottom:24px;
}
.era-col{display:flex;flex-direction:column}
.era-head{
  padding:24px 22px;
  border:1px solid var(--border);
  border-radius:var(--r-md);
  background:var(--card);
  margin-bottom:24px;
  min-height:180px;
}
.era-title{
  font-family:var(--f-serif);
  font-size:22px;
  font-weight:500;
  line-height:1.15;
  margin-bottom:8px;
  color:var(--text);
}
.era-gold{color:var(--gold)}
.era-red-t{color:var(--red)}
.era-sub{font-size:13px;color:var(--text-2);margin-bottom:12px;line-height:1.4}
.era-firm{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;color:var(--text-3);text-transform:uppercase;margin-bottom:16px}
.era-price{font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;color:var(--text-2);text-transform:uppercase}
.era-price-gold{color:var(--gold)}
.era-bar{
  flex:1;
  display:flex;align-items:center;justify-content:center;
  border-radius:8px 8px 0 0;
  font-family:var(--f-serif);
  font-size:44px;
  color:var(--text);
  align-self:end;width:100%;
}
.era-bar-1{height:60px;background:linear-gradient(180deg,#2A2A32,#1A1A20)}
.era-bar-2{height:130px;background:linear-gradient(180deg,#3A3A44,#22222A)}
.era-bar-3{height:210px;background:linear-gradient(180deg,#7A3238,#3E1A1E)}
.era-bar-3 span{color:var(--text)}
.era-bar-4{height:300px;background:linear-gradient(180deg,var(--gold),#A17E1F)}
.era-bar-4 span{color:var(--bg)}
.era-cap{
  text-align:center;
  padding:12px 8px;
  border-top:1px solid var(--border);
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--text-2);
}
.era-arrow{
  display:flex;align-items:center;justify-content:center;
  font-family:var(--f-mono);
  color:var(--text-3);
  font-size:16px;
  padding-top:90px;
}
@media(max-width:1000px){
  .eras{grid-template-columns:1fr 1fr;gap:12px}
  .era-arrow{display:none}
  .era-head{min-height:0}
}
@media(max-width:520px){.eras{grid-template-columns:1fr}}

/* ================== MAP + VENN SVG WRAPPERS ================== */
.map-page,.venn-page{padding:140px 0;border-bottom:1px solid var(--border)}
.map-page{background:var(--bg)}
.venn-page{background:var(--bg-2)}
.map-viz,.venn-viz{
  padding:40px 32px;
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  background:var(--card);
}
.map-viz svg,.venn-viz svg{width:100%;height:auto;display:block}

/* ================== ARCHITECTURE ================== */
.arch-page{padding:140px 0;border-bottom:1px solid var(--border)}
.arch-viz{
  padding:44px 32px;
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  background:var(--card);
}
.arch-row{
  display:grid;
  grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;
  gap:12px;
  margin-bottom:16px;
}
.arch-row-2{
  grid-template-columns:1fr 1fr 1fr 1fr;
  gap:14px;margin-top:12px;padding-left:11%;
}
.arch-box{
  padding:22px 22px;
  border:1px solid var(--border);
  border-radius:var(--r-md);
  background:var(--card-2);
}
.arch-box-gold{
  background:linear-gradient(180deg,var(--gold-glow),transparent);
  border-color:var(--gold-dim);
}
.arch-box-red{
  background:linear-gradient(180deg,rgba(245,103,90,.12),transparent);
  border-color:rgba(245,103,90,.32);
}
.arch-h{
  font-family:var(--f-serif);
  font-size:20px;
  font-weight:600;
  color:var(--text);
  margin-bottom:8px;
  line-height:1.15;
}
.arch-gold{color:var(--gold)}
.arch-violet{color:var(--violet)}
.arch-box p{font-size:13px;color:var(--text-2);line-height:1.45;margin:0}
.arch-h-sm{
  font-family:var(--f-serif);
  font-size:17px;
  font-weight:600;
  color:var(--text);
  margin-bottom:6px;
}
.arch-arrow{
  display:flex;align-items:center;justify-content:center;
  font-family:var(--f-mono);
  color:var(--text-3);
  font-size:14px;
}
.arch-loop{
  margin-top:24px;
  padding:16px 20px;
  border-top:1px dashed var(--gold-dim);
  color:var(--gold);
  font-family:var(--f-mono);
  font-size:12px;
  letter-spacing:.10em;
  text-transform:uppercase;
  text-align:center;
}
@media(max-width:1000px){
  .arch-row,.arch-row-2{grid-template-columns:1fr 1fr;gap:10px;padding-left:0}
  .arch-arrow{display:none}
}
@media(max-width:520px){.arch-row,.arch-row-2{grid-template-columns:1fr}}

/* ================== COVERAGE ================== */
.cov-page{padding:140px 0;border-bottom:1px solid var(--border);background:var(--bg-2)}
.cov-viz{
  display:grid;
  grid-template-columns:1.6fr 1fr;
  gap:24px;
  padding:40px 36px;
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  background:var(--card);
}
.cov-chart{display:flex;flex-direction:column;gap:14px}
.cov-row{display:grid;grid-template-columns:100px 1fr;align-items:center;gap:16px}
.cov-label{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--text-2);
}
.cov-bar{
  display:flex;
  height:56px;
  border-radius:8px;
  overflow:hidden;
  background:var(--card-2);
  border:1px solid var(--border);
}
.cov-seg{
  display:flex;align-items:center;justify-content:center;
  font-family:var(--f-mono);
  font-size:13px;
  font-weight:600;
  min-width:0;
}
.cov-seg-gold{background:var(--gold);color:var(--bg)}
.cov-seg-amber{background:rgba(245,196,67,.35);color:var(--text)}
.cov-seg-gray{background:#3A3A42;color:var(--text-2)}
.cov-axis{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  margin-left:116px;
  font-family:var(--f-mono);
  font-size:11px;
  color:var(--text-3);
  padding-top:6px;
}
.cov-axis span:last-child{text-align:right}
.cov-legend{
  display:flex;gap:20px;flex-wrap:wrap;
  margin-left:116px;margin-top:16px;
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--text-2);
}
.cov-legend span{display:flex;align-items:center;gap:8px}
.dot{width:10px;height:10px;border-radius:2px;display:inline-block}
.dot-gold{background:var(--gold)}
.dot-amber{background:rgba(245,196,67,.35)}
.dot-gray{background:#3A3A42}
.cov-caption{
  padding:32px 28px;
  border:1px solid var(--gold-dim);
  border-radius:var(--r-lg);
  background:linear-gradient(180deg,var(--gold-glow),transparent);
}
.cov-caption h4{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:22px;
  line-height:1.2;
  color:var(--gold);
  margin:0 0 20px;
}
.cov-caption p{font-size:14px;line-height:1.55;color:var(--text-2);margin:0 0 14px}
.cov-caption p:last-child{margin-bottom:0}
@media(max-width:900px){
  .cov-viz{grid-template-columns:1fr}
  .cov-axis,.cov-legend{margin-left:0}
}

/* ================== SIMULATOR LOOP ================== */
.sim-page{padding:140px 0;border-bottom:1px solid var(--border)}
.sim-viz{
  padding:44px 32px;
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  background:var(--card);
}
.sim-row{
  display:grid;
  grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;
  gap:14px;
  margin-bottom:16px;
}
.sim-step{
  padding:22px 20px;
  border:1px solid var(--border);
  border-radius:var(--r-md);
  background:var(--card-2);
  min-height:96px;
  display:flex;flex-direction:column;justify-content:center;
}
.sim-step-gold{
  background:linear-gradient(180deg,var(--gold-glow),transparent);
  border-color:var(--gold-dim);
}
.sim-n{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.14em;
  color:var(--gold);
  margin-bottom:8px;
}
.sim-t{
  font-family:var(--f-serif);
  font-size:18px;
  font-weight:600;
  line-height:1.15;
  color:var(--text);
}
.sim-a{
  display:flex;align-items:center;justify-content:center;
  font-family:var(--f-mono);
  color:var(--text-3);
}
.sim-return{
  margin-top:20px;
  padding:16px 20px;
  border-top:1px dashed var(--gold-dim);
  color:var(--gold);
  font-family:var(--f-mono);
  font-size:12px;
  letter-spacing:.10em;
  text-transform:uppercase;
  text-align:center;
}
@media(max-width:1000px){
  .sim-row{grid-template-columns:1fr 1fr;gap:10px}
  .sim-a{display:none}
}
@media(max-width:520px){.sim-row{grid-template-columns:1fr}}

/* ================== OPSBENCH TABLE ================== */
.opsbench{padding:140px 0;border-bottom:1px solid var(--border);background:var(--bg-2)}
.bench-table{
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  overflow:hidden;
  background:var(--card);
}
.bench-row{
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr 1fr;
  padding:18px 24px;
  border-top:1px solid var(--border);
  font-size:15px;
  color:var(--text);
  align-items:center;
}
.bench-row > div:not(:first-child){font-family:var(--f-mono);font-size:13px;letter-spacing:.04em;color:var(--text-2)}
.bench-row:first-child{border-top:none}
.bench-head{
  font-family:var(--f-mono)!important;
  font-size:11px!important;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--text-3);
  background:var(--card-2);
}
.bench-head > div{font-family:var(--f-mono)!important;font-size:11px!important;color:var(--text-3)!important}
.bench-hero{
  background:linear-gradient(180deg,var(--gold-glow),transparent);
  color:var(--gold);
}
.bench-hero > div{color:var(--gold)!important}

/* ================== DEAL ================== */
.deal{padding:140px 0;border-bottom:1px solid var(--border)}
.deal-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.deal-card{
  padding:36px 32px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--r-xl);
}
.deal-card-gold{
  background:linear-gradient(180deg,var(--gold-glow),transparent);
  border-color:var(--gold-dim);
}
.deal-role{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:20px;
}
.deal-line{
  font-family:var(--f-serif);
  font-size:22px;
  font-weight:600;
  line-height:1.2;
  color:var(--text);
  margin:0 0 24px;
}
.deal-card ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}
.deal-card li{
  position:relative;
  padding-left:22px;
  font-size:14px;
  line-height:1.5;
  color:var(--text-2);
}
.deal-card li::before{
  content:"";
  position:absolute;left:0;top:9px;
  width:6px;height:6px;border-radius:50%;
  background:var(--gold);
}
@media(max-width:900px){.deal-grid{grid-template-columns:1fr}}

/* ================== PRODUCTS ================== */
.products{padding:140px 0;border-bottom:1px solid var(--border);background:var(--bg-2)}
.products-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
.product{
  padding:44px 32px;
  border-right:1px solid var(--border);
}
.product:last-child{border-right:none}
.product-name{
  font-family:var(--f-serif);
  font-size:36px;
  font-weight:500;
  color:var(--gold);
  margin-bottom:20px;
  font-style:italic;
}
.product-lead{
  font-size:17px;
  line-height:1.5;
  color:var(--text);
  margin:0 0 16px;
}
.product-note{
  font-size:14px;
  line-height:1.55;
  color:var(--text-2);
  margin:0;
}
.products-foot{
  margin-top:40px;
  font-family:var(--f-serif);
  font-size:22px;
  font-weight:500;
  color:var(--text-2);
}
.products-foot strong{color:var(--gold);font-weight:500;font-style:italic}
@media(max-width:900px){
  .products-grid{grid-template-columns:1fr}
  .product{border-right:none;border-bottom:1px solid var(--border)}
  .product:last-child{border-bottom:none}
}

/* ================== MODEL ================== */
.model{padding:140px 0;border-bottom:1px solid var(--border)}
.years{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.year{
  padding:44px 36px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--r-xl);
}
.year-hero{
  background:linear-gradient(180deg,var(--gold-glow),transparent);
  border-color:var(--gold-dim);
}
.year-label{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--text-2);
  margin-bottom:20px;
}
.year-num{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:56px;
  line-height:1;
  letter-spacing:-.02em;
  color:var(--gold);
  margin-bottom:16px;
}
.year-note{
  font-family:var(--f-mono);
  font-size:12px;
  letter-spacing:.06em;
  color:var(--text-2);
  text-transform:uppercase;
  line-height:1.5;
}
@media(max-width:900px){.years{grid-template-columns:1fr}}

/* ================== NEXT 90 DAYS ================== */
.next90{padding:140px 0;border-bottom:1px solid var(--border);background:var(--bg-2)}
.next-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.next-card{
  padding:36px 32px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--r-xl);
}
.next-card-gold{
  background:linear-gradient(180deg,var(--gold-glow),transparent);
  border-color:var(--gold-dim);
}
.next-days{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:16px;
}
.next-title{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:32px;
  line-height:1.1;
  color:var(--text);
  margin-bottom:24px;
}
.next-card ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}
.next-card li{
  position:relative;
  padding-left:22px;
  font-size:14px;
  line-height:1.5;
  color:var(--text-2);
}
.next-card li::before{
  content:"";
  position:absolute;left:0;top:9px;
  width:6px;height:6px;border-radius:50%;
  background:var(--gold);
}
@media(max-width:900px){.next-grid{grid-template-columns:1fr}}

/* ================== CLOSE ================== */
.close{padding:180px 0 140px}
.close-inner{text-align:center;max-width:900px;margin:0 auto}
.close-h{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(48px,7vw,88px);
  line-height:1.02;
  letter-spacing:-.03em;
  color:var(--text);
  margin:24px 0 24px;
}
.close-h em{font-style:italic;color:var(--gold);font-weight:500}
.close-sub{
  font-size:19px;
  line-height:1.6;
  color:var(--text-2);
  max-width:640px;
  margin:0 auto 48px;
}
.close-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.btn{
  padding:14px 26px;
  border-radius:var(--r-full);
  font-family:var(--f-mono);
  font-size:12px;
  font-weight:500;
  letter-spacing:.12em;
  text-transform:uppercase;
  transition:transform .15s ease, background .18s ease;
  display:inline-flex;align-items:center;gap:8px;
}
.btn-primary{background:var(--gold);color:var(--bg)}
.btn-primary:hover{background:var(--gold-2);color:var(--bg);transform:translateY(-1px)}
.btn-ghost{
  background:rgba(255,255,255,.03);
  color:var(--text);
  border:1px solid var(--border-2);
}
.btn-ghost:hover{background:rgba(255,255,255,.06);color:var(--gold)}

/* ================== FOOTER ================== */
/* canonical site footer (mirrors base.css) */
.foot{
  padding:60px clamp(20px,4vw,40px) 40px;
  border-top:1px solid var(--border);
  color:var(--text-3);
  font-size:13px;
  background:var(--bg);
}
.foot-inner{ max-width:var(--max); margin:0 auto; }
.foot-top{
  display:grid;
  grid-template-columns:1.4fr repeat(3,1fr);
  gap:40px;
  margin-bottom:48px;
}
.foot-col-title{
  font-family:var(--f-mono);
  font-size:10.5px;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:var(--text-3);
  margin-bottom:14px;
}
.foot-col ul{ list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:10px; }
.foot-col a{ color:var(--text-2); font-size:14px; text-decoration:none; }
.foot-col a:hover{ color:var(--text); }
.foot-col-brand .brand{ margin-bottom:16px; display:inline-flex; }
.foot-tag{ margin:0; max-width:38ch; color:var(--text-3); font-size:13.5px; line-height:1.7; }
.foot-bot{
  padding-top:28px;
  border-top:1px solid var(--border);
  display:flex; justify-content:space-between; align-items:center;
  gap:20px; flex-wrap:wrap; font-size:12px;
}
.foot-note{ color:var(--text-3); }
.foot-bot .mono{ font-family:var(--f-mono); font-size:11px; color:var(--text-3); letter-spacing:.02em; }
@media (max-width:780px){
  .foot-top{ grid-template-columns:1fr 1fr; gap:32px 24px; }
}

/* ================== MOBILE FALLBACKS FOR DIAGRAMS ================== */

/* Default: hide all mobile fallbacks on desktop */
.quad-mobile,.map-mobile,.venn-mobile{display:none}

@media(max-width:820px){
  /* Swap SVG for readable list-based fallback */
  .quad-viz svg,.map-viz svg,.venn-viz svg{display:none}
  .quad-mobile,.map-mobile,.venn-mobile{display:grid;gap:16px}

  .quad-viz,.map-viz,.venn-viz{padding:20px 16px}

  /* ---- Quadrant mobile ---- */
  .quad-card{
    padding:20px 20px 22px;
    border:1px solid var(--border);
    border-radius:14px;
    background:rgba(255,255,255,.015);
  }
  .quad-card-primary{
    background:linear-gradient(180deg,rgba(245,196,67,.10),rgba(245,196,67,.02));
    border-color:rgba(245,196,67,.30);
  }
  .quad-tag{
    display:block;
    font-family:'JetBrains Mono',ui-monospace,monospace;
    font-size:11px;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--gold);
    margin-bottom:14px;
  }
  .quad-tag-muted{color:rgba(245,196,67,.55)}
  .quad-tag-gray{color:var(--text-3)}
  .quad-tag-note{
    display:block;
    margin-top:4px;
    font-size:10.5px;
    letter-spacing:.06em;
    text-transform:none;
    color:var(--text-3);
    font-family:'Inter',sans-serif;
  }
  .quad-list{
    list-style:none;padding:0;margin:0;
    display:flex;flex-wrap:wrap;gap:6px 10px;
    font-family:'Inter',sans-serif;font-size:13.5px;
    color:var(--text-2);
  }
  .quad-list li{
    padding:5px 10px;
    background:rgba(255,255,255,.03);
    border:1px solid var(--border);
    border-radius:999px;
  }
  .quad-list-gray li{color:var(--text-3);background:transparent}
  .quad-anchor{
    color:var(--gold) !important;
    background:rgba(245,196,67,.14) !important;
    border-color:rgba(245,196,67,.35) !important;
    font-family:'Fraunces',serif !important;
    font-weight:600 !important;
    font-size:14.5px !important;
  }

  /* ---- Map mobile ---- */
  .map-card{
    padding:22px 20px;
    border:1px solid var(--border);
    border-radius:14px;
    background:rgba(255,255,255,.015);
  }
  .map-card-red{border-color:rgba(245,103,90,.28);background:linear-gradient(180deg,rgba(245,103,90,.06),transparent)}
  .map-card-gold{border-color:rgba(245,196,67,.30);background:linear-gradient(180deg,rgba(245,196,67,.06),transparent)}
  .map-card-h{
    font-family:'Fraunces',serif;font-style:italic;font-weight:500;
    font-size:24px;color:#F5675A;margin-bottom:4px;
  }
  .map-card-h-gold{color:var(--gold)}
  .map-card-sub{color:var(--text-2);font-size:13px;margin-bottom:14px}
  .map-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}
  .map-list li{
    padding:12px 14px;
    border:1px solid var(--border);
    border-radius:10px;
    background:rgba(255,255,255,.02);
  }
  .map-t{
    display:block;
    font-family:'Fraunces',serif;font-weight:600;font-size:15px;
    color:var(--text);margin-bottom:2px;
  }
  .map-s{
    display:block;
    font-family:'JetBrains Mono',ui-monospace,monospace;
    font-size:11px;letter-spacing:.06em;color:var(--text-3);
  }
  .map-anchor{
    border-color:rgba(245,196,67,.45) !important;
    background:rgba(245,196,67,.10) !important;
  }
  .map-anchor .map-t{color:var(--gold)}
  .map-ghost{opacity:.55}
  .map-ghost .map-t{font-style:italic}

  /* ---- Venn mobile ---- */
  .venn-card{
    padding:22px 20px;
    border:1px solid var(--border);
    border-radius:14px;
    background:rgba(255,255,255,.015);
  }
  .venn-card-gold{border-color:rgba(245,196,67,.28);background:linear-gradient(180deg,rgba(245,196,67,.05),transparent)}
  .venn-card-violet{border-color:rgba(167,139,250,.28);background:linear-gradient(180deg,rgba(167,139,250,.05),transparent)}
  .venn-card-red{border-color:rgba(245,103,90,.28);background:linear-gradient(180deg,rgba(245,103,90,.05),transparent)}
  .venn-card-midas{
    border-color:rgba(245,196,67,.55);
    background:linear-gradient(180deg,rgba(245,196,67,.14),rgba(245,196,67,.02));
  }
  .venn-h{
    font-family:'Fraunces',serif;font-style:italic;font-weight:500;
    font-size:22px;color:var(--text);margin-bottom:4px;
  }
  .venn-card-gold .venn-h{color:var(--gold)}
  .venn-card-violet .venn-h{color:#A78BFA}
  .venn-card-red .venn-h{color:#F5675A}
  .venn-h-midas{color:var(--gold) !important;font-size:28px !important}
  .venn-s{color:var(--text-2);font-size:14px;margin-bottom:10px;line-height:1.5}
  .venn-miss{
    font-family:'JetBrains Mono',ui-monospace,monospace;
    font-size:10.5px;letter-spacing:.08em;
    color:var(--text-3);
    padding-top:10px;
    border-top:1px dashed var(--border);
  }
}

/* ==================================================
   STEVE JOBS REBUILD · new frames
   ================================================== */

.wrap-narrow{max-width:900px;margin:0 auto;padding:0 40px}
@media(max-width:720px){.wrap-narrow{padding:0 24px}}

/* ---------- HERO override (bigger, quieter) ---------- */
.hero{padding:220px 0 180px;position:relative}
.hero .live-badge{margin-bottom:96px}
.hero-h{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(56px,9vw,132px);
  line-height:.98;
  letter-spacing:-.03em;
  color:var(--text);
  margin:0 0 40px;
  max-width:none;
}
.hero-sub{
  font-family:var(--f-serif);
  font-style:italic;
  font-weight:400;
  color:var(--text-2);
  font-size:clamp(20px,2vw,26px);
  line-height:1.4;
  max-width:820px;
  margin:0 0 80px;
}
.hero-scroll{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.24em;
  color:var(--text-3);
  text-transform:uppercase;
  padding-top:32px;
  border-top:1px solid var(--border);
  display:inline-block;
  padding-right:80px;
}
@media(max-width:720px){
  .hero{padding:140px 0 120px}
  .hero .live-badge{margin-bottom:60px}
  .hero-sub{margin-bottom:56px}
}

/* ==================================================
   FRAME 2 · LEAP
   ================================================== */
.leap{
  padding:160px 0;
  background:linear-gradient(180deg,var(--bg),var(--bg-2));
  border-bottom:1px solid var(--border);
}
.leap-h{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(44px,6.5vw,88px);
  line-height:1.02;
  letter-spacing:-.025em;
  color:var(--text);
  margin:0 0 80px;
  max-width:1100px;
}
.leap-h em{font-style:italic;color:var(--gold);font-weight:500}

.leap-cols{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:32px;
  margin-bottom:80px;
}
.leap-col{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  padding:44px 40px;
}
.leap-col-gold{
  border-color:rgba(245,196,67,.32);
  background:linear-gradient(180deg,rgba(245,196,67,.06),rgba(245,196,67,.01));
}
.leap-cap{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--text-3);
  margin-bottom:24px;
}
.leap-cap-gold{color:var(--gold)}
.leap-col p{
  font-family:var(--f-serif);
  font-size:22px;
  line-height:1.45;
  color:var(--text);
  margin:0 0 18px;
  font-weight:400;
}
.leap-col p em{font-style:italic;color:var(--gold);font-weight:500}
.leap-col-gold p{color:var(--text)}
.leap-note{
  font-family:var(--f-sans) !important;
  font-size:14px !important;
  color:var(--text-2) !important;
  line-height:1.6 !important;
  margin-top:20px !important;
  padding-top:20px;
  border-top:1px solid var(--border);
}

.leap-punch{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(24px,3vw,36px);
  line-height:1.35;
  color:var(--text);
  max-width:1000px;
  margin:0;
  padding-top:60px;
  border-top:1px solid var(--border);
}
.leap-punch em{font-style:italic;color:var(--gold);font-weight:500}

/* Tennis pull-quote — theatrical closer of the Leap section */
.leap-tennis{
  margin:120px auto 0;
  padding:100px 0 40px;
  max-width:1080px;
  text-align:center;
  position:relative;
}
.leap-tennis::before{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:56px;
  height:1px;
  background:var(--gold);
  opacity:.6;
}
.leap-tennis-eyebrow{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--text-dim);
  margin-bottom:48px;
}
.leap-tennis-q{
  margin:0;
  padding:0;
  border:0;
  quotes:none;
  font-family:var(--f-serif);
  font-weight:500;
  line-height:1.14;
  color:var(--text);
  letter-spacing:-.015em;
  display:flex;
  flex-direction:column;
  gap:20px;
}
.leap-tennis-line{
  display:block;
  font-size:clamp(28px,3.6vw,44px);
  color:var(--text);
}
.leap-tennis-line:nth-of-type(2){
  color:var(--text-dim);
}
.leap-tennis-punch{
  display:block;
  margin-top:32px;
  font-style:italic;
  font-weight:500;
  font-size:clamp(40px,5.6vw,72px);
  line-height:1.05;
  color:var(--gold);
  letter-spacing:-.02em;
}

@media(max-width:900px){
  .leap{padding:120px 0}
  .leap-cols{grid-template-columns:1fr;gap:20px;margin-bottom:56px}
  .leap-col{padding:32px 26px}
  .leap-col p{font-size:19px}
  .leap-tennis{margin-top:80px;padding:64px 0 20px}
  .leap-tennis-eyebrow{margin-bottom:32px}
  .leap-tennis-q{gap:14px}
  .leap-tennis-punch{margin-top:22px}
  .leap-punch{padding-top:40px}
}

/* ==================================================
   FRAME 3 · EVIDENCE — slow reveal
   ================================================== */
.evidence{
  padding:160px 0;
  background:var(--bg);
  border-bottom:1px solid var(--border);
}
.ev-list{
  margin-top:24px;
  display:flex;
  flex-direction:column;
}
.ev-row{
  display:grid;
  grid-template-columns:280px 1fr;
  gap:60px;
  padding:56px 0;
  border-top:1px solid var(--border);
  align-items:baseline;
}
.ev-row:last-child{border-bottom:1px solid var(--border)}
.ev-num{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(48px,6vw,88px);
  line-height:1;
  letter-spacing:-.02em;
  color:var(--gold);
  font-variant-numeric:tabular-nums;
}
.ev-body{max-width:720px}
.ev-line{
  font-family:var(--f-serif);
  font-size:clamp(22px,2.6vw,32px);
  line-height:1.25;
  color:var(--text);
  font-weight:500;
  letter-spacing:-.01em;
}
.ev-punch{
  font-family:var(--f-serif);
  font-size:clamp(22px,2.6vw,32px);
  line-height:1.25;
  color:var(--gold);
  margin-top:6px;
}
.ev-punch em{font-style:italic;font-weight:500}
.ev-note{
  font-size:14.5px;
  line-height:1.65;
  color:var(--text-2);
  margin-top:20px;
  max-width:640px;
}
.ev-tag{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(24px,3vw,36px);
  line-height:1.4;
  color:var(--text);
  margin:80px 0 24px;
  max-width:1000px;
}
.ev-tag em{font-style:italic;color:var(--gold);font-weight:500}

@media(max-width:820px){
  .evidence{padding:120px 0}
  .ev-row{grid-template-columns:1fr;gap:16px;padding:36px 0}
  .ev-num{font-size:56px}
  .ev-tag{margin-top:56px}
}

/* ==================================================
   FRAME 4 · TIERS (worlds / apps / tasks)
   ================================================== */
.tiers{
  padding:160px 0;
  background:var(--bg-2);
  border-bottom:1px solid var(--border);
}
.tiers-cols{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:24px;
  align-items:end;
  margin-top:24px;
}
.tier{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  padding:32px 28px 0;
  display:flex;
  flex-direction:column;
  min-height:520px;
}
.tier-hero{
  border-color:rgba(245,196,67,.42);
  background:linear-gradient(180deg,rgba(245,196,67,.08),rgba(245,196,67,.01));
}
.tier-cap{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--text-3);
  margin-bottom:14px;
}
.tier-hero .tier-cap{color:var(--gold)}
.tier-h{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:44px;
  line-height:1;
  letter-spacing:-.02em;
  color:var(--text);
  margin-bottom:16px;
}
.tier-hero .tier-h{color:var(--gold);font-style:italic}
.tier-price{
  font-family:var(--f-mono);
  font-size:13px;
  color:var(--text-2);
  letter-spacing:.04em;
  margin-bottom:24px;
}
.tier-note{
  font-size:14.5px;
  color:var(--text-2);
  line-height:1.6;
  margin-bottom:32px;
}
.tier-bar{
  margin-top:auto;
  border-radius:8px 8px 0 0;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding-bottom:24px;
  font-family:var(--f-serif);
  font-weight:500;
  font-size:64px;
  color:var(--text);
  letter-spacing:-.02em;
  min-height:60px;
}
.tier-bar-1{height:100px;background:linear-gradient(180deg,#2A2A32,#1A1A20)}
.tier-bar-2{height:180px;background:linear-gradient(180deg,#3A3A44,#22222A)}
.tier-bar-3{height:300px;background:linear-gradient(180deg,var(--gold),#A17E1F);color:var(--bg)}

.tiers-tag{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(22px,2.6vw,32px);
  line-height:1.4;
  color:var(--text);
  margin:80px 0 24px;
  max-width:1000px;
}
.tiers-tag em{font-style:italic;color:var(--gold);font-weight:500}

@media(max-width:900px){
  .tiers{padding:120px 0}
  .tiers-cols{grid-template-columns:1fr;gap:16px}
  .tier{min-height:auto;padding:28px 24px 0}
  .tier-bar-1{height:70px}
  .tier-bar-2{height:120px}
  .tier-bar-3{height:180px}
}

/* ==================================================
   FRAME 6 · THE LINE (positioning)
   ================================================== */
.line{
  padding:160px 0;
  background:var(--bg);
  border-bottom:1px solid var(--border);
}
.line-lede{
  font-family:var(--f-serif);
  font-size:clamp(18px,1.6vw,22px);
  line-height:1.5;
  color:var(--text-2);
  max-width:640px;
  margin:20px 0 64px;
}

/* Three-card grid */
.gym-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
  margin-top:32px;
}
.gym-card{
  position:relative;
  padding:36px 32px 32px;
  border:1px solid var(--border);
  background:linear-gradient(180deg,#131318,#0F0F13);
  border-radius:14px;
  display:flex;
  flex-direction:column;
  min-height:520px;
}
.gym-card-gold{
  border-color:rgba(245,196,67,.35);
  background:linear-gradient(180deg,rgba(245,196,67,.06),rgba(245,196,67,.02) 55%,#0F0F13);
  box-shadow:0 0 0 1px rgba(245,196,67,.08), 0 20px 60px -20px rgba(245,196,67,.25);
}
.gym-num{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.16em;
  color:var(--text-3);
  margin-bottom:20px;
}
.gym-num-gold{ color:var(--gold); }
.gym-visual{
  width:100%;
  aspect-ratio: 200/160;
  margin-bottom:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.015);
  border:1px solid rgba(255,255,255,.04);
  border-radius:10px;
  overflow:hidden;
}
.gym-visual svg{ width:100%; height:100%; display:block; }
.gym-visual-world{
  background:radial-gradient(circle at 50% 55%, rgba(245,196,67,.10), transparent 65%);
  border-color:rgba(245,196,67,.15);
}
.gym-label{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--text-3);
  margin-bottom:14px;
}
.gym-label-gold{ color:var(--gold); }
.gym-what{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(24px,2.2vw,30px);
  line-height:1.2;
  letter-spacing:-.015em;
  color:var(--text);
  margin-bottom:18px;
}
.gym-what em{ font-style:italic; color:var(--text); font-weight:500; }
.gym-what-gold{ color:var(--gold); }
.gym-what-gold em{ font-style:italic; color:var(--gold); }
.gym-body{
  font-family:var(--f-serif);
  font-size:16px;
  line-height:1.55;
  color:var(--text-2);
  margin-bottom:24px;
  flex-grow:1;
}
.gym-firms{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--text-3);
  padding-top:20px;
  border-top:1px solid var(--border);
  margin-top:auto;
}
.gym-firms-gold{ color:var(--gold); border-top-color:rgba(245,196,67,.28); }

.line-tag{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(22px,2.6vw,30px);
  line-height:1.4;
  color:var(--text-2);
  margin:80px 0 0;
  max-width:820px;
}
.line-tag em{font-style:italic;color:var(--gold);font-weight:500}

@media(max-width:1080px){
  .gym-grid{ grid-template-columns:1fr; gap:20px; max-width:640px; }
  .gym-card{ min-height:0; }
}
@media(max-width:820px){
  .line{padding:120px 0}
  .line-lede{ margin:16px 0 44px; }
}

/* ==================================================
   FRAME 7 · GO X payoff addition
   ================================================== */
.gox-h{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(38px,5.5vw,72px);
  line-height:1.05;
  letter-spacing:-.02em;
  color:var(--text);
  margin:0 0 64px;
  max-width:1100px;
}
.gox-payoff{
  margin-top:80px;
  padding-top:64px;
  border-top:1px solid var(--border);
  max-width:900px;
}
.gox-payoff p{
  font-family:var(--f-serif);
  font-size:22px;
  line-height:1.5;
  color:var(--text-2);
  margin:0 0 24px;
  font-weight:400;
}
.gox-payoff-punch{
  font-family:var(--f-serif) !important;
  font-weight:500 !important;
  font-size:clamp(36px,5vw,60px) !important;
  line-height:1.1 !important;
  letter-spacing:-.02em;
  color:var(--text) !important;
  margin:32px 0 0 !important;
}
.gox-payoff-punch-gold{
  color:var(--gold) !important;
  font-style:italic;
  margin-top:4px !important;
}
.gox-payoff-punch em{font-style:italic}
.gox-payoff-sub{
  font-family:var(--f-sans) !important;
  font-size:15px !important;
  line-height:1.7 !important;
  color:var(--text-2) !important;
  margin-top:40px !important;
  max-width:720px;
}

/* ==================================================
   FRAME 8 · EPISODE #28,431
   ================================================== */
.episode{
  padding:180px 0;
  background:var(--bg-2);
  border-bottom:1px solid var(--border);
}
.ep-h{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(44px,6vw,80px);
  line-height:1.02;
  letter-spacing:-.025em;
  color:var(--text);
  margin:0 0 24px;
}
.ep-h em{font-style:italic;color:var(--gold);font-weight:500}
.ep-sub{
  font-size:17px;
  line-height:1.65;
  color:var(--text-2);
  margin:0 0 64px;
  max-width:680px;
}

.ep-panel{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  padding:32px 36px;
  margin-bottom:20px;
}
.ep-panel-gold{
  border-color:rgba(245,196,67,.38);
  background:linear-gradient(180deg,rgba(245,196,67,.07),rgba(245,196,67,.01));
}
.ep-panel-human{
  border-color:rgba(167,139,250,.32);
  background:linear-gradient(180deg,rgba(167,139,250,.06),rgba(167,139,250,.01));
}
.ep-panel-score{
  border-color:rgba(34,197,94,.32);
  background:linear-gradient(180deg,rgba(34,197,94,.06),rgba(34,197,94,.01));
}
.ep-panel-cap{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--text-3);
  margin-bottom:12px;
}
.ep-panel-h{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:30px;
  line-height:1;
  letter-spacing:-.015em;
  color:var(--text);
  margin-bottom:24px;
}
.ep-panel-gold .ep-panel-h{color:var(--gold);font-style:italic}
.ep-panel-human .ep-panel-h{color:#A78BFA;font-style:italic}
.ep-panel-score .ep-panel-h{color:#22C55E;font-style:italic}

.ep-panel-body{}
.ep-line{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:24px;
  padding:12px 0;
  border-bottom:1px dashed var(--border);
}
.ep-line:last-child{border-bottom:none}
.ep-line-hero{
  padding-top:24px;
  margin-top:12px;
  border-top:1px solid var(--border);
  border-bottom:none;
}
.ep-k{
  font-family:var(--f-mono);
  font-size:12px;
  letter-spacing:.06em;
  color:var(--text-3);
  text-transform:uppercase;
}
.ep-v{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:20px;
  color:var(--text);
  font-variant-numeric:tabular-nums;
  text-align:right;
}
.ep-v-gold{color:var(--gold)}
.ep-v-huge{font-size:44px;color:#22C55E;font-style:italic}
.ep-action{
  font-family:var(--f-serif);
  font-size:20px;
  line-height:1.5;
  color:var(--text);
  margin-bottom:16px;
}
.ep-override{color:var(--text)}
.ep-conf{
  font-family:var(--f-mono);
  font-size:12px;
  color:var(--text-3);
  letter-spacing:.06em;
}

.ep-tag{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(24px,3vw,36px);
  line-height:1.4;
  color:var(--text);
  margin:64px 0 0;
  padding-top:48px;
  border-top:1px solid var(--border);
}
.ep-tag em{font-style:italic;color:var(--gold);font-weight:500}

@media(max-width:720px){
  .episode{padding:120px 0}
  .ep-panel{padding:26px 22px}
  .ep-panel-h{font-size:24px}
  .ep-action{font-size:17px}
  .ep-v{font-size:17px}
  .ep-v-huge{font-size:32px}
  .ep-line{flex-direction:column;gap:4px}
  .ep-v{text-align:left}
}

/* ==================================================
   FRAME 9 · THE LOOP
   ================================================== */
.loop{
  padding:160px 0;
  background:var(--bg);
  border-bottom:1px solid var(--border);
}
.loop-steps{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:16px;
  counter-reset:none;
}
.loop-steps li{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  padding:32px 24px;
  min-height:220px;
}
.loop-step-gold{
  border-color:rgba(245,196,67,.42) !important;
  background:linear-gradient(180deg,rgba(245,196,67,.08),rgba(245,196,67,.01)) !important;
}
.loop-n{
  font-family:var(--f-mono);
  font-size:12px;
  letter-spacing:.16em;
  color:var(--gold);
  margin-bottom:20px;
}
.loop-t{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:26px;
  line-height:1.1;
  color:var(--text);
  margin-bottom:12px;
  letter-spacing:-.01em;
}
.loop-step-gold .loop-t{color:var(--gold);font-style:italic}
.loop-steps li p{
  font-size:14px;
  line-height:1.55;
  color:var(--text-2);
  margin:0;
}
.loop-tag{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(22px,2.6vw,32px);
  line-height:1.4;
  color:var(--text);
  margin:60px 0 0;
  max-width:900px;
}
.loop-tag em{font-style:italic;color:var(--gold);font-weight:500}

@media(max-width:900px){
  .loop-steps{grid-template-columns:1fr 1fr;gap:12px}
  .loop-steps li{min-height:auto;padding:24px 20px}
}
@media(max-width:520px){
  .loop-steps{grid-template-columns:1fr}
}

/* ==================================================
   FRAME 10 · 100-TASK LEDGER
   ================================================== */
.ledger{
  padding:160px 0;
  background:var(--bg-2);
  border-bottom:1px solid var(--border);
}
.ledger-grid{
  display:grid;
  grid-template-columns:repeat(10,1fr);
  gap:8px;
  margin:56px auto 40px;
  max-width:640px;
  aspect-ratio:1/1;
}
.ledger-grid > span{
  width:100%;
  aspect-ratio:1/1;
  border-radius:50%;
  display:block;
  transition:transform .2s ease;
}
.ledger-grid > span:hover{transform:scale(1.4);z-index:2;position:relative}
.dot-g{background:var(--gold);box-shadow:0 0 12px rgba(245,196,67,.35)}
.dot-a{background:rgba(245,196,67,.42)}
.dot-h{background:rgba(255,255,255,.10)}
.dot-r{background:var(--red);box-shadow:0 0 12px rgba(245,103,90,.5)}

.ledger-legend{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
  margin:24px 0 40px;
  max-width:960px;
}
.ledger-legend > span{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:13.5px;
  color:var(--text-2);
  padding:14px 16px;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--r-md);
}
.ledger-legend strong{color:var(--text);font-weight:600}
.dot-key{
  width:12px;
  height:12px;
  border-radius:50%;
  display:inline-block;
  flex:none;
}

.ledger-tag{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(22px,2.6vw,32px);
  line-height:1.4;
  color:var(--text);
  margin:40px 0 0;
  max-width:1000px;
}
.ledger-tag em{font-style:italic;color:var(--gold);font-weight:500}

@media(max-width:720px){
  .ledger{padding:120px 0}
  .ledger-grid{gap:5px;margin-top:32px}
  .ledger-legend{grid-template-columns:1fr 1fr;gap:10px}
  .ledger-legend > span{font-size:12.5px;padding:12px 14px}
}
@media(max-width:420px){
  .ledger-legend{grid-template-columns:1fr}
}

/* ==================================================
   FRAME 11 · FIELD + WHY WE WIN
   ================================================== */
.field{
  padding:160px 0;
  background:var(--bg);
  border-bottom:1px solid var(--border);
}
.field-table{
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  overflow:hidden;
  background:var(--card);
  margin-top:24px;
}
.ft-row{
  display:grid;
  grid-template-columns:1.6fr .9fr .9fr .9fr 1.05fr .9fr;
  align-items:center;
}
.ft-row > div{
  padding:20px 22px;
  border-bottom:1px solid var(--border);
  font-size:14.5px;
  color:var(--text-2);
}
.ft-row:last-child > div{border-bottom:none}
.ft-head > div{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--text-3);
  padding-top:22px;
  padding-bottom:22px;
  background:var(--bg-3);
}
.ft-name{
  font-family:var(--f-sans);
  color:var(--text) !important;
  font-weight:500;
}
.ft-yes{color:var(--gold) !important;font-family:var(--f-mono);font-size:13px !important;letter-spacing:.06em}
.ft-no{color:var(--text-3) !important;font-family:var(--f-mono);font-size:14px !important}
.ft-half{color:var(--text-2) !important;font-family:var(--f-mono);font-size:12px !important;letter-spacing:.04em}

.ft-hero{
  background:linear-gradient(90deg,rgba(245,196,67,.10),rgba(245,196,67,.02));
}
.ft-hero > div{
  padding-top:28px;
  padding-bottom:28px;
  border-bottom:none;
  border-top:1px solid rgba(245,196,67,.32);
}
.ft-name-hero{
  font-family:var(--f-serif) !important;
  font-weight:500 !important;
  font-size:26px !important;
  color:var(--gold) !important;
}
.ft-name-hero em{font-style:italic}
.ft-yes-hero{
  color:var(--gold) !important;
  font-family:var(--f-serif) !important;
  font-size:18px !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
}

.why4{margin-top:100px}
.why4-h{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:32px;
}
.why4-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
}
.why4-card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  padding:36px 32px;
}
.why4-n{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.16em;
  color:var(--gold);
  margin-bottom:16px;
}
.why4-t{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:26px;
  line-height:1.2;
  letter-spacing:-.01em;
  color:var(--text);
  margin-bottom:14px;
}
.why4-card p{
  font-size:15px;
  line-height:1.65;
  color:var(--text-2);
  margin:0;
}

@media(max-width:820px){
  .field{padding:120px 0}
  .ft-row{grid-template-columns:1.3fr .72fr .72fr .72fr .9fr .72fr}
  .ft-row > div{padding:14px 12px;font-size:12.5px}
  .ft-head > div{font-size:9.5px;letter-spacing:.08em}
  .ft-name-hero{font-size:20px !important}
  .ft-yes-hero{font-size:14px !important}
  .why4-grid{grid-template-columns:1fr;gap:14px}
  .why4-card{padding:28px 24px}
}
@media(max-width:640px){
  .field-table{border:none;background:transparent}
  .ft-row{grid-template-columns:1fr;gap:0;background:var(--card);border:1px solid var(--border);border-radius:var(--r-md);margin-bottom:12px;overflow:hidden}
  .ft-row > div{border-bottom:1px dashed var(--border);padding:12px 16px}
  .ft-row > div:last-child{border-bottom:none}
  .ft-head{display:none}
  .ft-name{background:var(--bg-3);padding:16px 18px !important;font-size:15px !important}
  .ft-yes::before,.ft-no::before,.ft-half::before{content:attr(role) " · "}
  /* label the cells on mobile */
  .ft-row > div:nth-child(2)::before{content:"Live world · "}
  .ft-row > div:nth-child(3)::before{content:"Judgment · "}
  .ft-row > div:nth-child(4)::before{content:"Money-graded · "}
  .ft-row > div:nth-child(5)::before{content:"$M+ volume · "}
  .ft-row > div:nth-child(6)::before{content:"Sells data · "}
  .ft-row > div::before{
    font-family:var(--f-mono);
    font-size:10px;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--text-3);
    margin-right:8px;
  }
  .ft-name::before{content:none !important}
  .ft-hero{background:linear-gradient(180deg,rgba(245,196,67,.14),rgba(245,196,67,.02)) !important;border-color:rgba(245,196,67,.4) !important}
  .ft-hero > div{border-color:rgba(245,196,67,.14)}
  .ft-yes-hero,.ft-name-hero{padding:16px 18px !important}
}

/* ==================================================
   CLOSE polish
   ================================================== */
.close{padding:200px 0 160px;background:linear-gradient(180deg,var(--bg),#050506)}
.close-h{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:clamp(48px,7vw,96px);
  line-height:1.02;
  letter-spacing:-.025em;
  color:var(--text);
  margin:0 0 32px;
}
.close-h em{font-style:italic;color:var(--gold);font-weight:500}
.close-sub{
  font-family:var(--f-serif);
  font-style:italic;
  font-weight:400;
  color:var(--text-2);
  font-size:clamp(18px,1.8vw,22px);
  line-height:1.5;
  max-width:720px;
  margin:0 auto 60px;
}
.close-sig{
  font-family:var(--f-mono);
  font-size:12px;
  letter-spacing:.16em;
  color:var(--text-3);
  text-transform:uppercase;
  margin-top:64px;
}


/* ================================================== */
/* FRAME 10a · ARCHITECTURE                            */
/* ================================================== */
.arch{padding:160px 0 140px;background:linear-gradient(180deg,var(--bg-2),var(--bg))}
.arch .section-h{margin-bottom:60px}
.arch .section-h em{color:var(--gold-2)}

.arch-diagram{
  position:relative;
  padding:20px 0 8px;
  margin-bottom:40px;
}

/* Top row: 5 cards + 4 arrows inline */
.arch-top{
  display:grid;
  grid-template-columns:1fr 32px 1fr 32px 1fr 32px 1fr 32px 1fr;
  align-items:stretch;
  gap:0;
  position:relative;
  z-index:2;
}
.arch-top .arch-node{grid-column:span 1}

.arch-h-arrow{
  align-self:center;
  display:block;
  width:100%;
  height:1.5px;
  background:#7A7A75;
  position:relative;
}
.arch-h-arrow::after{
  content:"";
  position:absolute;
  right:-2px;
  top:50%;
  transform:translateY(-50%);
  width:0;height:0;
  border-left:7px solid #7A7A75;
  border-top:5px solid transparent;
  border-bottom:5px solid transparent;
}

/* Vertical drops from action-interface (col 7) and result (col 9) */
.arch-drops{
  position:relative;
  height:56px;
  display:grid;
  grid-template-columns:1fr 32px 1fr 32px 1fr 32px 1fr 32px 1fr;
  z-index:2;
}
.arch-v-arrow{
  align-self:stretch;
  justify-self:center;
  width:1.5px;
  background:#7A7A75;
  position:relative;
}
.arch-v-arrow::after{
  content:"";
  position:absolute;
  bottom:-2px;
  left:50%;
  transform:translateX(-50%);
  width:0;height:0;
  border-top:7px solid #7A7A75;
  border-left:5px solid transparent;
  border-right:5px solid transparent;
}
.arch-v-robots{grid-column:7}
.arch-v-reward{grid-column:9}

/* Bottom row: same 9-column template so cards line up with top.
   spacer = cols 1-4 (Real world + State engine areas)
   cluster = cols 5-7 (3 actuators spanning the Agent-through-Action-interface zone)
   Reward = col 9 (directly below Result) */
.arch-bottom{
  display:grid;
  grid-template-columns:1fr 32px 1fr 32px 1fr 32px 1fr 32px 1fr;
  gap:0;
  position:relative;
  z-index:2;
}
.arch-spacer{grid-column:1 / 5}
.arch-actuator-cluster{
  grid-column:5 / 8;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
}
.arch-bottom > .arch-node{grid-column:9}

.arch-node{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:12px;
  padding:22px 20px;
  display:flex;
  flex-direction:column;
  gap:12px;
  min-height:190px;
}
.arch-node.arch-small{min-height:140px;padding:20px 18px}

.arch-node .arch-t{
  font-family:var(--f-serif);
  font-weight:600;
  font-size:22px;
  letter-spacing:-.01em;
  color:var(--text);
}
.arch-node.arch-small .arch-t{font-size:19px}
.arch-node p{
  font-size:13.5px;
  line-height:1.5;
  color:var(--text-2);
  margin:0;
}
.arch-t-gold{color:var(--gold) !important}
.arch-t-violet{color:var(--violet) !important}

.arch-fill-green{
  background:#159a6b;
  border-color:#0e7a55;
}
.arch-fill-green .arch-t{color:#f4fbf7}
.arch-fill-green p{color:rgba(244,251,247,.85)}

.arch-fill-red{
  background:#a13544;
  border-color:#7a2632;
}
.arch-fill-red .arch-t{color:#f5f0f1}
.arch-fill-red p{color:rgba(245,240,241,.82)}

/* Green dashed feedback loop, rendered as an inline SVG that sits below the
   bottom row and above the caption. Fills the full diagram width so the
   viewBox X coordinates map to grid columns. */
.arch-loop-svg{
  display:block;
  width:100%;
  height:56px;
  margin-top:8px;
  pointer-events:none;
}

.arch-loop-caption{
  text-align:center;
  font-family:var(--f-sans);
  font-size:13px;
  color:var(--green);
  margin:60px 0 0;
  font-style:italic;
  letter-spacing:.01em;
}

.arch-callout{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:14px;
  padding:32px 36px;
  max-width:1160px;
}
.arch-callout-h{
  font-family:var(--f-serif);
  font-weight:600;
  font-size:clamp(22px,2.4vw,28px);
  line-height:1.35;
  color:var(--text);
  margin:0 0 12px;
  letter-spacing:-.01em;
}
.arch-callout-h em{
  font-style:italic;
  color:var(--gold);
  font-weight:500;
}
.arch-callout-sub{
  font-size:15px;
  line-height:1.6;
  color:var(--text-2);
  margin:0;
  max-width:920px;
}

/* ================================================== */
/* FRAME 10b · COVERAGE STACKED BARS                   */
/* ================================================== */
.coverage{padding:160px 0 180px;background:linear-gradient(180deg,var(--bg),var(--bg-3))}
.coverage .section-h{margin-bottom:32px}
.coverage .section-h em{color:var(--gold-2)}
.coverage .lead{max-width:820px;margin:0 0 80px}

.cov-chart{
  display:flex;
  flex-direction:column;
  gap:20px;
  max-width:1000px;
  margin:0 auto;
}

.cov-scale{
  display:grid;
  grid-template-columns:120px repeat(5,1fr);
  padding-left:120px;
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.14em;
  color:var(--text-3);
  margin-bottom:8px;
}
.cov-scale span{text-align:left}
.cov-scale span:first-child{text-align:left}

.cov-row{
  display:grid;
  grid-template-columns:120px 1fr;
  align-items:center;
  gap:24px;
}
.cov-label{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:22px;
  color:var(--text);
  text-align:right;
  padding-right:8px;
  white-space:nowrap;
}
.cov-bar{
  display:flex;
  height:80px;
  border-radius:6px;
  overflow:hidden;
  background:rgba(255,255,255,.03);
  border:1px solid var(--border);
}
.cov-seg{
  width:var(--w);
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:var(--f-serif);
  font-weight:500;
  font-size:24px;
  color:var(--bg);
  transition:width 600ms ease;
  border-right:1px solid rgba(10,10,11,.35);
}
.cov-seg:last-child{border-right:0}
.cov-green{background:#22C55E;color:#0a1b0e}
.cov-gold{background:linear-gradient(180deg,#F5D060,#F5C443);color:#3a2a08}
.cov-gray{background:#3a3a44;color:var(--text-2)}
.cov-seg span{
  font-variant-numeric:tabular-nums;
  padding:0 6px;
}

.cov-legend{
  display:flex;
  gap:28px;
  padding-left:144px;
  flex-wrap:wrap;
  font-family:var(--f-mono);
  font-size:12px;
  letter-spacing:.08em;
  color:var(--text-2);
  margin-top:8px;
}
.cov-legend span{
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.cov-key{
  display:inline-block;
  width:14px;height:14px;
  border-radius:3px;
}
.cov-green-k{background:#22C55E}
.cov-gold-k{background:linear-gradient(180deg,#F5D060,#F5C443)}
.cov-gray-k{background:#3a3a44}

.cov-callout{
  max-width:820px;
  margin:80px auto 0;
  padding:36px 40px;
  background:linear-gradient(180deg,rgba(245,196,67,.06),rgba(245,196,67,.02));
  border:1px solid rgba(245,196,67,.25);
  border-radius:16px;
}
.cov-callout p{
  margin:0 0 12px;
  font-size:17px;
  line-height:1.6;
  color:var(--text);
}
.cov-callout p:last-child{margin-bottom:0;color:var(--text-2);font-size:15px}
.cov-callout em{
  font-family:var(--f-serif);
  font-style:italic;
  color:var(--gold);
  font-weight:500;
  font-size:19px;
}
.cov-callout strong{color:var(--gold);font-weight:500}

/* Mobile · architecture + coverage */
@media (max-width:900px){
  /* Architecture: stack everything vertically, hide inline arrows/loop line */
  .arch-top,
  .arch-bottom{
    display:flex;
    flex-direction:column;
    gap:12px;
  }
  .arch-h-arrow,
  .arch-drops,
  .arch-spacer,
  .arch-loop-svg{display:none}
  .arch-actuator-cluster{
    grid-column:1;
    grid-template-columns:1fr;
    gap:12px;
  }
  .arch-bottom > .arch-node{grid-column:1}
  .arch-bottom{margin-top:12px}
  .arch-node{min-height:auto}
  .arch-node.arch-small{min-height:auto}
  .arch-diagram{padding-bottom:20px}

  .cov-scale{
    grid-template-columns:90px repeat(5,1fr);
    padding-left:90px;
  }
  .cov-row{
    grid-template-columns:90px 1fr;
    gap:12px;
  }
  .cov-label{
    font-size:16px;
    padding-right:4px;
  }
  .cov-bar{height:56px}
  .cov-seg{font-size:16px}
  .cov-legend{
    padding-left:102px;
    gap:14px;
    font-size:11px;
  }
  .cov-callout{
    padding:24px 22px;
    margin-top:56px;
  }
  .cov-callout p{font-size:15px}
  .cov-callout em{font-size:17px}
}

/* ==================================================
   MOBILE — Steve Jobs on a phone
   Overrides only. Desktop stays exactly as-is.
   ================================================== */

/* Mobile-only elements hidden by default */
.nav-burger,
.mobile-menu,
.arch-mobile,
.field-mobile{ display:none; }

@media(max-width:820px){

/* ---------- NAV ---------- */
/* Solid bg (no backdrop-filter) to prevent scroll freeze on mobile Safari */
.nav{
  padding:14px 20px;
  position:sticky;
  top:0;
  z-index:60;
  background:#0A0A0B;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  border-bottom:1px solid rgba(255,255,255,.06);
  transform:translateZ(0);
  will-change:transform;
}
.nav-links{ display:none !important; }
.nav-cta{ display:none !important; }
.nav-burger{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:5px;
  width:40px;
  height:40px;
  padding:0;
  background:transparent;
  border:1px solid rgba(245,196,67,.35);
  border-radius:8px;
  cursor:pointer;
  margin-left:auto;
  transition:background .18s ease, border-color .18s ease;
}
.nav-burger:hover{ background:rgba(245,196,67,.06); }
.nav-burger span{
  display:block;
  width:16px;
  height:1.5px;
  background:var(--gold);
  transition:transform .22s ease, opacity .18s ease;
}
.nav-burger.is-open span:nth-child(1){ transform:translateY(6.5px) rotate(45deg); }
.nav-burger.is-open span:nth-child(2){ opacity:0; }
.nav-burger.is-open span:nth-child(3){ transform:translateY(-6.5px) rotate(-45deg); }

.mobile-menu{
  display:flex;
  flex-direction:column;
  position:fixed;
  top:70px;
  left:0;
  right:0;
  bottom:0;
  padding:36px 28px 40px;
  background:#0A0A0B;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  z-index:55;
  gap:2px;
  overflow-y:auto;
  opacity:0;
  transform:translateY(-8px);
  transition:opacity .24s ease, transform .24s ease;
}
.mobile-menu.is-open{ opacity:1; transform:translateY(0); }
.mobile-menu a{
  font-family:var(--f-serif);
  font-weight:500;
  font-size:32px;
  line-height:1.15;
  letter-spacing:-.01em;
  color:var(--text);
  text-decoration:none;
  padding:18px 0;
  border-bottom:1px solid rgba(255,255,255,.06);
  transition:color .18s ease, padding .18s ease;
}
.mobile-menu a:hover,
.mobile-menu a:active{ color:var(--gold); padding-left:6px; }
.mobile-menu-cta{
  margin-top:22px;
  padding:22px 0 !important;
  color:var(--gold) !important;
  font-style:italic;
  border-bottom:0 !important;
}

/* ---------- HERO ---------- */
.hero{ padding:20px 0 80px; }
.hero .wrap{ padding-top:60px; }
.live-badge{
  padding:8px 14px;
  font-size:10.5px !important;
  letter-spacing:.14em;
  white-space:nowrap;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
}
.live-badge span:last-child{
  white-space:nowrap;
}
.hero-h{
  font-size:clamp(44px, 12.5vw, 68px) !important;
  line-height:1.02 !important;
  letter-spacing:-.028em !important;
  margin-top:28px !important;
}
.hero-sub{
  font-size:16px !important;
  line-height:1.55 !important;
  margin-top:28px !important;
  max-width:none !important;
}
.hero-scroll{ margin-top:44px; font-size:10.5px; letter-spacing:.22em; }

/* ---------- SECTION HEADS (universal) ---------- */
.section-h{
  font-size:clamp(34px, 8.6vw, 46px) !important;
  line-height:1.06 !important;
  letter-spacing:-.022em !important;
}
.eyebrow{
  font-size:10.5px !important;
  letter-spacing:.2em !important;
  margin-bottom:20px !important;
}

/* ---------- LEAP columns already handled elsewhere ---------- */

/* ---------- LEAP TENNIS ---------- */
.leap-tennis{
  margin-top:64px !important;
  padding:56px 0 20px !important;
  text-align:center;
}
.leap-tennis-eyebrow{ margin-bottom:26px !important; font-size:10px !important; }
.leap-tennis-line{ font-size:clamp(22px, 6vw, 30px) !important; }
.leap-tennis-punch{
  margin-top:22px !important;
  font-size:clamp(36px, 10vw, 52px) !important;
  line-height:1.02 !important;
  letter-spacing:-.024em !important;
}

/* ---------- EVIDENCE (Why now) — vary the treatments ---------- */
.evidence{ padding:100px 0 !important; }
.ev-list{ margin-top:56px !important; gap:0 !important; }
.ev-row{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:0 !important;
  padding:32px 0 !important;
  border-top:1px solid var(--border) !important;
  border-bottom:0 !important;
}
.ev-row:last-of-type{ border-bottom:1px solid var(--border) !important; }
.ev-num{
  font-family:var(--f-serif) !important;
  font-size:clamp(64px, 20vw, 92px) !important;
  line-height:1 !important;
  color:var(--gold) !important;
  letter-spacing:-.03em !important;
  margin-bottom:14px !important;
  font-weight:500 !important;
}
.ev-body{ padding:0 !important; }
.ev-line{ font-size:19px !important; line-height:1.35 !important; margin-bottom:6px !important; }
.ev-punch{ font-size:19px !important; line-height:1.35 !important; margin-bottom:14px !important; }
.ev-punch em{ font-family:var(--f-serif); color:var(--gold); font-style:italic; font-weight:500; }
.ev-note{ font-size:14px !important; line-height:1.55 !important; color:var(--text-dim) !important; }
.ev-tag{
  margin-top:56px !important;
  font-size:20px !important;
  line-height:1.35 !important;
  font-family:var(--f-serif) !important;
  font-weight:500 !important;
}

/* ---------- CHART PAGE ("Where the puck has been") — horizontal bars growing right ---------- */
.chart-page{ padding:100px 0 !important; }
.eras{
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  margin-top:48px !important;
  position:relative;
}
.era-arrow{ display:none !important; }
.era-col{
  display:block !important;
  padding:20px 0 !important;
  border:0 !important;
  border-top:1px solid var(--border) !important;
  position:relative;
}
.era-col:last-of-type{ border-bottom:1px solid var(--border) !important; }
.era-head{
  display:block !important;
  padding:0 !important;
  margin:0 0 12px !important;
  min-height:0 !important;
}
.era-title{
  font-size:22px !important;
  line-height:1.15 !important;
  font-family:var(--f-serif) !important;
  font-weight:500 !important;
  margin-bottom:4px !important;
  letter-spacing:-.01em;
}
.era-sub{ font-size:13.5px !important; color:var(--text-dim) !important; margin-bottom:6px !important; line-height:1.4 !important; }
.era-firm{ font-size:11px !important; letter-spacing:.12em !important; color:var(--text-faint) !important; text-transform:uppercase; margin-bottom:0 !important; }
.era-price{ display:none !important; }
/* Horizontal bar underneath — grows longer for each successive era */
.era-bar{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  padding:0 14px !important;
  height:38px !important;
  border-radius:6px !important;
  font-family:var(--f-serif) !important;
  font-weight:500 !important;
  font-size:16px !important;
  color:var(--text) !important;
  writing-mode:horizontal-tb !important;
  width:100% !important;
  max-width:100% !important;
  position:relative;
}
.era-bar span{ font-size:16px !important; }
.era-bar-1{ height:38px !important; width:22% !important; background:linear-gradient(90deg, rgba(255,255,255,.08), rgba(255,255,255,.04)) !important; }
.era-bar-2{ height:38px !important; width:42% !important; background:linear-gradient(90deg, rgba(255,255,255,.16), rgba(255,255,255,.06)) !important; }
.era-bar-3{ height:38px !important; width:68% !important; background:linear-gradient(90deg, rgba(245,103,90,.6), rgba(245,103,90,.2)) !important; color:var(--text) !important; }
.era-bar-3 span{ color:var(--text) !important; }
.era-bar-4{ height:38px !important; width:100% !important; background:linear-gradient(90deg, var(--gold), rgba(245,196,67,.4)) !important; color:var(--bg) !important; }
.era-bar-4 span{ color:var(--bg) !important; }
.era-cap{
  display:block !important;
  margin-top:8px !important;
  font-family:var(--f-mono);
  font-size:11px !important;
  color:var(--gold);
  text-align:left;
  letter-spacing:.06em;
  padding-top:0 !important;
  border-top:0 !important;
}

/* ---------- LINE (three ideas of what a gym is) — mobile ---------- */
.line{ padding:100px 0 !important; }
.line-lede{ font-size:15.5px !important; line-height:1.5 !important; margin:16px 0 44px !important; }
.gym-grid{
  grid-template-columns:1fr !important;
  gap:16px !important;
  margin-top:32px !important;
  max-width:none !important;
}
.gym-card{
  padding:28px 22px 24px !important;
  border-radius:12px !important;
  min-height:0 !important;
}
.gym-num{ font-size:10.5px !important; letter-spacing:.16em !important; margin-bottom:16px !important; }
.gym-visual{
  margin-bottom:22px !important;
  border-radius:8px !important;
  aspect-ratio: 200/140 !important;
}
.gym-label{ font-size:10.5px !important; letter-spacing:.18em !important; margin-bottom:12px !important; }
.gym-what{
  font-size:24px !important;
  line-height:1.18 !important;
  margin-bottom:14px !important;
  letter-spacing:-.015em !important;
}
.gym-body{ font-size:15px !important; line-height:1.5 !important; margin-bottom:20px !important; }
.gym-firms{ font-size:10.5px !important; letter-spacing:.14em !important; padding-top:16px !important; }
.line-tag{
  margin-top:56px !important;
  font-size:19px !important;
  line-height:1.4 !important;
  font-family:var(--f-serif) !important;
  font-weight:500 !important;
}

/* ---------- GO X — stats ---------- */
.gox{ padding:100px 0 !important; }
.gox-tag{ font-size:10.5px !important; letter-spacing:.16em !important; }
.gox-h{ font-size:clamp(32px, 8.6vw, 44px) !important; line-height:1.06 !important; }
.gox-stats{
  grid-template-columns:1fr 1fr !important;
  gap:12px !important;
  margin-top:40px !important;
}
.gox-stats > *:last-child{ grid-column:1 / -1 !important; }
.gox-stat-n{ font-size:clamp(36px, 10vw, 48px) !important; }
.gox-stat-l{ font-size:11px !important; letter-spacing:.14em !important; }

/* ---------- EPISODE — cards ---------- */
.episode{ padding:100px 0 !important; }
.ep-card{ padding:22px 20px !important; }
.ep-h{ font-size:22px !important; }

/* ---------- LOOP — five steps ---------- */
.loop{ padding:100px 0 !important; }
.loop-h{ font-size:clamp(32px, 8.6vw, 42px) !important; }

/* ---------- ARCH — hide desktop diagram, show mobile flow ---------- */
.arch{ padding:100px 0 !important; }
.arch-diagram{ display:none !important; }
.arch-mobile{
  display:block !important;
  margin-top:44px;
}
.archm-flow{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  flex-direction:column;
  gap:0;
  position:relative;
}
.archm-flow::before{
  /* faint vertical spine connecting steps */
  content:"";
  position:absolute;
  left:19px;
  top:20px;
  bottom:20px;
  width:1px;
  background:linear-gradient(to bottom, transparent, rgba(245,196,67,.35) 8%, rgba(245,196,67,.35) 92%, transparent);
}
.archm-step{
  position:relative;
  display:grid;
  grid-template-columns:40px 1fr;
  gap:16px;
  padding:16px 0 20px;
  align-items:flex-start;
}
.archm-idx{
  z-index:1;
  width:40px;
  height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--bg);
  border:1.5px solid var(--border);
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.06em;
  color:var(--text-dim);
  font-weight:500;
}
.archm-step.archm-green .archm-idx{ border-color:#22C55E; color:#22C55E; background:rgba(34,197,94,.06); }
.archm-step.archm-gold .archm-idx{ border-color:var(--gold); color:var(--gold); background:rgba(245,196,67,.06); }
.archm-step.archm-red .archm-idx{ border-color:#F5675A; color:#F5675A; background:rgba(245,103,90,.06); }
.archm-body{
  padding-top:6px;
}
.archm-t{
  font-family:var(--f-serif);
  font-size:22px;
  font-weight:500;
  line-height:1.2;
  color:var(--text);
  margin-bottom:6px;
  letter-spacing:-.008em;
}
.archm-step.archm-green .archm-t{ color:#22C55E; }
.archm-step.archm-gold .archm-t{ color:var(--gold); font-style:italic; }
.archm-step.archm-red .archm-t{ color:#F5675A; }
.archm-body p{
  font-size:14.5px;
  line-height:1.5;
  color:var(--text-dim);
  margin:0;
}
.archm-actuators{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:14px 0 8px;
}
.archm-pill{
  padding:7px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.04);
  border:1px solid var(--border);
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.08em;
  color:var(--text);
  text-transform:uppercase;
}
.archm-pill-violet{ border-color:rgba(167,139,250,.4); color:#A78BFA; }
.archm-actuators-note{
  font-size:12.5px !important;
  color:var(--text-faint) !important;
  line-height:1.5 !important;
  margin-top:6px !important;
}
.archm-loop{
  display:flex;
  align-items:center;
  gap:12px;
  margin:12px 0 0 20px;
  padding:14px 0 4px;
}
.archm-loop-line{
  display:inline-block;
  width:44px;
  height:1px;
  background:repeating-linear-gradient(to right, #22C55E 0 6px, transparent 6px 12px);
  flex-shrink:0;
}
.archm-loop-label{
  font-family:var(--f-mono);
  font-size:11px;
  letter-spacing:.06em;
  color:#22C55E;
  line-height:1.4;
}
.arch-callout{ margin-top:44px !important; padding:24px 22px !important; }
.arch-callout-h{ font-size:18px !important; }
.arch-callout-sub{ font-size:14px !important; }

/* ---------- FIELD — hide desktop table, show mobile cards ---------- */
.field{ padding:120px 0 !important; }
.field-table{ display:none !important; }
.field-mobile{
  display:block !important;
  margin-top:40px;
}
.field-mobile-legend{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 14px;
  font-family:var(--f-mono);
  font-size:10.5px;
  letter-spacing:.1em;
  color:var(--text-dim);
  text-transform:uppercase;
  margin-bottom:24px;
  padding-bottom:20px;
  border-bottom:1px solid var(--border);
}
.fm-key{
  display:inline-block;
  width:9px;
  height:9px;
  border-radius:50%;
  margin-right:2px;
  vertical-align:-1px;
}
.fm-key-yes{ background:var(--gold); }
.fm-key-half{ background:rgba(245,196,67,.35); }
.fm-key-no{ background:rgba(255,255,255,.14); }
.field-mobile-list{
  list-style:none;
  padding:0;
  margin:0;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.fm-card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:16px;
  padding:20px 20px 18px;
  display:grid;
  grid-template-columns:1fr auto;
  grid-template-rows:auto auto;
  gap:4px 12px;
  align-items:baseline;
}
.fm-name{
  font-family:var(--f-serif);
  font-size:19px;
  font-weight:500;
  color:var(--text);
  letter-spacing:-.005em;
  line-height:1.25;
}
.fm-score{
  font-family:var(--f-serif);
  font-size:22px;
  font-weight:500;
  color:var(--text-dim);
  text-align:right;
  letter-spacing:-.01em;
}
.fm-score span{
  font-family:var(--f-mono);
  font-size:10px;
  letter-spacing:.1em;
  color:var(--text-faint);
  margin-left:2px;
  text-transform:uppercase;
}
.fm-dots{
  grid-column:1 / -1;
  list-style:none;
  padding:0;
  margin:14px 0 0;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.fm-dots li{
  position:relative;
  padding-left:18px;
  font-size:12.5px;
  color:var(--text-dim);
  line-height:1.4;
}
.fm-dots li::before{
  content:"";
  position:absolute;
  left:0;
  top:6px;
  width:8px;
  height:8px;
  border-radius:50%;
}
.fm-dots .fm-yes::before{ background:var(--gold); box-shadow:0 0 0 1px rgba(245,196,67,.4); }
.fm-dots .fm-half::before{ background:rgba(245,196,67,.35); }
.fm-dots .fm-no::before{ background:rgba(255,255,255,.12); }
.fm-dots .fm-yes{ color:var(--text); }

/* Hero row */
.fm-card-hero{
  border:1.5px solid var(--gold) !important;
  background:linear-gradient(135deg, rgba(245,196,67,.09), rgba(245,196,67,.03)) !important;
  padding:24px 22px 22px !important;
}
.fm-name-hero{
  color:var(--gold) !important;
  font-style:italic !important;
  font-size:24px !important;
}
.fm-score-hero{
  color:var(--gold) !important;
  font-size:28px !important;
}
.fm-score-hero span{ color:rgba(245,196,67,.55) !important; }
.fm-yes-hero{ color:var(--text) !important; font-weight:500; }
.fm-yes-hero::before{
  background:var(--gold) !important;
  box-shadow:0 0 0 1.5px rgba(245,196,67,.6), 0 0 12px rgba(245,196,67,.25) !important;
}

/* ---------- WHY4 (cards on mobile — differentiate visually) ---------- */
.why4{ margin-top:100px !important; }
.why4-h{ font-size:11px !important; letter-spacing:.2em !important; margin-bottom:28px !important; }
.why4-grid{
  grid-template-columns:1fr !important;
  gap:0 !important;
}
.why4-card{
  border:0 !important;
  background:transparent !important;
  padding:28px 0 !important;
  border-top:1px solid var(--border) !important;
  border-radius:0 !important;
}
.why4-card:last-child{ border-bottom:1px solid var(--border); }
.why4-n{
  font-family:var(--f-serif) !important;
  font-size:34px !important;
  color:var(--gold) !important;
  font-weight:500 !important;
  line-height:1 !important;
  margin-bottom:12px !important;
  letter-spacing:-.02em;
}
.why4-t{ font-size:23px !important; line-height:1.2 !important; margin-bottom:10px !important; }
.why4-card p{ font-size:14.5px !important; line-height:1.55 !important; }

/* ---------- COVERAGE — chart on mobile ---------- */
.coverage{ padding:100px 0 !important; }

/* ---------- NEXT 90 DAYS ---------- */
.next90{ padding:100px 0 !important; }
.next90 .np-h{ font-size:14px !important; }
.next90 ul li{ font-size:14.5px !important; line-height:1.55 !important; }

/* ---------- TIERS — What labs actually buy ---------- */
.tiers{ padding:100px 0 !important; }
.tier-card{ padding:24px 22px 20px !important; }
.tier-cap{ font-size:10.5px !important; letter-spacing:.18em !important; }
.tier-h{ font-size:26px !important; }
.tier-price{ font-size:13px !important; }
.tier-bar{ height:80px !important; font-size:32px !important; }

/* ---------- CLOSE ---------- */
.close{ padding:120px 0 100px !important; }
.close .hero-h{ font-size:clamp(38px, 10vw, 56px) !important; }

} /* end 820 */

/* Extra tight for real phones */
@media(max-width:400px){
  .live-badge{
    font-size:9.5px !important;
    padding:7px 12px !important;
    letter-spacing:.11em !important;
  }
  .live-badge span:last-child{ letter-spacing:.11em; }
  .hero-h{
    font-size:clamp(40px, 12vw, 60px) !important;
  }
  .hero-sub{ font-size:15.5px !important; }
  .section-h{
    font-size:clamp(30px, 9vw, 40px) !important;
  }
  .ev-num{ font-size:clamp(56px, 18vw, 72px) !important; }
  .archm-t{ font-size:20px !important; }
  .archm-body p{ font-size:14px !important; }
  .fm-name{ font-size:17.5px !important; }
  .fm-score{ font-size:20px !important; }
  .why4-t{ font-size:21px !important; }
  .mobile-menu a{ font-size:28px !important; padding:16px 0 !important; }
}

/* ==================================================
   THE DECK  (added for midas5 site integration)
   ================================================== */
.mobile-menu-rule{
  display:block; height:1px; width:100%;
  background:var(--border); margin:14px 0 4px;
}

.deckx{ padding:120px 0; background:var(--bg-band); border-top:1px solid var(--border); }
.deckx-lede{
  max-width:640px; margin:18px 0 0;
  color:var(--text-2); font-size:17px; line-height:1.6;
}
.deckx-grid{
  display:grid; grid-template-columns:1.15fr .85fr;
  gap:32px; margin-top:52px; align-items:start;
}
.deckx-card{
  display:block; text-decoration:none; color:inherit;
  border:1px solid var(--border); border-radius:var(--r-lg);
  background:var(--card); overflow:hidden;
  transition:border-color .22s ease, transform .22s ease;
}
.deckx-card:hover{ border-color:var(--gold-dim); transform:translateY(-2px); }
.deckx-thumb{ background:var(--bg); border-bottom:1px solid var(--border); line-height:0; }
.deckx-thumb img{ width:100%; height:auto; display:block; }
.deckx-meta{ padding:22px 24px 24px; }
.deckx-name{
  font-family:var(--f-serif); font-size:22px; font-weight:500;
  letter-spacing:-.01em; line-height:1.25; padding-bottom:.08em;
}
.deckx-spec{
  margin-top:8px; font-family:var(--f-mono); font-size:11px;
  letter-spacing:.14em; text-transform:uppercase; color:var(--text-3);
}
.deckx-act{
  margin-top:18px; font-family:var(--f-mono); font-size:12px;
  letter-spacing:.1em; color:var(--gold);
}
.deckx-side{
  border:1px solid var(--border); border-radius:var(--r-lg);
  background:var(--bg-2); padding:28px 26px 26px;
}
.deckx-side-h{
  font-family:var(--f-mono); font-size:11px; letter-spacing:.16em;
  text-transform:uppercase; color:var(--text-3);
}
.deckx-toc{ list-style:none; margin:18px 0 0; padding:0; }
.deckx-toc li{
  display:flex; gap:14px; align-items:baseline;
  padding:13px 0; border-bottom:1px solid var(--border);
  color:var(--text-2); font-size:15px; line-height:1.45;
}
.deckx-toc li:last-child{ border-bottom:0; }
.deckx-toc li span{
  font-family:var(--f-mono); font-size:11px; color:var(--gold);
  letter-spacing:.08em; flex:0 0 auto;
}
.deckx-cta-row{ display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }

@media (max-width:900px){
  .deckx{ padding:84px 0; }
  .deckx-grid{ grid-template-columns:1fr; gap:22px; margin-top:38px; }
}
@media (max-width:560px){
  .deckx-name{ font-size:19px; }
  .deckx-cta-row .btn{ width:100%; justify-content:center; }
}

/* ==================================================
   NAV — matched to the main Midas site (css/base.css)
   Overrides the pitch-page nav above. Keep last in file.
   ================================================== */
.nav{
  display:block;
  position:sticky; top:0; z-index:50;
  padding:0;
  background:rgba(8,8,10,.72);
  backdrop-filter:saturate(140%) blur(14px);
  -webkit-backdrop-filter:saturate(140%) blur(14px);
  border-bottom:1px solid var(--border);
}
.nav-inner{
  max-width:var(--max);
  margin:0 auto;
  height:68px;
  padding:0 40px;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  gap:32px;
}
.nav .brand, .foot-col-brand .brand{
  display:inline-flex;
  align-items:baseline;
  gap:6px;
  font-family:var(--f-serif);
  font-weight:700;
  font-size:22px;
  letter-spacing:-.02em;
  color:var(--text);
}
.nav .brand{ line-height:1.2; }
.nav .brand:hover{ color:var(--text); }
.nav .brand-dot, .foot-col-brand .brand-dot{ color:var(--gold); font-size:22px; line-height:0; }
.nav .brand-sub, .foot-col-brand .brand-sub{
  font-family:var(--f-mono);
  font-size:10px;
  font-weight:500;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--text-3);
  margin-left:4px;
  white-space:nowrap;
}
.nav .nav-links{
  display:flex;
  align-items:center;
  gap:28px;
  margin-left:auto;
  font-family:var(--f-sans);
  font-size:14px;
}
.nav .nav-links a{
  font-family:var(--f-sans);
  font-size:14px;
  letter-spacing:normal;
  text-transform:none;
  color:var(--text-2);
  transition:color .15s ease;
}
.nav .nav-links a:hover{ color:var(--text); }
.nav .nav-links a.active{ color:var(--text); }
.nav .nav-links a.btn-gold{
  background:var(--gold);
  color:#0A0A0B;
  border:1px solid transparent;
  border-radius:var(--r-full);
  font-family:var(--f-sans);
  font-weight:600;
  text-transform:none;
  letter-spacing:normal;
  padding:10px 16px;
  font-size:13px;
  line-height:1;
  white-space:nowrap;
  transition:background .18s ease, transform .18s ease;
}
.nav .nav-links a.btn-gold:hover{ background:#FFD35C; color:#0A0A0B; transform:translateY(-1px); }
.nav .nav-cta{ margin-left:8px; }

@media (max-width:820px){
  .nav{ background:#0A0A0B; backdrop-filter:none; -webkit-backdrop-filter:none; }
  .nav .nav-links{ display:flex !important; }
}
@media (max-width:780px){
  html{ scroll-padding-top:130px; }
  .nav-inner{ flex-wrap:wrap; gap:8px; padding:12px 18px; }
  .nav .brand{ flex:0 0 auto; }
  .nav .nav-links{
    order:3; width:100%; gap:18px;
    justify-content:flex-start; flex-wrap:wrap;
    padding:10px 0 0; margin-top:4px;
    border-top:1px solid rgba(255,255,255,.05);
  }
  .nav .nav-links a{ font-size:12px; letter-spacing:.02em; padding:0; }
  .nav .nav-links a.btn-gold{ display:none; }
}
@media (max-width:480px){
  .nav .brand-sub{ display:none; }
}


/* ============================================================
   SEE IT RUNNING — cross-link to the Go X Gym environment
   ============================================================ */
.seegym{ padding:clamp(80px,9vw,130px) 0; border-top:1px solid var(--border); }
.seegym-lede{
  max-width:720px; margin:18px 0 44px;
  font-size:18px; line-height:1.7; color:var(--text-2);
}
.seegym-grid{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.seegym-card{
  display:block; text-decoration:none;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:16px;
  padding:30px 28px 26px;
  transition:border-color .25s ease, transform .25s ease, background .25s ease;
}
.seegym-card:hover{ border-color:var(--gold); transform:translateY(-2px); }
.seegym-tag{
  font-family:var(--f-mono); font-size:10.5px; letter-spacing:.16em;
  text-transform:uppercase; color:var(--text-3); margin-bottom:16px;
}
.seegym-h{
  font-family:var(--f-serif); font-weight:600;
  font-size:clamp(24px,2.6vw,32px); line-height:1.15;
  padding-bottom:.08em; color:var(--text); margin-bottom:12px;
}
.seegym-card p{
  margin:0 0 20px; color:var(--text-2);
  font-size:15px; line-height:1.72;
}
.seegym-act{ font-family:var(--f-mono); font-size:12px; color:var(--gold); letter-spacing:.02em; }

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

/* ---------- mobile nav parity with base.css (860px breakpoint) ---------- */
.mobile-menu{ pointer-events:none; }
.mobile-menu.is-open{ pointer-events:auto; }
body.menu-open{ overflow:hidden; }
@media(max-width:860px){
  .nav-inner{ height:64px; gap:12px; }
  .nav .nav-links, .nav .nav-cta{ display:none !important; }
  .nav .brand-sub{ display:none; }
  .nav-burger{
    display:flex; flex-direction:column; justify-content:center; align-items:center;
    gap:5px; width:40px; height:40px; padding:0; margin-left:auto;
    background:transparent; border:1px solid rgba(245,196,67,.35); border-radius:8px; cursor:pointer;
  }
  .nav-burger span{ display:block; width:16px; height:1.5px; background:var(--gold); transition:transform .22s ease, opacity .18s ease; }
  .nav-burger.is-open span:nth-child(1){ transform:translateY(6.5px) rotate(45deg); }
  .nav-burger.is-open span:nth-child(2){ opacity:0; }
  .nav-burger.is-open span:nth-child(3){ transform:translateY(-6.5px) rotate(-45deg); }
  .mobile-menu{
    display:flex; flex-direction:column; position:fixed; top:65px; left:0; right:0; bottom:0;
    padding:32px 24px 40px; background:#0A0A0B; z-index:55; gap:0; overflow-y:auto;
    opacity:0; transform:translateY(-8px); transition:opacity .24s ease, transform .24s ease;
  }
  .mobile-menu.is-open{ opacity:1; transform:translateY(0); }
  .mobile-menu a{
    font-family:var(--f-serif); font-weight:500; font-size:clamp(26px,7.6vw,32px); line-height:1.15;
    letter-spacing:-.01em; color:var(--text); text-decoration:none; padding:16px 0;
    border-bottom:1px solid rgba(255,255,255,.06);
  }
  .mobile-menu a.active{ color:var(--gold); }
  .mobile-menu-cta{ margin-top:20px; padding:20px 0 !important; color:var(--gold) !important; font-style:italic; border-bottom:0 !important; }
}
