/* Mognetize OS /start funnel — shared styles, tokens pulled from the homepage (public/index.html) */
:root{
  --violet:#8163ff;
  --violet-deep:#5a3fd0;
  --violet-soft:#b9a8ff;
  --bg:#080818;
  --bg-raised:#0f1025;
  --panel:rgba(255,255,255,.035);
  --panel-hi:rgba(255,255,255,.09);
  --hairline:rgba(255,255,255,.1);
  --text:#f2f3f6;
  --muted:#9b9bb5; /* X4 2026-09-23: the design system's dark muted, never substituted */
  --green:#22c55e;
  --tier-gold:#d9bd7e;
  --radius-lg:24px;
  --radius:18px;
  --radius-sm:12px;
  --shadow-glow:0 40px 120px -40px rgba(129,99,255,.55);
  --shadow-card:0 20px 60px -30px rgba(0,0,0,.8);
  --maxw:920px;
  --maxw-wide:935px;
  /* light-surface tokens — defined ONCE here, never re-typed as a literal */
  --paper:#faf6f0;
  --ink:#1a1726;
  --ink-soft:#4b4661;
  --violet-tint:#f3f0ff;
  --paper-line:rgba(26,23,38,.14);
  --gutter:clamp(20px,5vw,48px);
  --ease:cubic-bezier(.2,.7,.2,1);
  /* 2026-09-23 design-fidelity pass: the Mognetize Design System palette
     (templates/mos-trial-page/TrialSpotlight.dc.html), named once here so the
     ported /start markup paints with var() instead of re-typed literals. */
  --ds-night:#0b0a16;
  --ds-ink:#16142a;
  --ds-ink-2:#332f4a;
  --ds-ink-3:#4f4c66;
  --ds-muted-light:#6b6883;
  --ds-muted-dark:#9b9bb5;
  --ds-violet:#4b33b6;
  --ds-violet-hi:#6a4ee0;
  --ds-violet-3:#7c4ff0;
  --ds-lilac:#c3b3ff;
  --ds-chip:#dcd3ff;
  --ds-paper:#faf8f4;
  --ds-row:#faf9fc;
  --ds-row-hi:#f6f2ff;
  --ds-money-ink:#15803d;
  --ds-on-dark:#a3a3bd;
  --ds-on-dark-2:#8a8aa6;
  --ds-snow:#f4f5f8;
  --ds-ok:#2f7a55;
  --ds-warn:#b58324;
  --ds-warn-ink:#8a6f34;
  --ds-no:#c0453e;
  --ds-bezel:#141033;
  --ds-bezel-2:#08090f;
  --ds-plum:#241548;
  --ds-hilite:#ffe071;
  --ds-hilite-2:#ffd84d;
  --ds-streak:#5cb88c;
}
*{box-sizing:border-box}
html{color-scheme:dark}
body{
  margin:0;background:var(--bg);color:var(--text);
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:Fraunces,Georgia,serif;letter-spacing:-.012em;margin:0 0 .4em;color:#fff}
h1{font-weight:900}
h2{font-weight:700}
p{margin:0 0 1em}
a{color:inherit}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter)}
.wrap-lg{max-width:1080px;margin:0 auto;padding:0 var(--gutter)}
.wrap-wide{max-width:calc(var(--maxw-wide) + var(--gutter) * 2);margin:0 auto;padding:0 var(--gutter)}

/* ---------- top bar ---------- */
.topbar{padding:20px 0;border-bottom:1px solid var(--hairline)}
.topbar .wrap-lg{display:flex;align-items:center;justify-content:space-between;gap:16px}
.topbar-brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:15px;text-decoration:none}
.topbar-brand img{display:block}
.topbar-trust{font-size:12.5px;color:var(--muted)}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  border-radius:999px;padding:16px 30px;font-weight:700;font-size:16px;
  text-decoration:none;border:1px solid transparent;cursor:pointer;
  transition:transform .18s var(--ease),box-shadow .18s var(--ease),background .18s var(--ease);
  width:100%;
}
.btn-primary{
  background:linear-gradient(180deg,var(--violet),var(--violet-deep));
  color:#fff;box-shadow:var(--shadow-glow);
}
.btn-primary:hover{transform:translateY(-2px)}
.btn-ghost{background:transparent;border-color:var(--hairline);color:var(--text)}
.btn-ghost:hover{border-color:var(--violet-soft)}
.btn-sm{padding:11px 20px;font-size:14px;width:auto}
.btn[disabled],.btn.is-disabled{opacity:.5;cursor:not-allowed;transform:none!important}
.btn-link{
  display:inline-block;text-align:center;width:100%;padding:12px 0;
  color:var(--muted);text-decoration:underline;font-size:14.5px;background:none;border:none;cursor:pointer;
}
.btn-link:hover{color:var(--text)}

/* ---------- layout blocks ---------- */
.section{padding:clamp(40px,7vw,76px) 0}
.section-tight{padding:clamp(24px,4vw,40px) 0}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;color:var(--violet-soft);margin-bottom:14px;
}
.lead{color:var(--muted);font-size:17.5px;max-width:640px}
.center{text-align:center;margin-left:auto;margin-right:auto}

.card{
  background:var(--panel-hi);border:1px solid var(--hairline);border-radius:var(--radius-lg);
  padding:clamp(22px,4vw,34px);box-shadow:var(--shadow-card);
}
.card-flat{background:var(--panel);border:1px solid var(--hairline);border-radius:var(--radius);padding:22px}

.check-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.check-list li{display:flex;gap:10px;align-items:flex-start;color:var(--text);font-size:15.5px}
.check-list li svg{flex:none;margin-top:3px;color:var(--green)}
.check-list b{color:#fff}

.trust-strip{
  display:flex;flex-wrap:wrap;gap:10px 22px;justify-content:center;
  color:var(--muted);font-size:13px;margin-top:18px;
}
.trust-strip span{display:inline-flex;align-items:center;gap:6px}
.trust-strip svg{color:var(--green)}

/* ---------- form ---------- */
.form-field{margin-bottom:14px}
.form-field label{display:block;font-size:13px;color:var(--muted);margin-bottom:6px;font-weight:600}
.form-field input,.form-field select{
  width:100%;padding:14px 16px;border-radius:var(--radius-sm);border:1px solid var(--hairline);
  background:var(--bg-raised);color:var(--text);font-size:15.5px;font-family:inherit;
}
.form-field input:focus,.form-field select:focus{outline:2px solid var(--violet-soft);outline-offset:1px}
.form-field select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23b9b7d7' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:38px}
.form-field select option{background:#0f1025;color:#f8f7ff}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
@media (max-width:480px){.form-row{grid-template-columns:1fr}}
.form-group{border:1px solid var(--hairline);border-radius:14px;padding:12px 14px 0;margin:4px 0 14px}
.form-group legend{font-size:12.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--violet-soft);padding:0 6px}
.form-field .opt{font-weight:400;opacity:.7}
.consent{font-size:12.5px;color:var(--muted);margin:2px 0 16px;line-height:1.5}
.form-error{color:#ff9a9a;font-size:13.5px;margin-top:8px;display:none}
.form-error.show{display:block}
.form-note{font-size:12px;color:var(--muted);text-align:center;margin-top:10px}

/* ---------- pricing / savings table ---------- */
.savings-table{width:100%;border-collapse:collapse;margin:20px 0;font-size:14.5px}
.savings-table th,.savings-table td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--hairline)}
.savings-table th{color:var(--muted);font-weight:600;font-size:12.5px;text-transform:uppercase;letter-spacing:.04em}
.savings-table td b{color:#fff}
.savings-table .row-save td{color:var(--green);font-weight:700}

.price-badge{
  display:inline-block;background:rgba(34,197,94,.14);color:var(--green);
  border:1px solid rgba(34,197,94,.3);border-radius:999px;padding:5px 14px;
  font-size:12.5px;font-weight:700;margin-bottom:12px;
}

/* ---------- package cards (coaching) ---------- */
.pkg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}
@media(max-width:900px){.pkg-grid{grid-template-columns:1fr}}
.pkg-card{
  background:var(--panel-hi);border:1px solid var(--hairline);border-radius:var(--radius-lg);
  padding:26px;display:flex;flex-direction:column;position:relative;
}
.pkg-card.popular{border-color:var(--violet);box-shadow:0 0 0 1px var(--violet), var(--shadow-glow)}
.pkg-badge{
  position:absolute;top:-13px;left:50%;transform:translateX(-50%);
  background:linear-gradient(180deg,var(--violet),var(--violet-deep));color:#fff;
  padding:6px 16px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap;
}
.pkg-name{font-family:Fraunces,Georgia,serif;font-size:22px;font-weight:700;color:#fff;margin:6px 0 2px}
.pkg-sessions{color:var(--muted);font-size:13.5px;margin-bottom:16px}
.pkg-price{font-size:38px;font-weight:900;color:#fff;font-family:Fraunces,Georgia,serif}
.pkg-was{color:var(--muted);text-decoration:line-through;font-size:15px}
.pkg-persession{color:var(--green);font-weight:700;font-size:13.5px;margin:4px 0 18px}
.pkg-feats{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-direction:column;gap:9px;flex:1}
.pkg-feats li{display:flex;gap:8px;font-size:13.8px;color:var(--muted)}
.pkg-feats li svg{flex:none;margin-top:3px;color:var(--green)}
.pkg-feats li b{color:var(--text);font-weight:600}

/* ---------- comparison table ---------- */
.compare-wrap{overflow-x:auto;margin-top:34px}
.compare{width:100%;border-collapse:collapse;font-size:14px;min-width:560px}
.compare th,.compare td{padding:12px 14px;border-bottom:1px solid var(--hairline);text-align:center}
.compare th:first-child,.compare td:first-child{text-align:left;color:var(--muted)}
.compare thead th{color:#fff;font-family:Fraunces,Georgia,serif;font-size:15px}
.compare td.yes{color:var(--green);font-weight:700}
.compare td.no{color:var(--muted)}

/* ---------- FAQ ---------- */
.faq-item{border-bottom:1px solid var(--hairline)}
.faq-item summary{
  padding:18px 4px;cursor:pointer;font-weight:700;color:#fff;font-size:15.5px;
  list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";font-size:20px;color:var(--violet-soft);flex:none}
.faq-item[open] summary::after{content:"–"}
.faq-item p{padding:0 4px 18px;color:var(--muted);font-size:14.5px}

/* ---------- guarantee ---------- */
.guarantee-card{
  text-align:center;background:rgba(34,197,94,.07);border:1px solid rgba(34,197,94,.28);
  border-radius:var(--radius-lg);padding:clamp(26px,5vw,40px);
}
.guarantee-card h2{color:#fff}
.guarantee-card p{color:var(--muted);max-width:640px;margin-left:auto;margin-right:auto}

/* ---------- footer ---------- */
.foot{border-top:1px solid var(--hairline);padding:26px 0;text-align:center;color:var(--muted);font-size:12.5px}
.foot a{color:var(--muted);text-decoration:underline}

/* ---------- popup dialog ---------- */
/* 2026-09-21: the old 440px lead-capture dialog rules lived here; the checkout modal is owned by popup.css now. */
.msd-close{
  position:absolute;top:14px;right:14px;background:none;border:none;color:var(--muted);
  font-size:20px;cursor:pointer;line-height:1;padding:6px;
}
.msd-close:hover{color:#fff}

/* ---------- light-surface panel (AA text per BRAND.md — use #5a3fd0, never #8163ff, on white) ---------- */
.paper-note{
  background:var(--paper);color:var(--ink);border-radius:var(--radius);padding:16px 20px;font-size:13.5px;
}
.paper-note b,.paper-note a{color:#5a3fd0}

.center-col{max-width:600px;margin:0 auto;text-align:center}
.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:start}
@media(max-width:820px){.two-col{grid-template-columns:1fr}}
.hero-title{font-size:clamp(28px,4.2vw,42px);line-height:1.08}
.section-title{font-size:clamp(24px,3.2vw,32px)}
.small-note{font-size:12.5px;color:var(--muted)}
.spacer-sm{height:14px}
.spacer{height:28px}

/* 2026-09-23: the 2026-09-21 primemover picker rules (.plan-card*, .start-hero,
   .faq-band) were retired by the design-system port below. */

.plan-noscript{margin:26px auto 0;max-width:520px;text-align:center;color:var(--ds-muted-light);font-size:13.5px}

/* =========================================================================
   /start, 2026-09-23 design-fidelity pass: a port of the design system's
   templates/mos-trial-page/TrialSpotlight.dc.html. Same DOM, same geometry;
   the template's inline literals live here as classes painting with the
   --ds-* tokens above. Scoped to .tsp so the retired funnel pages that still
   load this file are untouched. The money hooks (data-plan-card,
   data-plan-select, data-cta, .mof-submit) sit on the ported elements.
   ========================================================================= */
.tsp{background:#fff;color:var(--ds-ink);font:400 16px/1.65 Inter,system-ui,sans-serif;letter-spacing:-.009em;-webkit-font-smoothing:antialiased;padding-bottom:76px}
.tsp h1,.tsp h2,.tsp h3{font-family:inherit;color:inherit;margin:0}
.tsp p{margin:0}
.tsp .tsp-serif{font-family:Fraunces,Georgia,serif;font-weight:600;font-style:italic}
.tsp .tsp-tick{flex:none;display:grid;place-items:center;width:18px;height:18px;margin-top:2px;border:1.5px solid var(--ds-violet);border-radius:4px;color:var(--ds-violet)}
.tsp .sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.tsp details summary::-webkit-details-marker{display:none}
.tsp details[open] .qm{transform:rotate(45deg)}
@keyframes tsp-rise{from{opacity:0;transform:translateY(14px)}}
@keyframes tsp-blink{0%,100%{opacity:1}50%{opacity:.52}}

/* dark hero band + header (no logo, no nav: owner rule S1) */
.tsp-dark{position:relative;background:var(--ds-night);color:var(--ds-snow);overflow:hidden}
.tsp-glow{position:absolute;inset:0;background:radial-gradient(60% 80% at 50% -12%,rgba(129,99,255,.32),transparent 66%)}
.tsp-head{position:relative;z-index:5;border-bottom:1px solid rgba(255,255,255,.08)}
.tsp-head-in{max-width:1140px;margin:0 auto;padding:0 clamp(20px,4vw,44px);min-height:70px;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:10px 13px}
.tsp-lockup{display:inline-flex;align-items:center;gap:11px;margin-right:auto;color:var(--ds-snow)}
.tsp-lockup span{font-weight:700;font-size:17px;letter-spacing:-.025em}
.tsp-lockup i{opacity:.32;margin:0 7px;font-weight:400;font-style:normal}
@media (max-width:560px){.tsp-head-in{justify-content:center;padding-block:12px}.tsp-lockup{margin-right:0;width:100%;justify-content:center}}
.tsp-progress-label{font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ds-on-dark-2);white-space:nowrap}
.tsp-progress-track{position:relative;width:clamp(80px,14vw,190px);height:10px;border-radius:99px;background:#fff;box-shadow:inset 0 0 0 1px rgba(22,20,42,.14);overflow:hidden}
.tsp-progress-track>span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--violet-deep),var(--violet) 70%,var(--violet-soft))}
.tsp-progress-pct{font-size:13px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--ds-lilac)}
.tsp-hero{position:relative;z-index:2;max-width:1000px;margin:0 auto;padding:clamp(30px,4vw,54px) clamp(20px,4vw,44px) clamp(206px,20vw,268px);text-align:center;animation:tsp-rise .6s cubic-bezier(.22,1,.36,1) backwards}
.tsp-hero h1{font-size:clamp(40px,6.4vw,76px);line-height:1;font-weight:800;letter-spacing:-.042em;text-wrap:balance}
.tsp-hero h1 .tsp-serif{color:var(--violet-soft)}

/* the two option cards, overlapping the seam */
.tsp-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start;max-width:1140px;margin:-190px auto 0;padding:0 clamp(20px,4vw,44px) clamp(56px,7vw,88px);position:relative;z-index:4}
.tsp-opt1{margin-top:56px;padding:30px 28px;border:1px solid rgba(22,20,42,.1);border-radius:20px;background:#fff;box-shadow:0 30px 70px -44px rgba(22,20,42,.4)}
@media (max-width:900px){.tsp-opts{grid-template-columns:minmax(0,1fr)}.tsp-opt1{margin-top:0}}
.tsp-kicker{text-align:center;font-size:16px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--ds-violet)}
.tsp-opt-title{margin:12px -8px 0!important;padding:0 4px;text-align:center;font-size:24.5px;line-height:1.26;font-weight:800;letter-spacing:-.028em;text-wrap:balance}
.tsp-bezel{margin:20px 0 0;position:relative;border-radius:16px;overflow:hidden;background:linear-gradient(170deg,var(--ds-bezel),var(--ds-bezel-2) 72%);border:1px solid rgba(75,51,182,.34)}
.tsp-bezel-glow{position:absolute;inset:auto 0 -36% 0;height:72%;background:radial-gradient(50% 60% at 50% 50%,rgba(129,99,255,.46),transparent 70%)}
.tsp-bezel-img{position:relative;padding:20px 20px 0}
.tsp-bezel-img img{display:block;width:100%;height:auto;border-radius:8px}
.tsp-bezel-chip{position:relative;display:flex;justify-content:center;padding:14px 0 16px}
.tsp-bezel-chip span{padding:6px 14px;border-radius:99px;background:rgba(129,99,255,.24);border:1px solid rgba(185,168,255,.5);font-size:11px;font-weight:800;letter-spacing:.1em;color:var(--ds-chip)}
.tsp-opt-line{margin-top:18px!important;text-align:center;font-size:15px;line-height:1.6;color:var(--ds-ink-3)}
.tsp-rule{width:110px;height:2px;margin:20px auto;border-radius:99px;background:rgba(75,51,182,.3)}
.tsp-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.tsp-list li{display:flex;gap:11px;font-size:14.5px;line-height:1.5;color:var(--ds-ink-3)}
.tsp-list li.lead{color:var(--ds-ink-2)}
.tsp-list b{font-weight:700;color:inherit}
.tsp-list .tsp-sub b{font-weight:600;color:var(--ds-ink-2)}
.tsp-cta-violet{display:flex;align-items:center;justify-content:center;width:100%;min-height:62px;margin-top:24px;padding:12px 20px;border:0;border-radius:13px;color:#fff;background:linear-gradient(180deg,var(--ds-violet-hi),var(--ds-violet));box-shadow:0 16px 36px -18px rgba(75,51,182,.95);font:800 16px/1.25 Inter,system-ui,sans-serif;text-align:center;letter-spacing:-.01em;cursor:pointer;transition:transform .16s cubic-bezier(.22,1,.36,1)}
.tsp-cta-violet:hover{transform:translateY(-2px);filter:brightness(.92)}
.tsp-cta-violet:focus-visible,.tsp .mof-submit:focus-visible{outline:2px solid var(--violet-soft);outline-offset:2px}
.tsp-micro{margin-top:12px!important;text-align:center;font-size:12.5px;color:var(--ds-muted-light)}

.tsp-opt2{position:relative;padding:0;border:1.5px solid var(--ds-violet-3);border-radius:22px;overflow:hidden;background:linear-gradient(170deg,#e7dfff 0%,#f4f0ff 38%,#fff 100%);color:var(--ds-ink);box-shadow:0 0 0 5px rgba(124,79,240,.12),0 46px 100px -50px rgba(124,79,240,.8)}
.tsp-band{padding:15px 20px;display:grid;place-items:center;background:linear-gradient(90deg,var(--ds-violet),var(--ds-violet-3) 55%,var(--violet-deep))}
.tsp-band span{animation:tsp-blink 1.6s ease-in-out infinite;font-size:17px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#fff;text-shadow:0 2px 8px rgba(11,10,22,.75),0 0 18px rgba(216,211,255,.55)}
.tsp-opt2-body{padding:26px clamp(18px,3vw,28px) 30px}
.tsp-m2{margin:20px 0 0;position:relative;border-radius:16px;overflow:hidden;background:linear-gradient(170deg,var(--ds-plum),var(--ds-night) 76%);border:1px solid rgba(185,168,255,.3)}
.tsp-m2-glow{position:absolute;inset:auto 0 -34% 0;height:70%;background:radial-gradient(50% 60% at 50% 50%,rgba(129,99,255,.5),transparent 72%)}
.tsp-m2-row{position:relative;padding:18px 14px 0;display:flex;align-items:flex-end;justify-content:center;gap:7px}
.tsp-m2-doc{width:46px;height:62px;flex:none;border-radius:4px;background:linear-gradient(160deg,#f6f3ff,#cbc0f2);transform:rotate(-8deg);box-shadow:0 10px 20px -12px rgba(0,0,0,.9);padding:6px;display:flex;flex-direction:column;gap:3px}
.tsp-m2-doc span{height:2px;border-radius:2px;background:rgba(75,51,182,.3)}
.tsp-m2-doc span:first-child{height:3px;width:78%;background:var(--violet-deep)}
.tsp-m2-lap{width:132px;flex:none}
.tsp-m2-screen{border:2px solid #3a3170;border-radius:8px 8px 3px 3px;background:#120c2e;padding:11px 9px;text-align:center}
.tsp-m2-screen img{display:block;width:100%;height:auto}
.tsp-m2-dots{display:flex;gap:4px;justify-content:center;margin-top:8px}
.tsp-m2-dots span{width:13px;height:13px;border-radius:3px;background:rgba(255,255,255,.16)}
.tsp-m2-dots span:nth-child(3){background:rgba(185,168,255,.5)}
.tsp-m2-base{height:5px;border-radius:0 0 7px 7px;background:#3a3170}
.tsp-m2-phone{width:32px;height:58px;flex:none;border:2px solid #3a3170;border-radius:7px;background:#0f0a26;display:grid;place-items:center}
.tsp-m2-phone span{width:16px;height:16px;border-radius:99px;background:#e0be84;display:grid;place-items:center}
.tsp-m2-tube{width:64px;height:68px;flex:none;border:2px solid #3a3170;border-radius:6px;background:#1a0d1c;transform:rotate(7deg);box-shadow:0 10px 20px -12px rgba(0,0,0,.9);padding:7px 4px;text-align:center}
.tsp-m2-tube div{font-size:11px;font-weight:800;line-height:1.1;letter-spacing:-.02em;color:#ff7d7d}
.tsp-m2-tube span{display:block;height:10px;margin-top:5px;border-radius:2px;background:rgba(255,125,125,.22)}
@media (max-width:480px){.tsp-m2-doc{display:none}.tsp-m2-lap{width:116px}}
.tsp-m2-chips{position:relative;display:flex;flex-wrap:wrap;justify-content:center;gap:6px;padding:14px 12px 15px}
.tsp-m2-chips span{padding:5px 10px;border-radius:99px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#d8d4ee}
.tsp-m2-chips span.v{background:rgba(185,168,255,.16);border-color:rgba(185,168,255,.34);color:var(--ds-chip)}
.tsp-m2-chips span.g{background:rgba(34,197,94,.16);border-color:rgba(34,197,94,.34);color:#7fd1a8}
.tsp-strong-line{margin-top:18px!important;text-align:center;font-size:15px;line-height:1.55;font-weight:700}
.tsp-price{margin-top:6px!important;text-align:center;font-size:44px;line-height:1.05;font-weight:800;letter-spacing:-.04em;color:var(--ds-money-ink)}
.tsp-choose{margin:20px calc(-1 * clamp(18px,3vw,28px));padding:18px clamp(18px,3vw,28px);background:linear-gradient(90deg,rgba(124,79,240,.16),rgba(90,63,208,.1));border-top:1px solid rgba(75,51,182,.22);border-bottom:1px solid rgba(75,51,182,.22);text-align:center;font-size:15.5px;line-height:1.45;font-weight:800}
.tsp-stack{margin-top:20px!important;gap:14px}
.tsp-stack li{color:var(--ds-ink-2)}
.tsp-stack .inc{color:var(--ds-ok);font-weight:700}
.tsp-sub{display:flex;gap:9px;margin-top:9px;font-size:13.5px;color:var(--ds-ink-3)}
.tsp-sub+.tsp-sub{margin-top:8px}
.tsp-sub i{flex:none;margin-top:6px;width:6px;height:6px;border-radius:99px;border:1.5px solid rgba(75,51,182,.5)}
.tsp-start{margin-top:22px!important;text-align:center;font-size:34px;line-height:1.1;font-weight:800;letter-spacing:-.035em}
.tsp-start span{color:var(--ds-money-ink)}
.tsp-say{text-align:center;font-size:14.5px;line-height:1.6;color:var(--ds-ink-3)}
.tsp-say b{color:var(--ds-ink)}
.tsp-say b.v{color:var(--ds-violet)}
.tsp .mof-submit.tsp-cta-green{display:flex;align-items:center;justify-content:center;min-height:66px;margin-top:22px;padding:12px 20px;border-radius:14px;font-size:16.5px;font-weight:800;line-height:1.25;text-align:center}

/* What's waiting when you land (S9) */
.tsp-wait-glow{position:absolute;inset:0;background:radial-gradient(55% 60% at 12% 0%,rgba(129,99,255,.2),transparent 68%),radial-gradient(40% 50% at 95% 100%,rgba(71,212,250,.07),transparent 70%)}
.tsp-in{position:relative;max-width:1140px;margin:0 auto;padding:clamp(48px,6vw,84px) clamp(20px,4vw,44px)}
.tsp-h2{font-size:clamp(24px,2.9vw,34px);font-weight:800;letter-spacing:-.032em}
.tsp-lede{margin-top:10px!important;max-width:520px;font-size:15px;line-height:1.6;color:var(--ds-on-dark)}
.tsp .bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:28px}
.tsp .bento>.wide{grid-column:1/-1}
.tsp .bento>div:not(.wide){display:flex;flex-direction:column}
.tsp .bento>div:not(.wide) img{flex:1;min-height:0;object-fit:cover;object-position:top}
.tsp .cos{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}
@media (max-width:1000px){.tsp .bento{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.tsp .bento{grid-template-columns:minmax(0,1fr)}.tsp .cos{grid-template-columns:minmax(0,1fr)}}
.tsp-tile{border:1px solid rgba(255,255,255,.1);border-radius:18px;overflow:hidden;background:rgba(255,255,255,.04)}
.tsp-tile-cap{padding:14px 16px}
.tsp-tile-cap b{display:block;font-size:14.5px;font-weight:700;letter-spacing:-.015em}
.tsp-tile-cap span{display:block;margin-top:4px;font-size:13px;color:var(--ds-on-dark)}
.tsp-tile img{display:block;width:100%;height:auto;border-bottom:1px solid rgba(255,255,255,.09)}
.tsp-cos{border:1px solid rgba(185,168,255,.2);border-radius:18px;overflow:hidden;background:linear-gradient(160deg,rgba(129,99,255,.18),rgba(255,255,255,.03))}
.tsp-cos-l{padding:20px;border-right:1px solid rgba(75,51,182,.12)}
.tsp-cos-r{padding:20px;display:flex;flex-direction:column;justify-content:space-between;gap:14px}
.tsp-run{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:99px;background:#eef8f2;font-size:11px;font-weight:800;letter-spacing:.06em;color:#136b34}
.tsp-step{display:flex;align-items:center;gap:9px;font-size:12.5px;color:var(--ds-on-dark)}
.tsp-step svg{flex:none;color:#3f8d67}
.tsp-step.now{font-weight:600;color:#fff}
.tsp-step.now i{flex:none;width:14px;height:14px;border-radius:99px;border:2.5px solid var(--ds-violet);border-top-color:transparent}
.tsp-bar{height:6px;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden}
.tsp-bar span{display:block;height:100%;background:linear-gradient(90deg,var(--ds-violet),var(--violet))}
.tsp-meta{display:flex;justify-content:space-between;margin-top:8px;font-size:11.5px;color:var(--ds-muted-dark)}
.tsp-bubble-me{align-self:flex-end;max-width:88%;padding:8px 12px;border-radius:11px 11px 4px 11px;background:var(--ds-violet);color:#fff;font-size:12px;line-height:1.4}
.tsp-bubble-typing{align-self:flex-start;display:flex;align-items:center;gap:5px;padding:9px 12px;border-radius:11px 11px 11px 4px;background:#f3f1ee}
.tsp-bubble-typing span{width:5px;height:5px;border-radius:99px;background:var(--ds-muted-light)}
.tsp-stats{border:1px solid rgba(255,255,255,.1);border-radius:18px;background:var(--ds-night);color:var(--ds-snow);padding:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:20px;align-items:center}
.tsp-stat-k{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ds-on-dark-2)}
.tsp-stat-n{margin-top:7px;font-size:12px;color:var(--ds-on-dark-2)}

/* How do we compare? (S10) */
.tsp-compare{border-top:1px solid rgba(22,20,42,.08);background:var(--ds-paper)}
.tsp-compare .tsp-in{max-width:1040px;padding:clamp(56px,7vw,92px) clamp(20px,4vw,44px)}
.tsp-eyebrow{font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#5b46c4}
.tsp-h2c{margin:14px auto 0!important;max-width:560px;font-size:clamp(28px,3.6vw,42px);line-height:1.08;font-weight:800;letter-spacing:-.035em}
.tsp-h2c .tsp-serif{color:var(--ds-violet)}
.tsp-sub-lede{margin:14px auto 0!important;max-width:520px;font-size:15px;line-height:1.6;color:var(--ds-ink-3)}
.tsp-table-wrap{position:relative;overflow-x:auto;margin-top:34px}
.tsp-table{width:100%;min-width:660px;border-collapse:separate;border-spacing:0 4px}
.tsp-table th{padding:0 12px 14px;text-align:center;font-size:14.5px;font-weight:800;color:var(--ds-ink-3)}
.tsp-table th:first-child{padding:0 16px 14px;text-align:left;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ds-muted-light)}
.tsp-table th.mos{font-weight:700;color:var(--ds-ink);padding:16px 12px;background:#fff;border:1px solid rgba(75,51,182,.2);border-bottom:none;border-radius:14px 14px 0 0;box-shadow:0 -14px 40px -30px rgba(75,51,182,.7)}
.tsp-table td{padding:13px 12px;text-align:center;background:#fff}
.tsp-table td:first-child{padding:13px 16px;text-align:left;border-radius:8px 0 0 8px;font-size:13.5px;line-height:1.4;color:var(--ds-ink-2)}
.tsp-table td:last-child{border-radius:0 8px 8px 0}
.tsp-table tr:nth-child(odd) td{background:var(--ds-row)}
.tsp-table td.mos,.tsp-table tr:nth-child(odd) td.mos{background:var(--ds-row-hi);border-left:1px solid rgba(75,51,182,.18);border-right:1px solid rgba(75,51,182,.18)}
.tsp-cell{display:inline-flex;align-items:center;gap:7px;justify-content:center}
.tsp-yes{display:grid;place-items:center;flex:none;width:21px;height:21px;border-radius:99px;background:#16a34a;color:#fff}
.tsp-cell .ok{font-size:12px;font-weight:700;color:var(--ds-ok)}
.tsp-cell .lim{font-size:12px;color:var(--ds-warn-ink)}
.tsp-cell .gen{font-size:12px;color:var(--ds-muted-light)}
.tsp-cell svg.w{flex:none;color:var(--ds-warn)}
.tsp-cell svg.x{flex:none;color:var(--ds-no)}
.tsp-mark{display:inline-flex;align-items:center;gap:8px;justify-content:center;font-weight:800;font-size:14.5px;letter-spacing:-.02em;color:var(--ds-ink)}
.tsp-mark i{opacity:.35;margin:0 5px;font-weight:400;font-style:normal}
.tsp-fine{margin-top:18px!important;font-size:12.5px;line-height:1.6;color:var(--ds-muted-light)}

/* What people are saying (S11): the homepage's 8 success_stories rows, 2x4 */
.tsp-proof{border-top:1px solid rgba(22,20,42,.09);background:#fff}
.tsp-proof .tsp-in{padding:clamp(52px,6.5vw,88px) clamp(20px,4vw,44px)}
.tsp-proof h2{margin:0 auto!important;max-width:520px;text-align:center;font-size:clamp(26px,3.4vw,40px);line-height:1.08;font-weight:800;letter-spacing:-.035em}
.tsp-proof h2 .tsp-serif{color:var(--ds-violet)}
.tsp .testi2-marquee{display:flex;flex-direction:column;gap:16px;margin-top:34px;width:100vw;margin-left:calc(50% - 50vw)}
.tsp .testi2-row{overflow:hidden;mask-image:linear-gradient(90deg,transparent,black 5%,black 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,black 5%,black 95%,transparent)}
.tsp .testi2-trk{display:flex;gap:16px;width:max-content;align-items:stretch}
.tsp .testi2-trk--l{animation:testi2-L 52s linear infinite}
.tsp .testi2-trk--r{animation:testi2-R 52s linear infinite}
.tsp .testi2-row:hover .testi2-trk,.tsp .testi2-row:focus-within .testi2-trk{animation-play-state:paused}
.tsp .testi2-trk .testi2-card{flex:none;width:340px}
@keyframes testi2-L{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 8px))}}
@keyframes testi2-R{from{transform:translateX(calc(-50% - 8px))}to{transform:translateX(0)}}
@media (prefers-reduced-motion:reduce){.tsp .testi2-trk{animation:none}.tsp .testi2-row{overflow-x:auto}}
@media (max-width:560px){.tsp .testi2-trk .testi2-card{width:290px}}
.tsp .tsp-proof{overflow-x:clip}
.tsp .testi2-card{margin:0;display:flex;flex-direction:column;padding:22px;border:1px solid rgba(75,51,182,.2);border-radius:18px;background:#fff;box-shadow:0 2px 0 rgba(75,51,182,.06),0 22px 50px -34px rgba(75,51,182,.5)}
.tsp .testi2-card blockquote{margin:0;flex:1;font-size:14.5px;line-height:1.65;color:var(--ds-ink-2)}
.tsp .testi2-card blockquote mark{background:linear-gradient(180deg,transparent 14%,var(--ds-hilite) 14%,var(--ds-hilite-2) 86%,transparent 86%);color:var(--ds-ink);font-weight:700;box-decoration-break:clone;-webkit-box-decoration-break:clone;padding:0 2px}
.tsp .testi2-card figcaption{margin-top:16px;padding-top:14px;border-top:1px solid rgba(22,20,42,.08);display:flex;align-items:center;gap:11px}
.tsp .testi2-card img{display:block;width:44px;height:44px;border-radius:99px;object-fit:cover;background:#f1eff5;box-shadow:0 0 0 2px #fff,0 0 0 3px rgba(75,51,182,.25)}
.tsp .testi2-card figcaption span{font-size:13.5px;line-height:1.4}
.tsp .testi2-card figcaption b{display:block}
.tsp .testi2-card figcaption small{display:block;font-size:13.5px;color:var(--ds-muted-light)}
.tsp-proof-note{margin-top:22px!important;text-align:center;font-size:12.5px;color:var(--ds-muted-light)}

/* Frequently Asked Questions (S12): hairline details, rotating plus */
.tsp-faq{border-top:1px solid rgba(22,20,42,.08);background:var(--ds-paper)}
.tsp-faq .tsp-in{max-width:1000px;padding:clamp(48px,6vw,80px) clamp(20px,4vw,44px)}
.tsp-faq h2{margin:0 0 26px!important}
.tsp-faq-list{max-width:780px}
.tsp-faq details{border-top:1px solid rgba(22,20,42,.12);padding:20px 0}
.tsp-faq details:last-child{border-bottom:1px solid rgba(22,20,42,.12)}
.tsp-faq summary{display:flex;align-items:center;gap:14px;cursor:pointer;font-size:16.5px;font-weight:600;letter-spacing:-.015em;list-style:none}
.tsp-faq .qm{flex:none;width:16px;height:16px;color:#5b46c4;transition:transform .2s cubic-bezier(.22,1,.36,1)}
.tsp-faq details p{margin:12px 0 0 30px!important;font-size:15px;line-height:1.65;color:var(--ds-ink-3)}

/* Sticky bottom bar (S13): its CTA is the same trial14 hook */
.tsp-sticky{position:fixed;left:0;right:0;bottom:0;z-index:40;border-top:1px solid rgba(22,20,42,.1);background:rgba(255,255,255,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 -10px 30px -20px rgba(22,20,42,.4);color:var(--ds-ink)}
.tsp-sticky-in{max-width:1140px;margin:0 auto;padding:12px clamp(20px,4vw,44px);display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}
.tsp-sticky-t{min-width:0}
.tsp-sticky-t b{display:block;font-size:14.5px;font-weight:700;letter-spacing:-.015em}
.tsp-sticky-t span{display:block;font-size:12.5px;color:var(--ds-muted-light)}
.tsp-sticky-cta{margin-left:auto;display:inline-flex;align-items:center;gap:9px;height:46px;padding:0 24px;border:0;border-radius:99px;font:600 15px Inter,system-ui,sans-serif;color:#fff;background:var(--ds-violet);box-shadow:0 12px 26px -14px rgba(75,51,182,.9);cursor:pointer;transition:transform .16s cubic-bezier(.22,1,.36,1)}
.tsp-sticky-cta:hover{transform:translateY(-2px)}
@media (max-width:560px){.tsp-sticky-t span{display:none}.tsp-sticky-cta{margin-left:0;width:100%;justify-content:center}.tsp{padding-bottom:118px}}
@media (prefers-reduced-motion:reduce){.tsp *{animation:none!important}}
