/* ── Tokens (Dark Theme) ── */
:root {
  --bg: #0f0f1a;
  --bg-card: #1a1a2e;
  --bg-card-border: rgba(255,255,255,.07);
  --text: #ffffff;
  --text-secondary: rgba(255,255,255,.8);
  --text-muted: rgba(255,255,255,.38);
  --accent: #7c3aed;
  --accent-pink: #ec4899;
  --gradient: linear-gradient(135deg, #7c3aed, #ec4899);
  --glow: rgba(124,58,237,.25);
  --font: 'Inter', system-ui, -apple-system, sans-serif;
  --serif: 'Instrument Serif', Georgia, serif;
  --ease: cubic-bezier(.4,0,.2,1);
  --shadow: 0 2px 12px rgba(0,0,0,.4);
  --shadow-lg: 0 8px 40px rgba(0,0,0,.5);
}

/* ── Reset ── */
*,*::before,*::after { margin:0; padding:0; box-sizing:border-box }
html { scroll-behavior:smooth; -webkit-font-smoothing:antialiased; scroll-padding-top:60px }
body { font-family:var(--font); background:var(--bg); color:var(--text); line-height:1.6; overflow-x:hidden }
a { color:inherit; text-decoration:none }
img { max-width:100%; height:auto; display:block }
ul { list-style:none }

.container { max-width:1100px; margin:0 auto; padding:0 24px }

/* ── Urgency Banner ── */
.urgency-banner {
  position:sticky; top:0; left:0; right:0; z-index:110;
  background:var(--gradient); color:#fff;
  padding:10px 24px; text-align:center;
  font-size:.85rem; font-weight:500;
  display:flex; align-items:center; justify-content:center; gap:12px;
}
.urgency-banner .countdown {
  display:inline-flex; gap:4px; font-weight:700; font-variant-numeric:tabular-nums;
}
.urgency-banner .countdown span {
  background:rgba(255,255,255,.2); padding:2px 6px; border-radius:4px; font-size:.8rem;
}

/* ── Shared section styling ── */
.section-label {
  display:block; font-size:12px; font-weight:700; letter-spacing:2px;
  color:var(--accent); margin-bottom:16px; text-align:center;
}
.section-heading-wrap {
  display:flex; align-items:center; justify-content:center; gap:10px;
  flex-wrap:wrap; margin-bottom:56px;
}
.section-heading {
  font-size:clamp(1.75rem,4vw,2.5rem); font-weight:700; line-height:1.15;
  letter-spacing:-.02em; color:var(--text);
}
.section-heading-accent {
  font-family:var(--serif); font-style:italic; font-weight:normal;
  font-size:clamp(1.75rem,4vw,2.5rem);
  background:var(--gradient); -webkit-background-clip:text;
  -webkit-text-fill-color:transparent; background-clip:text;
}

/* ── Buttons ── */
.btn {
  display:inline-flex; align-items:center; gap:6px; font-family:var(--font); font-weight:600;
  font-size:.875rem; border:none; border-radius:999px; cursor:pointer;
  transition:all .2s var(--ease); white-space:nowrap;
}
.btn-primary {
  padding:16px 32px; background:var(--gradient); color:#fff;
  box-shadow:0 4px 20px var(--glow);
}
.btn-primary:hover {
  box-shadow:0 6px 28px var(--glow); transform:translateY(-2px);
}
.btn-lg { padding:16px 36px; font-size:.95rem }

/* ── Hero + Pricing Section ── */
.hero-pricing {
  padding:0 0 80px;
  background:var(--bg);
}

.hero-logo {
  display:flex; justify-content:center; margin-top:20px; margin-bottom:20px;
}
.hero-logo-img {
  max-width:500px; width:100%; height:auto;
}

.hero-heading {
  display:flex; flex-direction:column; align-items:center; gap:4px;
  margin-bottom:16px;
}
.hero-h1 {
  font-size:clamp(1.75rem,4.5vw,2.5rem); font-weight:700; line-height:1.2;
  letter-spacing:-1px; color:#fff; text-align:center;
}
.hero-h1-accent {
  font-family:var(--serif); font-style:italic; font-weight:normal;
  font-size:clamp(1.75rem,4.5vw,2.5rem);
  background:var(--gradient); -webkit-background-clip:text;
  -webkit-text-fill-color:transparent; background-clip:text;
}

.hero-subtitle {
  font-size:16px; color:rgba(255,255,255,.9); text-align:center;
  max-width:560px; margin:0 auto 40px;
}

/* ── Pricing Toggle ── */
.pricing-toggle {
  display:flex; align-items:center; justify-content:center;
  background:#1e1e2e; border-radius:999px; padding:4px;
  width:fit-content; margin:0 auto 48px;
}
.pricing-toggle button {
  padding:10px 24px; border:none; background:transparent;
  font-family:var(--font); font-size:14px; font-weight:500;
  color:rgba(255,255,255,.44); cursor:pointer; border-radius:999px;
  transition:all .25s var(--ease); position:relative; z-index:1;
}
.pricing-toggle button.active {
  color:#fff; font-weight:600;
  background:var(--gradient);
  box-shadow:0 2px 8px var(--glow);
}
.toggle-badge {
  display:inline-block; padding:3px 8px; border-radius:999px;
  background:#10b981; color:#fff;
  font-size:11px; font-weight:700; margin-left:6px; vertical-align:middle;
}

/* ── Pricing Cards Row ── */
.pricing-row {
  display:grid; grid-template-columns:repeat(3,1fr); gap:24px;
  margin-bottom:32px;
}

/* ── Base Pricing Card ── */
.p-card {
  position:relative; border-radius:28px; overflow:hidden;
  min-height:320px; padding:26px;
  display:flex; flex-direction:column;
  transition:transform .3s var(--ease), box-shadow .3s var(--ease);
}
.p-card:hover { transform:translateY(-4px) }

.p-card-icon {
  position:absolute; top:115px; right:40px;
  z-index:1; width:clamp(120px,35%,160px); height:auto; object-fit:contain;
  filter:drop-shadow(0 8px 24px rgba(0,0,0,.5));
}
.p-card-origin .p-card-icon { top:95px }
.p-content { flex:1; position:relative; z-index:2 }

.p-card-supernova .p-content { padding-top:36px }
.p-card-supernova .p-card-icon { top:105px; right:30px }

.p-topline {
  display:flex; align-items:center; gap:10px; margin-bottom:12px;
}
.p-brain {
  display:flex; align-items:center; justify-content:center;
  width:18px; height:18px; border-radius:6px;
  background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.14);
  font-size:10px; line-height:1;
}
.p-label {
  font-size:14px; font-weight:400; letter-spacing:1.96px;
  color:rgba(255,255,255,.7);
}
.p-title {
  font-size:44px; font-weight:500; letter-spacing:-.88px;
  color:rgba(255,255,255,.92); margin-bottom:4px;
}
.p-price {
  font-size:56px; font-weight:600; letter-spacing:-1.68px;
  color:rgba(255,255,255,.92); margin-bottom:4px;
  font-variant-numeric:tabular-nums;
}
.p-period {
  font-size:20px; color:rgba(255,255,255,.55); margin-bottom:6px;
}
.p-savings {
  display:inline-block;
  font-size:13px; font-weight:700;
  color:#22c55e;
  background:rgba(34,197,94,.12);
  border:1px solid rgba(34,197,94,.20);
  border-radius:999px;
  padding:5px 14px;
  margin-bottom:14px;
  transition:opacity .25s ease, transform .25s ease;
}
.p-savings.hidden {
  opacity:0; transform:translateY(-4px); pointer-events:none;
}

/* CTA Button */
.p-cta {
  display:flex; align-items:center; justify-content:center;
  width:100%; padding:18px; border-radius:999px;
  font-size:22px; font-weight:600; letter-spacing:.22px;
  color:rgba(255,255,255,.95);
  background:linear-gradient(180deg, rgba(63,99,255,.95), rgba(195,75,255,.95));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 40px rgba(0,0,0,.45);
  position:relative; z-index:2;
  transition:all .3s var(--ease);
}
.p-cta:hover {
  transform:translateY(-2px);
  box-shadow:0 22px 50px rgba(0,0,0,.55);
}
.p-cta-featured {
  background:linear-gradient(180deg, #5a8cff, #ff66d6);
  box-shadow:0 20px 50px rgba(0,0,0,.5), 0 1px 0 rgba(255,255,255,.25);
}

/* ── Origin Card ── */
.p-card-origin {
  background:
    radial-gradient(ellipse 120% 120% at 70% 50%, rgba(100,60,200,.35) 0%, rgba(60,40,140,.2) 40%, transparent 65%),
    linear-gradient(160deg, rgba(40,30,80,.9) 0%, rgba(18,14,40,.95) 100%);
  border:1px solid rgba(255,255,255,.1);
}

/* ── Supernova Card (Featured) ── */
.p-card-supernova {
  background:
    radial-gradient(ellipse 130% 130% at 60% 40%, rgba(180,80,220,.3) 0%, rgba(120,50,180,.15) 35%, transparent 55%),
    linear-gradient(160deg, rgba(60,25,100,.95) 0%, rgba(20,12,40,.95) 100%);
  border:2px solid transparent;
  box-shadow:
    0 40px 90px rgba(0,0,0,.65),
    0 1px 0 rgba(255,255,255,.08);
}
.p-card-supernova::before {
  content:''; position:absolute; inset:-2px; border-radius:30px; z-index:0;
  background:linear-gradient(240deg, #5a8cff, #c77dff 33%, #ff66d6 66%, #5a8cff);
  mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask-composite:exclude;
  -webkit-mask-composite:xor;
  padding:2px;
}
.p-card-supernova .p-title { font-size:46px; font-weight:500; letter-spacing:-.92px }
.p-card-supernova .p-price { font-size:60px; font-weight:700; letter-spacing:-1.8px }

.p-badge {
  position:absolute; top:-1px; left:50%; transform:translateX(-50%);
  padding:8px 22px; border-radius:0 0 999px 999px;
  background:linear-gradient(180deg, #6f8dff, #ff66d6);
  font-size:14px; font-weight:600; letter-spacing:.7px; color:#fff;
  box-shadow:0 10px 30px rgba(0,0,0,.4);
  z-index:5; white-space:nowrap;
}

/* ── Big Bang Card ── */
.p-card-bigbang {
  background:
    radial-gradient(ellipse 120% 120% at 70% 50%, rgba(255,140,56,.35) 0%, rgba(200,80,0,.18) 40%, transparent 65%),
    linear-gradient(160deg, rgba(50,30,10,.95) 0%, rgba(18,14,40,.95) 100%);
  border:1px solid rgba(245,158,11,.4);
}

/* ── Sparkle Dots ── */
.p-sparkle {
  position:absolute; width:3px; height:3px; border-radius:50%;
  background:#fff; z-index:4; overflow:hidden;
  box-shadow:0 0 8px 3px rgba(255,255,255,.8), 0 0 20px 6px rgba(124,58,237,.6), 0 0 40px 10px rgba(236,72,153,.3);
}
.p-card-bigbang .p-sparkle {
  box-shadow:0 0 8px 3px rgba(255,255,255,.8), 0 0 20px 6px rgba(245,158,11,.6), 0 0 40px 10px rgba(255,94,0,.3);
}

/* ── Card Glows ── */
.p-glow { position:absolute; border-radius:50%; pointer-events:none; z-index:0 }
.p-glow-purple {
  width:280px; height:280px; top:0; right:-20px;
  background:radial-gradient(circle, rgba(175,98,255,.45), rgba(100,60,255,.2) 50%, transparent 70%);
}
.p-glow-orange {
  width:280px; height:280px; top:10px; right:-20px;
  background:radial-gradient(circle, rgba(255,122,40,.5), rgba(255,80,0,.25) 50%, transparent 65%);
}
.p-glow-pink {
  position:absolute; width:320px; height:260px; top:-40px; right:-30px;
  background:rgba(255,105,255,.55); border-radius:50%;
  filter:blur(50px); opacity:.4; z-index:0;
}
.p-glow-blue {
  position:absolute; width:320px; height:260px; top:80px; left:-30px;
  background:rgba(80,120,255,.55); border-radius:50%;
  filter:blur(50px); opacity:.4; z-index:0;
}

/* ── Guarantee ── */
.guarantee {
  display:flex; align-items:center; gap:12px;
  padding:18px 28px; border-radius:12px;
  background:rgba(16,185,129,.27);
  border:2px solid rgba(16,185,129,.63);
  margin-bottom:48px;
}
.guarantee-icon { flex-shrink:0 }
.guarantee p {
  font-size:14px; font-weight:500; line-height:1.5;
  color:rgba(255,255,255,.85);
}

/* ── Trust Badges ── */
.trust-badges {
  text-align:center; margin-bottom:32px;
}
.trust-pills {
  display:flex; flex-wrap:wrap; justify-content:center; gap:10px;
}
.trust-pill {
  display:inline-flex; align-items:center; gap:7px;
  padding:8px 16px; border-radius:999px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);
  font-size:12.5px; font-weight:500;
  color:rgba(255,255,255,.7);
  white-space:nowrap;
  transition:background .2s var(--ease), border-color .2s var(--ease);
}
.trust-pill:hover {
  background:rgba(255,255,255,.1);
  border-color:rgba(255,255,255,.18);
}
.trust-pill svg {
  opacity:.6; flex-shrink:0;
}

/* ── Featured In ── */
.featured-in {
  text-align:center; margin-bottom:48px;
}
.featured-label {
  display:block; font-size:10px; font-weight:700;
  letter-spacing:3px; color:rgba(255,255,255,.25);
  margin-bottom:18px;
}
.featured-logos {
  display:flex; flex-wrap:wrap; justify-content:center;
  align-items:center; gap:28px;
}
.featured-logo {
  font-size:17px; font-weight:700;
  color:rgba(255,255,255,.3);
  transition:color .25s var(--ease);
  cursor:default; user-select:none;
}
.featured-logo:hover { color:rgba(255,255,255,.55) }
.featured-logo--ph { font-family:'Inter',sans-serif; font-weight:800; letter-spacing:-.5px }
.featured-logo--tc { font-family:Georgia,serif; font-style:italic; font-weight:700 }
.featured-logo--verge { font-family:'Inter',sans-serif; font-weight:900; text-transform:uppercase; font-size:15px; letter-spacing:2px }
.featured-logo--wired { font-family:'Courier New',monospace; font-weight:700; letter-spacing:4px; font-size:16px }
.featured-logo--lh { font-family:'Inter',sans-serif; font-weight:600; font-style:italic }

/* ── Unlock Section ── */
.unlock-section { text-align:center }
.unlock-heading {
  font-size:32px; font-weight:600; color:#fff; margin-bottom:32px;
}
.unlock-highlight { color:var(--accent-pink) }

.unlock-grid {
  display:flex; flex-direction:column; gap:16px; align-items:center;
}
.unlock-row {
  display:grid; grid-template-columns:repeat(auto-fit,minmax(100px,120px));
  gap:16px; justify-content:center; width:100%;
}
.unlock-card {
  display:flex; flex-direction:column; align-items:center; gap:10px;
  width:120px; height:110px; padding:20px 16px;
  background:var(--uc-bg, var(--bg-card)); border-radius:16px;
  border:1px solid var(--uc-border, rgba(255,255,255,.06));
  transition: transform .18s ease, box-shadow .18s ease;
}
.unlock-card:hover {
  transform:translateY(-3px);
  box-shadow:0 8px 24px var(--uc-glow, rgba(124,58,237,.15));
}
.unlock-card svg { stroke:var(--uc-icon, #fff) }
.unlock-card span {
  font-size:12px; font-weight:500; line-height:1.3; text-align:center;
  color:rgba(255,255,255,.78);
}

/* Row 1 colors */
.unlock-row:first-child .unlock-card:nth-child(1) {
  --uc-bg:linear-gradient(145deg, rgba(124,58,237,.18), rgba(124,58,237,.06));
  --uc-border:rgba(124,58,237,.25); --uc-icon:#a78bfa; --uc-glow:rgba(124,58,237,.2);
}
.unlock-row:first-child .unlock-card:nth-child(2) {
  --uc-bg:linear-gradient(145deg, rgba(56,189,248,.18), rgba(56,189,248,.06));
  --uc-border:rgba(56,189,248,.25); --uc-icon:#38bdf8; --uc-glow:rgba(56,189,248,.2);
}
.unlock-row:first-child .unlock-card:nth-child(3) {
  --uc-bg:linear-gradient(145deg, rgba(251,146,60,.18), rgba(251,146,60,.06));
  --uc-border:rgba(251,146,60,.25); --uc-icon:#fb923c; --uc-glow:rgba(251,146,60,.2);
}
.unlock-row:first-child .unlock-card:nth-child(4) {
  --uc-bg:linear-gradient(145deg, rgba(236,72,153,.18), rgba(236,72,153,.06));
  --uc-border:rgba(236,72,153,.25); --uc-icon:#ec4899; --uc-glow:rgba(236,72,153,.2);
}
.unlock-row:first-child .unlock-card:nth-child(5) {
  --uc-bg:linear-gradient(145deg, rgba(52,211,153,.18), rgba(52,211,153,.06));
  --uc-border:rgba(52,211,153,.25); --uc-icon:#34d399; --uc-glow:rgba(52,211,153,.2);
}
.unlock-row:first-child .unlock-card:nth-child(6) {
  --uc-bg:linear-gradient(145deg, rgba(244,114,182,.18), rgba(244,114,182,.06));
  --uc-border:rgba(244,114,182,.25); --uc-icon:#f472b6; --uc-glow:rgba(244,114,182,.2);
}

/* Row 2 colors */
.unlock-row:nth-child(2) .unlock-card:nth-child(1) {
  --uc-bg:linear-gradient(145deg, rgba(99,102,241,.18), rgba(99,102,241,.06));
  --uc-border:rgba(99,102,241,.25); --uc-icon:#818cf8; --uc-glow:rgba(99,102,241,.2);
}
.unlock-row:nth-child(2) .unlock-card:nth-child(2) {
  --uc-bg:linear-gradient(145deg, rgba(250,204,21,.18), rgba(250,204,21,.06));
  --uc-border:rgba(250,204,21,.25); --uc-icon:#facc15; --uc-glow:rgba(250,204,21,.2);
}
.unlock-row:nth-child(2) .unlock-card:nth-child(3) {
  --uc-bg:linear-gradient(145deg, rgba(244,63,94,.18), rgba(244,63,94,.06));
  --uc-border:rgba(244,63,94,.25); --uc-icon:#fb7185; --uc-glow:rgba(244,63,94,.2);
}
.unlock-row:nth-child(2) .unlock-card:nth-child(4) {
  --uc-bg:linear-gradient(145deg, rgba(45,212,191,.18), rgba(45,212,191,.06));
  --uc-border:rgba(45,212,191,.25); --uc-icon:#2dd4bf; --uc-glow:rgba(45,212,191,.2);
}
.unlock-row:nth-child(2) .unlock-card:nth-child(5) {
  --uc-bg:linear-gradient(145deg, rgba(96,165,250,.18), rgba(96,165,250,.06));
  --uc-border:rgba(96,165,250,.25); --uc-icon:#60a5fa; --uc-glow:rgba(96,165,250,.2);
}

/* ── Social Proof — Stats Cards ── */
.mk-section {
  position:relative; overflow:hidden;
  padding:88px 22px 84px;
  background:
    radial-gradient(900px 560px at 20% 45%, rgba(123,92,255,.22), transparent 60%),
    radial-gradient(820px 520px at 80% 35%, rgba(255,122,239,.14), transparent 60%),
    radial-gradient(900px 520px at 55% 80%, rgba(55,212,255,.10), transparent 60%),
    linear-gradient(180deg, #05081a, #060b1f);
}
.mk-section::before {
  content:""; position:absolute; inset:0; pointer-events:none; opacity:.10;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");
  mix-blend-mode:overlay;
}
#mk-stars {
  position:absolute; inset:0; width:100%; height:100%;
  pointer-events:none; opacity:.9;
}
.mk-wrap {
  max-width:1200px; margin:0 auto; position:relative; z-index:2;
}
.mk-title { text-align:center; margin:0 auto 28px }
.mk-title h2 {
  margin:0; font-size:clamp(26px,3.2vw,44px);
  letter-spacing:-.02em; font-weight:800; line-height:1.12;
}
.mk-title p {
  margin:10px auto 0; max-width:740px;
  font-size:clamp(14px,1.5vw,18px); line-height:1.6;
  color:rgba(255,255,255,.60);
}
.mk-cards {
  margin-top:34px; padding:12px 0 6px;
  overflow:hidden;
  mask-image:linear-gradient(to right, transparent, black 4%, black 96%, transparent);
  -webkit-mask-image:linear-gradient(to right, transparent, black 4%, black 96%, transparent);
}
.mk-track {
  display:flex; gap:18px; width:max-content;
  animation:mk-scroll 50s linear infinite;
}
.mk-track:hover { animation-play-state:paused }
@keyframes mk-scroll {
  0% { transform:translateX(0) }
  100% { transform:translateX(-50%) }
}
.mk-card {
  width:230px; min-width:230px; height:190px;
  border-radius:22px; position:relative;
  padding:18px 18px 16px; overflow:hidden;
  box-shadow:0 24px 70px rgba(0,0,0,.55);
  border:1px solid rgba(255,255,255,.10);
  scroll-snap-align:center; transform:translateZ(0);
  transition:transform .18s ease, filter .18s ease;
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
}
.mk-card:hover { transform:translateY(-3px); filter:brightness(1.02) }
.mk-card::before {
  content:""; position:absolute; inset:0;
  background:var(--grad); opacity:.96;
}
.mk-card::after {
  content:""; position:absolute; inset:-40px;
  background:
    radial-gradient(circle at 25% 15%, rgba(255,255,255,.20), transparent 45%),
    radial-gradient(circle at 70% 70%, rgba(0,0,0,.22), transparent 55%);
  filter:blur(18px); opacity:.55; pointer-events:none;
}
.mk-card .stroke {
  position:absolute; inset:0; border-radius:inherit;
  border:1px solid rgba(255,255,255,.18);
  pointer-events:none; opacity:.45; z-index:3;
}
.mk-card .content {
  position:relative; z-index:4; height:100%;
  display:flex; flex-direction:column; justify-content:space-between;
}
.mk-icon {
  width:54px; height:54px; border-radius:16px;
  display:grid; place-items:center;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 14px 30px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.18);
}
.mk-icon svg { width:30px; height:30px; opacity:.95 }
.mk-big {
  margin-top:10px; font-size:34px; font-weight:900;
  letter-spacing:-.02em; line-height:1;
}
.mk-small {
  margin-top:8px; font-size:14px;
  color:rgba(255,255,255,.85); line-height:1.35;
}
.mk-pill {
  margin-top:10px; display:inline-flex; align-items:center; gap:8px;
  padding:7px 10px; border-radius:999px;
  background:rgba(0,0,0,.20); border:1px solid rgba(255,255,255,.16);
  color:rgba(255,255,255,.88); font-size:12px; width:fit-content;
}
.mk-dot {
  width:8px; height:8px; border-radius:50%;
  background:rgba(255,255,255,.85);
  box-shadow:0 0 14px rgba(255,255,255,.45); opacity:.9;
}
@media (max-width:720px) {
  .mk-section { padding:70px 0 70px }
  .mk-track { animation-duration:35s }
}

/* ── FAQ ── */
.faq-section { padding:80px 0 }
.faq-grid {
  display:grid; grid-template-columns:1fr 1fr; gap:20px;
  margin-top:40px;
}
.faq-col { display:flex; flex-direction:column; gap:16px }
.faq-item {
  background:var(--bg-card);
  border:1px solid rgba(255,255,255,.07);
  border-radius:16px;
  overflow:hidden;
  transition:border-color .2s ease, box-shadow .2s ease;
}
.faq-item[open] {
  border-color:rgba(124,58,237,.30);
  box-shadow:0 8px 32px rgba(124,58,237,.10);
}
.faq-q {
  padding:20px 24px;
  font-size:16px; font-weight:700;
  color:var(--text);
  cursor:pointer;
  list-style:none;
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  transition:color .15s ease;
}
.faq-q::-webkit-details-marker { display:none }
.faq-q::after {
  content:"+"; flex-shrink:0;
  font-size:22px; font-weight:400;
  color:var(--accent); opacity:.7;
  transition:transform .2s ease;
}
.faq-item[open] .faq-q::after {
  content:"\2212"; transform:rotate(180deg);
}
.faq-q:hover { color:var(--accent) }
.faq-a {
  padding:0 24px 20px;
  font-size:14px; line-height:1.7;
  color:var(--text-secondary);
}

/* ── Comparison ── */
.comparison { padding:80px 0 }
.comparison-wrap { position:relative }
.comparison-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:46px }

.cmp-card {
  position:relative;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.10);
  border-radius:22px;
  padding:22px 22px 20px;
  box-shadow:0 30px 80px rgba(0,0,0,.55);
  overflow:hidden;
}
.cmp-card::before {
  content:"";
  position:absolute;
  inset:-40% -40% auto -40%;
  height:140px;
  transform:rotate(-8deg);
  background:radial-gradient(closest-side, rgba(255,255,255,.18), transparent 70%);
  opacity:.45;
  pointer-events:none;
}

.cmp-bad { box-shadow:0 30px 80px rgba(0,0,0,.55), 0 0 0 1px rgba(255,77,77,.06) inset }
.cmp-good { box-shadow:0 30px 80px rgba(0,0,0,.55), 0 0 0 1px rgba(34,197,94,.06) inset }

.cmp-card-title {
  display:flex; align-items:center; gap:12px;
  font-size:22px; font-weight:800; margin:6px 0 14px;
}
.cmp-bad .cmp-card-title { color:rgba(255,77,77,.95) }
.cmp-good .cmp-card-title { color:rgba(34,197,94,.95) }

.cmp-pill {
  width:36px; height:36px;
  display:grid; place-items:center;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.06);
  backdrop-filter:blur(10px);
}
.cmp-bad .cmp-pill { box-shadow:0 0 0 1px rgba(255,77,77,.08) inset, 0 10px 30px rgba(255,77,77,.10) }
.cmp-good .cmp-pill { box-shadow:0 0 0 1px rgba(34,197,94,.08) inset, 0 10px 30px rgba(34,197,94,.10) }

.cmp-divider {
  height:1px;
  background:linear-gradient(90deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  margin:10px 0 14px;
}

.cmp-list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:14px }

.cmp-item {
  display:flex; gap:12px; align-items:flex-start;
  padding:10px; border-radius:14px;
  transition:transform .16s ease, background .16s ease;
}
.cmp-item:hover {
  transform:translateY(-1px);
  background:rgba(255,255,255,.035);
}

.cmp-icon {
  flex:0 0 28px; width:28px; height:28px;
  display:grid; place-items:center;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  margin-top:1px;
}
.cmp-bad .cmp-icon { box-shadow:0 0 18px rgba(255,77,77,.25) }
.cmp-good .cmp-icon { box-shadow:0 0 18px rgba(34,197,94,.22) }

.cmp-txt { font-size:16px; line-height:1.5; color:rgba(255,255,255,.85) }
.cmp-muted { color:rgba(255,255,255,.60); font-style:italic; margin-left:.25em }

/* ── Testimonials (Marquee) ── */
.testimonials { padding:80px 0; overflow:hidden }

.marquee-container {
  position:relative;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(to right, transparent, black 80px, black calc(100% - 80px), transparent);
  mask-image:linear-gradient(to right, transparent, black 80px, black calc(100% - 80px), transparent);
}

.marquee-track {
  display:flex;
  gap:20px;
  width:max-content;
  will-change:transform;
}

.marquee-left  { animation:marquee-scroll-left  40s linear infinite }
.marquee-right { animation:marquee-scroll-right 45s linear infinite }

.marquee-container:hover .marquee-track {
  animation-play-state:paused;
}

@keyframes marquee-scroll-left {
  0%   { transform:translateX(0) }
  100% { transform:translateX(-50%) }
}
@keyframes marquee-scroll-right {
  0%   { transform:translateX(-50%) }
  100% { transform:translateX(0) }
}

.t-card {
  padding:24px; border-radius:16px;
  background:var(--bg-card);
  border:1px solid rgba(255,255,255,.08);
  border-left:3px solid var(--tc, #7c3aed);
  box-shadow:0 2px 12px rgba(0,0,0,.25);
  margin:0;
  transition:all .3s var(--ease);
  width:340px; min-width:340px;
  flex-shrink:0;
}
.t-card:hover {
  transform:translateY(-4px);
  box-shadow:0 8px 32px rgba(124,58,237,.12);
}
.t-border { display:none }
.t-card blockquote {
  font-size:14px; line-height:1.6; color:var(--text-secondary);
  margin-bottom:20px; font-style:normal;
}
.t-author { display:flex; align-items:center; gap:12px }
.t-card figcaption strong { display:block; font-size:14px; font-weight:600; color:var(--text) }
.t-card figcaption span { font-size:12px; color:var(--text-muted) }

/* Unique color per testimonial card */
.marquee-track .t-card:nth-child(1)  { --tc:#a78bfa }
.marquee-track .t-card:nth-child(2)  { --tc:#38bdf8 }
.marquee-track .t-card:nth-child(3)  { --tc:#fb923c }
.marquee-track .t-card:nth-child(4)  { --tc:#34d399 }
.marquee-track .t-card:nth-child(5)  { --tc:#f472b6 }
.marquee-track .t-card:nth-child(6)  { --tc:#a78bfa }
.marquee-track .t-card:nth-child(7)  { --tc:#38bdf8 }
.marquee-track .t-card:nth-child(8)  { --tc:#fb923c }
.marquee-track .t-card:nth-child(9)  { --tc:#34d399 }
.marquee-track .t-card:nth-child(10) { --tc:#f472b6 }

/* (Old final-cta removed — replaced by sphere hero) */

/* ── Final CTA — Sphere Hero ── */
.final-cta-hero {
  position:relative; min-height:80vh; overflow:hidden;
  background:
    radial-gradient(900px 520px at 20% 55%, rgba(123,92,255,.22), transparent 60%),
    radial-gradient(700px 420px at 80% 35%, rgba(255,122,239,.16), transparent 60%),
    radial-gradient(900px 520px at 70% 75%, rgba(55,212,255,.10), transparent 60%),
    linear-gradient(180deg, #05081a, #060B1F);
}
.final-cta-hero::before {
  content:""; position:absolute; inset:0; pointer-events:none; opacity:.10;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");
  mix-blend-mode:overlay;
}

#particles {
  position:absolute; inset:0; width:100%; height:100%; pointer-events:none; opacity:.65;
}

.cta-hero-grid {
  max-width:1200px; margin:0 auto; padding:64px 22px 80px;
  display:grid; grid-template-columns:1.05fr .95fr; gap:28px; align-items:center;
  position:relative; z-index:2;
}

.cta-hero-kicker {
  color:rgba(255,255,255,.75); letter-spacing:.18em; text-transform:uppercase;
  font-size:12px; margin-bottom:14px;
}
.cta-hero-h2 {
  margin:0; font-size:clamp(38px,5vw,64px); line-height:1.02;
  letter-spacing:-0.03em; font-weight:800; color:#fff;
}
.cta-hero-sub {
  margin-top:16px; max-width:520px; font-size:16px; line-height:1.6;
  color:rgba(255,255,255,.62);
}
.cta-hero-actions {
  margin-top:26px; display:flex; gap:14px; align-items:center; flex-wrap:wrap;
}
.cta-hero-btn {
  height:50px; padding:0 22px; border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(90deg, #5A8CFF, #C77DFF);
  color:rgba(255,255,255,.95); font-weight:700; font-size:16px;
  display:inline-flex; align-items:center;
  box-shadow:0 18px 45px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.18);
  transition:transform .18s ease, filter .18s ease;
}
.cta-hero-btn:hover { transform:translateY(-1px) scale(1.01); filter:brightness(1.06) }
.cta-hero-link {
  color:rgba(255,255,255,.78); border-bottom:1px solid rgba(255,255,255,.28);
  padding-bottom:2px; transition:opacity .18s ease; font-size:15px;
}
.cta-hero-link:hover { opacity:.9 }

/* Sphere visual */
.cta-hero-visual {
  position:relative; height:460px; display:grid; place-items:center; isolation:isolate;
}
.cta-hero-visual::before {
  content:""; position:absolute; width:560px; height:560px; border-radius:50%;
  background:
    radial-gradient(circle at 35% 35%, rgba(255,122,239,.30), transparent 55%),
    radial-gradient(circle at 70% 70%, rgba(55,212,255,.26), transparent 55%),
    radial-gradient(circle at 55% 45%, rgba(123,92,255,.22), transparent 60%);
  filter:blur(40px); opacity:.9; z-index:0;
}

.cta-sphere-wrap {
  width:min(520px,100%); aspect-ratio:1/1; position:relative;
  transform-style:preserve-3d; will-change:transform;
}
.cta-sphere {
  position:absolute; inset:0; border-radius:50%;
  background:
    radial-gradient(circle at 35% 30%, rgba(255,255,255,.14), transparent 35%),
    radial-gradient(circle at 70% 65%, rgba(255,255,255,.08), transparent 40%),
    radial-gradient(circle at 55% 50%, rgba(123,92,255,.18), rgba(55,212,255,.10), transparent 70%);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 40px 90px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.18);
  overflow:hidden; z-index:1;
}

.cta-ring {
  position:absolute; inset:-10%; border-radius:50%;
  border:2px solid rgba(55,212,255,.14); filter:blur(.2px);
  transform:rotate(18deg); z-index:0;
}
.cta-ring.cta-r2 {
  inset:-18%; border-color:rgba(255,122,239,.12); transform:rotate(-20deg);
}

.cta-net {
  position:absolute; inset:0; z-index:2; opacity:.95; mix-blend-mode:screen;
}
.cta-elephant {
  position:absolute; width:52%; height:auto; left:50%; top:52%;
  transform:translate(-50%,-50%); z-index:3;
  filter:drop-shadow(0 18px 28px rgba(0,0,0,.55));
  user-select:none; -webkit-user-drag:none; pointer-events:none;
}

.cta-spark {
  position:absolute; width:10px; height:10px; border-radius:50%;
  background:rgba(255,255,255,.85); box-shadow:0 0 16px rgba(255,255,255,.65);
  z-index:4; opacity:.55; animation:cta-twinkle 2.4s ease-in-out infinite;
}
.cta-spark.cta-s1 { left:18%; top:30%; animation-delay:.2s }
.cta-spark.cta-s2 { left:72%; top:22%; animation-delay:.9s }
.cta-spark.cta-s3 { left:76%; top:68%; animation-delay:1.4s }
@keyframes cta-twinkle {
  0%,100% { transform:scale(.7); opacity:.35 }
  50% { transform:scale(1.1); opacity:.85 }
}

@media (max-width:960px) {
  .cta-hero-grid { grid-template-columns:1fr; padding-top:40px }
  .cta-hero-text { text-align:center }
  .cta-hero-actions { justify-content:center }
  .cta-hero-visual { height:420px }
}

/* ── Footer ── */
.footer {
  padding:24px 0;
  background:#0a0a14;
  border-top:1px solid rgba(255,255,255,.06);
}
.footer-inner {
  display:flex; align-items:center; justify-content:space-between;
}
.footer-copy { font-size:13px; color:var(--text-muted) }
.footer-links {
  display:flex; align-items:center; gap:20px;
}
.footer-links a {
  font-size:13px; color:var(--text-secondary);
  text-decoration:none; transition:color .2s;
}
.footer-links a:hover { color:var(--text) }

/* ── Sub-pages (Privacy, Terms, Contact) ── */
.page-header {
  padding:24px 32px;
}
.page-header a { display:inline-block }
.page-header img { height:32px; width:auto }
.page-content {
  max-width:720px; margin:0 auto; padding:48px 32px 64px;
  color:var(--text-secondary); line-height:1.7;
}
.page-content h1 {
  font-size:2rem; font-weight:700; color:var(--text); margin:0 0 8px;
}
.page-content h2 {
  font-size:1.25rem; font-weight:600; color:var(--text);
  margin:32px 0 12px;
}
.page-content p { margin:0 0 16px }
.page-content ul { margin:0 0 16px; padding-left:24px }
.page-content li { margin-bottom:8px }
.page-content a { color:var(--accent); text-decoration:underline }
.page-content a:hover { color:#a78bfa }
.page-footer {
  text-align:center; padding:24px 32px;
  font-size:13px; color:var(--text-muted);
  border-top:1px solid rgba(255,255,255,.06);
}
.page-footer a {
  color:var(--text-secondary); text-decoration:none; transition:color .2s;
}
.page-footer a:hover { color:var(--text) }

/* ── Animations ── */
.reveal {
  opacity:0; transform:translateY(16px);
  transition:opacity .6s var(--ease), transform .6s var(--ease);
}
.reveal.visible { opacity:1; transform:translateY(0) }
.reveal-delay-1 { transition-delay:.1s }
.reveal-delay-2 { transition-delay:.2s }
.reveal-delay-3 { transition-delay:.25s }
.reveal-delay-4 { transition-delay:.3s }
.reveal-delay-5 { transition-delay:.35s }
.reveal-delay-6 { transition-delay:.4s }

/* ── Focus & Accessibility ── */
:focus-visible { outline:2px solid #3b82f6; outline-offset:2px }
.btn:focus-visible { box-shadow:0 0 0 4px rgba(59,130,246,.3) }

/* ── Reduced motion ── */
@media (prefers-reduced-motion: reduce) {
  .reveal { transition-duration:0.01s }
}

/* ── Responsive ── */
@media (max-width:768px) {
  .hero-pricing { padding:32px 0 60px }
  .hero-logo-img { width:120px; height:120px }
  .hero-h1, .hero-h1-accent { font-size:1.75rem }
  .hero-subtitle { font-size:14px; margin-bottom:32px }

  .pricing-toggle button { padding:8px 16px; font-size:13px }
  .pricing-row { grid-template-columns:1fr; max-width:400px; margin:0 auto 32px }
  .p-card { min-height:280px }
  .p-card-icon { width:100px; top:105px; right:30px }

  .p-title { font-size:32px }
  .p-price { font-size:42px }
  .p-card-supernova .p-title { font-size:34px }
  .p-card-supernova .p-price { font-size:46px }
  .p-cta { font-size:18px; padding:14px }
  .p-badge { font-size:12px; padding:8px 20px }
  .p-sparkle { display:none }

  .guarantee { flex-direction:column; text-align:center; padding:16px 20px }

  .trust-pills { gap:8px }
  .trust-pill { font-size:11px; padding:6px 12px }
  .featured-logos { gap:18px }
  .featured-logo { font-size:14px }
  .featured-logo--verge { font-size:12px }

  .unlock-heading { font-size:22px }
  .unlock-row { grid-template-columns:repeat(3,1fr) }
  .unlock-card { width:auto; height:100px; padding:16px 10px }
  .unlock-card span { font-size:11px }

  .faq-grid, .comparison-grid, .testimonial-row {
    grid-template-columns:1fr; max-width:420px;
    margin-left:auto; margin-right:auto;
  }

  .section-heading-wrap { flex-direction:column; gap:4px }
  .section-heading, .section-heading-accent { font-size:1.5rem; text-align:center }

  .mk-section { padding:60px 16px 60px }
  .mk-cards { justify-content:flex-start }
  .mk-card { width:240px; min-width:240px }

  .cta-card { padding:40px 24px }
  .cta-card h2 { font-size:1.4rem }

  .cta-hero-visual { height:clamp(280px,60vw,420px) }

  .footer-inner {
    flex-direction:column; gap:12px; text-align:center;
  }

  .urgency-banner { font-size:.75rem; padding:8px 16px; gap:8px }
}

/* ── Compare Plans Link ── */
.compare-plans-wrap {
  text-align:center; margin-bottom:24px;
}
.compare-plans-link {
  font-size:14px; font-weight:500; color:var(--accent);
  border-bottom:1px solid rgba(124,58,237,.4);
  padding-bottom:2px; transition:all .2s var(--ease);
  cursor:pointer;
}
.compare-plans-link:hover { color:#a78bfa; border-color:#a78bfa }

/* ── Compare Plans Modal ── */
.compare-modal-overlay {
  position:fixed; inset:0; z-index:1000;
  background:rgba(0,0,0,.7); backdrop-filter:blur(6px);
  display:flex; align-items:center; justify-content:center;
  opacity:0; pointer-events:none; transition:opacity .3s var(--ease);
}
.compare-modal-overlay.active { opacity:1; pointer-events:auto }
.compare-modal {
  position:relative; background:#1a1a2e; border-radius:20px;
  border:1px solid rgba(255,255,255,.1);
  padding:40px 32px 32px; max-width:800px; width:92%;
  max-height:90vh; overflow-y:auto;
  box-shadow:0 40px 100px rgba(0,0,0,.6);
  transform:translateY(20px); transition:transform .3s var(--ease);
}
.compare-modal-overlay.active .compare-modal { transform:translateY(0) }
.compare-modal-close {
  position:absolute; top:16px; right:20px;
  background:none; border:none; color:rgba(255,255,255,.5);
  font-size:28px; cursor:pointer; transition:color .2s;
}
.compare-modal-close:hover { color:#fff }
.compare-modal-title {
  font-size:24px; font-weight:700; color:#fff;
  text-align:center; margin-bottom:28px;
}
.compare-table-wrap { overflow-x:auto }
.compare-table {
  width:100%; border-collapse:collapse; font-size:14px;
}
.compare-table th, .compare-table td {
  padding:14px 16px; text-align:center; border-bottom:1px solid rgba(255,255,255,.06);
}
.compare-table th { vertical-align:top; padding-bottom:20px }
.compare-feature-col { width:30%; text-align:left }
.compare-table td:first-child { text-align:left; color:rgba(255,255,255,.8) }
.compare-plan-label {
  display:block; font-size:10px; font-weight:600;
  letter-spacing:1.5px; color:rgba(255,255,255,.5); margin-bottom:4px;
}
.compare-plan-name {
  display:block; font-size:20px; font-weight:700; color:#fff; margin-bottom:4px;
}
.compare-plan-price {
  display:inline; font-size:28px; font-weight:800; color:#fff;
}
.compare-plan-period { font-size:14px; color:rgba(255,255,255,.4) }
.compare-featured-col {
  background:rgba(124,58,237,.08); border-radius:12px 12px 0 0;
  position:relative;
}
.compare-popular-badge {
  display:inline-block; padding:4px 12px; border-radius:999px;
  background:linear-gradient(90deg,#5a8cff,#ff66d6);
  font-size:11px; font-weight:600; color:#fff; margin-bottom:8px;
}
.compare-check { color:#10b981; font-size:18px; font-weight:700 }
.compare-dash { color:rgba(255,255,255,.2); font-size:18px }
.compare-cta {
  display:inline-block; padding:10px 24px; border-radius:999px;
  font-size:13px; font-weight:600; color:#fff;
  background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.15);
  transition:all .2s var(--ease);
}
.compare-cta:hover { background:rgba(255,255,255,.18); transform:translateY(-1px) }
.compare-cta-featured {
  background:linear-gradient(90deg,#5a8cff,#c77dff);
  border-color:transparent;
}
.compare-cta-featured:hover { filter:brightness(1.1) }

@media (max-width:768px) {
  .compare-modal { padding:32px 12px 24px; width:96% }
  .compare-table { font-size:11px; min-width:480px }
  .compare-table th, .compare-table td { padding:10px 6px }
  .compare-plan-name { font-size:14px }
  .compare-plan-price { font-size:18px }
  .compare-plan-label { font-size:8px; letter-spacing:1px }
  .compare-feature-col { width:25% }
  .compare-cta { padding:8px 14px; font-size:11px }
}

@media (min-width:769px) and (max-width:1024px) {
  .pricing-row { grid-template-columns:repeat(3,1fr); gap:16px }
  .p-card-icon { width:110px; top:105px; right:20px }
  .p-title { font-size:36px }
  .p-price { font-size:48px }
  .p-cta { font-size:18px }
  .comparison-grid { grid-template-columns:1fr 1fr }
  .testimonial-row { grid-template-columns:1fr 1fr }
  .testimonial-row .t-card:last-child { grid-column:1 / -1; max-width:50%; justify-self:center }
  .faq-grid { gap:16px }
  .cta-hero-grid { gap:20px }
}
