/* ===========================================================
   ClipSnip — production sales site
   Design tokens per brief
   =========================================================== */
:root{
  --bg:#0B0E16;
  --surface:#121624;
  --surface-2:#171C2E;
  --surface-3:#1E2438;
  --border:rgba(139,92,246,.16);
  --border-soft:rgba(255,255,255,.06);
  --text:#E8EAF2;
  --muted:#9AA1B5;
  --faint:#6B7187;
  --indigo:#6366F1;
  --violet:#8B5CF6;
  --green:#34D399;
  --pink:#FF3D9A;
  --magenta:#D9269C;
  --amber:#FBBF24;

  --grad-accent:linear-gradient(135deg,#6366F1 0%,#8B5CF6 100%);
  --grad-pink:linear-gradient(135deg,#FF4DA3 0%,#C81E92 100%);
  --grad-text:linear-gradient(120deg,#E8EAF2 0%,#B7B0E8 60%,#FF8FC4 110%);

  --maxw:1200px;
  --radius:16px;
  --radius-sm:10px;

  --shadow-card:0 1px 0 rgba(255,255,255,.03) inset, 0 24px 60px -24px rgba(0,0,0,.6);
  --shadow-float:0 40px 120px -40px rgba(99,102,241,.45), 0 24px 60px -28px rgba(0,0,0,.8);

  --ease:cubic-bezier(.2,.7,.2,1);

  --font-sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --font-mono:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,monospace;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--font-sans);
  background:var(--bg);
  color:var(--text);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
body::selection,*::selection{background:rgba(255,77,163,.28)}

/* ambient page glows */
body::before{
  content:"";
  position:fixed;
  inset:0;
  background:
    radial-gradient(900px 500px at 78% -8%, rgba(139,92,246,.16), transparent 60%),
    radial-gradient(700px 420px at 8% 4%, rgba(99,102,241,.12), transparent 60%),
    radial-gradient(600px 600px at 60% 120%, rgba(255,61,154,.07), transparent 60%);
  pointer-events:none;
  z-index:0;
}

a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3,h4{margin:0;line-height:1.1;letter-spacing:-.02em;font-weight:700}
p{margin:0}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;position:relative;z-index:1}
.skip{position:absolute;left:-999px;top:0;background:var(--indigo);color:#fff;padding:10px 16px;border-radius:8px;z-index:100}
.skip:focus{left:16px;top:16px}

/* mono eyebrow / labels */
.eyebrow{
  font-family:var(--font-mono);
  font-size:12.5px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--violet);
  display:inline-flex;
  align-items:center;
  gap:9px;
}
.eyebrow::before{content:"";width:22px;height:1px;background:linear-gradient(90deg,transparent,var(--violet))}

/* ============ buttons ============ */
.btn{
  display:inline-flex;align-items:center;gap:10px;
  font-weight:600;font-size:15px;
  padding:14px 22px;border-radius:12px;
  border:1px solid transparent;cursor:pointer;
  transition:transform .25s var(--ease), box-shadow .25s var(--ease), background .25s, border-color .25s;
  white-space:nowrap;
}
.btn svg{width:18px;height:18px}
.btn-primary{
  background:var(--grad-accent);
  color:#fff;
  box-shadow:0 10px 30px -8px rgba(99,102,241,.6), 0 1px 0 rgba(255,255,255,.18) inset;
}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 44px -10px rgba(124,99,241,.75), 0 1px 0 rgba(255,255,255,.22) inset}
.btn-ghost{
  background:rgba(255,255,255,.03);
  border-color:var(--border);
  color:var(--text);
}
.btn-ghost:hover{border-color:rgba(139,92,246,.5);background:rgba(139,92,246,.08);transform:translateY(-2px)}
.btn-lg{padding:17px 30px;font-size:16.5px;border-radius:14px}

.price-tag{
  font-family:var(--font-mono);font-size:13px;
  padding:3px 9px;border-radius:999px;
  background:rgba(255,255,255,.16);
  margin-left:2px;
}

/* ============ header ============ */
.site-header{
  position:sticky;top:0;z-index:50;
  backdrop-filter:saturate(140%) blur(14px);
  background:rgba(11,14,22,.72);
  border-bottom:1px solid transparent;
  transition:border-color .3s, background .3s;
}
.site-header.scrolled{border-bottom-color:var(--border);background:rgba(11,14,22,.86)}
.nav{display:flex;align-items:center;justify-content:space-between;height:72px}
.brand{display:flex;align-items:center;gap:11px;font-weight:700;font-size:18px;letter-spacing:-.01em}
.brand .mark{width:34px;height:34px;flex:0 0 auto}
.brand b{font-weight:800}
.nav-links{display:flex;align-items:center;gap:34px}
.nav-links a{color:var(--muted);font-size:14.5px;font-weight:500;transition:color .2s;white-space:nowrap}
.nav-links a:hover{color:var(--text)}
.nav-cta{display:flex;align-items:center;gap:14px}
@media(max-width:1000px){.nav-links{display:none}.nav-cta .btn-ghost{display:none}}

/* scissors gradient mark */
.scissor-grad{stroke:url(#snipGrad)}

/* ============ hero ============ */
.hero{padding:88px 0 40px;position:relative}
.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr;gap:44px}}

.hero h1{
  font-size:clamp(40px,5.1vw,60px);
  font-weight:800;
  letter-spacing:-.03em;
  margin:22px 0 0;
}
.hero h1 .grad{
  background:var(--grad-text);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero .sub{
  color:var(--muted);
  font-size:clamp(16.5px,1.6vw,19px);
  margin-top:22px;max-width:30em;
}
.hero-cta{display:flex;align-items:center;gap:14px;margin-top:32px;flex-wrap:wrap}
.trust{display:flex;align-items:center;gap:22px;margin-top:30px;flex-wrap:wrap}
.trust .t{display:flex;align-items:center;gap:8px;color:var(--faint);font-size:13.5px;font-weight:500}
.trust .t svg{width:16px;height:16px;color:var(--green)}

/* ============ app mockup (overlay window) ============ */
.mock{
  position:relative;
  border-radius:18px;
  background:linear-gradient(180deg,#141A2B,#10141F);
  border:1px solid var(--border);
  box-shadow:var(--shadow-float);
  overflow:hidden;
}
.mock-glow{position:absolute;inset:-1px;border-radius:18px;padding:1px;background:linear-gradient(140deg,rgba(139,92,246,.5),transparent 40%,rgba(255,61,154,.3));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.hero .mock{transform:perspective(1600px) rotateY(-7deg) rotateX(2.5deg);transition:transform .6s var(--ease)}
.hero .mock:hover{transform:perspective(1600px) rotateY(-3deg) rotateX(1deg)}

.mock-titlebar{
  display:flex;align-items:center;gap:10px;
  padding:11px 14px;
  background:rgba(255,255,255,.02);
  border-bottom:1px solid var(--border-soft);
}
.mock-titlebar .dots{display:flex;gap:7px}
.mock-titlebar .dots i{width:11px;height:11px;border-radius:50%;display:block}
.dot-r{background:#FF5F57}.dot-y{background:#FEBC2E}.dot-g{background:#28C840}
.mock-titlebar .ttl{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12.5px;font-family:var(--font-mono);margin-left:4px}
.mock-titlebar .ttl .mark{width:15px;height:15px}
.mock-titlebar .winctl{margin-left:auto;color:var(--faint);font-size:12px;letter-spacing:2px}

/* search field */
.mock-search{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid var(--border-soft)}
.mock-search .si{width:18px;height:18px;color:var(--violet);flex:0 0 auto}
.mock-search .field{flex:1;font-family:var(--font-sans);font-size:15px;color:var(--text)}
.mock-search .field .caret{display:inline-block;width:1.5px;height:17px;background:var(--violet);vertical-align:-3px;margin-left:1px;animation:blink 1.1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.mock-search .kbd{display:flex;gap:5px}
.kbd b{font-family:var(--font-mono);font-size:11px;color:var(--muted);background:var(--surface-3);border:1px solid var(--border-soft);border-bottom-width:2px;border-radius:6px;padding:3px 7px;font-weight:500}

/* result rows */
.mock-list{padding:8px;max-height:360px;overflow:hidden}
.row{display:flex;gap:13px;padding:12px;border-radius:11px;align-items:flex-start;position:relative;transition:background .2s}
.row.active{background:linear-gradient(90deg,rgba(99,102,241,.16),rgba(139,92,246,.06));box-shadow:inset 0 0 0 1px rgba(139,92,246,.28)}
.row .ic{width:34px;height:34px;border-radius:9px;flex:0 0 auto;display:grid;place-items:center;background:var(--surface-3);color:var(--muted)}
.row .ic svg{width:17px;height:17px}
.ic-code{color:#7DD3FC;background:rgba(56,189,248,.1)}
.ic-link{color:#A5B4FC;background:rgba(129,140,248,.12)}
.ic-img{color:#FCA5A5;background:rgba(252,165,165,.1)}
.ic-lock{color:var(--pink);background:rgba(255,61,154,.12)}
.ic-text{color:var(--green);background:rgba(52,211,153,.1)}
.row .body{min-width:0;flex:1}
.row .body .txt{font-size:13.5px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.row .body .txt.mono{font-family:var(--font-mono);font-size:12.5px}
.row .body .meta{display:flex;align-items:center;gap:8px;margin-top:5px;color:var(--faint);font-size:11.5px}
.row .body .meta .app{display:inline-flex;align-items:center;gap:5px;color:var(--muted)}
.row .body .meta .app .swatch{width:7px;height:7px;border-radius:2px}
.row .body .meta .dotsep{width:3px;height:3px;border-radius:50%;background:var(--faint)}
.mask{font-family:var(--font-mono);background:rgba(255,61,154,.12);color:var(--pink);padding:1px 6px;border-radius:5px;font-size:12px}
.row .ph{margin-left:auto;align-self:center;color:var(--faint)}
.row .ph svg{width:15px;height:15px}
.thumb{width:42px;height:30px;border-radius:6px;background:linear-gradient(135deg,#3b2a5e,#5b3a78);flex:0 0 auto;border:1px solid var(--border-soft);overflow:hidden}
.thumb .bar{height:100%;background:repeating-linear-gradient(45deg,rgba(255,255,255,.06) 0 6px,transparent 6px 12px)}

.mock-foot{display:flex;align-items:center;gap:16px;padding:10px 16px;border-top:1px solid var(--border-soft);color:var(--faint);font-size:11.5px;font-family:var(--font-mono)}
.mock-foot .sp{margin-left:auto;display:flex;gap:14px}
.mock-foot .k{display:inline-flex;align-items:center;gap:6px}
.mock-foot .k b{font-size:11px;color:var(--muted);background:var(--surface-3);border:1px solid var(--border-soft);border-radius:5px;padding:1px 6px}

/* ============ marquee logos / stat strip ============ */
.stripe{border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);background:rgba(255,255,255,.012);margin-top:48px}
.stripe .wrap{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-top:26px;padding-bottom:26px}
.stat{display:flex;flex-direction:column;gap:3px}
.stat .n{font-size:26px;font-weight:800;letter-spacing:-.02em;background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent}
.stat .l{color:var(--faint);font-size:13px;font-family:var(--font-mono)}

/* ============ section scaffolding ============ */
section{position:relative;z-index:1}
.section{padding:104px 0}
.section-head{max-width:720px;margin:0 auto;text-align:center}
.section-head h2{font-size:clamp(30px,3.6vw,42px);font-weight:800;margin-top:16px;letter-spacing:-.025em}
.section-head .lead{color:var(--muted);font-size:18px;margin-top:18px}
.center{text-align:center}

/* ============ feature rows ============ */
.feature{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding:36px 0}
.feature.flip .f-media{order:2}
@media(max-width:920px){.feature{grid-template-columns:1fr;gap:36px}.feature.flip .f-media{order:0}}
.f-icon{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;background:rgba(139,92,246,.12);border:1px solid var(--border);color:var(--violet);margin-bottom:22px}
.f-icon svg{width:24px;height:24px}
.feature h3{font-size:clamp(24px,2.7vw,30px);font-weight:700;letter-spacing:-.02em}
.feature p{color:var(--muted);font-size:17px;margin-top:16px;max-width:34em}
.f-points{list-style:none;padding:0;margin:22px 0 0;display:flex;flex-direction:column;gap:11px}
.f-points li{display:flex;align-items:flex-start;gap:10px;color:var(--text);font-size:15px}
.f-points li svg{width:18px;height:18px;color:var(--green);flex:0 0 auto;margin-top:2px}

/* ---- privacy diagram (feature 2 mock) ---- */
.priv-diagram{display:flex;flex-direction:column;gap:0;align-items:center;text-align:center;padding:6px 0}
.priv-node{display:flex;flex-direction:column;align-items:center;gap:7px;padding:18px 22px;border-radius:14px;background:var(--surface-2);border:1px solid var(--border-soft);min-width:200px}
.priv-node svg{width:30px;height:30px}
.priv-node span{font-size:14px;font-weight:600;color:var(--text)}
.priv-node em{font-style:normal;font-family:var(--font-mono);font-size:11px;color:var(--faint)}
.priv-node.device{color:var(--indigo)}
.priv-node.db{color:var(--green);border-color:rgba(52,211,153,.3);box-shadow:0 0 0 1px rgba(52,211,153,.12),0 16px 40px -24px rgba(52,211,153,.5)}
.priv-node.cloud{color:var(--faint);opacity:.6;border-style:dashed}
.priv-link{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 0}
.priv-link .lbl{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;padding:3px 10px;border-radius:999px}
.priv-link.ok .lbl{color:var(--green);background:rgba(52,211,153,.1)}
.priv-link.ok .line{width:2px;height:18px;background:linear-gradient(var(--green),rgba(52,211,153,.2))}
.priv-link.bad .lbl{color:var(--pink);background:rgba(255,61,154,.1)}
.priv-link.bad .line{width:2px;height:18px;background:repeating-linear-gradient(var(--pink) 0 4px,transparent 4px 8px);opacity:.5}
.priv-cloud-row{display:flex;flex-direction:column;align-items:center}
@media(max-width:520px){.priv-node{min-width:0;width:100%}}

/* ---- hotkey stage (feature 4 mock) ---- */
.hotkey-stage{text-align:center;display:flex;flex-direction:column;align-items:center;gap:20px}
.hotkey-combo{display:flex;align-items:center;gap:12px}
.hotkey-combo .kbig{font-family:var(--font-mono);font-weight:600;font-size:22px;color:var(--text);background:linear-gradient(180deg,var(--surface-3),var(--surface-2));border:1px solid var(--border);border-bottom-width:4px;border-radius:12px;padding:14px 20px;box-shadow:0 8px 20px -8px rgba(0,0,0,.6)}
.hotkey-combo .plus{color:var(--faint);font-size:18px}
.hotkey-cap{color:var(--muted);font-size:14.5px;max-width:30ch}
.ctx-chips{display:flex;flex-wrap:wrap;gap:9px;justify-content:center;max-width:340px}
.chip{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--muted);background:var(--surface-2);border:1px solid var(--border-soft);border-radius:999px;padding:6px 12px}
.chip .swatch{width:7px;height:7px;border-radius:2px}

/* ============ real app screenshots ============ */
.shot-wrap{position:relative;display:flex;justify-content:center;align-items:center}
.shot-wrap::before{content:"";position:absolute;inset:-16% 0 -10%;background:radial-gradient(55% 55% at 58% 26%,rgba(139,92,246,.40),transparent 70%);filter:blur(24px);z-index:0;pointer-events:none}
.shot{position:relative;z-index:1;border-radius:16px;overflow:hidden;border:1px solid rgba(139,92,246,.30);background:#0d1424;box-shadow:var(--shadow-float);max-width:100%}
.shot img{display:block;width:100%;height:auto}
.shot::after{content:"";position:absolute;inset:0;border-radius:16px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);pointer-events:none}
.shot.tilt{transform:perspective(1600px) rotateY(-7deg) rotateX(2.5deg);transition:transform .6s var(--ease)}
.shot.tilt:hover{transform:perspective(1600px) rotateY(-3deg) rotateX(1deg)}
.hero-media .shot{width:438px}
.f-media .shot{width:474px;max-width:100%}
/* focused crops of the full screenshot */
.shot.crop-top{max-height:236px}
.shot.crop-mid{height:250px}
.shot.crop-mid img{margin-top:-150px}
.shot-cap{position:relative;z-index:1;margin-top:16px;text-align:center;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--faint)}
.shot-cap b{color:var(--muted);font-weight:500}
@media(max-width:520px){.hero-media .shot,.f-media .shot{width:100%}}

/* compact mode showcase */
.compact-stage{display:flex;flex-direction:column;align-items:center;gap:22px}
.compact-stage .shot{width:262px}
.hotkey-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:center}

/* inline masked example chip */
.mask-inline{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:12.5px;background:rgba(255,61,154,.12);color:var(--pink);border:1px solid rgba(255,61,154,.25);border-radius:6px;padding:2px 8px;vertical-align:middle}

/* ============ detail feature grid ============ */
.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}
@media(max-width:860px){.detail-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.detail-grid{grid-template-columns:1fr}}
.detail{background:linear-gradient(180deg,var(--surface),rgba(18,22,36,.5));border:1px solid var(--border);border-radius:14px;padding:24px;box-shadow:var(--shadow-card)}
.detail .di{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:rgba(139,92,246,.12);border:1px solid var(--border);color:var(--violet);margin-bottom:16px}
.detail .di svg{width:21px;height:21px}
.detail h5{font-size:16.5px;font-weight:700;letter-spacing:-.01em}
.detail p{color:var(--muted);font-size:14px;margin-top:8px}

/* ============ how it works ============ */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:60px}
@media(max-width:860px){.steps{grid-template-columns:1fr;gap:18px}}
.step{
  background:linear-gradient(180deg,var(--surface),rgba(18,22,36,.5));
  border:1px solid var(--border);border-radius:var(--radius);
  padding:30px;position:relative;overflow:hidden;
  box-shadow:var(--shadow-card);
}
.step .num{font-family:var(--font-mono);font-size:13px;color:var(--violet);font-weight:600}
.step .s-ic{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--surface-3);border:1px solid var(--border-soft);color:var(--text);margin:18px 0 16px}
.step .s-ic svg{width:22px;height:22px}
.step h4{font-size:19px;font-weight:700}
.step p{color:var(--muted);font-size:14.5px;margin-top:9px}
.step .glow{position:absolute;top:-40px;right:-40px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,rgba(139,92,246,.22),transparent 70%);pointer-events:none}

/* ============ privacy / comparison ============ */
.privacy{background:linear-gradient(180deg,rgba(18,22,36,.4),transparent)}
.cmp{margin-top:56px;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface);box-shadow:var(--shadow-card)}
.cmp table{width:100%;border-collapse:collapse}
.cmp th,.cmp td{padding:18px 24px;text-align:left;font-size:15px;border-bottom:1px solid var(--border-soft)}
.cmp thead th{font-size:13px;font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--faint);font-weight:500;background:rgba(255,255,255,.015)}
.cmp thead th.us{color:var(--text)}
.cmp tbody tr:last-child td{border-bottom:none}
.cmp td.feat{color:var(--muted)}
.cmp td.us{font-weight:600}
.cmp .yes{color:var(--green);display:inline-flex;align-items:center;gap:8px}
.cmp .no{color:var(--faint);display:inline-flex;align-items:center;gap:8px}
.cmp .yes svg,.cmp .no svg{width:17px;height:17px}
.cmp col.us-col{background:rgba(139,92,246,.05)}
.cmp thead th.us{position:relative}
.cmp thead th.us::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--grad-accent)}
@media(max-width:680px){.cmp th,.cmp td{padding:14px 14px;font-size:13.5px}}

/* ============ pricing ============ */
.pricing{position:relative}
.price-card{
  max-width:480px;margin:56px auto 0;
  background:linear-gradient(180deg,var(--surface-2),var(--surface));
  border:1px solid var(--border);border-radius:22px;
  padding:40px;position:relative;overflow:hidden;
  box-shadow:var(--shadow-float);
}
.price-card::before{content:"";position:absolute;inset:0;border-radius:22px;padding:1px;background:linear-gradient(140deg,rgba(139,92,246,.6),transparent 45%,rgba(255,61,154,.4));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.price-badge{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--green);background:rgba(52,211,153,.1);border:1px solid rgba(52,211,153,.24);padding:6px 12px;border-radius:999px}
.price-amt{display:flex;align-items:flex-end;gap:10px;margin:24px 0 4px}
.price-amt .cur{font-size:30px;font-weight:700;color:var(--muted);margin-bottom:8px}
.price-amt .big{font-size:68px;font-weight:800;letter-spacing:-.04em;line-height:1}
.price-amt .per{color:var(--faint);font-size:15px;margin-bottom:11px;font-family:var(--font-mono)}
.price-card .desc{color:var(--muted);font-size:15px;margin-top:4px}
.price-feats{list-style:none;padding:0;margin:28px 0;display:grid;grid-template-columns:1fr 1fr;gap:13px}
@media(max-width:520px){.price-feats{grid-template-columns:1fr}.price-card{padding:30px}}
.price-feats li{display:flex;align-items:center;gap:10px;font-size:14.5px;color:var(--text)}
.price-feats li svg{width:17px;height:17px;color:var(--violet);flex:0 0 auto}
.price-card .btn{width:100%;justify-content:center}
.price-note{text-align:center;color:var(--faint);font-size:13px;margin-top:16px;display:flex;align-items:center;justify-content:center;gap:8px}
.price-note svg{width:15px;height:15px;color:var(--green)}

/* device chip under price */
.device-chip{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font-size:13px;font-weight:600;color:var(--violet);background:rgba(139,92,246,.1);border:1px solid var(--border);border-radius:999px;padding:7px 14px}
.device-chip svg{width:15px;height:15px}
.device-chip b{color:var(--text);font-weight:700}

/* ---- 5-year cost comparison ---- */
.cost{max-width:680px;margin:34px auto 0;background:linear-gradient(180deg,var(--surface),rgba(18,22,36,.5));border:1px solid var(--border);border-radius:var(--radius);padding:28px 30px;box-shadow:var(--shadow-card)}
.cost h4{font-size:14px;font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--faint);font-weight:500;text-align:center;margin-bottom:22px}
.cost h4 b{color:var(--text);font-weight:600}
.cost-row{display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:16px;margin-bottom:16px}
.cost-row:last-child{margin-bottom:0}
.cost-row .who{font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px}
.cost-row .who .dot{width:9px;height:9px;border-radius:3px;flex:0 0 auto}
.cost-bar{height:30px;border-radius:8px;position:relative;overflow:hidden}
.cost-bar.us{width:8%;min-width:48px;background:var(--grad-pink)}
.cost-bar.them{width:100%;background:linear-gradient(90deg,var(--surface-3),rgba(255,61,154,.18))}
.cost-row .amt{font-family:var(--font-mono);font-size:18px;font-weight:600;white-space:nowrap;min-width:64px;text-align:right}
.cost-row.us-row .amt{color:var(--green)}
.cost-row.them-row .amt{color:var(--muted)}
.cost-foot{text-align:center;margin-top:22px;padding-top:18px;border-top:1px solid var(--border-soft);color:var(--muted);font-size:14px}
.cost-foot b{color:var(--text);font-weight:700}
.cost-foot .save{color:var(--green);font-weight:700}
@media(max-width:520px){.cost-row{grid-template-columns:84px 1fr auto;gap:10px}.cost-row .who{font-size:12.5px}.cost-row .amt{font-size:15px;min-width:52px}}

/* ============ FAQ ============ */
.faq{max-width:780px;margin:56px auto 0}
.qa{border-bottom:1px solid var(--border-soft)}
.qa button{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;
  background:none;border:none;cursor:pointer;color:var(--text);
  font-family:var(--font-sans);font-size:17px;font-weight:600;
  text-align:left;padding:24px 4px;letter-spacing:-.01em;
}
.qa .icn{flex:0 0 auto;width:22px;height:22px;border-radius:7px;display:grid;place-items:center;border:1px solid var(--border);color:var(--violet);transition:transform .3s var(--ease),background .3s}
.qa .icn svg{width:14px;height:14px;transition:transform .3s var(--ease)}
.qa[aria-expanded="true"] .icn{background:rgba(139,92,246,.14)}
.qa[aria-expanded="true"] .icn svg{transform:rotate(45deg)}
.qa .ans{overflow:hidden;max-height:0;transition:max-height .4s var(--ease)}
.qa .ans p{color:var(--muted);font-size:15.5px;padding:0 4px 26px;max-width:62ch}
.qa .ans a{color:var(--violet);text-decoration:underline;text-underline-offset:3px}

/* ============ final CTA ============ */
.cta-band{margin:0 0 0}
.cta-inner{
  position:relative;overflow:hidden;
  border:1px solid var(--border);border-radius:24px;
  padding:64px 48px;text-align:center;
  background:
    radial-gradient(700px 280px at 50% -20%, rgba(139,92,246,.28), transparent 70%),
    linear-gradient(180deg,var(--surface-2),var(--surface));
  box-shadow:var(--shadow-card);
}
.cta-inner h2{font-size:clamp(30px,4vw,46px);font-weight:800;letter-spacing:-.03em}
.cta-inner p{color:var(--muted);font-size:18px;margin-top:16px}
.cta-inner .hero-cta{justify-content:center;margin-top:30px}

/* ============ footer ============ */
.site-footer{border-top:1px solid var(--border-soft);margin-top:104px;padding:56px 0 40px}
.foot-grid{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap}
.foot-brand{max-width:300px}
.foot-brand .brand{margin-bottom:14px}
.foot-brand p{color:var(--faint);font-size:14px}
.foot-cols{display:flex;gap:64px;flex-wrap:wrap}
.foot-col h5{font-size:12px;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);font-weight:500;margin-bottom:16px}
.foot-col a{display:block;color:var(--muted);font-size:14.5px;margin-bottom:11px;transition:color .2s}
.foot-col a:hover{color:var(--text)}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:48px;padding-top:26px;border-top:1px solid var(--border-soft);color:var(--faint);font-size:13px}
.foot-bottom .made{display:flex;align-items:center;gap:8px}
.foot-bottom .made b{color:var(--muted);font-weight:500}

/* ============ scroll reveal ============
   Content is always visible. (An earlier opacity-based entrance was
   removed: this preview/screenshot environment does not advance
   animation frames, freezing any opacity animation at its hidden
   first frame. Visibility is non-negotiable, so no entrance anim.) */
.reveal{opacity:1;transform:none}
