/* Funnel pages (pricing, scorecard, checkout, intake) — extends elite.css.
   Class names used by the scorecard and checkout scripts are kept exactly as those scripts expect. */

/* ---------- light page hero ---------- */
.page-hero{ padding:64px 0 56px; background:radial-gradient(70% 90% at 100% 0%, rgba(226,177,60,.10), transparent 60%), var(--ink); color:var(--text-inv); }
.page-hero h1{ margin-top:14px; max-width:12.7em; }
.page-hero .lead{ margin-top:18px; color:var(--muted-inv); }
.page-hero .eyebrow, .pay-page .eyebrow{ color:var(--gold); }

/* ---------- industry price table ---------- */
.ptable-wrap{ overflow-x:auto; background:var(--card); border:1px solid var(--line); border-radius:var(--r-lg); }
.ptable{ width:100%; border-collapse:collapse; font-size:15px; min-width:760px; }
.ptable th, .ptable td{ padding:14px 16px; border-bottom:1px solid var(--line); text-align:left; }
.ptable th{ font:500 12px/1.3 var(--mono); letter-spacing:.08em; text-transform:uppercase; color:var(--muted); background:#FAFBFC; }
.ptable td.n{ text-align:right; font-family:var(--mono); font-variant-numeric:tabular-nums; }
.ptable td.n a{ text-decoration:none; font-weight:600; }
.ptable td.n a:hover{ color:var(--gold-ink); text-decoration:underline; }
.ptable tr:last-child td{ border-bottom:0; }
.ptable th.n{ text-align:right; }

/* ---------- scorecard ---------- */
.sc-wrap{ max-width:840px; margin:0 auto; }
.pill{ display:inline-flex; gap:6px; align-items:center; font:500 12.5px/1.3 var(--mono); letter-spacing:.03em; color:var(--gold-ink); background:var(--gold-wash); padding:8px 13px; border-radius:999px; }
.stats{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid var(--line); border-radius:14px; overflow:hidden; background:var(--card); margin:0 auto 30px; max-width:640px; }
.stat{ padding:18px 10px; text-align:center; border-left:1px solid var(--line); }
.stat:first-child{ border-left:0; }
.stat .n{ font:600 28px/1.1 var(--mono); }
.stat .l{ font-size:13px; color:var(--muted); margin-top:4px; }
@media (max-width:560px){ .stats{ grid-template-columns:repeat(2,minmax(0,1fr)); } .stat:nth-child(3){ border-left:0; } .stat:nth-child(n+3){ border-top:1px solid var(--line); } }
.sc-card{ background:var(--card); border:1px solid var(--line); border-radius:var(--r-lg); padding:clamp(24px,4vw,44px); box-shadow:var(--shadow); }
.formbar{ height:6px; background:var(--line); border-radius:99px; overflow:hidden; }
#bar{ height:100%; width:0; background:var(--gold-deep); transition:width .3s ease; }
.choices{ display:grid; gap:10px; }
.choice{ border:1px solid var(--line); border-radius:10px; padding:14px 16px; cursor:pointer; background:var(--card); font-size:16px; transition:border-color .15s, background .15s; }
.choice:hover{ border-color:var(--gold-deep); }
.choice.sel{ border-color:var(--gold-deep); background:var(--gold-wash); font-weight:600; }
.formnav{ display:flex; justify-content:space-between; gap:12px; margin-top:26px; }
.btn-ghost{ background:transparent; border:1px solid var(--line); color:var(--text); }
.btn-ghost:hover{ border-color:var(--gold-deep); }
.btn-lg{ min-height:56px; padding:0 30px; font-size:17px; }
.sc-input{ width:100%; font:500 18px var(--mono); padding:14px 16px; border:1px solid var(--line); border-radius:12px; background:var(--paper); color:var(--text); }
.sc-input:focus{ outline:none; border-color:var(--gold-deep); box-shadow:0 0 0 3px var(--gold-wash); }
.shot{ background:var(--ink); color:var(--text-inv); border-radius:var(--r-lg); padding:clamp(24px,4vw,38px); }
.shot-grid{ display:grid; grid-template-columns:auto 1fr; gap:clamp(20px,4vw,38px); align-items:center; }
.grade-ring{ width:132px; height:132px; border-radius:50%; display:grid; place-items:center; border:3px solid var(--gc,#E2B13C); box-shadow:0 0 44px -14px var(--gc,#E2B13C); }
.grade-let{ font:600 64px/1 var(--display); color:var(--gc,#E2B13C); }
.grade-cap{ font:500 10.5px/1.2 var(--mono); letter-spacing:.14em; text-transform:uppercase; color:var(--muted-inv); margin-top:4px; }
.shot .eyebrow{ color:var(--gold); }
.shot-pct{ font:600 clamp(32px,6vw,52px)/1.05 var(--mono); letter-spacing:-.02em; margin-top:6px; }
.shot-sub{ color:var(--muted-inv); font-size:15px; margin-top:8px; line-height:1.6; }
.shot-sub b{ color:var(--text-inv); }
.shot-mark{ display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-top:22px; padding-top:14px; border-top:1px solid var(--line-ink); font:500 11.5px/1.3 var(--mono); letter-spacing:.06em; color:var(--muted-inv); }
.g-A{ --gc:#4ADE80; } .g-B{ --gc:#86EFAC; } .g-C{ --gc:#E2B13C; } .g-D{ --gc:#F59E0B; } .g-F{ --gc:#F87171; }
.grad{ color:var(--gold-ink); }
.shot .grad{ color:var(--gold); }
.sc-wrap .leak{ display:grid; grid-template-columns:auto 1fr auto; gap:14px; align-items:start; flex-direction:initial; background:var(--card); border:1px solid var(--line); border-radius:12px; padding:16px 18px; margin-bottom:10px; }
.sc-wrap .leak.top{ border-color:var(--gold-deep); background:linear-gradient(180deg, var(--gold-wash), var(--card)); }
.rank{ width:28px; height:28px; border-radius:8px; display:grid; place-items:center; font:600 13px var(--mono); background:var(--paper); border:1px solid var(--line); color:var(--muted); }
.leak.top .rank{ background:var(--ink); color:var(--gold); border-color:var(--ink); }
.leak-name{ font-size:16px; font-weight:600; }
.leak-why{ color:var(--muted); font-size:14px; margin-top:5px; line-height:1.55; }
.leak-amt{ font:600 17px var(--mono); white-space:nowrap; text-align:right; color:var(--leak); }
.leak-amt.grad{ color:var(--leak); }
.leak-share{ color:var(--muted); font-size:12px; margin-top:3px; text-align:right; white-space:nowrap; }
.badge2{ display:inline-block; font:600 10px/1 var(--mono); letter-spacing:.1em; text-transform:uppercase; color:var(--gold); background:var(--ink); border-radius:6px; padding:5px 7px; margin-left:8px; vertical-align:2px; }
.method{ border:1px solid var(--line); border-radius:12px; background:var(--card); padding:16px 18px; }
.method summary{ cursor:pointer; font-size:15px; font-weight:600; }
.method p, .method li{ color:var(--muted); font-size:14px; line-height:1.7; }
.sc-panel{ background:var(--card); border:1px solid var(--line); border-radius:var(--r-lg); padding:clamp(22px,3.4vw,32px); }
.sc-panel input[type=email]{ flex:1 1 260px; font:16px var(--body); padding:13px 16px; border:1px solid var(--line); border-radius:12px; background:var(--paper); color:var(--text); }
.cta-band{ background:var(--ink); color:var(--text-inv); border-radius:var(--r-lg); padding:clamp(26px,4vw,40px); text-align:center; }
.cta-band .lead{ color:var(--muted-inv); margin:0 auto 22px; }
.cta-band .grad{ color:var(--gold); }
.cta-band .btn-ghost{ color:var(--text-inv); border-color:var(--line-ink); }
@media (max-width:620px){ .shot-grid{ grid-template-columns:1fr; text-align:center; justify-items:center; } .sc-wrap .leak{ grid-template-columns:auto 1fr; } .leak-amt, .leak-share{ grid-column:2; text-align:left; } }

/* ---------- checkout ---------- */
body.pay-page{ background:radial-gradient(60% 50% at 90% -10%, rgba(226,177,60,.12), transparent 60%), var(--ink); color:var(--text-inv); --brd:rgba(255,255,255,.10); --gold-bright:#E2B13C; --muted:#A3B0C4; --text:#EAF0F7; min-height:100vh; }
.pay-page .nav{ max-width:1080px; margin:0 auto; padding:18px 24px; display:flex; align-items:center; justify-content:space-between; gap:12px; }
.pay-page .secure{ font:500 12.5px/1 var(--mono); color:var(--muted-inv); letter-spacing:.04em; }
.pay-wrap{ max-width:560px; margin:3vh auto 40px; padding:0 20px; }
.pay-card{ background:var(--ink-2); border:1px solid var(--line-ink); border-radius:var(--r-lg); padding:30px 28px; box-shadow:0 30px 80px -40px rgba(0,0,0,.8); }
.pay-card h1{ font-size:clamp(28px,4vw,34px); margin:10px 0 4px; }
.pay-card .amt{ font:600 42px/1.1 var(--mono); letter-spacing:-.02em; margin:8px 0 2px; }
.pay-card .amt small{ font:400 14px var(--body); color:var(--muted-inv); letter-spacing:0; margin-left:4px; }
.pay-card .desc{ color:var(--muted-inv); font-size:15px; margin:8px 0 16px; }
.pay-card label{ display:block; font-size:13px; font-weight:600; color:var(--muted-inv); margin:16px 0 6px; }
.pay-card input{ width:100%; padding:13px 14px; font:16px var(--body); border-radius:10px; border:1px solid var(--line-ink); background:rgba(255,255,255,.04); color:var(--text-inv); }
.pay-card input:focus{ outline:none; border-color:var(--gold); box-shadow:0 0 0 3px rgba(226,177,60,.18); }
.pay-card .btn{ width:100%; margin-top:18px; background:var(--gold); color:var(--ink); }
.pay-card #go{ min-height:54px; font-size:16.5px; }
.pay-card .btn:disabled{ opacity:.6; cursor:wait; }
.founder-note{ border:1px solid rgba(226,177,60,.35); background:rgba(226,177,60,.06); border-radius:12px; padding:14px 16px; margin:14px 0 6px; font-size:14px; line-height:1.55; }
.founder-note .mono{ display:block; font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:var(--gold); margin-bottom:6px; }
.founder-note a{ color:var(--gold); }
.arr-q{ font:500 12px/1.3 var(--mono); letter-spacing:.08em; text-transform:uppercase; color:var(--muted-inv); margin:16px 0 10px; }
.arr-btn{ display:block; width:100%; text-align:left; background:rgba(255,255,255,.03); border:1px solid var(--line-ink); border-radius:10px; padding:14px 16px; color:var(--text-inv); cursor:pointer; font:inherit; margin-bottom:8px; transition:border-color .15s; }
.arr-btn:hover{ border-color:var(--gold); }
.arr-btn b{ display:block; font-size:15px; }
.arr-btn span{ font-size:13px; color:var(--muted-inv); }
.arr-btn strong{ color:var(--gold); font-family:var(--mono); font-weight:600; }
.price-summary{ display:flex; align-items:center; justify-content:space-between; gap:12px; background:rgba(226,177,60,.08); border:1px solid rgba(226,177,60,.3); border-radius:10px; padding:12px 16px; margin-top:18px; }
.price-summary span:first-child{ font-size:13.5px; color:var(--muted-inv); }
#price-display{ font:600 22px var(--mono); color:var(--gold); }
.trust-line{ display:flex; flex-wrap:wrap; gap:6px 12px; justify-content:center; margin-top:14px; font-size:12px; color:var(--muted-inv); }
.trust-line a{ color:inherit; }
.pay-card .note{ font-size:13px; color:var(--muted-inv); line-height:1.6; margin-top:12px; }
.pay-card .ok{ background:rgba(74,222,128,.06); border:1px solid rgba(74,222,128,.28); border-radius:12px; padding:18px; margin-top:18px; display:none; }
.pay-card .ok b{ color:#4ADE80; }
.pay-card .ref{ font:600 22px var(--mono); letter-spacing:.04em; color:var(--gold); }
.pay-card .err{ color:#F87171; font-size:13.5px; margin-top:10px; display:none; }
.next-steps{ margin:22px 0 0; padding:0; list-style:none; counter-reset:ns; }
.next-steps li{ counter-increment:ns; position:relative; padding:10px 0 10px 34px; border-top:1px solid var(--line-ink); font-size:14px; color:var(--muted-inv); }
.next-steps li::before{ content:counter(ns); position:absolute; left:0; top:10px; width:22px; height:22px; border-radius:50%; background:var(--gold); color:var(--ink); font:600 12px/22px var(--mono); text-align:center; }
.next-steps b{ color:var(--text-inv); }
.guarantee{ background:rgba(74,222,128,.05); border:1px solid rgba(74,222,128,.22); border-radius:12px; padding:16px 18px; margin-top:20px; font-size:14px; }
.guarantee .mono{ display:block; font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:#4ADE80; margin-bottom:6px; }
.pay-foot{ text-align:center; color:var(--muted-inv); font-size:12.5px; padding:6px 18px 30px; }
.pay-foot a{ color:var(--muted-inv); }

/* ---------- intake (success) ---------- */
.intake-wrap{ max-width:800px; margin:0 auto; }
.check{ width:68px; height:68px; border-radius:50%; margin:0 auto 20px; display:grid; place-items:center; background:var(--gold); color:var(--ink); font:600 30px/1 var(--display); }
.chips-row{ display:flex; flex-wrap:wrap; gap:8px; justify-content:center; margin-top:20px; }
.chips-row span{ border:1px solid var(--line-ink); border-radius:999px; padding:7px 13px; font-size:13px; color:var(--muted-inv); }
.tallybox{ background:#fff; border-radius:14px; overflow:hidden; min-height:560px; border:1px solid var(--line); box-shadow:var(--shadow); }
.tallybox iframe{ width:100%; border:0; min-height:560px; display:block; }
.tally-head{ background:#F4F6F9; color:var(--text); font-size:13px; font-weight:600; padding:12px 18px; border-bottom:1px solid var(--line); }
.fallback{ display:none; background:var(--gold-wash); border:1px solid var(--gold-deep); border-radius:12px; padding:16px 18px; margin-bottom:14px; }
.emailed{ background:var(--card); border:1px solid var(--line); border-radius:12px; padding:14px 18px; font-size:14.5px; color:var(--muted); margin-top:16px; line-height:1.6; }
.emailed b{ color:var(--text); }
