
  :root{
    --bg: #ffffff;
    --bg-warm: #fafafa;
    --bg-cool: #f7f7fa;
    --ink: #1a1820;
    --ink-2: #4a4757;
    --ink-3: #8a8794;
    --hair: #ececec;
    --hair-2: #f1f1f1;
    --card: #ffffff;
    --pink: #f43f5e;
    --pink-2: #ec4899;
    --violet: #a78bfa;
    --violet-2: #8b5cf6;
    --coral: #fb923c;
    --teal: #34d399;
    --blue: #60a5fa;
    --shadow: 0 1px 0 rgba(20,15,30,.02), 0 8px 24px -12px rgba(60,40,80,.08);
  }
  *{box-sizing:border-box}
  html,body{margin:0;padding:0}
  body{
    font-family:"DM Sans", system-ui, sans-serif;
    color:var(--ink);
    background:var(--bg);
    font-size:16px;
    line-height:1.55;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
    overflow-x:hidden;
  }
  /* Ambient body gradient — very subtle on white */
  body::before{
    content:"";
    position:fixed; inset:0; pointer-events:none; z-index:0;
    background:
      radial-gradient(70vw 40vh at 90% -10%, rgba(244,63,94,.05), transparent 70%),
      radial-gradient(50vw 40vh at 0% 30%, rgba(167,139,250,.04), transparent 70%);
  }
  main, header, footer { position:relative; z-index:1; }

  /* Typography */
  .serif{ font-family:"Instrument Serif", "Times New Roman", serif; font-style:italic; font-weight:400; letter-spacing:-.005em; }
  .mono{ font-family:"JetBrains Mono", ui-monospace, monospace; }
  .label{ font-family:"JetBrains Mono", ui-monospace, monospace; font-size:11px; letter-spacing:.14em; text-transform:lowercase; color:var(--ink-3); }
  .label-caps{ font-family:"JetBrains Mono", ui-monospace, monospace; font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--ink-3); }
  h1,h2,h3,h4{ margin:0; font-weight:600; letter-spacing:-.02em; line-height:1.05; }
  h1{ font-size:84px; line-height:.98; letter-spacing:-.035em; font-weight:500; }
  h2{ font-size:54px; line-height:1.02; letter-spacing:-.028em; font-weight:500;}
  h3{ font-size:22px; }
  p{ margin:0; color:var(--ink-2); }
  a{ color:inherit; text-decoration:none; }

  .wrap{ max-width:1240px; margin:0 auto; padding:0 32px; }
  .section{ padding:120px 0; position:relative; }
  .section-lead{ max-width:780px; }
  .section-lead p{ font-size:18px; color:var(--ink-2); margin-top:18px; }

  /* Header */
  .topbar{
    position:sticky; top:0; z-index:50;
    backdrop-filter:saturate(160%) blur(14px);
    -webkit-backdrop-filter:saturate(160%) blur(14px);
    background: color-mix(in srgb, var(--bg) 78%, transparent);
    border-bottom:1px solid color-mix(in srgb, var(--hair) 70%, transparent);
  }
  .topbar-inner{
    display:flex; align-items:center; gap:32px;
    padding:14px 32px; max-width:1320px; margin:0 auto;
  }
  .logo{
    display:flex; align-items:baseline; gap:8px;
    font-family:"DM Sans"; font-weight:700; letter-spacing:-.02em; font-size:17px;
  }
  .logo .dot{
    width:9px; height:9px; border-radius:50%;
    background: radial-gradient(circle at 30% 30%, #6ee7a3, #22c55e 60%, #15803d);
    box-shadow:0 0 0 3px rgba(34,197,94,.16);
    animation:pulse 2.4s ease-in-out infinite;
  }
  .logo em{ font-style:normal; background: linear-gradient(92deg, #f43f5e 10%, #fb923c 55%, #a78bfa 95%); -webkit-background-clip:text; background-clip:text; color:transparent; }
  nav.main{ display:flex; gap:28px; margin-left:auto; }
  nav.main a{ font-size:13.5px; color:var(--ink-2); font-weight:500; }
  nav.main a:hover{ color:var(--ink); }
  .btn{
    display:inline-flex; align-items:center; gap:8px; padding:11px 18px;
    border-radius:999px; font-size:13.5px; font-weight:600; letter-spacing:-.005em;
    border:1px solid transparent; cursor:pointer; transition:all .18s ease;
  }
  .btn-primary{
    color:white;
    background: linear-gradient(95deg, #f43f5e 0%, #ec4899 50%, #a78bfa 100%);
    box-shadow: 0 6px 20px -6px rgba(236,72,153,.4), inset 0 1px 0 rgba(255,255,255,.25);
  }
  .btn-primary:hover{ transform:translateY(-1px); box-shadow:0 10px 24px -6px rgba(236,72,153,.5), inset 0 1px 0 rgba(255,255,255,.3); }
  .btn-ghost{
    background: var(--card); border:1px solid var(--hair); color:var(--ink);
  }
  .btn-ghost:hover{ background:#fff; border-color:#dcd5cd; }
  .btn-dark{
    background:#111016; color:#fff; border-color:#111016;
  }
  .btn-dark:hover{ background:#000; }
  .btn .arrow{ display:inline-block; transform:translateY(0); transition:transform .2s ease; }
  .btn:hover .arrow{ transform:translateX(3px); }

  /* HERO */
  .hero{
    padding: 88px 0 56px;
    position:relative;
  }
  .hero-grid{
    display:grid;
    grid-template-columns: 1.05fr .95fr;
    gap:56px;
    align-items:end;
  }
  .hero h1 .serif{ display:inline; }
  .hero-sub{
    margin-top:28px; max-width:520px; font-size:19px; color:var(--ink-2); line-height:1.5;
  }
  .hero-kicker{
    margin-top:22px; font-size:26px; line-height:1.18; max-width:18ch;
    color:var(--ink-2); letter-spacing:-.01em;
  }
  .hero-kicker em{ color:#ec4899; font-style:italic; }
  .hero-cta{ margin-top:36px; display:flex; gap:12px; flex-wrap:wrap; }
  .hero .fine{ margin-top:18px; font-size:13px; color:var(--ink-3); }
  .hero .fine b{ color:var(--ink-2); font-weight:600; }
  .eyebrow{
    display:inline-flex; align-items:center; gap:10px;
    padding:6px 12px 6px 8px; border:1px solid var(--hair); border-radius:999px;
    background:rgba(255,255,255,.6); font-size:12px; color:var(--ink-2);
    margin-bottom:28px;
  }
  .eyebrow .pulse{
    width:8px; height:8px; border-radius:50%; background:#22c55e;
    box-shadow:0 0 0 4px rgba(34,197,94,.18);
    animation:pulse 2.4s ease-in-out infinite;
  }
  @keyframes pulse{ 0%,100%{ box-shadow:0 0 0 4px rgba(34,197,94,.16); } 50%{ box-shadow:0 0 0 7px rgba(34,197,94,.05); } }

  /* DASHBOARD MOCKUP */
  .device{
    position:relative;
    background:linear-gradient(180deg,#fff, #fdf9f5);
    border:1px solid var(--hair);
    border-radius:22px; padding:18px;
    box-shadow:
      0 1px 0 rgba(20,15,30,.02),
      0 30px 60px -30px rgba(60,40,80,.25),
      0 60px 120px -50px rgba(244,63,94,.18);
    overflow:hidden;
  }
  .device::before{
    content:""; position:absolute; inset:0; pointer-events:none;
    background:
      radial-gradient(40% 40% at 100% 0%, rgba(244,63,94,.12), transparent 70%),
      radial-gradient(40% 40% at 0% 100%, rgba(167,139,250,.12), transparent 70%);
  }
  .device-bar{
    display:flex; align-items:center; gap:8px; padding:0 4px 14px;
  }
  .device-bar .dots{ display:flex; gap:6px; }
  .device-bar .dots span{ width:9px; height:9px; border-radius:50%; background:#eadfd4; }
  .device-bar .dots span:nth-child(1){ background:#f1a7a7; }
  .device-bar .dots span:nth-child(2){ background:#f3d28a; }
  .device-bar .dots span:nth-child(3){ background:#b1d9a8; }
  .device-bar .addr{
    margin:0 auto; padding:5px 14px; font-size:11px; font-family:"JetBrains Mono"; color:var(--ink-3);
    border:1px solid var(--hair); border-radius:999px; background:rgba(255,255,255,.8);
  }
  .device-canvas{
    background:#fdfaf6;
    border:1px solid #f1ebe3;
    border-radius:14px;
    padding:18px;
    position:relative;
    overflow:hidden;
  }
  .device-canvas::before{
    content:""; position:absolute; inset:0; pointer-events:none;
    background:
      radial-gradient(30% 40% at 100% 0%, rgba(244,63,94,.10), transparent 60%),
      radial-gradient(35% 50% at 0% 100%, rgba(167,139,250,.10), transparent 60%);
  }
  /* tiny inner app */
  .app-head{ display:flex; align-items:center; gap:14px; margin-bottom:16px; position:relative; z-index:1; }
  .app-head .brand{ font-weight:700; font-size:13px; }
  .app-head .brand em{ font-style:normal; background:linear-gradient(95deg,#f43f5e,#fb923c,#a78bfa); -webkit-background-clip:text; background-clip:text; color:transparent; }
  .app-head .tabs{ display:flex; gap:4px; margin-left:8px; }
  .app-head .tabs .pill{ font-size:9.5px; padding:4px 10px; border:1px solid var(--hair); border-radius:999px; color:var(--ink-2); background:#fff; font-family:"JetBrains Mono"; }
  .app-head .tabs .pill.on{ background:linear-gradient(95deg,#f43f5e,#ec4899); color:#fff; border-color:transparent; }
  .app-head .menu{ margin-left:auto; display:flex; gap:14px; font-family:"JetBrains Mono"; font-size:9.5px; letter-spacing:.14em; color:var(--ink-3); text-transform:uppercase; }
  .app-head .menu .now{ color:var(--ink); }
  .stat-row{ display:grid; grid-template-columns:repeat(4,1fr); gap:10px; position:relative; z-index:1; }
  .stat{
    background:#fff; border:1px solid var(--hair-2); border-radius:12px; padding:11px 12px; position:relative; overflow:hidden;
  }
  .stat::after{
    content:""; position:absolute; right:-10px; top:-20px; width:80px; height:80px; border-radius:50%;
    background:radial-gradient(circle, rgba(244,63,94,.18), transparent 70%); pointer-events:none;
  }
  .stat:nth-child(2)::after{ background:radial-gradient(circle, rgba(251,146,60,.18), transparent 70%);}
  .stat:nth-child(3)::after{ background:radial-gradient(circle, rgba(236,72,153,.18), transparent 70%);}
  .stat:nth-child(4)::after{ background:radial-gradient(circle, rgba(167,139,250,.20), transparent 70%);}
  .stat .l{ font-family:"JetBrains Mono"; font-size:8px; letter-spacing:.16em; color:var(--ink-3); text-transform:uppercase;}
  .stat .v{ font-size:22px; font-weight:600; letter-spacing:-.02em; margin-top:3px; }
  .stat .v small{ font-size:10px; color:var(--ink-3); font-weight:500; margin-left:2px;}
  .stat .s{ font-family:"JetBrains Mono"; font-size:9px; color:var(--ink-3); margin-top:2px; }
  .stat.pink .v{ color:#ec4899; }
  .stat.violet .v{ color:#8b5cf6; }
  .stat.coral .v{ color:#f43f5e; }
  .stat .badge{ display:inline-block; margin-top:6px; padding:2px 7px; font-family:"JetBrains Mono"; font-size:8.5px; border-radius:6px; background:rgba(244,63,94,.10); color:#e11d48; }
  .chart-block{ margin-top:14px; padding:10px; background:#fff; border-radius:12px; border:1px solid var(--hair-2); position:relative; z-index:1; }
  .chart-title{ display:flex; align-items:baseline; gap:8px; padding:0 4px 6px; }
  .chart-title .ti{ font-family:"Instrument Serif"; font-style:italic; font-size:18px; color:#ec4899; }
  .chart-title .nm{ font-weight:600; font-size:13px;}
  .chart-title .sub{ font-family:"JetBrains Mono"; font-size:9px; color:var(--ink-3); margin-left:auto; text-transform:lowercase;}
  .chart-svg{ width:100%; height:120px; display:block; }
  /* Hero side card */
  .side-card{
    margin-top:14px; display:grid; grid-template-columns:1fr 1fr; gap:10px;
  }
  .mini{
    background:#fff; border:1px solid var(--hair-2); border-radius:12px; padding:10px 12px;
    display:flex; flex-direction:column; gap:4px;
    position:relative; overflow:hidden;
  }
  .mini .l{ font-family:"JetBrains Mono"; font-size:8px; letter-spacing:.16em; color:var(--ink-3); text-transform:uppercase; }
  .mini .v{ font-size:16px; font-weight:600;}
  .bar{ height:6px; background:#f3ede5; border-radius:99px; overflow:hidden; }
  .bar > i{ display:block; height:100%; background:linear-gradient(90deg, #a78bfa, #ec4899, #fb923c); border-radius:99px; }

  /* TRUST STRIP */
  .trust{
    margin-top:24px;
    border-top:1px solid var(--hair); border-bottom:1px solid var(--hair);
  }
  .trust-grid{
    display:grid; grid-template-columns:repeat(4,1fr); align-items:stretch;
  }
  .trust-cell{
    padding:30px 28px; border-right:1px solid var(--hair);
  }
  .trust-cell:last-child{ border-right:none; }
  .trust-cell .t{ font-weight:600; font-size:15px; margin-top:4px; letter-spacing:-.01em; }
  .trust-cell .s{ font-size:13px; color:var(--ink-3); margin-top:4px; }
  .trust-cell .ic{
    width:22px; height:22px; display:flex; align-items:center; justify-content:center;
    color:var(--ink-2);
  }

  /* MANIFEST */
  .manifest{ padding-top:140px; padding-bottom:120px; }
  .manifest-grid{
    display:grid; grid-template-columns:1.1fr .9fr; gap:80px; align-items:start;
  }
  .manifest h2{ font-size:64px; max-width:9ch; }
  .manifest .body{ color:var(--ink-2); font-size:17px; }
  .manifest .body p + p{ margin-top:18px; }
  .manifest .pull{
    margin-top:42px; padding-top:32px; border-top:1px solid var(--hair);
    font-family:"Instrument Serif"; font-style:italic; font-size:38px; line-height:1.15; color:var(--ink); letter-spacing:-.015em;
    max-width:18ch;
  }
  .manifest .pull em{ color:#ec4899; font-style:italic; }
  .year-line{
    position:relative; height:520px; width:100%;
  }
  .year-line svg{ width:100%; height:100%; }

  /* PROBLEM */
  .prob-cards{
    margin-top:64px;
    display:grid; grid-template-columns:repeat(3,1fr); gap:18px;
  }
  .card{
    background:var(--card); border:1px solid var(--hair); border-radius:18px;
    padding:30px; position:relative; overflow:hidden;
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s;
  }
  .card:hover{ transform:translateY(-3px); box-shadow:var(--shadow); border-color:#e2dbd2; }
  .card .num{
    font-family:"Instrument Serif"; font-style:italic; font-size:46px; color:#f43f5e; line-height:1; letter-spacing:-.02em;
  }
  .card h3{ margin-top:18px; font-weight:600; font-size:21px; letter-spacing:-.015em; }
  .card p{ margin-top:10px; font-size:14.5px; color:var(--ink-2); line-height:1.55; }
  .card.b1 .num{ color:#f43f5e; }
  .card.b2 .num{ color:#a78bfa; }
  .card.b3 .num{ color:#fb923c; }

  /* FEATURES */
  .feat-head{ display:flex; align-items:end; justify-content:space-between; gap:32px; }
  .feat-grid{
    margin-top:56px;
    display:grid; grid-template-columns:repeat(3,1fr); gap:14px;
  }
  .feat{
    background:var(--card); border:1px solid var(--hair); border-radius:18px;
    padding:26px; position:relative; overflow:hidden; min-height:200px;
  }
  .feat::after{
    content:""; position:absolute; right:-30px; top:-40px; width:160px; height:160px; border-radius:50%;
    background: radial-gradient(circle, rgba(244,63,94,.10), transparent 60%);
    pointer-events:none;
  }
  .feat:nth-child(2)::after{ background:radial-gradient(circle, rgba(251,146,60,.10), transparent 60%); }
  .feat:nth-child(3)::after{ background:radial-gradient(circle, rgba(167,139,250,.12), transparent 60%); }
  .feat:nth-child(4)::after{ background:radial-gradient(circle, rgba(52,211,153,.12), transparent 60%); }
  .feat:nth-child(5)::after{ background:radial-gradient(circle, rgba(236,72,153,.12), transparent 60%); }
  .feat:nth-child(6)::after{ background:radial-gradient(circle, rgba(96,165,250,.12), transparent 60%); }
  .feat .ic{
    width:36px; height:36px; border-radius:10px; border:1px solid var(--hair);
    display:flex; align-items:center; justify-content:center; background:#fff;
  }
  .feat h3{ margin-top:18px; font-size:19px; font-weight:600; letter-spacing:-.015em; }
  .feat p{ margin-top:8px; font-size:14px; color:var(--ink-2); line-height:1.55; }

  /* VISUAL PROOF — 3 mockups */
  .proof-row{
    margin-top:64px;
    display:grid; grid-template-columns:1.05fr 1fr 1fr; gap:18px;
    align-items:stretch;
  }
  .mock{
    background:#fff; border:1px solid var(--hair); border-radius:20px; padding:18px;
    box-shadow:var(--shadow); position:relative; overflow:hidden;
  }
  .mock .mhead{
    display:flex; align-items:center; gap:8px; font-family:"JetBrains Mono"; font-size:10px; color:var(--ink-3); text-transform:uppercase; letter-spacing:.16em;
  }
  .mock .mhead .pill{ padding:2px 8px; background:#f7f1eb; border-radius:99px; }
  .mock .mtitle{ margin-top:8px; font-weight:600; font-size:20px; letter-spacing:-.015em; }
  .mock .mtitle .serif{ color:#ec4899; }
  .mock .mfoot{ margin-top:12px; font-family:"JetBrains Mono"; font-size:10px; color:var(--ink-3); }

  /* YEAR HEATMAP */
  .heat-grid{
    margin-top:14px; display:grid; grid-template-columns:repeat(12, 1fr); gap:6px; padding:6px 2px;
  }
  .heat-mo{ display:flex; flex-direction:column; gap:3px; }
  .heat-mo .mn{ font-family:"JetBrains Mono"; font-size:8.5px; color:var(--ink-3); text-transform:uppercase; letter-spacing:.1em; }
  .heat-mo .cells{ display:grid; grid-template-columns:repeat(4, 1fr); gap:2.5px; }
  .heat-mo .c{ aspect-ratio:1/1; border-radius:2.5px; background:#f1ebe3; }
  .heat-mo .c.l1{ background:rgba(167,139,250,.30);}
  .heat-mo .c.l2{ background:rgba(244,63,94,.45);}
  .heat-mo .c.l3{ background:rgba(244,63,94,.75);}
  .heat-mo .c.best{ background:#fb923c; box-shadow:0 0 0 1.5px #ffe8d5; }
  .heat-legend{ margin-top:14px; display:flex; gap:14px; align-items:center; font-family:"JetBrains Mono"; font-size:10px; color:var(--ink-3); }
  .heat-legend .sw{ width:10px; height:10px; border-radius:3px; display:inline-block; vertical-align:middle; margin-right:6px;}

  /* ROUTE */
  .route-svg{ width:100%; height:200px; display:block; margin-top:8px; }
  .activity-meta{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:14px; }
  .activity-meta .m{ background:#fafafa; border:1px solid var(--hair-2); border-radius:10px; padding:9px 11px; }
  .activity-meta .m .l{ font-family:"JetBrains Mono"; font-size:8.5px; color:var(--ink-3); text-transform:uppercase; letter-spacing:.14em; }
  .activity-meta .m .v{ font-size:17px; font-weight:600; margin-top:3px; }
  .activity-meta .m .v.s{ color:#ec4899; }
  .activity-meta .m .v.v{ color:#8b5cf6; }

  /* GOAL */
  .goal-pct{ display:flex; align-items:baseline; gap:6px; margin-top:8px; }
  .goal-pct .v{ font-size:48px; font-weight:600; color:#ec4899; letter-spacing:-.03em; line-height:1; }
  .goal-pct .u{ font-family:"JetBrains Mono"; font-size:11px; color:var(--ink-3); }
  .goal-bar{ margin-top:14px; height:8px; background:#f3ede5; border-radius:99px; overflow:hidden; }
  .goal-bar > i{ display:block; height:100%; width:74%; background:linear-gradient(90deg, #a78bfa, #ec4899, #fb923c); border-radius:99px; }
  .goal-meta{ margin-top:10px; display:flex; justify-content:space-between; font-family:"JetBrains Mono"; font-size:10px; color:var(--ink-3); }
  .goal-meta b{ color:var(--ink); font-weight:600; }
  .goal-tiles{ margin-top:16px; display:grid; grid-template-columns:1fr 1fr; gap:8px; }
  .goal-tiles .t{ border:1px dashed var(--hair); border-radius:10px; padding:8px 10px; font-family:"JetBrains Mono"; font-size:10px; color:var(--ink-3); }
  .goal-tiles .t b{ color:var(--ink); font-weight:600; display:block; font-size:13px; font-family:"DM Sans"; }

  /* FREE SOLO */
  .solo-grid{
    display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start;
  }
  .solo-list{
    list-style:none; padding:0; margin:24px 0 0;
    display:grid; grid-template-columns:1fr 1fr; gap:6px 24px;
  }
  .solo-list li{
    display:flex; align-items:center; gap:10px; padding:10px 0;
    border-bottom:1px dashed var(--hair); font-size:14.5px;
  }
  .solo-list li .tick{ color:#22c55e; }
  .solo-card{
    background:#111016; color:#fff; border-radius:22px; padding:36px;
    position:relative; overflow:hidden;
  }
  .solo-card::before{
    content:""; position:absolute; right:-60px; top:-60px; width:280px; height:280px; border-radius:50%;
    background:radial-gradient(circle, rgba(244,63,94,.35), transparent 70%);
  }
  .solo-card::after{
    content:""; position:absolute; left:-80px; bottom:-80px; width:280px; height:280px; border-radius:50%;
    background:radial-gradient(circle, rgba(167,139,250,.30), transparent 70%);
  }
  .solo-card > *{ position:relative; z-index:1; }
  .solo-card .price{ font-family:"Instrument Serif"; font-style:italic; font-size:72px; letter-spacing:-.02em; }
  .solo-card .price small{ font-size:24px; color:rgba(255,255,255,.6); font-family:"DM Sans"; font-weight:500; }
  .solo-card .lbl{ font-family:"JetBrains Mono"; font-size:11px; letter-spacing:.16em; color:rgba(255,255,255,.55); text-transform:uppercase; }
  .solo-card p{ color:rgba(255,255,255,.75); font-size:14.5px; margin-top:14px; max-width:38ch; }
  .solo-card .btn-primary{ margin-top:24px; }
  .solo-card .fine{ margin-top:18px; font-family:"JetBrains Mono"; font-size:10.5px; color:rgba(255,255,255,.45); }

  .solo-card-light{
    position:relative; overflow:hidden;
    background:#fff;
    border-radius:24px;
    border:1px solid var(--hair);
    padding:0;
    box-shadow: 0 1px 0 rgba(0,0,0,.02), 0 30px 60px -30px rgba(60,40,80,.18);
  }
  .solo-card-light .glow{ position:absolute; border-radius:50%; filter:blur(2px); pointer-events:none; }
  .solo-card-light .glow-1{ width:300px; height:300px; right:-90px; top:-90px; background:radial-gradient(circle, rgba(244,63,94,.30), transparent 70%); }
  .solo-card-light .glow-2{ width:300px; height:300px; left:-90px; bottom:-90px; background:radial-gradient(circle, rgba(167,139,250,.28), transparent 70%); }
  .solo-card-light .glow-3{ width:200px; height:200px; left:50%; top:40%; transform:translateX(-50%); background:radial-gradient(circle, rgba(251,146,60,.18), transparent 70%); }
  .solo-card-light .sc-inner{ position:relative; padding:40px; z-index:1; }
  .solo-card-light .sc-price{
    font-family:"Instrument Serif"; font-style:italic; font-weight:400;
    font-size:120px; line-height:.9; letter-spacing:-.04em;
    background: linear-gradient(135deg, #f43f5e 0%, #ec4899 40%, #a78bfa 90%);
    -webkit-background-clip:text; background-clip:text; color:transparent;
    margin-top:8px;
  }
  .solo-card-light .sc-price .u{ font-size:48px; color:#ec4899; }
  .solo-card-light .sc-line{ font-family:"JetBrains Mono"; font-size:11px; color:var(--ink-3); margin-top:8px; letter-spacing:.06em; }
  .solo-card-light .sc-divider{ height:1px; background:linear-gradient(90deg, transparent, var(--hair), transparent); margin:22px 0 14px; }
  .solo-card-light .sc-row{ display:flex; justify-content:space-between; padding:8px 0; font-size:14px; }
  .solo-card-light .sc-row span{ color:var(--ink-3); font-family:"JetBrains Mono"; font-size:11px; text-transform:uppercase; letter-spacing:.14em; align-self:center; }
  .solo-card-light .sc-row b{ font-weight:600; }
  .solo-card-light .sc-fine{ margin-top:18px; font-size:14px; color:var(--ink-2); font-style:italic; line-height:1.4; }
  .solo-card-light .sc-fine em{ color:#ec4899; }

  /* CONCIERGE */
  .conc-grid{
    margin-top:56px;
    display:grid; grid-template-columns:1fr 1fr; gap:18px;
  }
  .plan{
    background:var(--card); border:1px solid var(--hair); border-radius:20px;
    padding:36px; position:relative; overflow:hidden;
  }
  .plan.featured{
    border-color:transparent;
    background:
      linear-gradient(#fff,#fff) padding-box,
      linear-gradient(135deg, #f43f5e, #fb923c, #a78bfa) border-box;
    border:1.5px solid transparent;
  }
  .plan .users{ display:inline-flex; align-items:center; gap:6px; padding:4px 10px; border-radius:99px; background:#faf5ef; font-family:"JetBrains Mono"; font-size:10.5px; color:var(--ink-2); letter-spacing:.08em; text-transform:uppercase; margin-bottom:18px; }
  .plan .users .d{ width:6px; height:6px; border-radius:50%; background:#f43f5e; }
  .plan .ribbon{
    position:absolute; top:24px; right:24px; padding:5px 10px; border-radius:99px;
    background:linear-gradient(95deg,#f43f5e,#a78bfa); color:#fff;
    font-family:"JetBrains Mono"; font-size:10px; letter-spacing:.14em; text-transform:uppercase;
  }
  .plan h3{ font-size:24px; font-weight:600; letter-spacing:-.015em; }
  .plan .from{ margin-top:14px; font-family:"JetBrains Mono"; font-size:11px; color:var(--ink-3); text-transform:uppercase; letter-spacing:.16em;}
  .plan .price{ font-family:"Instrument Serif"; font-style:italic; font-size:54px; line-height:1; letter-spacing:-.02em; margin-top:4px; }
  .plan .price.gradient{ background: linear-gradient(95deg,#f43f5e,#fb923c,#a78bfa); -webkit-background-clip:text; background-clip:text; color:transparent; }
  .plan p.summary{ margin-top:14px; font-size:14.5px; color:var(--ink-2); }
  .plan ul{ list-style:none; padding:0; margin:22px 0 0; }
  .plan ul li{ display:flex; gap:10px; padding:9px 0; border-top:1px dashed var(--hair); font-size:14px; }
  .plan ul li:first-child{ border-top:none; }
  .plan ul li .dot{ width:6px; height:6px; border-radius:50%; background:#f43f5e; margin-top:7px; flex-shrink:0; }
  .plan .cta-row{ margin-top:24px; }

  /* PAKT */
  .pakt-grid{
    margin-top:56px;
    display:grid; grid-template-columns:1.05fr .95fr; gap:48px; align-items:center;
  }
  .pakt-card{
    background: linear-gradient(180deg, #fff, #faf5ef);
    border:1px solid var(--hair); border-radius:18px;
    padding:32px; position:relative; overflow:hidden;
    box-shadow: 0 1px 0 rgba(0,0,0,.02), 0 20px 50px -30px rgba(60,40,80,.25);
  }
  .pakt-card::before{
    content:""; position:absolute; right:-40px; top:-40px; width:240px; height:240px; border-radius:50%;
    background:radial-gradient(circle, rgba(244,63,94,.10), transparent 70%);
  }
  .pakt-head{ display:flex; align-items:center; gap:10px; font-family:"JetBrains Mono"; font-size:10px; color:var(--ink-3); letter-spacing:.16em; text-transform:uppercase; position:relative;}
  .pakt-head::before{ content:""; width:24px; height:1.5px; background:#f43f5e; display:inline-block; }
  .pakt-title{ position:relative; margin-top:14px; font-family:"Instrument Serif"; font-style:italic; font-size:34px; letter-spacing:-.015em; line-height:1.05; }
  .pakt-rows{ position:relative; margin-top:22px; }
  .pakt-rows .r{ display:flex; justify-content:space-between; padding:10px 0; border-top:1px dashed var(--hair); font-size:14px; }
  .pakt-rows .r:first-child{ border-top:1px solid var(--hair); padding-top:14px; }
  .pakt-rows .r .l{ color:var(--ink-3); font-family:"JetBrains Mono"; font-size:11px; text-transform:uppercase; letter-spacing:.14em; }
  .pakt-rows .r .v{ font-weight:600; }
  .pakt-rows .r .v.copper{ color:#fb923c; font-family:"Instrument Serif"; font-style:italic; font-size:22px; font-weight:400; line-height:1; }
  .pakt-progress{ position:relative; margin-top:22px; }
  .pakt-progress .bar{ height:10px; background:#f3ede5; border-radius:99px; overflow:hidden;}
  .pakt-progress .bar > i{ display:block; height:100%; width:74%; background:linear-gradient(90deg, #a78bfa, #ec4899, #fb923c); border-radius:99px; }
  .pakt-progress .meta{ margin-top:8px; display:flex; justify-content:space-between; font-family:"JetBrains Mono"; font-size:10.5px; color:var(--ink-3); }
  .pakt-progress .meta b{ color:var(--ink); font-weight:600; }
  .pakt-stamp{
    position:absolute; right:32px; bottom:32px;
    width:90px; height:90px; border-radius:50%;
    border:1.5px dashed #f43f5e; color:#f43f5e;
    display:flex; align-items:center; justify-content:center; text-align:center;
    font-family:"Instrument Serif"; font-style:italic; font-size:13px; line-height:1.05;
    transform:rotate(-9deg);
  }
  .pakt-text h2{ max-width:13ch; }
  .pakt-note{ margin-top:24px; padding:14px 16px; border-left:2px solid #f43f5e; background:rgba(244,63,94,.05); font-size:13px; color:var(--ink-2); }

  /* MULTIPERSON */
  .multi-grid{
    display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center;
  }
  .multi-stage{
    position:relative;
    background:linear-gradient(180deg,#fff,#faf5ef);
    border:1px solid var(--hair); border-radius:22px;
    padding:36px; min-height:420px; overflow:hidden;
  }
  .multi-stage::before{
    content:""; position:absolute; inset:0;
    background:
      radial-gradient(40% 60% at 100% 100%, rgba(244,63,94,.10), transparent 70%),
      radial-gradient(40% 60% at 0% 0%, rgba(167,139,250,.10), transparent 70%);
    pointer-events:none;
  }
  .avatar-grid{ position:relative; display:grid; grid-template-columns:1fr 1fr; gap:14px; }
  .person{
    background:#fff; border:1px solid var(--hair); border-radius:14px; padding:16px;
    display:flex; flex-direction:column; gap:8px;
  }
  .person .head{ display:flex; align-items:center; gap:10px; }
  .person .av{
    width:34px; height:34px; border-radius:50%;
    background:linear-gradient(135deg, #ffd4dc, #f43f5e); display:flex; align-items:center; justify-content:center;
    color:#fff; font-weight:700; font-size:13px;
  }
  .person.b .av{ background:linear-gradient(135deg, #d6ccfb, #8b5cf6); }
  .person.c .av{ background:linear-gradient(135deg, #ffd4b8, #fb923c); }
  .person.d .av{ background:linear-gradient(135deg, #b8efd5, #34d399); }
  .person .nm{ font-weight:600; font-size:14px; }
  .person .nm small{ display:block; color:var(--ink-3); font-weight:400; font-size:11px; font-family:"JetBrains Mono"; }
  .person .km{ font-family:"Instrument Serif"; font-style:italic; font-size:28px; line-height:1; letter-spacing:-.015em; color:var(--ink); }
  .person .km small{ font-size:11px; color:var(--ink-3); font-family:"DM Sans"; }
  .person .visibility{ font-family:"JetBrains Mono"; font-size:10px; color:var(--ink-3); text-transform:uppercase; letter-spacing:.12em; }
  .person.private .visibility{ color:#a78bfa; }
  .pull-quote{
    font-family:"Instrument Serif"; font-style:italic; font-size:42px; letter-spacing:-.02em; line-height:1.1;
    color:var(--ink);
  }
  .pull-quote em{ color:#ec4899; font-style:italic; }

  /* IMPORT */
  .import-diagram{
    margin-top:48px;
    background:#fff; border:1px solid var(--hair); border-radius:20px; padding:40px 32px;
    position:relative; overflow:hidden;
  }
  .import-row{
    display:grid; grid-template-columns: 1fr 28px 1fr 28px 1fr; align-items:center; gap:12px;
  }
  .import-cell{ text-align:center; padding:18px; border:1px dashed var(--hair); border-radius:14px; }
  .import-cell .l{ font-family:"JetBrains Mono"; font-size:10.5px; color:var(--ink-3); text-transform:uppercase; letter-spacing:.14em;}
  .import-cell .v{ margin-top:6px; font-weight:600; font-size:16px; }
  .import-cell .fmts{ margin-top:8px; display:flex; gap:5px; justify-content:center; }
  .import-cell .fmts span{ padding:2px 8px; border-radius:6px; background:#faf5ef; font-family:"JetBrains Mono"; font-size:10px; color:var(--ink-2); border:1px solid var(--hair); }
  .arrow-x{ color:#f43f5e; }

  /* INSTALL */
  .steps-grid{
    margin-top:56px;
    display:grid; grid-template-columns:repeat(4,1fr); gap:14px;
  }
  .step{
    background:#fff; border:1px solid var(--hair); border-radius:16px; padding:24px; position:relative;
  }
  .step .num{
    font-family:"Instrument Serif"; font-style:italic; font-size:14px;
    width:30px; height:30px; border-radius:50%; border:1px solid var(--hair); display:flex; align-items:center; justify-content:center; color:#ec4899;
  }
  .step h3{ margin-top:18px; font-size:18px; font-weight:600; letter-spacing:-.01em; }
  .step p{ margin-top:8px; font-size:13.5px; line-height:1.55; }
  .install-note{
    margin-top:24px; padding:18px 20px; border:1px solid var(--hair); background:#fff; border-radius:14px; font-size:14px; color:var(--ink-2);
    border-left:3px solid #fb923c;
  }

  /* SUPPORT */
  .support-card{
    background: linear-gradient(135deg, #fff, #fbf3ec);
    border:1px solid var(--hair); border-radius:22px; padding:60px 56px;
    display:grid; grid-template-columns: 1.4fr 1fr; gap:48px; align-items:center;
    position:relative; overflow:hidden;
  }
  .support-card::before{
    content:""; position:absolute; right:-100px; bottom:-100px; width:360px; height:360px; border-radius:50%;
    background:radial-gradient(circle, rgba(251,146,60,.18), transparent 70%);
  }
  .support-card::after{
    content:""; position:absolute; left:-80px; top:-80px; width:260px; height:260px; border-radius:50%;
    background:radial-gradient(circle, rgba(244,63,94,.14), transparent 70%);
  }
  .support-card h2{ font-size:46px; max-width:14ch; position:relative; }
  .support-card p{ font-size:16px; color:var(--ink-2); margin-top:18px; position:relative; }
  .support-card .actions{ position:relative; display:flex; gap:10px; flex-wrap:wrap; margin-top:22px; }
  .support-card .micro{ margin-top:18px; font-family:"JetBrains Mono"; font-size:11px; color:var(--ink-3); position:relative; }

  /* ROADMAP */
  .road-track{
    margin-top:48px; position:relative;
    display:grid; grid-template-columns:repeat(5,1fr); gap:14px;
  }
  .road{
    background:#fff; border:1px solid var(--hair); border-radius:14px; padding:20px;
    position:relative;
  }
  .road .v{ font-family:"JetBrains Mono"; font-size:11px; color:var(--ink-3); letter-spacing:.12em; text-transform:uppercase; }
  .road h3{ margin-top:10px; font-size:16px; font-weight:600; letter-spacing:-.01em; }
  .road p{ margin-top:8px; font-size:13px; color:var(--ink-2); line-height:1.55; }
  .road.now{ border-color:transparent;
    background:
      linear-gradient(#fff,#fff) padding-box,
      linear-gradient(135deg, #f43f5e, #a78bfa) border-box;
    border:1.5px solid transparent;
  }
  .road.now .v{ color:#f43f5e; }
  .road.next .v{ color:#ec4899; }
  .road.soon .v{ color:#a78bfa; }

  /* FAQ */
  .faq-grid{ display:grid; grid-template-columns:1fr 1fr; gap:8px 48px; margin-top:48px; }
  details{
    border-top:1px solid var(--hair); padding:20px 0;
  }
  details > summary{
    list-style:none; cursor:pointer; display:flex; align-items:center; gap:16px;
    font-weight:600; font-size:17px; letter-spacing:-.01em;
  }
  details > summary::-webkit-details-marker{ display:none; }
  details > summary .plus{
    margin-left:auto; width:24px; height:24px; border-radius:50%; border:1px solid var(--hair);
    display:flex; align-items:center; justify-content:center; color:var(--ink-3); transition:all .2s ease;
    flex-shrink:0;
  }
  details[open] > summary .plus{ background:#111016; color:#fff; border-color:#111016; transform:rotate(45deg); }
  details > .ans{ font-size:14.5px; color:var(--ink-2); line-height:1.6; padding-top:14px; max-width:60ch; }

  /* FOOTER */
  footer{
    margin-top:80px;
    background:linear-gradient(180deg, #fdfaf6, #fbf6ef);
    color:var(--ink); padding:80px 0 40px;
    position:relative; overflow:hidden;
    border-top:1px solid var(--hair);
  }
  footer::before{
    content:""; position:absolute; right:-150px; top:-150px; width:500px; height:500px; border-radius:50%;
    background:radial-gradient(circle, rgba(244,63,94,.10), transparent 70%);
  }
  footer::after{
    content:""; position:absolute; left:-150px; bottom:-150px; width:500px; height:500px; border-radius:50%;
    background:radial-gradient(circle, rgba(167,139,250,.10), transparent 70%);
  }
  .foot-grid{ position:relative; display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:48px; }
  .foot-grid h4{ font-family:"JetBrains Mono"; font-size:11px; font-weight:500; letter-spacing:.16em; color:var(--ink-3); text-transform:uppercase; margin-bottom:14px;}
  .foot-grid a, .foot-grid li{ display:block; padding:6px 0; font-size:14px; color:var(--ink-2); }
  .foot-grid a:hover{ color:var(--ink); }
  .foot-grid ul{ list-style:none; padding:0; margin:0; }
  .foot-brand p{ color:var(--ink-2); font-size:14px; margin-top:14px; max-width:34ch; }
  .foot-bot{
    position:relative; margin-top:64px; padding-top:24px; border-top:1px solid var(--hair);
    display:flex; justify-content:space-between; align-items:center;
    font-family:"JetBrains Mono"; font-size:11px; color:var(--ink-3);
  }
  .foot-bot em{ font-family:"Instrument Serif"; font-style:italic; font-size:16px; color:var(--ink); }

  /* Anchor-divider eyebrow */
  .eyebrow-row{
    display:flex; align-items:center; gap:12px; margin-bottom:18px;
  }
  .eyebrow-row .num{
    font-family:"JetBrains Mono"; font-size:11px; letter-spacing:.16em; color:var(--ink-3); text-transform:uppercase;
  }
  .eyebrow-row .ln{ flex:1; height:1px; background:var(--hair); }

  /* Selection */
  ::selection{ background:#f43f5e; color:#fff; }

  /* Small chip */
  .chip{ display:inline-flex; align-items:center; gap:6px; padding:3px 10px; border:1px solid var(--hair); border-radius:99px; background:#fff; font-size:11.5px; color:var(--ink-2); font-family:"JetBrains Mono"; }
  .chip .d{ width:6px; height:6px; border-radius:50%; background:#f43f5e; }



/* ===== SUBPAGE ADDITIONS ===== */
.subhero{ padding: 80px 0 40px; }
.subhero h1{ font-size:72px; line-height:.98; letter-spacing:-.03em; max-width:18ch; }
.subhero .lead{ margin-top:24px; max-width:640px; font-size:19px; color:var(--ink-2); }
.crumbs{ display:flex; gap:8px; align-items:center; font-family:"JetBrains Mono"; font-size:11px; color:var(--ink-3); letter-spacing:.14em; text-transform:uppercase; margin-bottom:24px; }
.crumbs a{ color:var(--ink-3); }
.crumbs a:hover{ color:var(--ink); }
.crumbs .sep{ opacity:.5; }

/* Comparison table */
.compare-wrap{ margin-top:48px; border:1px solid var(--hair); border-radius:20px; overflow:hidden; background:#fff; box-shadow:var(--shadow); }
table.compare{ width:100%; border-collapse:collapse; font-size:14.5px; }
table.compare thead th{
  font-family:"JetBrains Mono"; font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-3);
  text-align:left; padding:22px 24px; background:#fafaf7; border-bottom:1px solid var(--hair); font-weight:500;
}
table.compare thead th.col-free{ color:var(--ink-2); }
table.compare thead th.col-pro{ color:#ec4899; background:linear-gradient(180deg, rgba(244,63,94,.06), transparent); }
table.compare tbody td{ padding:18px 24px; border-bottom:1px dashed var(--hair); vertical-align:top; }
table.compare tbody tr:last-child td{ border-bottom:none; }
table.compare tbody th{ text-align:left; padding:18px 24px; font-weight:600; font-size:14.5px; color:var(--ink); border-bottom:1px dashed var(--hair); vertical-align:top; }
table.compare .cat{ background:#fcfaf6; }
table.compare .cat th{ font-family:"JetBrains Mono"; font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--ink-3); font-weight:500; padding-top:24px; padding-bottom:10px; }
table.compare .tick{ color:#22c55e; font-weight:600; }
table.compare .dash{ color:var(--ink-3); }
table.compare td small{ display:block; color:var(--ink-3); font-family:"JetBrains Mono"; font-size:11px; margin-top:2px; }
table.compare .price-row td{ background:#fafaf7; padding:28px 24px; }
table.compare .price-row .price{ font-family:"Instrument Serif"; font-style:italic; font-size:48px; line-height:1; letter-spacing:-.02em; }
table.compare .price-row .price.pro{ background: linear-gradient(95deg,#f43f5e,#fb923c,#a78bfa); -webkit-background-clip:text; background-clip:text; color:transparent; }
table.compare .price-row small{ font-family:"JetBrains Mono"; font-size:11px; color:var(--ink-3); margin-top:6px; }

/* Tutorial cards */
.tut-grid{ margin-top:48px; display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.tut{
  background:#fff; border:1px solid var(--hair); border-radius:18px; padding:32px;
  position:relative; overflow:hidden; transition:all .25s ease;
}
.tut:hover{ transform:translateY(-3px); box-shadow:var(--shadow); }
.tut .tag{ display:inline-block; padding:4px 10px; background:#fcefe5; color:#fb923c; border-radius:99px; font-family:"JetBrains Mono"; font-size:10px; letter-spacing:.14em; text-transform:uppercase; margin-bottom:14px; }
.tut.t-strava .tag{ background:rgba(244,63,94,.08); color:#f43f5e; }
.tut.t-import .tag{ background:rgba(167,139,250,.10); color:#8b5cf6; }
.tut.t-backup .tag{ background:rgba(52,211,153,.10); color:#16a34a; }
.tut h3{ font-size:24px; font-weight:600; letter-spacing:-.015em; }
.tut p{ margin-top:10px; font-size:14.5px; color:var(--ink-2); }
.tut ol{ margin:18px 0 0; padding:0 0 0 0; list-style:none; counter-reset:s; }
.tut ol li{ counter-increment:s; padding:10px 0 10px 36px; position:relative; border-top:1px dashed var(--hair); font-size:14px; color:var(--ink-2); }
.tut ol li:first-child{ border-top:none; }
.tut ol li::before{
  content:counter(s); position:absolute; left:0; top:10px;
  font-family:"Instrument Serif"; font-style:italic; color:#ec4899; font-size:18px; line-height:1;
  width:22px; height:22px; display:flex; align-items:center; justify-content:center;
  border:1px solid var(--hair); border-radius:50%;
}
.tut .meta{ margin-top:18px; font-family:"JetBrains Mono"; font-size:10.5px; color:var(--ink-3); display:flex; gap:12px; flex-wrap:wrap; }
.tut .meta .chip{ padding:3px 10px; border:1px solid var(--hair); border-radius:99px; background:#fafafa; }
.tut-toc{
  background:#fafaf7; border:1px solid var(--hair); border-radius:18px; padding:24px; margin-top:32px;
  display:grid; grid-template-columns:repeat(4,1fr); gap:6px 18px;
}
.tut-toc a{ display:flex; align-items:baseline; gap:8px; padding:8px 0; font-size:13.5px; color:var(--ink-2); border-bottom:1px dashed var(--hair); }
.tut-toc a:hover{ color:#ec4899; }
.tut-toc a span{ font-family:"JetBrains Mono"; font-size:10px; color:var(--ink-3); }

/* FAQ subpage layout */
.faq-cat{ margin-top:48px; }
.faq-cat .title{ font-family:"JetBrains Mono"; font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--ink-3); margin-bottom:8px; }
.faq-cat h2{ font-size:36px; max-width:none; }
.faq-list{ margin-top:14px; }
.faq-list details{ border-top:1px solid var(--hair); padding:20px 0; }
.faq-list details:last-child{ border-bottom:1px solid var(--hair); }

/* Feature deep-dive list */
.feat-dive{ margin-top:64px; display:grid; gap:20px; }
.feat-dive .row{
  display:grid; grid-template-columns: 220px 1fr; gap:48px;
  padding:32px 0; border-top:1px solid var(--hair);
}
.feat-dive .row:first-child{ border-top:none; padding-top:0; }
.feat-dive .row .num{ font-family:"Instrument Serif"; font-style:italic; color:#ec4899; font-size:48px; line-height:1; }
.feat-dive .row .lbl{ margin-top:8px; font-family:"JetBrains Mono"; font-size:11px; color:var(--ink-3); letter-spacing:.16em; text-transform:uppercase; }
.feat-dive .row h3{ font-size:30px; font-weight:600; letter-spacing:-.018em; max-width:18ch; }
.feat-dive .row p{ margin-top:14px; font-size:16px; color:var(--ink-2); max-width:60ch; }
.feat-dive .row .quote{ margin-top:18px; padding:14px 18px; border-left:2px solid #ec4899; background:rgba(236,72,153,.05); font-family:"Instrument Serif"; font-style:italic; font-size:18px; color:var(--ink); }

/* Tagline strip */
.tagline-strip{ margin-top:64px; padding:48px 36px; background:linear-gradient(135deg, #fff, #fbf3ec); border:1px solid var(--hair); border-radius:22px; }
.tagline-strip h3{ font-family:"Instrument Serif"; font-style:italic; font-size:42px; letter-spacing:-.02em; line-height:1.1; max-width:22ch; font-weight:400; }
.tagline-strip h3 em{ color:#ec4899; font-style:italic; }
.tagline-strip p{ margin-top:16px; font-size:16px; color:var(--ink-2); max-width:60ch; }
