/* ═══════════════════════════════════════════════════════════════
   regimetrader.ai — LANDING PAGE
   Public-facing marketing site, aligned with Golden Goose v3.
   Stack: Inter (Black→Regular) · JetBrains Mono · warm-dark canvas · single gold.
   ═══════════════════════════════════════════════════════════════ */

* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  background: var(--canvas);
  color: var(--ink);
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.55;
  font-feature-settings: "ss01", "cv11", "tnum";
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
}

/* ─── Page chrome ─── */
.lp-wrap { max-width: 1280px; margin: 0 auto; padding: 0 32px; }

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

/* ─── Top nav ─── */
.nav {
  position: sticky;
  top: 0; z-index: 50;
  background: rgba(13,11,8,0.78);
  backdrop-filter: blur(16px) saturate(140%);
  border-bottom: 1px solid var(--hairline);
}
.nav-inner {
  display: flex;
  align-items: center;
  height: 64px;
  gap: 36px;
}
.nav-brand {
  display: flex; align-items: center; gap: 10px;
  text-decoration: none;
  color: var(--ink);
  margin-right: auto;
}
.nav-brand .nb-egg svg { width: 26px; height: 32px; display: block; filter: drop-shadow(0 2px 8px rgba(241,176,40,0.4)); }
.nav-brand .nb-mark {
  font-family: var(--f-display);
  font-weight: 900;
  font-size: 19px;
  letter-spacing: -0.025em;
  color: var(--ink);
}
.nav-brand .nb-mark span { color: var(--gold); }

.nav-brand .nb-tag {
  display: inline-flex; align-items: center;
  padding: 4px 10px;
  margin-left: 4px;
  border-radius: 100px;
  border: 1px solid var(--hairline-2);
  background: var(--surface-2);
  font-family: var(--f-mono);
  font-size: 9.5px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ink-3);
  white-space: nowrap;
}

.nav-links { display: flex; align-items: center; gap: 28px; }
.nav-link {
  font-weight: 500; font-size: 14px;
  color: var(--ink-2);
  text-decoration: none;
  letter-spacing: -0.005em;
}
.nav-link:hover { color: var(--ink); }

.nav-actions { display: flex; align-items: center; gap: 12px; }

/* ─── Buttons ─── */
.btn {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 10px 18px;
  border-radius: 100px;
  font: 600 14px var(--f-sans);
  letter-spacing: -0.005em;
  cursor: pointer; text-decoration: none;
  transition: all .15s;
  border: 1px solid transparent;
  white-space: nowrap;
}
.btn svg { width: 15px; height: 15px; stroke-width: 1.9; }
.btn-primary {
  background: linear-gradient(180deg, var(--gold-bright) 0%, var(--gold) 65%, var(--gold-deep) 100%);
  color: var(--gold-ink);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.25),
    inset 0 -1px 0 rgba(0,0,0,0.15),
    0 6px 18px rgba(241,176,40,0.18),
    0 1px 0 var(--gold-deep);
}
.btn-primary:hover { filter: brightness(1.07); transform: translateY(-1px); }
.btn-secondary {
  background: transparent;
  color: var(--ink);
  border: 1px solid var(--hairline-2);
}
.btn-secondary:hover { border-color: var(--gold-line); color: var(--gold); }
.btn-lg { padding: 14px 24px; font-size: 16px; }
.btn-lg svg { width: 17px; height: 17px; }

/* ═══════════════════════════════════════════════════
   HERO
   ═══════════════════════════════════════════════════ */
.hero {
  position: relative;
  padding: 120px 0 96px;
  overflow: hidden;
  text-align: center;
}
.hero::before {
  content: "";
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse 900px 480px at 80% 0%, rgba(241,176,40,0.10), transparent 65%),
    radial-gradient(ellipse 720px 540px at 10% 80%, rgba(63,196,212,0.05), transparent 70%);
  pointer-events: none;
}
.hero-inner {
  position: relative;
  display: flex; flex-direction: column;
  align-items: center; gap: 36px;
}
.hero h1 {
  font-family: var(--f-display);
  font-weight: 900;
  font-size: clamp(64px, 8.4vw, 128px);
  line-height: 0.94;
  letter-spacing: -0.045em;
  color: var(--ink);
  max-width: 14ch;
}
.hero h1 em {
  font-style: normal;
  color: var(--gold);
  font-weight: 900;
}
.hero-pill {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding: 12px 26px 12px 14px;
  border-radius: 100px;
  border: 1px solid var(--gold-line);
  background: linear-gradient(135deg, rgba(241,176,40,0.10), rgba(241,176,40,0.04));
  font-family: var(--f-display);
  font-weight: 600;
  font-size: 22px;
  letter-spacing: -0.015em;
  color: var(--ink);
  box-shadow: 0 8px 32px rgba(241,176,40,0.10);
}
.hero-pill .pill-mark {
  width: 40px; height: 40px;
  border-radius: 50%;
  background: linear-gradient(180deg, var(--gold-bright), var(--gold-deep));
  display: grid; place-items: center;
  color: var(--gold-ink);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.30), 0 4px 12px rgba(241,176,40,0.30);
}
.hero-pill .pill-mark svg { width: 24px; height: 24px; display: block; transform: translateY(-4px); }
.hero-mobile-goose { display: none; }
.hero-pill em {
  font-style: normal;
  color: var(--gold);
  font-weight: 700;
}

.hero-meta {
  display: flex; gap: 24px;
  flex-wrap: wrap;
  margin-top: 6px;
  font-family: var(--f-mono); font-size: 11.5px;
  color: var(--ink-3); letter-spacing: 0.04em;
}
.hero-meta .check { display: inline-flex; align-items: center; gap: 6px; }
.hero-meta .check svg { width: 13px; height: 13px; color: var(--up); stroke-width: 2.4; }

/* ─── Hero right column: terminal-style report card ─── */
.hero-r {
  position: relative;
  display: flex; align-items: center; justify-content: center;
}
.hero-egg {
  position: absolute;
  top: -42px; left: -32px;
  width: 92px; height: 116px;
  z-index: 2;
  filter: drop-shadow(0 14px 28px rgba(241,176,40,0.42));
}
.hero-egg svg { width: 100%; height: 100%; }

.report-card {
  width: 100%;
  background: var(--surface);
  border: 1px solid var(--hairline-2);
  border-radius: 16px;
  overflow: hidden;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.04) inset,
    0 24px 64px rgba(0,0,0,0.5),
    0 0 0 1px rgba(241,176,40,0.10);
  transform: rotate(0.4deg);
}
.rc-hd {
  display: flex; justify-content: space-between; align-items: center;
  padding: 14px 18px;
  background: var(--surface-2);
  border-bottom: 1px solid var(--hairline);
}
.rc-hd-l {
  display: flex; align-items: center; gap: 10px;
  font-family: var(--f-mono); font-size: 11px;
  letter-spacing: 0.04em;
  color: var(--ink-3);
}
.rc-hd-l .strat-name {
  font-family: var(--f-sans);
  font-weight: 600; color: var(--ink); font-size: 13px;
  letter-spacing: -0.01em;
}
.rc-hd-l .sep { color: var(--ink-5); }
.rc-hd-r {
  display: flex; align-items: center; gap: 8px;
  font-family: var(--f-mono);
  font-size: 10.5px; letter-spacing: 0.06em; color: var(--up);
}
.rc-hd-r .pulse {
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--up);
  box-shadow: 0 0 0 0 rgba(93,184,104,0.5);
  animation: pulse 1.8s ease-out infinite;
}
@keyframes pulse {
  0% { box-shadow: 0 0 0 0 rgba(93,184,104,0.5); }
  60% { box-shadow: 0 0 0 6px rgba(93,184,104,0); }
  100% { box-shadow: 0 0 0 0 rgba(93,184,104,0); }
}

.rc-hero {
  padding: 28px 24px 22px;
  display: grid; grid-template-columns: 1fr auto; gap: 28px;
  align-items: end;
  border-bottom: 1px solid var(--hairline);
}
.rc-hero-l .ke {
  font-family: var(--f-mono); font-size: 10px; letter-spacing: 0.16em;
  text-transform: uppercase; color: var(--ink-4); margin-bottom: 6px;
}
.rc-hero-v {
  font-family: var(--f-display);
  font-weight: 800;
  font-size: 78px;
  line-height: 0.9;
  letter-spacing: -0.04em;
  color: var(--up);
  font-feature-settings: "tnum";
}
.rc-hero-v .pct { font-size: 38px; font-weight: 700; vertical-align: 22px; margin-left: 2px; }
.rc-hero-meta {
  font-family: var(--f-mono); font-size: 11.5px;
  color: var(--ink-3); letter-spacing: 0.04em;
  margin-top: 8px;
}

.rc-hero-r {
  display: grid; grid-template-columns: 1fr 1fr; gap: 14px 28px;
  font-family: var(--f-mono);
}
.rc-stat { display: flex; flex-direction: column; gap: 3px; }
.rc-stat .k {
  font-size: 9px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ink-4);
}
.rc-stat .v {
  font: 700 19px var(--f-display); letter-spacing: -0.02em;
  color: var(--ink); font-feature-settings: "tnum";
}
.rc-stat .v.gold { color: var(--gold); }
.rc-stat .v.down { color: var(--down); }


/* Regime ribbon footer */
.rc-foot {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
.rc-foot .rg {
  padding: 12px 14px;
  border-right: 1px solid var(--hairline);
  display: flex; flex-direction: column; gap: 3px;
}
.rc-foot .rg:last-child { border-right: 0; }
.rc-foot .rg .k {
  font-family: var(--f-mono); font-size: 9px; letter-spacing: 0.12em;
  text-transform: uppercase;
}
.rc-foot .rg .v {
  font: 600 14px var(--f-mono); letter-spacing: -0.01em;
  font-feature-settings: "tnum";
}
.rc-foot .rg.r-charging .k { color: var(--regime-charging); }
.rc-foot .rg.r-charging .v { color: var(--ink); }
.rc-foot .rg.r-bucking  .k { color: var(--regime-bucking); }
.rc-foot .rg.r-bucking  .v { color: var(--ink); }
.rc-foot .rg.r-plodding .k { color: var(--regime-plodding); }
.rc-foot .rg.r-plodding .v { color: var(--ink); }
.rc-foot .rg.r-angry    .k { color: var(--regime-angry); }
.rc-foot .rg.r-angry    .v { color: var(--down); }

/* ═══════════════════════════════════════════════════
   Section scaffold
   ═══════════════════════════════════════════════════ */
section {
  padding: 96px 0;
  position: relative;
}
.section-head {
  display: flex; flex-direction: column; gap: 14px;
  margin-bottom: 56px;
  align-items: center;
  text-align: center;
}
.section-head.left { align-items: flex-start; text-align: left; }
.section-h {
  font-family: var(--f-display);
  font-weight: 700;
  font-size: clamp(36px, 4.2vw, 56px);
  line-height: 1.02;
  letter-spacing: -0.035em;
  color: var(--ink);
  max-width: 24ch;
}
.section-h em { font-style: normal; color: var(--gold); font-weight: 800; }
.section-deck {
  font-size: 18px; line-height: 1.55; color: var(--ink-2);
  max-width: 64ch;
  font-weight: 400;
}

/* ═══════════════════════════════════════════════════
   REGIMES section — K=4 GMM
   ═══════════════════════════════════════════════════ */
.regimes-section {
  scroll-margin-top: 72px;
  background: var(--canvas);
  position: relative;
}
.regimes-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 800px 420px at 50% 0%, rgba(241,176,40,0.04), transparent 70%);
  pointer-events: none;
}

.regime-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.regime-card {
  position: relative;
  background: var(--surface);
  border: 1px solid var(--hairline);
  border-radius: 14px;
  padding: 28px 24px;
  display: flex; flex-direction: column; gap: 18px;
  overflow: hidden;
  transition: transform .25s, border-color .25s;
  min-height: 320px;
}
.regime-card:hover {
  transform: translateY(-3px);
  border-color: var(--rg-color);
}
/* regime card top-corner radial shading removed per Eli — was too busy on dark cards */
.regime-card .rg-ic {
  width: 44px; height: 44px;
  border-radius: 10px;
  background: var(--rg-wash);
  border: 1px solid var(--rg-deep);
  display: grid; place-items: center;
  color: var(--rg-color);
  align-self: center;
}
.regime-card .rg-ic svg { width: 22px; height: 22px; stroke-width: 2.2; }
.regime-card .rg-name {
  font-family: var(--f-display);
  font-weight: 700;
  font-size: 22px;
  letter-spacing: -0.02em;
  color: var(--rg-color);
  text-align: center;
}
.regime-card .rg-id {
  font-family: var(--f-mono); font-size: 9.5px; letter-spacing: 0.14em;
  text-transform: uppercase; color: var(--ink-4);
  margin-top: 8px;
  text-align: center;
}
.regime-card .rg-desc {
  font-size: 14px; line-height: 1.55; color: var(--ink-2); width: 100%; box-sizing: border-box;
  text-align: justify;
}
.regime-card .rg-stats {
  margin-top: auto;
  padding-top: 16px;
  border-top: 1px solid var(--hairline);
  display: grid; grid-template-columns: 1fr 1fr; gap: 10px;
  font-family: var(--f-mono);
  width: 100%;
  align-self: center;
}
.regime-card .rg-stats .k {
  font-size: 9px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-4);
  text-align: center;
}
.regime-card .rg-stats .v {
  font: 600 13px var(--f-mono); color: var(--ink);
  margin-top: 3px;
  text-align: center;
}
.regime-card.r-charging { --rg-color: var(--regime-charging); --rg-wash: var(--regime-charging-soft); --rg-deep: var(--regime-charging-deep); }
.regime-card.r-bucking  { --rg-color: var(--regime-bucking);  --rg-wash: var(--regime-bucking-soft);  --rg-deep: var(--regime-bucking-deep); }
.regime-card.r-plodding { --rg-color: var(--regime-plodding); --rg-wash: var(--regime-plodding-soft); --rg-deep: var(--regime-plodding-deep); }
.regime-card.r-angry    { --rg-color: var(--regime-angry);    --rg-wash: var(--regime-angry-soft);    --rg-deep: var(--regime-angry-deep); }

/* ═══════════════════════════════════════════════════
   MODULES — Build → Test → Deploy → Trade
   ═══════════════════════════════════════════════════ */
.modules {
  background: var(--surface);
  border-top: 1px solid var(--hairline);
  border-bottom: 1px solid var(--hairline);
}
.flow {
  scroll-margin-top: 72px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  border: 1px solid var(--hairline);
  border-radius: 16px;
  overflow: hidden;
}
.flow-step {
  padding: 32px 28px 28px;
  border-right: 1px solid var(--hairline);
  display: flex; flex-direction: column; gap: 18px;
  position: relative;
  background: var(--canvas);
}
.flow-step:last-child { border-right: 0; }
.flow-step .mod-tile {
  width: 56px; height: 56px;
  border-radius: 14px;
  display: grid; place-items: center;
  color: white;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.12), 0 6px 20px rgba(0,0,0,0.35);
  margin-inline: auto;
}
.flow-step .mod-tile svg { width: 28px; height: 28px; stroke-width: 1.7; }
.flow-step.s-build    .mod-tile { background: var(--grad-cyan); }
.flow-step.s-test     .mod-tile { background: var(--grad-orange); }
.flow-step.s-deploy .mod-tile { background: var(--grad-amber); }
.flow-step.s-trade    .mod-tile { background: var(--grad-green); }

.flow-step .step-num {
  position: absolute; top: 16px; right: 18px;
  font-family: var(--f-mono); font-size: 10px;
  letter-spacing: 0.16em; text-transform: uppercase;
  color: var(--ink-4);
}
.flow-step h3 {
  font-family: var(--f-display);
  font-weight: 700;
  font-size: 26px;
  letter-spacing: -0.025em;
  color: var(--ink);
  text-align: center;
}
.flow-step h3 em {
  font-style: normal;
  color: var(--mod-color);
  font-weight: 800;
}
.flow-step.s-build h3 em    { color: var(--m-build); }
.flow-step.s-test h3 em     { color: var(--m-test); }
.flow-step.s-deploy h3 em { color: var(--m-deploy); }
.flow-step.s-trade h3 em    { color: var(--m-trade); }
.flow-step p {
  font-size: 14.5px; line-height: 1.55; color: var(--ink-2);
  text-align: justify;
}

.flow-step .step-features {
  display: flex; flex-direction: column; gap: 8px;
  margin-top: auto;
  padding-top: 18px;
  border-top: 1px solid var(--hairline);
  text-align: left;
}
.flow-step .feat {
  display: flex; align-items: center; gap: 8px;
  font-family: var(--f-mono); font-size: 11px; color: var(--ink-3);
  letter-spacing: 0.02em;
}
.flow-step .feat svg { width: 13px; height: 13px; stroke-width: 2; color: var(--ink-4); }
.flow-step.s-build .feat svg    { color: var(--m-build); }
.flow-step.s-test .feat svg     { color: var(--m-test); }
.flow-step.s-deploy .feat svg { color: var(--m-deploy); }
.flow-step.s-trade .feat svg    { color: var(--m-trade); }

/* ─── Visual: matrix preview for Deploy ─── */
.matrix-preview {
  background: var(--surface);
  border: 1px solid var(--hairline-2);
  border-radius: 14px;
  padding: 24px;
  display: grid;
  grid-template-columns: 100px repeat(4, 1fr);
  gap: 6px;
  font-family: var(--f-mono);
  font-size: 11px;
  box-shadow: 0 24px 64px rgba(0,0,0,0.4);
}
.matrix-preview .corner {}
.matrix-preview .col-h {
  text-align: center; padding: 8px 4px;
  font-size: 9.5px; letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--ink-3);
  background: var(--surface-2);
  border-radius: 6px;
  font-weight: 600;
}
.matrix-preview .col-h.c-both { color: var(--ink-2); }
.matrix-preview .col-h.c-long { color: var(--regime-plodding); background: rgba(168,102,232,0.07); }
.matrix-preview .col-h.c-short { color: var(--m-test); background: rgba(240,144,64,0.07); }
.matrix-preview .col-h.c-tot { color: var(--gold); background: var(--gold-wash); }
.matrix-preview .row-h {
  display: flex; align-items: center; gap: 8px;
  padding: 0 10px;
  font-size: 11px; letter-spacing: -0.01em;
  font-weight: 600;
  font-family: var(--f-sans);
  background: var(--surface-2);
  border-radius: 6px;
}
.matrix-preview .row-h .dot {
  width: 8px; height: 8px; border-radius: 50%;
}
.matrix-preview .row-h.r-charging { color: var(--regime-charging); }
.matrix-preview .row-h.r-charging .dot { background: var(--regime-charging); }
.matrix-preview .row-h.r-bucking { color: var(--regime-bucking); }
.matrix-preview .row-h.r-bucking .dot { background: var(--regime-bucking); }
.matrix-preview .row-h.r-plodding { color: var(--regime-plodding); }
.matrix-preview .row-h.r-plodding .dot { background: var(--regime-plodding); }
.matrix-preview .row-h.r-angry { color: var(--regime-angry); }
.matrix-preview .row-h.r-angry .dot { background: var(--regime-angry); }

.matrix-preview .cell {
  padding: 16px 8px;
  border-radius: 6px;
  text-align: center;
  border: 1px solid var(--hairline-2);
  background: var(--surface);
  font: 700 16px var(--f-display);
  letter-spacing: -0.02em;
}
.matrix-preview .cell.up { color: var(--up); background: rgba(93,184,104,0.10); border-color: rgba(93,184,104,0.30); }
.matrix-preview .cell.int { color: var(--m-test); background: rgba(240,144,64,0.10); border-color: rgba(240,144,64,0.28); }
.matrix-preview .cell.down { color: var(--down); background: rgba(226,100,86,0.10); border-color: rgba(226,100,86,0.30); }
.matrix-preview .cell.tot { color: var(--gold); background: var(--gold-wash); border-color: var(--gold-line); }

/* ═══════════════════════════════════════════════════
   TESTIMONIALS / TRUST
   ═══════════════════════════════════════════════════ */
.trust {
  background: var(--surface);
  border-top: 1px solid var(--hairline);
  border-bottom: 1px solid var(--hairline);
}

/* ═══════════════════════════════════════════════════
   PRICING
   ═══════════════════════════════════════════════════ */
.pricing {
  scroll-margin-top: 72px;
  background: var(--canvas);
}
.pricing-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px;
}
.tier {
  position: relative;
  background: var(--surface);
  border: 1px solid var(--hairline-2);
  border-radius: 16px;
  padding: 32px 28px;
  display: flex; flex-direction: column; gap: 24px;
}
.tier.featured {
  border-color: var(--gold-line);
  background: linear-gradient(180deg, rgba(241,176,40,0.05), transparent 50%), var(--surface);
  box-shadow: 0 0 0 1px rgba(241,176,40,0.25), 0 20px 56px rgba(241,176,40,0.10);
}
.tier .badge-featured {
  position: absolute; top: -14px; left: 50%; transform: translateX(-50%);
  background: var(--gold);
  color: var(--gold-ink);
  font-family: var(--f-mono);
  font-size: 9.5px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  padding: 5px 12px;
  border-radius: 100px;
  font-weight: 700;
}
.tier-head { display: flex; flex-direction: column; gap: 8px; }
.tier-name {
  font: 700 22px var(--f-display);
  letter-spacing: -0.02em;
  color: var(--ink);
}
.tier-tagline { color: var(--ink-3); font-size: 13.5px; line-height: 1.5; }
.tier-price {
  display: flex; align-items: baseline; gap: 6px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--hairline);
}
.tier-price .amount {
  font: 800 56px var(--f-display);
  letter-spacing: -0.04em;
  color: var(--ink);
  line-height: 0.95;
  font-feature-settings: "tnum";
}
.tier.featured .tier-price .amount { color: var(--gold); }
.tier-price .per {
  font-family: var(--f-mono);
  font-size: 12px;
  color: var(--ink-3);
  letter-spacing: 0.04em;
}
.tier ul {
  list-style: none;
  display: flex; flex-direction: column; gap: 12px;
}
.tier ul li {
  display: grid; grid-template-columns: 18px 1fr;
  gap: 10px;
  font-size: 14px;
  line-height: 1.5;
  color: var(--ink-2);
}
.tier ul li svg {
  width: 14px; height: 14px; stroke-width: 2.4;
  color: var(--up); margin-top: 4px;
}
.tier ul li.muted svg { color: var(--ink-4); }
.tier ul li.muted { color: var(--ink-4); }
.tier ul li b { color: var(--ink); font-weight: 600; }
.tier .btn {
  margin-top: auto;
  width: 100%;
  justify-content: center;
}

/* ═══════════════════════════════════════════════════
   FINAL CTA
   ═══════════════════════════════════════════════════ */
.cta {
  scroll-margin-top: 72px;
  background: var(--canvas);
  padding: 72px 0 96px;
  position: relative;
  overflow: hidden;
  text-align: center;
}
.cta::before {
  content: "";
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse 900px 540px at 50% 50%, rgba(241,176,40,0.10), transparent 65%);
  pointer-events: none;
}
.cta-inner {
  position: relative;
  display: flex; flex-direction: column; gap: 20px;
  align-items: center;
}
.cta-egg {
  width: 96px; height: 122px;
  filter: drop-shadow(0 18px 36px rgba(241,176,40,0.45));
  margin-bottom: 18px;
}
.cta h2 {
  font-family: var(--f-display);
  font-weight: 800;
  font-size: clamp(44px, 5.4vw, 76px);
  line-height: 1;
  letter-spacing: -0.04em;
  color: var(--ink);
}
.cta h2 em { font-style: normal; color: var(--gold); font-weight: 900; }
.cta-sub {
  font-size: 19px; line-height: 1.5;
  color: var(--ink-2);
  max-width: 56ch;
}
.cta-row { display: flex; gap: 12px; margin-top: 12px; }

/* ═══════════════════════════════════════════════════
   FOOTER
   ═══════════════════════════════════════════════════ */
footer {
  background: var(--surface);
  border-top: 1px solid var(--hairline);
  padding: 64px 0 28px;
}
.foot-grid {
  display: grid;
  grid-template-columns: 2fr repeat(4, 1fr);
  gap: 48px;
  padding-bottom: 48px;
  border-bottom: 1px solid var(--hairline);
}
.foot-brand {
  display: flex; flex-direction: column; gap: 14px;
}
.foot-brand .mk { display: flex; align-items: center; gap: 10px; }
.foot-brand .mk .nb-egg { width: 28px; height: 35px; }
.foot-brand .mk .nb-egg svg { width: 100%; height: 100%; }
.foot-brand .mk .nb-mark {
  font-family: var(--f-display);
  font-weight: 900; font-size: 20px;
  letter-spacing: -0.025em;
  color: var(--ink);
}
.foot-brand .mk .nb-mark span { color: var(--gold); }
.foot-brand p {
  font-size: 13.5px; color: var(--ink-3); line-height: 1.55;
  max-width: 36ch;
}
.foot-col h5 {
  font-family: var(--f-mono);
  font-size: 10.5px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ink-3);
  margin-bottom: 18px;
  font-weight: 500;
}
.foot-col ul {
  list-style: none;
  display: flex; flex-direction: column;
  gap: 10px;
}
.foot-col a {
  font-size: 13.5px;
  color: var(--ink-2);
  text-decoration: none;
  letter-spacing: -0.005em;
}
.foot-col a:hover { color: var(--gold); }

.foot-bottom {
  display: flex; justify-content: space-between; align-items: center;
  padding-top: 28px;
  font-family: var(--f-mono); font-size: 11px;
  color: var(--ink-4); letter-spacing: 0.04em;
}

/* ─── Disclaimer ─── */
.disclaimer {
  margin-top: 24px;
  padding-top: 18px;
  border-top: 1px solid var(--hairline);
  font-family: var(--f-mono);
  font-size: 10px;
  line-height: 1.65;
  color: var(--ink-4);
  letter-spacing: 0.02em;
  max-width: 100ch;
}

/* ─── Regime dual panel ─── */
.regime-duo {
  margin-top: 56px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.duo-panel {
  background: var(--surface);
  border: 1px solid var(--hairline-2);
  border-radius: 14px;
  padding: 22px 24px;
  display: flex; flex-direction: column;
  gap: 14px;
}
.duo-head {
  display: flex; justify-content: space-between; align-items: baseline;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--hairline);
}
.duo-eyebrow {
  font: 600 13px var(--f-sans);
  letter-spacing: -0.01em;
  color: var(--ink);
}
.duo-meta {
  font-family: var(--f-mono); font-size: 10.5px;
  letter-spacing: 0.12em; text-transform: uppercase;
  color: var(--ink-4);
}
.duo-chart {
  flex: 1;
  min-height: 260px;
  margin: -4px 0;
  display: flex; align-items: stretch;
}
.duo-chart svg { width: 100%; height: 100%; display: block; }
.duo-legend {
  display: flex; flex-wrap: wrap; gap: 18px;
  padding-top: 14px;
  border-top: 1px solid var(--hairline);
  font: 600 12px var(--f-sans);
  letter-spacing: -0.005em;
  color: var(--ink);
  justify-content: center;
}
.duo-legend .li { display: inline-flex; align-items: center; gap: 8px; }
.duo-legend .li-ic {
  display: grid; place-items: center;
  width: 16px; height: 16px;
}
.duo-legend .li-ic svg { width: 12px; height: 12px; }
.duo-legend .li.r-charging { color: var(--regime-charging); }
.duo-legend .li.r-bucking  { color: var(--regime-bucking); }
.duo-legend .li.r-plodding { color: var(--regime-plodding); }
.duo-legend .li.r-angry    { color: var(--regime-angry); }

.duo-matrix {
  box-shadow: none;
  padding: 0;
  background: transparent;
  border: 0;
  grid-template-columns: 130px repeat(3, 1fr);
}
.duo-matrix .row-h {
  font-family: var(--f-sans);
  font-size: 12px;
  font-weight: 600;
  display: flex; align-items: center; gap: 8px;
  padding: 0 12px;
}
.duo-matrix .row-h .row-ic {
  width: 20px; height: 20px;
  display: grid; place-items: center;
  color: inherit;
}
.duo-matrix .row-h.row-total {
  color: var(--gold);
  background: var(--gold-wash);
  border: 1px solid var(--gold-line);
}
.duo-matrix .cell.tot {
  color: var(--gold);
  background: var(--gold-wash);
  border-color: var(--gold-line);
}

/* ─── Pricing 4-up ─── */
.pricing-grid-4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.pricing-grid-4 .tier { padding: 28px 24px; gap: 18px; }
.pricing-grid-4 .tier-price .amount { font-size: 46px; }

.billing-toggle {
  display: inline-flex; align-items: center; gap: 12px;
  margin-top: 8px;
  font-family: var(--f-mono);
  font-size: 11px; letter-spacing: 0.06em;
  color: var(--ink-3);
}
.billing-toggle .seg {
  display: inline-flex;
  padding: 4px;
  border: 1px solid var(--hairline-2);
  border-radius: 100px;
  background: var(--surface);
}
.billing-toggle .seg button {
  border: 0;
  background: transparent;
  font: 600 12px var(--f-mono);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ink-3);
  padding: 6px 14px;
  border-radius: 100px;
  cursor: pointer;
  transition: all .15s;
}
.billing-toggle .seg button.active {
  background: var(--gold);
  color: var(--gold-ink);
}
.billing-toggle .save {
  color: var(--up);
  font-weight: 600;
}

@media (max-width: 1100px) {
  .regime-duo { grid-template-columns: 1fr; }
  .pricing-grid-4 { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px) {
  .pricing-grid-4 { grid-template-columns: 1fr; }
}

/* lavender heading inline accent */
em.lavender-h { font-style: normal; color: var(--m-share); font-weight: 800; }
em.gold-h { font-style: normal; color: var(--gold); font-weight: 700; }

/* tightened footer grid */
.foot-grid-tight { grid-template-columns: 2fr 1fr 1fr 1fr; }
@media (max-width: 1100px) {
  .foot-grid-tight { grid-template-columns: 1fr 1fr; }
}

/* ─── Engine section (was problem) ─── */
.problem { padding: 64px 0; }
.engine-head {
  text-align: center;
  margin-bottom: 36px;
}
.engine-head .section-h {
  font-size: clamp(48px, 5.6vw, 76px);
  max-width: 22ch;
  margin: 0 auto;
}

.engine-grid {
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  gap: 64px;
  align-items: center;
  position: relative;
}
.engine-l { display: flex; flex-direction: column; gap: 24px; }

.engine-sub {
  font-family: var(--f-display);
  font-weight: 700;
  font-size: clamp(36px, 4.2vw, 56px);
  line-height: 1.02;
  letter-spacing: -0.035em;
  color: var(--ink);
}
.engine-sub em {
  font-style: normal;
  color: var(--gold);
  font-weight: 800;
}

.engine-egg {
  position: absolute;
  top: -28px; left: -20px;
  width: 60px; height: 76px;
  z-index: 2;
  filter: drop-shadow(0 10px 22px rgba(241,176,40,0.42));
}
.engine-egg svg { width: 100%; height: 100%; }

.engine-body { display: flex; flex-direction: column; gap: 18px; }
.engine-body p {
  font-size: 18px;
  line-height: 1.55;
  color: var(--ink-2);
  max-width: 64ch;
}
.engine-body p b { color: var(--ink); font-weight: 600; }
.engine-body em.gold-h { font-weight: 700; }

.engine-r {
  position: relative;
  display: flex; align-items: center; justify-content: center;
}

@media (max-width: 1100px) {
  .engine-grid { grid-template-columns: 1fr; gap: 48px; }
}
@media (max-width: 1100px) {
  .flow, .regime-grid { grid-template-columns: 1fr 1fr; }
  .flow-step { border-right: 0; border-bottom: 1px solid var(--hairline); }
  .flow-step:nth-child(2n) { border-right: 0; }
  .matrix-preview { grid-template-columns: 80px repeat(4, 1fr); }
  .foot-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px) {
  .lp-wrap { padding: 0 22px; }
  section { padding: 64px 0; }
  .nav-links { display: none; }
  .flow, .regime-grid { grid-template-columns: 1fr; }
  .flow-step { border-bottom: 1px solid var(--hairline); }
  .foot-grid { grid-template-columns: 1fr; }
  /* Mobile footer per Eli: drop PRODUCT column, lay LEGAL as a centered row */
  .foot-grid-tight { grid-template-columns: 1fr; }
  .foot-grid-tight .foot-brand { grid-column: auto; }
  .foot-grid-tight .foot-col:first-of-type { display: none; }
  .foot-grid-tight .foot-col:last-of-type { text-align: center; }
  .foot-grid-tight .foot-col:last-of-type h5 { display: none; }
  .foot-grid-tight .foot-col:last-of-type ul {
    flex-direction: row;
    gap: 24px;
    flex-wrap: wrap;
    justify-content: center;
  }
  .rc-hero { grid-template-columns: 1fr; }
  .rc-hero-v { font-size: 56px; }
  .hero h1 { font-size: 56px; }
  .hero { padding-top: 48px; padding-bottom: 48px; }
  .nav-brand { min-width: 0; }
  /* FIX 1 — hero mobile goose */
  .hero-mobile-goose { display: block; width: 176px; height: 176px; margin: 12px auto; }
  .hero-mobile-goose svg { width: 100%; height: 100%; display: block; }
  .hero-pill .pill-mark { display: none; }
  /* FIX 6 — hero pill: widen to 2 rows on mobile */
  .hero-pill { display: block; text-align: center; font-size: 16px; padding: 10px 18px; max-width: 100%; }
  .nav-brand .nb-tag { display: none !important; }
  /* FIX 2 — performance matrix: correct columns, compact sizing */
  .duo-matrix { grid-template-columns: 90px repeat(3, 1fr) !important; font-size: 10px; }
  .duo-matrix .row-h { font-size: 10px; padding: 0 6px; gap: 4px; }
  .duo-matrix .cell { font-size: 12px; padding: 10px 4px; }
  .duo-matrix .col-h { font-size: 9px; padding: 6px 2px; }
  /* FIX 5 — no horizontal overflow */
  .regime-duo { display: flex; flex-direction: column; }
  .duo-panel { overflow-x: auto; }
}


/* ── s79 landing pricing/engine edits ── */
/* Engine section — center the left column */
.engine-l { text-align: center; align-items: center; }
.engine-body p { margin-left: auto; margin-right: auto; }

/* Billing toggle — center column layout, save pill below */
.billing-toggle {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.billing-toggle .save {
  font-size: 12px;
  font-weight: 600;
  color: var(--gold);
}

/* Pricing tier — center name + tagline, leave bullets left-aligned */
.tier-head { text-align: center; }
.tier .tier-name { text-align: center; }
.tier .tier-tagline { text-align: center; }
.tier ul { text-align: left; }

/* btn-gold-border — btn-secondary base, gold border */
.btn.btn-secondary.btn-gold-border {
  border-color: var(--gold);
  color: var(--gold);
}
.btn.btn-secondary.btn-gold-border:hover {
  filter: brightness(1.15);
}

/* 5-column flow grid (was 4) — keep auto-fit wrap behavior for narrow viewports */
.flow {
  grid-template-columns: repeat(5, 1fr);
}
@media (max-width: 1100px) {
  .flow { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .flow { grid-template-columns: 1fr; }
}


/* Goose: lift above any sibling, no overflow clip */
.hero-mobile-goose {
  position: relative;
  z-index: 10;
  overflow: visible;
}

/* Regimes H2 — marketing hero scale (above brand-guide spread-title 56px,
   below wordmark 96px). Explicit line wrappers prevent browser wrap inside
   "The market has" on narrow viewports. */
.regimes-section .section-h-hero {
  font-size: clamp(36px, 9vw, 80px);
  line-height: 1.0;
  letter-spacing: -0.03em;
  font-weight: 700;
  max-width: none;
}
.regimes-section .section-h-hero em {
  display: inline-block;
}
.regimes-section .section-h-hero .hero-line {
  display: block;
}

/* Compete module — purple gradient tile + purple accents */
.flow-step.s-compete .mod-tile {
  background: var(--grad-lavender, linear-gradient(135deg, #A866E8, #6B3FA0));
}
.flow-step.s-compete h3 em {
  color: var(--regime-plodding, #A866E8);
}
.flow-step.s-compete .feat svg {
  color: var(--regime-plodding, #A866E8);
}


/* Regime H2 sub-line — brand-guide card/section-title scale (28/1.25/600/-0.02em),
   muted ink-2. Block display so it always drops to its own line. */
.regimes-section .section-h-hero .h2-sub {
  display: block;
  font-size: clamp(20px, 3vw, 28px);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.25;
  margin-top: 20px;
  color: var(--ink-2);
}


/* Soar with Goose btn — center text + head icon, min 4px buffer */
.btn.btn-with-goose {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding-top: max(12px, 0.75rem);
  padding-bottom: max(12px, 0.75rem);
}
.btn-goose-head {
  width: 1.4em;
  height: 1.4em;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
}
.btn-goose-head svg {
  width: 100%;
  height: 100%;
  display: block;
}


/* Hero pill — explicit line wrappers (replaces fragile <br> approach) */
.hero-pill .pill-line { display: inline; }
@media (max-width: 720px) {
  .hero-pill .pill-line { display: block; }
}


/* Equity-curve chart — collapse dead space below SVG on mobile */
@media (max-width: 720px) {
  .duo-chart {
    min-height: 0;
    aspect-ratio: 556 / 320;
    margin: 0;
  }
  .duo-chart svg { height: auto; }
  .duo-panel { gap: 8px; }
  .duo-legend { padding-top: 8px; }
}


/* Section spacing per Eli — tighter modules section-head, much tighter pricing, less above egg */
.modules .section-head { margin-bottom: 39px; }     /* 56 → 39 (−30%) */
.pricing .section-head { margin-bottom: 28px; }     /* 56 → 28 (−50%) */
.cta { padding: 48px 0; }                              /* top+bottom 96 → 48 (−50%) */

/* ── s79 end ── */
