  :root { --ink:#111827; --muted:#6b7280; --bg:#ffffff; --card:#ffffff; --accent:#1a6dff; --navy:#0f172a; --line:#e5e7eb; --cream:#f5f3ef; }
  * { box-sizing: border-box; }
  body { margin:0; font-family: "DM Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; color:var(--ink); background:var(--bg); line-height:1.55; }
  .wrap { max-width: 1080px; margin: 0 auto; padding: 0 24px; }
  header { padding: 18px 0; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--line); }
  .brand { white-space:nowrap; font-weight: 700; letter-spacing: -0.01em; font-size: 1.25rem; }
  .brand span { color: var(--accent); }
  .nav a { color: var(--muted); text-decoration:none; font-weight:500; font-size:1.02rem; margin-left:16px; white-space:nowrap; }
  header { flex-wrap:wrap; gap:8px 16px; }
  .nav { display:flex; flex-wrap:wrap; }
  .hero { text-align:center; padding: 56px 0 36px; background: radial-gradient(ellipse at 50% 0%, rgba(26,109,255,.14) 0%, rgba(255,255,255,0) 62%); }
  .pill { display:inline-block; font-size:.86rem; letter-spacing:.06em; text-transform:uppercase; border:1px solid var(--line); background:#fff; border-radius:999px; padding:6px 16px; color:var(--muted); font-weight:500; }
  h1 { font-size: clamp(2.1rem, 6vw, 3rem); line-height: 1.1; margin: 22px 0 16px; letter-spacing: -0.02em; font-weight:600; }
  h1 em { font-style: normal; color: var(--accent); }
  .sub { font-size: 1.1rem; color: var(--muted); max-width: 640px; margin: 0 auto; }
  section { padding: 36px 0; }
  h2 { font-size: 1.8rem; margin: 0 0 8px; letter-spacing: -0.015em; text-align:center; font-weight:600; }
  .lede { text-align:center; color: var(--muted); margin: 0 auto 28px; max-width: 600px; }

  .tiers { display:grid; gap:24px; grid-template-columns: 1fr; align-items: stretch; margin-top: 26px; }
  @media (min-width: 900px) { .tiers { grid-template-columns: repeat(3, 1fr); } }
  .tier { background: var(--card); border:1px solid rgba(26,109,255,.28); border-radius:24px; padding: 32px; display:flex; flex-direction:column; position:relative; }
  .badge { position:absolute; top:-13px; left:50%; transform:translateX(-50%); background:#fff; color:var(--ink); border:1px solid rgba(26,109,255,.35); font-size:.8rem; font-weight:600; border-radius:999px; padding:5px 14px; letter-spacing:.06em; text-transform:uppercase; white-space:nowrap; }
  .badge.pop { background:var(--accent); color:#fff; border-color:var(--accent); }
  .tier h3 { margin:0; font-size:1.5rem; font-weight:600; }
  .q { font-style: italic; color: var(--muted); margin: 6px 0 10px; }
  .for { font-size:.9rem; letter-spacing:.04em; text-transform:uppercase; color: var(--muted); }
  .price { font-size: 3rem; font-weight: 600; margin: 22px 0 18px; letter-spacing:-0.02em; line-height:1; }
  .price small { font-size:1.06rem; font-weight:400; color:var(--muted); letter-spacing:0; }
  .stack { background:var(--cream); border:1px solid #ebe8e1; border-radius:20px; padding: 22px; margin: 0 0 24px; flex:1; }
  .stack .lab { font-size:.84rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); margin-bottom:14px; }
  .vs { list-style:none; padding:0; margin:0; }
  .vs li { display:flex; justify-content:space-between; gap:12px; margin:0 0 9px; font-size:1.06rem; }
  .vs .v { white-space:nowrap; color:#374151; }
  .vtotal { display:flex; justify-content:space-between; align-items:baseline; border-top:1px solid #e0dcd3; margin-top:16px; padding-top:16px; }
  .vtotal .l { font-size:.84rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); }
  .vtotal .t { font-size:1.35rem; font-weight:700; }
  .youpay { color:var(--accent); font-size:.97rem; margin-top:8px; font-weight:500; }
  .btn { display:flex; align-items:center; justify-content:center; gap:8px; background: var(--accent); color:#fff; border:0; border-radius:999px; padding: 15px 24px; font-size:1.06rem; font-weight:600; cursor:pointer; text-decoration:none; width:100%; font-family:inherit; }
  .btn.dark { background: var(--navy); }
  .btn:hover { filter: brightness(1.12); }

  .grid2 { display:grid; gap:18px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
  .card { background: var(--card); border:1px solid var(--line); border-radius:20px; padding: 24px; }
  .card h3 { margin: 0 0 6px; font-weight:600; }
  .card p { margin: 0; color: var(--muted); }
  details { background: var(--card); border:1px solid var(--line); border-radius:14px; padding: 16px 20px; margin: 10px auto; max-width: 720px; }
  summary { cursor:pointer; font-weight:600; }
  details p { color: var(--muted); margin: 10px 0 0; }
  form { background: var(--card); border:1px solid var(--line); border-radius:24px; padding: 28px; max-width: 520px; margin: 0 auto; }
  label { display:block; font-weight:500; margin: 12px 0 4px; font-size:1.06rem; }
  input, select { width:100%; padding: 12px; font-size: 1rem; border:1px solid #d1d5db; border-radius:10px; background:#fff; font-family:inherit; }
  input:focus, select:focus { outline: 2px solid var(--accent); border-color: transparent; }
  form .btn { margin-top: 18px; }
  .fine { color: var(--muted); font-size: 1rem; margin-top: 10px; text-align:center; }
  #msg { margin-top: 12px; font-weight: 600; text-align:center; }
  footer { padding: 34px 0 50px; color: var(--muted); font-size: 1.02rem; border-top:1px solid var(--line); margin-top: 20px; }
  footer .cols { display:flex; gap:40px; flex-wrap:wrap; }
  footer b { color: var(--ink); display:block; margin-bottom:6px; }
  footer a { display:block; color:var(--muted); text-decoration:none; margin:3px 0; }

  /* order page */
  .crumbs { font-size:.97rem; color:var(--muted); padding:18px 0 0; }
  .crumbs a { color:var(--muted); text-decoration:none; }
  .order { max-width: 620px; margin: 0 auto; text-align:center; padding: 28px 0 10px; }
  .order .pill { display:inline-flex; gap:6px; }
  .order h1 { margin-top:22px; }
  .planbox { background:#fff; border:1px solid var(--line); border-radius:24px; padding:26px; text-align:left; margin:26px 0; box-shadow:0 6px 24px rgba(17,24,39,.05); }
  .planbox .top { display:flex; justify-content:space-between; gap:16px; align-items:flex-start; }
  .planbox .kicker { font-size:.84rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); }
  .planbox .tagline { margin:6px 0 0; font-size:1.02rem; }
  .planbox .pr { text-align:right; font-size:2rem; font-weight:700; line-height:1.1; white-space:nowrap; }
  .planbox .pr small { display:block; font-size:.9rem; font-weight:400; color:var(--muted); }
  .checks { list-style:none; padding:0; margin:18px 0 0; }
  .checks li { padding-left:26px; position:relative; margin:9px 0; }
  .checks li::before { content:"\2713"; position:absolute; left:0; color:var(--accent); font-weight:700; }
  .order form { text-align:left; max-width:none; }
  .upsell { background:var(--cream); border:1px solid #ebe8e1; border-radius:20px; padding:20px; margin:26px auto 0; max-width:620px; text-align:center; }
  .upsell p { margin:0 0 12px; color:var(--muted); }
  .upsell .btn { width:auto; display:inline-flex; padding:12px 22px; }
  .note { color:var(--muted); font-size:.97rem; margin-top:10px; text-align:center; }
  .nav a.on { color:var(--ink); font-weight:600; }

  /* quiz */
  .quiz { max-width: 620px; margin: 0 auto; padding: 18px 0 10px; }
  .qstep { font-size:.97rem; color:var(--muted); display:flex; justify-content:space-between; align-items:center; }
  .qback { background:none; border:0; color:var(--muted); cursor:pointer; font-family:inherit; font-size:.97rem; }
  .qbar { height:6px; background:#e7e5df; border-radius:999px; margin:10px 0 28px; overflow:hidden; }
  .qbar i { display:block; height:100%; background:linear-gradient(90deg,#1a6dff,#6d5dfc); border-radius:999px; transition:width .25s; }
  .quiz .head { text-align:center; }
  .quiz h1 { font-size: clamp(1.8rem, 5vw, 2.4rem); margin:18px 0 10px; }
  .quiz .sub { font-size:1rem; }
  .opts { margin-top:24px; display:grid; gap:12px; }
  .opt { display:flex; gap:14px; align-items:center; text-align:left; background:#fff; border:1px solid var(--line); border-radius:18px; padding:16px 18px; cursor:pointer; font-family:inherit; font-size:1rem; color:var(--ink); width:100%; }
  .opt:hover { border-color:var(--accent); box-shadow:0 4px 16px rgba(26,109,255,.12); }
  .opt .ic { flex:none; width:40px; height:40px; border-radius:12px; background:rgba(26,109,255,.1); color:var(--accent); display:flex; align-items:center; justify-content:center; font-size:1.1rem; }
  .opt b { display:block; font-weight:600; }
  .opt span.s { display:block; color:var(--muted); font-size:1rem; }
  .result { text-align:center; }
  .result .rec { text-align:left; background:#fff; border:2px solid var(--accent); border-radius:24px; padding:26px; margin:24px 0 14px; }
  .result .rec h2 { text-align:left; margin:6px 0 4px; font-size:1.7rem; }
  .result .rec .pr { font-size:2rem; font-weight:700; }
  .result .rec .pr small { font-size:.97rem; font-weight:400; color:var(--muted); }
  .result .why { color:var(--muted); margin:12px 0 18px; }
  .result .why b { color:var(--ink); }
  .also { text-align:left; background:var(--cream); border:1px solid #ebe8e1; border-radius:20px; padding:20px; margin:14px 0; }
  .also .kicker { font-size:.84rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); }
  .also h3 { margin:6px 0 2px; font-weight:600; }
  .also p { margin:0 0 12px; color:var(--muted); }
  .also .btn { width:auto; display:inline-flex; padding:11px 20px; }
  .tlink { color:var(--accent); font-weight:600; text-decoration:none; }

  /* header v2: floating bar, centered tabs, CTA */
  header { position:sticky; top:12px; z-index:50; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:12px;
           margin-top:14px; padding:10px 12px 10px 20px; background:rgba(255,255,255,.88); backdrop-filter:saturate(1.4) blur(12px); -webkit-backdrop-filter:saturate(1.4) blur(12px);
           border:1px solid var(--line); border-radius:999px; box-shadow:0 6px 24px rgba(17,24,39,.07); flex-wrap:nowrap; }
  .brand { display:flex; align-items:center; font-size:1.15rem; justify-self:start; }
  .nav { display:flex; justify-content:center; flex-wrap:wrap; gap:4px; }
  .nav a { margin-left:0; padding:8px 14px; border-radius:999px; font-size:1.04rem; font-weight:500; color:#4b5563; transition:background .15s,color .15s; }
  .nav a:hover { background:rgba(26,109,255,.08); color:var(--accent); }
  .nav a.on { background:rgba(26,109,255,.12); color:var(--accent); font-weight:600; }
  .hcta { justify-self:end; background:var(--accent); color:#fff; text-decoration:none; font-weight:600; font-size:1.02rem; padding:10px 18px; border-radius:999px; white-space:nowrap; box-shadow:0 4px 14px rgba(26,109,255,.3); }
  .hcta:hover { filter:brightness(1.1); }
  @media (max-width: 860px) {
    header { grid-template-columns:1fr; justify-items:center; border-radius:24px; padding:12px; position:static; }
    .brand, .hcta { justify-self:center; }
    .nav a { padding:7px 11px; font-size:1rem; }
  }

  /* samples */
  .sampintro { max-width: 760px; margin: 0 auto; text-align:center; padding: 30px 0 6px; }
  .sampintro h1 { font-size: clamp(1.8rem, 5vw, 2.5rem); margin: 0 0 14px; }
  .sampintro p { color: var(--muted); margin: 0; }
  .sampintro a { color: var(--accent); font-weight:600; }
  .samples { display:grid; gap:24px; grid-template-columns:1fr; margin-top:30px; }
  @media (min-width: 900px) { .samples { grid-template-columns: repeat(3, 1fr); } }
  .sample { background:#fff; border:1px solid rgba(26,109,255,.28); border-radius:24px; padding:26px; display:flex; flex-direction:column; }
  .sample .tag { font-size:.84rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); }
  .sample .biz { margin:8px 0 2px; font-weight:600; }
  .sample .madeup { font-size:.9rem; color:var(--muted); margin-bottom:14px; }
  .scorerow { display:flex; align-items:baseline; gap:10px; margin:6px 0 4px; }
  .scorerow .big { font-size:3rem; font-weight:700; line-height:1; letter-spacing:-0.02em; }
  .scorerow .of { color:var(--muted); font-size:1.02rem; }
  .minis { display:flex; gap:8px; flex-wrap:wrap; margin:10px 0 16px; }
  .minis span { background:var(--cream); border:1px solid #ebe8e1; border-radius:999px; padding:4px 11px; font-size:.9rem; color:#374151; }
  .finds { list-style:none; padding:0; margin:0 0 20px; flex:1; }
  .finds li { margin:0 0 12px; font-size:1.04rem; }
  .sev { display:inline-block; font-size:.78rem; font-weight:700; letter-spacing:.06em; border-radius:6px; padding:2px 7px; margin-right:8px; vertical-align:1px; }
  .sev.crit { background:#fee2e2; color:#b91c1c; }
  .sev.high { background:#ffedd5; color:#c2410c; }
  .sev.good { background:#dcfce7; color:#15803d; }
  .cta2 { text-align:center; background:var(--cream); border:1px solid #ebe8e1; border-radius:24px; padding:34px 20px; margin-top:34px; }
  .cta2 h2 { margin:0 0 6px; }
  .cta2 p { margin:0 0 18px; color:var(--muted); }
  .cta2 .btn { width:auto; display:inline-flex; margin:4px; padding:13px 24px; }
  .brand span { margin-left:.28em; }
  .hl { color:var(--accent); font-weight:700; }

  /* wheels (shared) */
  .ring { position:relative; width:var(--sz,120px); height:var(--sz,120px); flex:none; }
  .ring svg { width:100%; height:100%; transform:rotate(-90deg); }
  .ring .trk { fill:none; stroke:#e7e5df; stroke-width:10; }
  .ring .arc { fill:none; stroke-width:10; stroke-linecap:round; transition:stroke-dasharray .6s; }
  .ring .num { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; line-height:1; }
  .ring .num b { font-size:calc(var(--sz,120px) * .3); font-weight:700; letter-spacing:-0.02em; }
  .ring .num span { font-size:calc(var(--sz,120px) * .12); color:var(--muted); margin-top:3px; }
  .legend { display:grid; gap:14px; grid-template-columns:1fr; margin-top:24px; }
  @media (min-width:760px) { .legend { grid-template-columns:repeat(3,1fr); } }
  .legend .lg { background:#fff; border:1px solid var(--line); border-radius:20px; padding:20px; display:flex; gap:16px; align-items:center; }
  .legend h3 { margin:0 0 4px; font-size:1.02rem; font-weight:600; }
  .legend p { margin:0; color:var(--muted); font-size:1.02rem; }
  .bands { display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin:18px 0 0; font-size:1rem; color:#374151; }
  .bands span { display:inline-flex; align-items:center; gap:7px; background:var(--cream); border:1px solid #ebe8e1; border-radius:999px; padding:6px 13px; }
  .bands i { width:11px; height:11px; border-radius:50%; display:inline-block; }
  .sample .rings { display:flex; align-items:center; justify-content:center; gap:14px; margin:14px 0 6px; }
  .sample .arrow { font-size:1.6rem; color:var(--muted); }
  .sample .cap { text-align:center; color:#374151; font-size:1.04rem; margin:0 0 14px; }
  .sample .cap b { color:var(--ink); }
  .sample .rlabel { text-align:center; font-size:.84rem; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); margin-top:6px; }
  .why { background:var(--cream); border:1px solid #ebe8e1; border-radius:14px; padding:12px 14px; font-size:1rem; color:#374151; margin:0 0 16px; }
  .why b { color:var(--ink); }

  /* stats + blog */
  .stats { display:grid; gap:16px; grid-template-columns:1fr; margin-top:24px; }
  @media (min-width:860px) { .stats { grid-template-columns:repeat(3,1fr); } }
  .stat { background:#fff; border:1px solid rgba(26,109,255,.28); border-radius:22px; padding:26px; display:flex; flex-direction:column; }
  .stat .n { font-size:3.2rem; font-weight:700; letter-spacing:-0.03em; color:var(--accent); line-height:1; }
  .stat h3 { margin:10px 0 8px; font-size:1.05rem; font-weight:600; }
  .stat p { margin:0 0 14px; color:var(--muted); font-size:1.05rem; flex:1; }
  .stat .src { font-size:.9rem; color:var(--muted); border-top:1px solid var(--line); padding-top:10px; }
  .stat .src a { color:var(--accent); text-decoration:none; font-weight:600; }
  .postcard { display:flex; gap:20px; align-items:center; justify-content:space-between; flex-wrap:wrap; background:var(--cream); border:1px solid #ebe8e1; border-radius:22px; padding:24px 26px; margin-top:22px; }
  .postcard .t { font-size:.84rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); }
  .postcard h3 { margin:6px 0 4px; font-weight:600; font-size:1.25rem; }
  .postcard p { margin:0; color:var(--muted); font-size:1.05rem; max-width:560px; }
  .postcard .btn { width:auto; display:inline-flex; padding:12px 22px; }
  .article { max-width:720px; margin:0 auto; padding:10px 0 20px; }
  .article .meta { color:var(--muted); font-size:1rem; text-align:center; }
  .article h1 { text-align:center; font-size:clamp(1.9rem,5vw,2.7rem); margin:14px 0 18px; }
  .article h2 { text-align:left; font-size:1.45rem; margin:34px 0 10px; }
  .article p, .article li { font-size:1.02rem; color:#374151; }
  .article ul { padding-left:20px; }
  .bigstat { display:flex; gap:18px; align-items:center; background:#fff; border:1px solid rgba(26,109,255,.28); border-radius:20px; padding:20px; margin:18px 0; }
  .bigstat .n { font-size:2.6rem; font-weight:700; color:var(--accent); letter-spacing:-0.03em; line-height:1; min-width:96px; }
  .bigstat p { margin:0; font-size:1.08rem; }
  .bigstat .src { display:block; font-size:.92rem; color:var(--muted); margin-top:6px; }
  .bigstat .src a { color:var(--accent); font-weight:600; text-decoration:none; }
  .sources { font-size:1rem; color:var(--muted); border-top:1px solid var(--line); margin-top:34px; padding-top:14px; }
  .sources a { color:var(--accent); }
  @media (max-width: 560px) { .bigstat { flex-direction:column; align-items:flex-start; gap:10px; } .bigstat .n { min-width:0; } }

  /* jump charts */
  .jump { display:grid; gap:16px; grid-template-columns:1fr; margin-top:26px; }
  @media (min-width:860px) { .jump { grid-template-columns:1fr 1.4fr; } }
  .chart { background:#fff; border:1px solid var(--line); border-radius:22px; padding:22px; }
  .chart h3 { margin:0 0 2px; font-size:1.05rem; font-weight:600; }
  .chart .cs { margin:0 0 16px; color:var(--muted); font-size:.97rem; }
  .bars { display:flex; align-items:flex-end; gap:14px; height:200px; padding:0 4px; border-bottom:1px solid #d9dce3; }
  .bcol { flex:1; display:flex; flex-direction:column; justify-content:flex-end; align-items:center; height:100%; }
  .bval { font-weight:700; font-size:1.05rem; margin-bottom:6px; }
  .bar { width:100%; max-width:74px; border-radius:10px 10px 0 0; background:linear-gradient(180deg,#6d9bff,#1a6dff); height:0; transition:height 1.1s cubic-bezier(.2,.8,.2,1); }
  .bar.dim { background:linear-gradient(180deg,#d6dbe6,#aab3c5); }
  .bar.dash { background:repeating-linear-gradient(45deg,#1a6dff,#1a6dff 7px,#4f8bff 7px,#4f8bff 14px); }
  .chart.go .bar { height:var(--h); }
  .blabels { display:flex; gap:14px; padding:6px 4px 0; }
  .blabels span { flex:1; text-align:center; font-size:.94rem; color:var(--muted); }
  .chart .foot { margin:12px 0 0; font-size:.9rem; color:var(--muted); }
  .chart .foot a { color:var(--accent); font-weight:600; text-decoration:none; }
  @media (prefers-reduced-motion: reduce) { .bar { transition:none; } }
  details.blogdd { max-width:none; padding:0; margin:22px 0 0; background:#fff; border:1px solid rgba(26,109,255,.28); border-radius:22px; overflow:hidden; }
  details.blogdd summary { padding:20px 24px; font-size:1.15rem; font-weight:600; display:flex; justify-content:space-between; align-items:center; gap:12px; list-style:none; }
  details.blogdd summary::-webkit-details-marker { display:none; }
  details.blogdd summary::after { content:"+"; font-size:1.5rem; color:var(--accent); line-height:1; }
  details.blogdd[open] summary::after { content:"\2212"; }
  details.blogdd .inner { padding:0 24px 24px; }
  details.blogdd .inner .article { padding-top:0; }
  details.blogdd .inner h2 { font-size:1.25rem; }

  /* arrow cards */
  .arrowcards { display:grid; gap:18px; grid-template-columns:1fr; margin-top:26px; }
  @media (min-width:860px) { .arrowcards { grid-template-columns:1fr 1fr; } }
  .acard { background:#fff; border:1px solid rgba(26,109,255,.3); border-radius:26px; padding:30px 26px 22px; text-align:center; box-shadow:0 10px 36px rgba(26,109,255,.1); }
  .acard .cap { font-size:1.05rem; font-weight:600; margin:0 0 4px; }
  .acard .when { color:var(--muted); font-size:.97rem; margin:0 0 20px; }
  .arow { display:flex; align-items:center; justify-content:center; gap:12px; }
  .arow .from { font-size:clamp(2.2rem,9vw,3.3rem); font-weight:700; color:#9aa3b5; letter-spacing:-0.03em; line-height:1; }
  .arow .to { font-size:clamp(3rem,13vw,4.8rem); font-weight:700; color:var(--accent); letter-spacing:-0.04em; line-height:1; }
  .aline { position:relative; flex:1; min-width:54px; max-width:170px; height:14px; }
  .aline::before { content:""; position:absolute; left:0; right:10px; top:50%; height:5px; margin-top:-2.5px; border-radius:5px; background:linear-gradient(90deg,#c3cbe0,#1a6dff); transform:scaleX(0); transform-origin:left; transition:transform 1s cubic-bezier(.2,.8,.2,1); }
  .aline::after { content:""; position:absolute; right:0; top:50%; margin-top:-9px; border-left:16px solid #1a6dff; border-top:9px solid transparent; border-bottom:9px solid transparent; opacity:0; transition:opacity .3s 0.85s; }
  .acard.go .aline::before { transform:scaleX(1); }
  .acard.go .aline::after { opacity:1; }
  .acard.go .to { animation:pop .5s .9s both; }
  @keyframes pop { 0% { transform:scale(1); } 50% { transform:scale(1.12); } 100% { transform:scale(1); } }
  .ylabels { display:flex; justify-content:space-between; max-width:420px; margin:8px auto 0; color:var(--muted); font-size:.94rem; padding:0 6px; }
  .acard .takeaway { margin:18px 0 12px; font-size:1rem; }
  .acard .takeaway b { color:var(--accent); }
  .acard .src { font-size:.9rem; color:var(--muted); border-top:1px solid var(--line); padding-top:10px; text-align:left; }
  .acard .src a { color:var(--accent); font-weight:600; text-decoration:none; }
  @media (prefers-reduced-motion: reduce) { .aline::before, .aline::after { transition:none; } .acard.go .to { animation:none; } }

  .acard .plain { background:rgba(26,109,255,.07); border-radius:16px; padding:14px 16px; margin:18px 0 12px; font-size:1.02rem; line-height:1.5; }
  .acard .plain b { color:var(--accent); font-size:1.15em; }
  .acard .means { margin:0 0 14px; font-size:1.08rem; color:#374151; }
  .acard .means b { color:var(--ink); }
  .almost { text-align:right; margin:10px 0 0; }
  .almost span { display:inline-block; position:relative; background:var(--accent); color:#fff; font-weight:700; font-size:1.06rem; padding:7px 14px; border-radius:999px; box-shadow:0 6px 18px rgba(26,109,255,.35); opacity:0; transform:translateY(6px); transition:opacity .4s 1.5s, transform .4s 1.5s; }
  .almost span::before { content:""; position:absolute; top:-6px; right:34px; border-bottom:7px solid var(--accent); border-left:6px solid transparent; border-right:6px solid transparent; }
  .acard.go .almost span { opacity:1; transform:none; }
  @media (prefers-reduced-motion: reduce) { .almost span { opacity:1; transform:none; transition:none; } }
  .acard .cap { font-size:1.45rem; font-weight:800; letter-spacing:-0.02em; line-height:1.2; color:var(--ink); margin:0 0 6px; }

  textarea { width:100%; padding:12px; font-size:1rem; border:1px solid #d1d5db; border-radius:10px; background:#fff; font-family:inherit; resize:vertical; }
  textarea:focus { outline:2px solid var(--accent); border-color:transparent; }
  footer p a { color:var(--muted); text-decoration:none; }
  footer p a:hover { color:var(--accent); }

  /* discovery call picker */
  .calstep { text-align:left; margin:26px 0 0; }
  .calstep .kicker { font-size:.86rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); font-weight:600; margin-bottom:10px; }
  .chips { display:flex; flex-wrap:wrap; gap:10px; }
  .chip { font-family:inherit; cursor:pointer; background:#fff; border:1px solid var(--line); border-radius:14px; padding:10px 14px; min-width:84px; text-align:center; color:var(--ink); font-size:1.06rem; }
  .chip small { display:block; color:var(--muted); font-size:.84rem; letter-spacing:.06em; text-transform:uppercase; }
  .chip:hover { border-color:var(--accent); }
  .chip.sel { background:var(--accent); border-color:var(--accent); color:#fff; box-shadow:0 6px 16px rgba(26,109,255,.3); }
  .chip.sel small { color:rgba(255,255,255,.85); }
  .picked { background:rgba(26,109,255,.08); border-radius:14px; padding:12px 14px; margin-bottom:6px; font-size:1.08rem; }
  #picker form { margin-top:26px; max-width:none; }

  .whatnext { background:#fff; border:1px solid var(--line); border-radius:24px; padding:24px 26px; text-align:left; margin:0 0 26px; }
  .whatnext .kicker { font-size:.86rem; letter-spacing:.1em; text-transform:uppercase; color:var(--accent); font-weight:700; margin-bottom:12px; }
  .stepslist { list-style:none; counter-reset:s; margin:0; padding:0; }
  .stepslist li { counter-increment:s; position:relative; padding:0 0 14px 44px; margin:0 0 4px; }
  .stepslist li::before { content:counter(s); position:absolute; left:0; top:0; width:30px; height:30px; border-radius:50%; background:rgba(26,109,255,.12); color:var(--accent); font-weight:700; font-size:1.02rem; display:flex; align-items:center; justify-content:center; }
  .stepslist li:last-child { padding-bottom:0; }
  .todo, .article .todo { color:#b45309; font-weight:700; background:#fff4e5; border-radius:4px; padding:0 4px; }

  .hp { position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden; }

  #msg.thanks { background:var(--accent); color:#fff; border-radius:16px; padding:22px 20px; margin-top:18px; font-size:1.35rem; font-weight:800; line-height:1.3; text-align:center; box-shadow:0 8px 24px rgba(26,109,255,.35); }

  #msg.thanks { font-size:1.8rem; font-weight:900; line-height:1.25; padding:30px 22px; border-radius:20px; letter-spacing:-0.01em; }
  #msg.thanks { font-weight:900 !important; }

  /* Light blue boxes with black text (value stacks, plan boxes, step lists, explainers, wheel legend) */
  .stack, .planbox, .whatnext, .why, .minis span, .also, .upsell, .cta2, .legend .lg, .bands span, .acard .plain {
    background:#e0ebff; border:1px solid rgba(26,109,255,.35);
  }
  .stack, .stack *, .planbox *:not(.btn), .whatnext, .whatnext *, .why, .why *, .minis span, .legend .lg, .legend .lg *, .bands span,
  .also h3, .also p, .also .kicker, .upsell p, .upsell b, .upsell .note, .cta2 h2, .cta2 p, .acard .plain, .acard .plain b {
    color:#000 !important;
  }
  .planbox .kicker, .whatnext .kicker, .stack .lab, .vtotal .l { color:#000 !important; }
  .stack a, .planbox a:not(.btn), .whatnext a, .why a, .upsell .note a { color:#000 !important; text-decoration:underline; font-weight:700; }
  .hl, .stack .hl, .whatnext .hl, .planbox .hl { color:#000 !important; font-weight:800; border-bottom:2px solid #1a6dff; }
  .vtotal { border-top-color:rgba(26,109,255,.4); }
  .stepslist li::before { background:#1a6dff; color:#fff; }
  .checks li::before { color:#000; }

  details.optional { background:none; border:0; padding:0; margin:16px 0 0; max-width:none; }
  details.optional summary { color:var(--accent); font-weight:700; font-size:1.02rem; cursor:pointer; }
  details.optional[open] summary { margin-bottom:4px; }

  /* "the problem" chat picture */
  .chat { max-width:580px; margin:26px auto 0; background:#fff; border:1px solid var(--line); border-radius:24px; padding:20px; box-shadow:0 12px 36px rgba(26,109,255,.12); text-align:left; }
  .chat-top { display:flex; justify-content:space-between; align-items:center; font-weight:700; font-size:1.02rem; padding-bottom:14px; border-bottom:1px solid var(--line); margin-bottom:16px; }
  .chat-top .ex { font-size:.84rem; letter-spacing:.08em; background:#fff4e5; color:#000; border:1px solid #f5c98a; border-radius:999px; padding:3px 11px; }
  .bubble { border-radius:18px; padding:13px 16px; font-size:1.08rem; line-height:1.45; max-width:92%; margin-bottom:12px; color:#000; }
  .bubble.you { background:#e0ebff; margin-left:auto; border-bottom-right-radius:6px; }
  .bubble.ai { background:#f3f4f6; border-bottom-left-radius:6px; }
  .bubble.ai ol { margin:10px 0 2px; padding-left:22px; }
  .bubble.ai li { margin:5px 0; }
  .missing { display:flex; align-items:center; gap:12px; background:#fee2e2; border:2px solid #dc2626; border-radius:16px; padding:14px 16px; font-size:1.12rem; color:#000; margin-top:4px; }
  .missing .x { flex:none; width:30px; height:30px; border-radius:50%; background:#dc2626; color:#fff; font-weight:800; display:flex; align-items:center; justify-content:center; font-size:1.2rem; line-height:1; }
  .chat-cap { text-align:center; color:var(--muted); max-width:580px; margin:16px auto 0; font-size:1.02rem; }
  .chat-cap b { color:var(--ink); }

  /* bigger section labels ("THE PROBLEM", "HOW IT WORKS", ...) and top labels */
  .eyebrow { font-size:1.3rem; font-weight:800; letter-spacing:.1em; margin-bottom:12px; }
  .pill { font-size:1rem; font-weight:700; padding:8px 20px; letter-spacing:.07em; }

  /* pictured steps */
  .sico { width:58px; height:58px; border-radius:18px; background:#e0ebff; display:flex; align-items:center; justify-content:center; margin-bottom:12px; }
  .stime { display:inline-block; margin-top:14px; background:#e0ebff; border:1px solid rgba(26,109,255,.35); color:#000; font-weight:700; font-size:1rem; border-radius:999px; padding:6px 14px; line-height:1.3; }
  /* report preview */
  .reportcard { max-width:980px; margin:26px auto 0; background:#fff; border:1px solid rgba(26,109,255,.35); border-radius:22px; overflow:hidden; box-shadow:0 12px 36px rgba(26,109,255,.12); }
  .repbar { display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; background:#e0ebff; color:#000; padding:14px 20px; border-bottom:1px solid rgba(26,109,255,.35); font-size:1.05rem; }
  .repbar b { letter-spacing:.08em; font-size:1.05rem; }
  .reportcard .legend { margin-top:0; padding:18px; }

  .forwho { max-width:760px; margin:16px auto 0; font-size:1.25rem; line-height:1.45; color:#000; }
  .forwho b { font-weight:800; }
  @media (max-width: 420px) { .nav a { padding:7px 8px; font-size:.95rem; } .nav { gap:2px; } }
  .samples > .sample { min-width:0; }
  @media (max-width: 380px) { .nav a { padding:7px 5px; font-size:.9rem; } header { padding-left:8px; padding-right:8px; } }

  /* simple plan cards */
  .plist { list-style:none; padding:0; margin:14px 0 24px; flex:1; }
  .plist li { position:relative; padding:0 0 0 28px; margin:0 0 12px; font-size:1.08rem; line-height:1.45; color:#000; }
  .plist li::before { content:"\2713"; position:absolute; left:0; top:0; color:#1a6dff; font-weight:800; }
  .plus { font-weight:800; font-size:1.05rem; margin:14px 0 0; color:#000; }
  .tier .note { text-align:center; margin:10px 0 0; font-size:1rem; }
  .cmpwrap { overflow-x:auto; margin-top:14px; border:1px solid var(--line); border-radius:18px; background:#fff; }
  .compare { width:100%; border-collapse:collapse; font-size:1rem; }
  .compare th, .compare td { padding:13px 12px; text-align:center; border-bottom:1px solid var(--line); }
  .compare th:first-child, .compare td:first-child { text-align:left; width:38%; }
  .compare thead th { background:#e0ebff; color:#000; font-weight:800; font-size:1rem; }
  .compare td { color:#000; font-weight:600; }
  .compare td.no { color:#9ca3af; font-weight:400; }
  .compare tr:last-child td { border-bottom:0; }
  .compare .priceRow td { background:#f3f4f6; font-weight:800; }
  @media (max-width:560px) { .compare th, .compare td { padding:10px 6px; font-size:.92rem; } .compare th:first-child, .compare td:first-child { width:34%; } }

  .teaser { display:flex; flex-direction:column; }
  .teaser p { flex:1; font-size:1.08rem; color:#000; }
  .teaser .btn { margin-top:16px; }

  /* before / after example */
  .ba { display:grid; grid-template-columns:1fr; gap:14px; align-items:center; max-width:1040px; margin:26px auto 0; }
  @media (min-width:960px) { .ba { grid-template-columns:1fr 130px 1fr; align-items:stretch; } }
  .bacard { display:flex; flex-direction:column; }
  .ba .chat { margin:0; max-width:none; flex:1; box-shadow:0 8px 24px rgba(17,24,39,.08); }
  .batag { align-self:flex-start; font-weight:800; letter-spacing:.1em; font-size:1rem; border-radius:999px; padding:6px 16px; margin-bottom:10px; color:#000; }
  .batag.before { background:#fee2e2; border:2px solid #dc2626; }
  .batag.after { background:#dcfce7; border:2px solid #16a34a; }
  .bigarrow { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; text-align:center; color:#000; font-weight:800; font-size:1.05rem; padding:6px 0; }
  .bigarrow svg { transform:rotate(90deg); }
  @media (min-width:960px) { .bigarrow svg { transform:none; } }
  .good { display:flex; align-items:center; gap:12px; background:#dcfce7; border:2px solid #16a34a; border-radius:16px; padding:14px 16px; font-size:1.12rem; color:#000; margin-top:4px; }
  .good .ck { flex:none; width:30px; height:30px; border-radius:50%; background:#16a34a; color:#fff; font-weight:800; display:flex; align-items:center; justify-content:center; font-size:1.15rem; line-height:1; }
  .scorerow2 { display:flex; align-items:center; gap:14px; margin-top:12px; background:#fff; border:1px solid var(--line); border-radius:18px; padding:12px 16px; }
  .scorerow2 b { display:block; font-size:1.25rem; color:#000; }
  .scorerow2 span { color:#000; font-size:1.02rem; }

  .quiz h2.rh { font-size: clamp(1.8rem, 5vw, 2.4rem); margin:18px 0 10px; text-align:center; }

  .fcontact { display:block; margin-top:10px; }
  .fcontact a { display:inline; margin:0; }
  footer > p, .wrap > footer p { line-height:1.9; }
  footer p a { display:inline; margin:0; }

  /* phone menu: three-line button, links drop down full width */
  .menubtn { display:none; }
  @media (max-width: 860px) {
    header { grid-template-columns:1fr auto; grid-template-areas:"brand btn" "nav nav" "cta cta"; justify-items:stretch; position:sticky; top:8px; margin-top:8px; border-radius:22px; padding:8px 8px 8px 16px; gap:0 8px; }
    .brand { grid-area:brand; justify-self:start; font-size:1.2rem; }
    .menubtn { grid-area:btn; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:5px; width:48px; height:48px; border:0; border-radius:14px; background:rgba(26,109,255,.1); cursor:pointer; }
    .menubtn span { display:block; width:22px; height:3px; border-radius:2px; background:var(--accent); transition:transform .2s, opacity .2s; }
    header.open .menubtn span:nth-child(1) { transform:translateY(8px) rotate(45deg); }
    header.open .menubtn span:nth-child(2) { opacity:0; }
    header.open .menubtn span:nth-child(3) { transform:translateY(-8px) rotate(-45deg); }
    .nav { grid-area:nav; display:none; flex-direction:column; gap:2px; padding:8px 0 4px; }
    .hcta { grid-area:cta; display:none; justify-self:stretch; text-align:center; margin:4px 0 4px; padding:14px 18px; font-size:1.1rem; }
    header.open .nav, header.open .hcta { display:flex; }
    header.open .hcta { display:block; }
    .nav a { padding:14px 12px; font-size:1.15rem; border-radius:12px; margin:0; }
  }

  /* phone comfort: no tiny text, thumb-sized tap targets (desktop unchanged) */
  @media (max-width: 640px) {
    .badge, .sev, .tag, .rlabel, .kicker, .ex, small, .madeup, .fine { font-size:.88rem; }
    .brand { padding:10px 0; }
    .crumbs a { display:inline-block; padding:12px 6px 12px 0; }
    .qback { padding:12px 10px; font-size:1rem; }
    footer a { display:inline-block; padding:8px 0; }
    footer p a { padding:8px 2px; }
    a.tlink { padding:4px 0; }
  }
  @media (max-width: 640px) { .kicker, .tag, .rlabel, .ex, small { font-size:.875rem !important; } }

  /* phone extras */
  html { -webkit-text-size-adjust:100%; text-size-adjust:100%; }
  a, button { -webkit-tap-highlight-color:rgba(26,109,255,.15); touch-action:manipulation; }
  section[id] { scroll-margin-top:84px; }
  .navcall, .stickycta { display:none; }
  @media (max-width: 860px) {
    .navcall { display:block; margin-top:6px; padding:14px 12px; text-align:center; border:2px solid var(--accent); border-radius:12px; color:var(--accent) !important; font-weight:700; font-size:1.1rem; }
    .stickycta { display:block; position:fixed; left:12px; right:12px; bottom:max(12px, env(safe-area-inset-bottom)); z-index:60; background:var(--accent); color:#fff; text-align:center; text-decoration:none; font-weight:700; font-size:1.1rem; padding:15px 18px; border-radius:999px; box-shadow:0 8px 24px rgba(26,109,255,.4); transform:translateY(140%); transition:transform .25s; }
    .stickycta.show { transform:none; }
    body { padding-bottom:84px; }
  }
  @media (max-width: 640px) {
    section { padding:26px 0; }
    h2 { font-size:1.55rem; line-height:1.2; }
    .bubble { font-size:1rem; padding:11px 14px; margin-bottom:10px; max-width:96%; }
    .chat { padding:16px; }
    .acard { padding:22px 18px 18px; }
    .acard .cap { font-size:1.3rem; }
    .steps3 { gap:10px; }
    .steps3 .step { display:grid; grid-template-columns:48px 1fr; column-gap:14px; align-items:start; text-align:left; padding:14px 16px; }
    .steps3 .step .sico { grid-row:1 / span 3; margin:0; }
    .steps3 .step .n { display:none; }
    .steps3 .step h3, .steps3 .step p, .steps3 .step .stime { margin:0 0 2px; text-align:left; }
  }

  /* phone plan switcher (tabs + swipe row + dots); hidden on bigger screens */
  .plantabs, .plandots { display:none; }
  @media (max-width: 640px) {
    .plantabs { display:flex; gap:6px; margin:18px 0 6px; padding:5px; background:rgba(26,109,255,.1); border-radius:999px; position:sticky; top:84px; z-index:40; backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
    .plantabs button { overflow:hidden; text-overflow:ellipsis; }
    .plantabs button { flex:1; border:0; background:transparent; font:inherit; font-weight:700; font-size:.95rem; color:#374151; padding:12px 4px; border-radius:999px; cursor:pointer; min-height:46px; }
    .plantabs button.on { background:var(--accent); color:#fff; box-shadow:0 4px 12px rgba(26,109,255,.3); }
    .tiers, .samples { display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; align-items:flex-start; padding:18px 2px 10px; margin:0 -2px; scrollbar-width:none; }
    .tiers::-webkit-scrollbar, .samples::-webkit-scrollbar { display:none; }
    .tiers > .tier, .samples > .sample { flex:0 0 100%; min-width:0; scroll-snap-align:start; scroll-snap-stop:always; box-sizing:border-box; }
    .tier { padding:24px 20px; }
    .sample { padding:20px 18px; }
    .plandots { display:flex; justify-content:center; gap:8px; margin:4px 0 0; }
    .plandots i { width:9px; height:9px; border-radius:50%; background:rgba(26,109,255,.25); transition:all .2s; }
    .plandots i.on { width:24px; border-radius:5px; background:var(--accent); }
  }
  @media (max-width: 640px) { .plantabs button { white-space:nowrap; font-size:.9rem; padding:12px 2px; } }
  @media (max-width: 340px) { .plantabs button { font-size:.875rem; letter-spacing:-.01em; } }

  /* swipe rows v2: peek of the next card, swipe hint, bounded sticky tabs */
  .swipehint { display:none; }
  @media (max-width: 640px) {
    .swwrap > .tiers > .tier, .swwrap > .samples > .sample, .swwrap > .teasers > .teaser, .swwrap > .ba > .bacard, .swwrap > .arrowcards > .acard, .swwrap > .legend > .lg { flex:0 0 90%; }
    .swwrap > .ba, .swwrap > .arrowcards, .swwrap > .legend, .swwrap > .teasers { display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; align-items:flex-start; padding:14px 2px 10px; margin:0 -2px; scrollbar-width:none; max-width:none; }
    .ba::-webkit-scrollbar, .arrowcards::-webkit-scrollbar, .legend::-webkit-scrollbar, .teasers::-webkit-scrollbar { display:none; }
    .ba > .bacard, .arrowcards > .acard, .legend > .lg, .teasers > .teaser { scroll-snap-align:start; scroll-snap-stop:always; min-width:0; box-sizing:border-box; }
    .ba > .bigarrow { display:none; }
    .legend > .lg { background:#fff; border:1px solid rgba(26,109,255,.28); border-radius:20px; padding:16px; }
    .swipehint { display:flex; align-items:center; justify-content:center; gap:8px; margin:10px 0 0; font-weight:700; font-size:.95rem; color:var(--accent); }
    .swipehint b { display:inline-block; font-size:1.3rem; animation:nudge 1.1s ease-in-out infinite; }
    .swwrap.swiped .swipehint { display:none; }
    @keyframes nudge { 0%,100% { transform:translateX(0); } 50% { transform:translateX(8px); } }
    .swwrap .plantabs { margin-top:14px; }
  }
  @media (prefers-reduced-motion: reduce) { .swipehint b { animation:none; } }

  /* section dividers: full-width line + short blue marker, and a soft tint on every second section */
  .wrap > section { position:relative; padding-top:44px; padding-bottom:44px; }
  .wrap > section:nth-of-type(even) { background:#f3f7ff; box-shadow:0 0 0 100vmax #f3f7ff; clip-path:inset(0 -100vmax); }
  .wrap > section + section::before, .wrap > .homehero + section::before { content:""; position:absolute; top:0; left:0; right:0; height:1px; background:rgba(26,109,255,.22); box-shadow:-100vmax 0 0 rgba(26,109,255,.22), 100vmax 0 0 rgba(26,109,255,.22); pointer-events:none; }
  .wrap > section + section::after, .wrap > .homehero + section::after { content:""; position:absolute; top:0; left:50%; width:56px; height:5px; margin-left:-28px; border-radius:0 0 6px 6px; background:var(--accent); pointer-events:none; }
  @media (max-width: 640px) { .wrap > section { padding-top:34px; padding-bottom:34px; } }

  /* same dividers on the text pages (FAQ, About, Privacy, Terms, Refunds) and the sections under forms */
  .wrap > .order + section::before, .wrap > .quiz + section::before { content:""; position:absolute; top:0; left:0; right:0; height:1px; background:rgba(26,109,255,.22); box-shadow:-100vmax 0 0 rgba(26,109,255,.22), 100vmax 0 0 rgba(26,109,255,.22); pointer-events:none; }
  .wrap > .order + section::after, .wrap > .quiz + section::after { content:""; position:absolute; top:0; left:50%; width:56px; height:5px; margin-left:-28px; border-radius:0 0 6px 6px; background:var(--accent); pointer-events:none; }
  .article h2 { position:relative; margin-top:40px; padding-top:30px; border-top:1px solid rgba(26,109,255,.22); }
  .article h2::before { content:""; position:absolute; top:-1px; left:0; width:56px; height:5px; border-radius:0 0 6px 6px; background:var(--accent); }
  .article > h2:first-child, .article > .meta + h2:first-of-type { margin-top:18px; }

  /* phone header: after scrolling, hide the bar and keep only the three-line button */
  @media (max-width: 860px) {
    header { min-height:66px; transition:background .2s, box-shadow .2s, border-color .2s; }
    .brand { transition:opacity .2s; }
    header.scrolled:not(.open) { background:transparent; border-color:transparent; box-shadow:none; -webkit-backdrop-filter:none; backdrop-filter:none; pointer-events:none; }
    header.scrolled:not(.open) .brand { opacity:0; visibility:hidden; }
    header.scrolled:not(.open) .menubtn { pointer-events:auto; background:#fff; border:1px solid var(--line); box-shadow:0 6px 20px rgba(17,24,39,.16); }
  }

  /* tab bars scroll with their section instead of staying pinned over the content */
  @media (max-width: 640px) { .plantabs { position:static; top:auto; backdrop-filter:none; -webkit-backdrop-filter:none; } }
