@font-face {
  font-family: "AsideDisplay";
  src: url("https://aside.com/_next/static/media/AsideDisplay_Variable-s.p.0f4iuzgmg-oj_.woff2?dpl=dpl_ERjYBaqqbVPrRmunVNSKEQn4EytY") format("woff2");
  font-display: swap;
  font-weight: 100 900;
}

@font-face {
  font-family: "AsideDisplay Fallback";
  src: local("Arial");
  ascent-override: 102.43%;
  descent-override: 25.9%;
  line-gap-override: 0%;
  size-adjust: 92.76%;
}

@font-face {
  font-family: "AsideGeist";
  src: url("https://aside.com/_next/static/media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2?dpl=dpl_ERjYBaqqbVPrRmunVNSKEQn4EytY") format("woff2");
  font-display: swap;
  font-weight: 100 900;
}

@font-face {
  font-family: "AsideGeist Fallback";
  src: local("Arial");
  ascent-override: 95.94%;
  descent-override: 28.16%;
  line-gap-override: 0%;
  size-adjust: 104.76%;
}

/* ── Tokens ─────────────────────────────────────────────── */
:root {
  --bg:            #091114;
  --bg-2:          #0f1b21;
  --surface:       rgba(14,25,31,0.78);
  --surface-s:     #122028;
  --border:        rgba(197,226,221,0.16);
  --border-hi:     rgba(216,245,240,0.28);
  --text:          #f3f7f5;
  --muted:         #a7bbb5;
  --muted-hi:      #cdd8d3;
  --accent:        #9ff3cf;
  --accent-2:      #8dcaff;
  --accent-3:      #f6cf8e;
  --danger:        #ffb3ad;
  --sans:          "AsideGeist","AsideGeist Fallback","Geist","Manrope","SF Pro Display",system-ui,sans-serif;
  --serif:         "Newsreader","Iowan Old Style",Georgia,serif;
  --sh-xl:         0 40px 120px rgba(2,8,10,.5);
  --sh-lg:         0 20px 50px rgba(3,10,13,.38);
  --sh-md:         0 14px 34px rgba(0,0,0,.24);
}

/* ── Reset ──────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--sans);
  color:var(--text);
  min-height:100vh;
  -webkit-font-smoothing:antialiased;
  position:relative;
  overflow-x:hidden;
  background:
    radial-gradient(circle at top left,  rgba(109,214,255,.17),transparent 28%),
    radial-gradient(circle at 88% 12%,   rgba(159,243,207,.14),transparent 22%),
    radial-gradient(circle at bottom center,rgba(246,207,142,.08),transparent 24%),
    linear-gradient(180deg,#071114 0%,#0a1418 30%,#081115 100%);
}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;display:none}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input{font:inherit}

.skip-link{
  position:fixed;
  left:16px;
  top:12px;
  z-index:1000;
  transform:translateY(-140%);
  padding:10px 14px;
  border-radius:999px;
  background:#fff;
  color:#071014;
  font-size:.9rem;
  font-weight:850;
  box-shadow:0 12px 30px rgba(0,0,0,.25);
  transition:transform 150ms ease;
}

.skip-link:focus{
  transform:translateY(0);
}

a:focus-visible,
button:focus-visible,
summary:focus-visible,
.btn-primary:focus-visible,
.btn-dl:focus-visible,
.nav-login:focus-visible,
.blog-card a:focus-visible,
.blog-read-link:focus-visible,
.download-cta:focus-visible{
  outline:3px solid #0b6bff;
  outline-offset:4px;
}

/* ── Hero Animated Background ────────────────────────────── */
.hero-ambient{
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  transform:translateZ(0);
  opacity:var(--ambient-opacity, 1);
  will-change:opacity;
  -webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 62%, rgba(0,0,0,.72) 100%);
  mask-image:linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 62%, rgba(0,0,0,.72) 100%);
}
.hero-ambient__canvas{
  width:100%;
  height:100%;
  display:block;
  transform:scale(1.22);
  mix-blend-mode:normal;
  filter:blur(22px) saturate(140%) contrast(112%);
}
@media (max-width: 768px){
  .hero-ambient__canvas{filter:blur(18px) saturate(138%) contrast(110%);transform:scale(1.28)}
}

/* ── Symbol Logo Preview ───────────────────────────────── */
.symbol-logo-page{
  min-height:100dvh;
  overflow:hidden;
  background:#071114;
}
.symbol-logo-preview{
  min-height:100dvh;
  display:grid;
  place-items:center;
}
.symbol-logo-stage{
  position:relative;
  width:100%;
  min-height:100dvh;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at 32% 54%, rgba(77,168,255,.22), transparent 34%),
    linear-gradient(180deg,#021a96 0%,#0526ad 44%,#597d9a 100%);
}
.symbol-logo-stage__flow{
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  display:block;
}
.symbol-logo-stage__canvas{
  position:absolute;
  left:50%;
  top:50%;
  z-index:2;
  width:min(62.4vw,688px);
  aspect-ratio:1.43;
  height:auto;
  display:block;
  transform:translate(-50%,-50%);
  filter:drop-shadow(0 28px 58px rgba(2,8,10,.5));
}
.symbol-logo-controls{
  position:absolute;
  right:clamp(16px,3vw,42px);
  bottom:clamp(16px,3vw,36px);
  z-index:3;
  width:min(280px,calc(100vw - 32px));
  display:grid;
  gap:13px;
  padding:16px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  background:rgba(3,13,34,.46);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 50px rgba(0,0,0,.2);
  backdrop-filter:blur(18px);
}
.symbol-logo-control{
  display:grid;
  gap:7px;
  color:rgba(246,250,248,.9);
  font-family:var(--sans);
  font-size:.76rem;
  font-weight:700;
  letter-spacing:.01em;
}
.symbol-logo-control span{
  display:flex;
  justify-content:space-between;
}
.symbol-logo-control input{
  width:100%;
  accent-color:#f5e8a8;
}
@media (max-width:760px){
  .symbol-logo-stage__canvas{
    width:75.2vw;
    max-width:none;
  }
  .symbol-logo-controls{
    right:12px;
    left:12px;
    bottom:12px;
    width:auto;
    grid-template-columns:1fr 1fr;
    padding:12px;
  }
}

/* ── Layout ─────────────────────────────────────────────── */
.wrap{width:min(1240px,calc(100vw - 48px));margin:0 auto;position:relative;z-index:1}
main,.footer{position:relative;z-index:2}

/* ── Navbar ─────────────────────────────────────────────── */
.navbar{position:sticky;top:18px;z-index:100;display:flex;justify-content:center;padding:20px 0 0}
.navbar-inner{
  display:grid;align-items:center;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:18px;
  width:min(1120px,calc(100vw - 48px));
  padding:12px 16px 12px 20px;
  background:rgba(8,16,20,.82);
  border:none;
  border-radius:999px;
  backdrop-filter:blur(22px);
  box-shadow:var(--sh-lg);
}
.navbar-slot{display:flex;align-items:center}
.navbar-slot--brand{justify-self:start}
.navbar-slot--cta{justify-self:end;justify-content:flex-end}
.brand{display:inline-flex;align-items:center;gap:11px;font-weight:800;font-size:.97rem;letter-spacing:-.03em}
.brand img{width:30px;height:30px;border-radius:8px;box-shadow:0 4px 14px rgba(0,0,0,.3)}
.nav-links{
  display:inline-flex;align-items:center;gap:10px;
  padding:0;
  border:none;
  background:transparent;
}
.nav-links--center{justify-self:center}
.nav-links a{
  min-width:92px;
  padding:10px 18px;
  border-radius:999px;
  color:var(--muted-hi);
  font-size:.9rem;
  font-weight:700;
  text-align:center;
  transition:color 140ms,background 140ms,transform 140ms;
}
.nav-links a:hover{color:var(--text);background:rgba(255,255,255,.05)}
.btn-dl{
  display:inline-flex;align-items:center;gap:8px;
  padding:10px 14px 10px 16px;
  background:linear-gradient(135deg,#f7faf9,#dbe8e5);
  color:#091114 !important;
  border-radius:999px;font-size:.94rem;font-weight:800;letter-spacing:-.02em;
  box-shadow:0 8px 20px rgba(159,243,207,.17);
  transition:transform 140ms,box-shadow 140ms;
}
.btn-dl:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(159,243,207,.24)}
.btn-dl__icon,
.btn-primary__icon{
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:999px;
  background:rgba(255,255,255,.56);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.6);
  flex-shrink:0;
}
.btn-dl__icon{width:36px;height:36px}
.btn-primary__icon{width:42px;height:42px}
.btn-dl__icon svg{width:18px;height:18px;fill:currentColor}

/* ── Hero ───────────────────────────────────────────────── */
.hero{
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:96px 24px 0;
  text-align:center;
  position:relative;
  z-index:1;
  isolation:isolate;
  overflow:hidden;
}
.hero-copy,
.hero-preview{
  position:relative;
  z-index:1;
}
.hero-badge{
  display:inline-flex;align-items:center;gap:10px;
  padding:8px 14px 8px 10px;
  border:1px solid rgba(159,243,207,.24);border-radius:999px;
  background:rgba(255,255,255,.05);
  box-shadow:0 12px 30px rgba(2,8,10,.14);
}
.hero-badge__icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:28px;height:28px;
  border-radius:10px;
  background:rgba(159,243,207,.1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
  flex-shrink:0;
}
.hero-badge__icon img{width:22px;height:22px;border-radius:8px}
.hero-badge__meta{font-size:.82rem;font-weight:600;color:var(--muted-hi)}
.hero h1{
  margin-top:0;
  font-family:var(--serif);
  font-size:clamp(3.8rem,9vw,8rem);
  font-weight:700;letter-spacing:-.06em;line-height:.92;max-width:14ch;
}
.hero-badge + h1{margin-top:28px}
.hero h1 em{font-style:italic;color:var(--accent)}
.hero-sub{
  margin-top:24px;
  max-width:42rem;
  color:#071014;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:clamp(1.02rem, 1.45vw, 1.16rem);
  font-weight:500;
  letter-spacing:0;
  line-height:1.48;
}
.hero-actions{display:flex;align-items:center;gap:12px;margin-top:30px;flex-wrap:wrap;justify-content:center}
.btn-primary{
  display:inline-flex;align-items:center;gap:10px;
  padding:14px 30px 14px 18px;
  background:linear-gradient(135deg,#f7faf9,#dbe8e5);
  color:#091114;border-radius:999px;font-size:.97rem;font-weight:700;letter-spacing:-.02em;
  box-shadow:0 8px 28px rgba(159,243,207,.18),0 2px 8px rgba(0,0,0,.2);
  transition:transform 150ms,box-shadow 150ms;
}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 40px rgba(159,243,207,.26),0 4px 12px rgba(0,0,0,.3)}
.btn-primary svg{width:22px;height:22px;fill:currentColor}
.hero-proof{
  margin-top:18px;
  display:inline-flex;
  align-items:center;
  gap:12px;
  padding:0;
  border:none;
  border-radius:0;
  background:transparent;
  font-family:var(--serif);
  font-size:clamp(1.65rem,3.6vw,2.95rem);
  font-weight:700;
  letter-spacing:-.06em;
  color:var(--accent);
  text-shadow:
    0 0 20px rgba(159,243,207,.34),
    0 0 44px rgba(141,202,255,.18),
    0 18px 48px rgba(2,8,10,.25);
}
.hero-proof::before{
  content:"";
  width:10px;height:10px;
  border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 22px rgba(159,243,207,.6),0 0 48px rgba(141,202,255,.2);
  flex-shrink:0;
}
.hero-meta{margin-top:13px;color:var(--muted);font-size:.82rem}

/* ── App Window ─────────────────────────────────────────── */
.app-window{
  border:1px solid rgba(255,255,255,.09);
  border-radius:20px;
  background:linear-gradient(160deg,rgba(12,22,28,.99),rgba(7,13,17,.99));
  box-shadow:0 0 0 1px rgba(0,0,0,.35),0 40px 100px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.05);
  overflow:hidden;
}
.win-bar{display:flex;align-items:center;gap:12px;padding:13px 18px;border-bottom:1px solid rgba(255,255,255,.055);background:rgba(255,255,255,.018)}
.tls{display:flex;gap:6px}
.tl{width:11px;height:11px;border-radius:50%}
.tl-r{background:#ff6659}.tl-a{background:#ffbf45}.tl-g{background:#28ca42}
.win-ttl{color:var(--muted);font-size:.8rem;font-weight:600}
.win-body{display:grid;grid-template-columns:142px 1fr;min-height:380px}
.win-side{display:flex;flex-direction:column;gap:3px;padding:14px 10px;border-right:1px solid rgba(255,255,255,.055);background:rgba(255,255,255,.015)}
.ws-i{padding:8px 11px;border-radius:9px;color:var(--muted);font-size:.8rem;font-weight:500;cursor:default}
.ws-i.on{background:rgba(159,243,207,.1);color:var(--text)}
.ws-stat{margin-top:auto;padding:10px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(255,255,255,.025)}
.ws-stat .lbl{display:block;font-size:.68rem;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.ws-stat strong{display:block;margin-top:4px;font-size:1rem;letter-spacing:-.03em}
.ws-stat span{display:block;margin-top:2px;font-size:.69rem;color:var(--muted)}
.win-main{padding:16px;overflow:auto}

/* ── Demo section ───────────────────────────────────────── */
.demo-section{margin-top:52px;position:relative;z-index:1}
.demo-section>.wrap{display:flex;flex-direction:column;align-items:center}
.demo-hdr{display:flex;flex-direction:column;align-items:center;gap:14px;margin-bottom:20px}
.demo-tabs{display:inline-flex;gap:3px;padding:4px;background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:999px}
.dtab{padding:8px 19px;border:none;border-radius:999px;background:transparent;color:var(--muted-hi);font-size:.86rem;font-weight:600;cursor:pointer;transition:background 140ms,color 140ms}
.dtab.on{background:rgba(159,243,207,.12);color:var(--text)}
.dtab:hover:not(.on){background:rgba(255,255,255,.05);color:var(--text)}
.demo-sub{color:var(--muted);font-size:.88rem;min-height:1.3em;text-align:center}
.demo-stage{width:100%;max-width:880px}
.dpanel{display:none}.dpanel.on{display:block}

/* Focus screen internals */
.focus-scr{display:flex;flex-direction:column;gap:14px}
.focus-h{font-family:var(--serif);font-size:1.45rem;letter-spacing:-.04em}
.focus-h em{font-style:italic;color:var(--accent)}
.focus-sub{margin-top:3px;color:var(--muted);font-size:.84rem}
.goal-card{display:flex;align-items:center;gap:14px;padding:13px 15px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(255,255,255,.03)}
.ring{position:relative;width:44px;height:44px;flex-shrink:0;border-radius:50%;background:conic-gradient(var(--accent) 72%,rgba(255,255,255,.07) 0%);display:flex;align-items:center;justify-content:center}
.ring::after{content:"";position:absolute;inset:5px;border-radius:50%;background:#0c1a15}
.ring span{position:relative;z-index:1;font-size:.68rem;font-weight:700;color:var(--accent)}
.goal-card strong{display:block;font-size:.86rem;letter-spacing:-.02em}
.goal-card p{margin-top:2px;font-size:.76rem;color:var(--muted)}
.mode-pills{display:inline-flex;gap:5px;padding:4px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:999px;width:fit-content}
.mpill{padding:5px 13px;border-radius:999px;font-size:.78rem;font-weight:600;color:var(--muted);cursor:default}
.mpill.on{background:rgba(159,243,207,.12);color:var(--text)}
.preset-grid{display:grid;grid-template-columns:1fr 1fr auto;gap:9px}
.pcard{padding:13px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(255,255,255,.03);cursor:default}
.pcard-new{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-style:dashed;opacity:.55}
.pemoji,
.pme,
.lic{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:34px;height:34px;padding:0 10px;
  border-radius:10px;
  background:rgba(159,243,207,.1);
  border:1px solid rgba(159,243,207,.16);
  color:var(--accent);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.lic{min-width:30px;height:30px;padding:0 9px;font-size:.64rem}
.pcard strong{display:block;font-size:.82rem;letter-spacing:-.02em}
.pcard p{margin-top:2px;font-size:.72rem;color:var(--muted)}
.stag{display:inline-block;margin-top:7px;padding:3px 9px;background:rgba(159,243,207,.1);color:var(--accent);border-radius:999px;font-size:.7rem;font-weight:700}
.pplus{font-size:1.3rem;color:var(--muted)}
.cta-row{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;background:rgba(159,243,207,.06);border:1px solid rgba(159,243,207,.14);border-radius:13px}
.cta-row span{font-size:.83rem;color:var(--muted-hi)}
.cta-row button{padding:7px 16px;background:linear-gradient(135deg,#f7faf9,#dbe8e5);color:#091114;border:none;border-radius:999px;font-size:.8rem;font-weight:700;cursor:pointer}
/* Session */
.sess-scr{display:flex;flex-direction:column;gap:13px}
.live-badge{display:inline-flex;align-items:center;gap:7px;padding:5px 12px;background:rgba(159,243,207,.07);border:1px solid rgba(159,243,207,.18);border-radius:999px;font-size:.75rem;font-weight:700;color:var(--accent);width:fit-content}
.live-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:blink 1.5s ease-in-out infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.3}}
.sess-name{font-size:1.08rem;font-weight:700;letter-spacing:-.03em}
.big-timer{font-size:2.8rem;font-weight:800;letter-spacing:-.06em;font-variant-numeric:tabular-nums;line-height:1}
.prog-wrap{padding:13px 15px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(255,255,255,.03)}
.prog-track{height:5px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}
.prog-fill{height:100%;width:42%;background:var(--accent);border-radius:999px}
.prog-meta{display:flex;justify-content:space-between;margin-top:7px;font-size:.76rem;color:var(--muted)}
.achips{display:flex;flex-wrap:wrap;gap:6px}
.achip{padding:5px 11px;border-radius:999px;background:rgba(255,255,255,.05);font-size:.76rem;font-weight:600;color:var(--muted-hi)}
.achip.x{background:rgba(255,179,173,.1);color:#ffd3cf}
.s-actions{display:flex;gap:9px}
.s-ghost{flex:1;padding:9px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:10px;color:var(--muted-hi);font-size:.82rem;font-weight:600;cursor:pointer}
.s-danger{flex:1;padding:9px;background:rgba(255,179,173,.07);border:1px solid rgba(255,179,173,.16);border-radius:10px;color:var(--danger);font-size:.82rem;font-weight:600;cursor:pointer}
.s-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.sstat{text-align:center;padding:9px;border:1px solid rgba(255,255,255,.06);border-radius:11px;background:rgba(255,255,255,.025)}
.sstat strong{display:block;font-size:1.1rem;letter-spacing:-.04em}
.sstat span{display:block;margin-top:1px;font-size:.7rem;color:var(--muted)}
/* Presets */
.pre-scr{display:flex;flex-direction:column;gap:13px}
.pre-hdr{display:flex;align-items:center;justify-content:space-between}
.pre-hdr strong{font-size:1.02rem;letter-spacing:-.02em}
.pre-hdr p{margin-top:2px;font-size:.78rem;color:var(--muted)}
.np-btn{padding:7px 13px;border:1px solid rgba(159,243,207,.28);border-radius:999px;background:rgba(159,243,207,.06);color:var(--accent);font-size:.78rem;font-weight:600;cursor:pointer;white-space:nowrap}
.pre-lib{display:grid;grid-template-columns:1fr 1fr auto;gap:9px}
.lcard{padding:13px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(255,255,255,.03);display:flex;flex-direction:column;gap:3px}
.lcard-new{align-items:center;justify-content:center;text-align:center;border-style:dashed;opacity:.55}
.lhd{display:flex;align-items:center;justify-content:space-between;margin-bottom:3px}
.lact{display:flex;gap:6px;font-size:.78rem;color:var(--muted);cursor:default}
.lact span{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px}
.lact svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lcard strong{font-size:.85rem;letter-spacing:-.02em}
.lcard p{font-size:.73rem;color:var(--muted)}
.lcard button{margin-top:auto;padding:5px 11px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:7px;font-size:.73rem;font-weight:600;color:var(--muted-hi);cursor:pointer}
.lplus{font-size:1.3rem;color:var(--muted)}
/* Menu */
.menu-wrap{display:flex;justify-content:center;align-items:flex-start;padding:24px 0;min-height:380px}
.mpop{width:276px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(7,12,16,.97);box-shadow:0 24px 60px rgba(0,0,0,.6);overflow:hidden}
.mpop-hd{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border-bottom:1px solid rgba(255,255,255,.07)}
.mpop-hd strong{font-size:.9rem;font-weight:700}
.mpop-hd span{font-size:.76rem;color:var(--muted)}
.mgrp{padding:7px;border-bottom:1px solid rgba(255,255,255,.055)}
.mgrp:last-child{border-bottom:none}
.mgrp-lbl{padding:3px 8px;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.mrow{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 9px;border:none;border-radius:9px;background:transparent;color:var(--text);font-size:.83rem;font-weight:500;cursor:pointer;transition:background 110ms}
.mrow:hover{background:rgba(255,255,255,.06)}
.mrow-ic{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;color:var(--muted);flex-shrink:0}
.mrow-ic svg{width:15px;height:15px}
.mchip{padding:2px 8px;background:rgba(159,243,207,.1);color:var(--accent);border-radius:999px;font-size:.7rem;font-weight:700}
.mlive{padding:9px;background:rgba(159,243,207,.05);border:1px solid rgba(159,243,207,.11);border-radius:11px;margin:3px 0}
.mlive-t{font-size:1.45rem;font-weight:800;letter-spacing:-.06em;font-variant-numeric:tabular-nums}
.mlive-n{font-size:.78rem;color:var(--muted-hi);margin-top:1px}
.mlive-a{display:flex;gap:5px;margin-top:7px}
.mlive-a button{flex:1;padding:6px;border:1px solid rgba(255,255,255,.09);border-radius:7px;background:rgba(255,255,255,.05);color:var(--muted-hi);font-size:.75rem;font-weight:600;cursor:pointer}

/* ── Section header ─────────────────────────────────────── */
.sec-ey{display:inline-flex;align-items:center;gap:8px;font-size:.73rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.sec-h{margin-top:10px;font-family:var(--serif);font-size:clamp(2.3rem,5vw,3.8rem);font-weight:700;letter-spacing:-.055em;line-height:.96}
.sec-sub{margin-top:14px;max-width:40rem;color:var(--muted-hi);line-height:1.72;font-size:.97rem}

/* ── Features ───────────────────────────────────────────── */
.features-section{padding:100px 0 0;position:relative;z-index:1}
.features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;margin-top:40px;border:1px solid var(--border);border-radius:28px;overflow:hidden}
.feat-card{
  position:relative;
  padding:36px;
  background:rgba(255,255,255,.025);
  border-right:1px solid var(--border);
  border-bottom:1px solid var(--border);
  transition:background 180ms,transform 200ms,box-shadow 200ms;
}
.feat-card:hover{background:rgba(255,255,255,.04);transform:translateY(-2px)}
.feat-card:nth-child(2n){border-right:none}
.feat-card:nth-child(3),.feat-card:nth-child(4){border-bottom:none}
.feat-icon{
  width:44px;height:44px;border-radius:13px;
  display:flex;align-items:center;justify-content:center;
  color:var(--accent);
  background:rgba(159,243,207,.08);
  border:1px solid rgba(159,243,207,.16);
  margin-bottom:20px;
}
.feat-icon svg,
.bico svg,
.mrow-ic svg,
.plan-badge svg{
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.feat-icon svg{width:20px;height:20px}
.feat-card h3{font-size:1.15rem;font-weight:700;letter-spacing:-.03em}
.feat-card p{margin-top:10px;color:var(--muted-hi);font-size:.93rem;line-height:1.72}
.feat-screen{
  margin-top:22px;
  border:1px solid rgba(255,255,255,.07);
  border-radius:14px;
  background:rgba(7,13,17,.8);
  overflow:hidden;
}
.feat-screen-bar{
  display:flex;align-items:center;gap:8px;
  padding:9px 12px;
  border-bottom:1px solid rgba(255,255,255,.055);
}
.feat-screen-bar .tls{gap:5px}
.feat-screen-bar .tl{width:8px;height:8px}
.feat-screen-bar span{font-size:.72rem;color:var(--muted)}
.feat-screen-body{padding:14px}
/* App locking mini */
.app-lock-list{display:flex;flex-direction:column;gap:6px}
.app-lock-row{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:9px;background:rgba(255,255,255,.035)}
.app-lock-row .aname{font-size:.8rem;font-weight:600;display:flex;align-items:center;gap:8px}
.app-lock-row .aname .dot{width:7px;height:7px;border-radius:50%}
.dot-green{background:#28ca42}
.dot-red{background:#ff6659}
.lock-badge{font-size:.68rem;font-weight:700;padding:3px 8px;border-radius:999px}
.lock-badge.allowed{background:rgba(159,243,207,.1);color:var(--accent)}
.lock-badge.blocked{background:rgba(255,179,173,.1);color:#ffd3cf}
/* Website blocking mini */
.block-list{display:flex;flex-direction:column;gap:6px}
.block-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:9px;background:rgba(255,179,173,.07);border:1px solid rgba(255,179,173,.12)}
.block-row .burl{font-size:.8rem;font-weight:600;color:#ffd3cf;flex:1}
.block-row .bico{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:inherit;flex-shrink:0}
.bico svg{width:14px;height:14px}
.block-row-ok{background:rgba(159,243,207,.05);border-color:rgba(159,243,207,.1)}
.block-row-ok .burl{color:var(--accent)}
/* Menu bar mini */
.mb-mini{display:flex;flex-direction:column;gap:5px}
.mb-mini-row{display:flex;align-items:center;justify-content:space-between;padding:7px 9px;border-radius:8px;background:rgba(255,255,255,.04)}
.mb-mini-row span:first-child{font-size:.8rem;font-weight:500}
.mb-mini-row span:last-child{font-size:.75rem;color:var(--muted)}
.mb-mini-timer{font-size:1.4rem;font-weight:800;letter-spacing:-.05em;font-variant-numeric:tabular-nums;padding:8px 10px}
/* Presets mini */
.pre-mini{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.pre-mini-card{padding:10px 12px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(255,255,255,.03)}
.pre-mini-card .pme{font-size:1.1rem;margin-bottom:3px}
.pre-mini-card strong{display:block;font-size:.8rem;letter-spacing:-.02em}
.pre-mini-card p{font-size:.7rem;color:var(--muted);margin-top:2px}

/* ── Pricing ────────────────────────────────────────────── */
.pricing-section{padding:100px 0 0;position:relative;z-index:1;scroll-margin-top:112px}
.pricing-controls{
  margin-top:22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}
.billing-toggle{
  display:inline-flex;
  gap:3px;
  padding:4px;
  border:1px solid var(--border);
  border-radius:999px;
  background:rgba(255,255,255,.04);
}
.bt{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 18px;
  border:1px solid transparent;
  border-radius:999px;
  background:transparent;
  color:var(--muted-hi);
  font-size:.86rem;
  font-weight:700;
  cursor:pointer;
  transition:background 140ms,color 140ms,transform 140ms,border-color 140ms,box-shadow 140ms;
}
.bt.on{
  background:linear-gradient(135deg,rgba(159,243,207,.22),rgba(141,202,255,.1));
  border-color:rgba(159,243,207,.26);
  box-shadow:0 10px 24px rgba(2,8,10,.2),0 0 0 1px rgba(159,243,207,.08) inset;
  color:var(--text);
}
.bt:hover:not(.on){background:rgba(255,255,255,.05);color:var(--text)}
.bt:active{transform:translateY(1px)}
.bt-badge{
  display:inline-flex;
  align-items:center;
  padding:3px 9px;
  border-radius:999px;
  background:rgba(159,243,207,.1);
  color:var(--accent);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.04em;
}
.pricing-proof{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.pchip{
  padding:7px 11px;
  border:1px solid var(--border);
  border-radius:999px;
  background:rgba(255,255,255,.04);
  color:var(--muted-hi);
  font-size:.78rem;
  font-weight:700;
}
.plan-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:0;
  margin-top:26px;
  border:1px solid var(--border);
  border-radius:28px;
  overflow:visible;
  position:relative;
}
.plan-card{
  display:flex;flex-direction:column;
  padding:32px 28px;
  border-right:1px solid var(--border);
  background:transparent;
  position:relative;
}
.plan-card:last-child{border-right:none}
.plan-card.featured{
  background:
    radial-gradient(ellipse 90% 70% at 50% -10%, rgba(159,243,207,.12), transparent),
    rgba(159,243,207,.03);
  border-right:1px solid rgba(159,243,207,.18);
  border-left:1px solid rgba(159,243,207,.18);
  border-top:none;
  border-bottom:none;
  box-shadow:0 0 0 1px rgba(159,243,207,.18),0 22px 60px rgba(2,8,10,.28),inset 0 1px 0 rgba(159,243,207,.12);
  border-radius:26px;
  margin:-1px;
  z-index:2;
}
.plan-card.featured::after{
  content:"";
  position:absolute;
  inset:-22%;
  background:
    radial-gradient(circle at 18% 20%, rgba(159,243,207,.32), transparent 60%),
    radial-gradient(circle at 84% 14%, rgba(141,202,255,.22), transparent 62%),
    radial-gradient(circle at 48% 86%, rgba(246,207,142,.18), transparent 60%);
  filter:blur(24px);
  opacity:.95;
  z-index:-1;
  transform:translateZ(0);
  animation:planGlow 12s ease-in-out infinite alternate;
}
@keyframes planGlow{
  from{transform:translate3d(-2%, -2%, 0) scale(1.02)}
  to{transform:translate3d(2%, 2%, 0) scale(1.06)}
}
.plan-badge{
  display:inline-flex;align-items:center;gap:5px;
  margin-bottom:16px;
  padding:5px 12px;
  background:linear-gradient(135deg,rgba(159,243,207,.18),rgba(141,202,255,.1));
  border:1px solid rgba(159,243,207,.24);
  border-radius:999px;
  font-size:.72rem;font-weight:700;color:var(--accent);
  width:fit-content;
}
.plan-badge svg{width:13px;height:13px}
.plan-kicker{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.plan-card.featured .plan-kicker{color:var(--accent)}
.plan-price{margin-top:12px;font-size:clamp(2rem,3.5vw,2.8rem);font-weight:800;letter-spacing:-.06em;line-height:1}
.plan-price sub{font-size:.85rem;font-weight:600;color:var(--muted);vertical-align:middle;margin-left:2px}
.price-swap{display:block}
.bill-swap{display:block}
.plan-grid[data-billing="monthly"] .price-swap--yearly,
.plan-grid[data-billing="monthly"] .bill-swap--yearly{
  display:none;
}
.plan-grid[data-billing="yearly"] .price-swap--monthly,
.plan-grid[data-billing="yearly"] .bill-swap--monthly{
  display:none;
}
.strike-row{display:flex;align-items:center;gap:7px;margin-top:5px}
.strike{font-size:.78rem;color:var(--muted);text-decoration:line-through}
.save-badge{font-size:.72rem;font-weight:700;color:var(--accent);padding:2px 7px;background:rgba(159,243,207,.1);border-radius:999px}
.plan-desc{margin-top:7px;color:var(--muted);font-size:.83rem}
.plan-pts{display:grid;gap:8px;margin:18px 0 0;padding:0;list-style:none;flex:1}
.plan-pts li{display:flex;align-items:flex-start;gap:9px;font-size:.86rem;color:var(--muted-hi);line-height:1.5}
.plan-pts li::before{content:"";flex-shrink:0;width:6px;height:6px;margin-top:.45em;border-radius:50%;background:var(--accent)}
.plan-social{
  margin-top:18px;
  padding:9px 12px;
  border-radius:14px;
  border:1px solid rgba(159,243,207,.2);
  background:rgba(159,243,207,.06);
  color:var(--accent);
  font-size:.8rem;
  font-weight:800;
  text-align:center;
  letter-spacing:-.01em;
}
.plan-cta{display:flex;align-items:center;justify-content:center;min-height:46px;margin-top:22px;border-radius:999px;font-size:.92rem;font-weight:700;letter-spacing:-.02em;transition:transform 140ms,box-shadow 140ms}
.plan-cta:hover{transform:translateY(-1px)}
.cta-main{background:linear-gradient(135deg,#f7faf9,#dbe8e5);color:#091114;box-shadow:0 8px 22px rgba(159,243,207,.17)}
.cta-main:hover{box-shadow:0 12px 30px rgba(159,243,207,.24)}
.cta-sec{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);color:var(--text)}
.cta-sec:hover{background:rgba(255,255,255,.07)}

.pricing-highlights{margin-top:38px}
.pb-head{display:flex;flex-direction:column;gap:8px;max-width:56rem}
.pb-h{font-size:1.35rem;font-weight:800;letter-spacing:-.03em}
.pb-sub{color:var(--muted-hi);line-height:1.7;font-size:.93rem}

.ph-grid{
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.ph-item{
  border:1px solid var(--border);
  border-radius:18px;
  background:rgba(255,255,255,.03);
  overflow:hidden;
}
.ph-item[open]{background:rgba(255,255,255,.04)}
.ph-sum{
  list-style:none;
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px 14px;
  color:var(--text);
}
.ph-sum::-webkit-details-marker{display:none}
.ph-sum::after{
  content:"+";
  width:24px;height:24px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.04);
  display:flex;align-items:center;justify-content:center;
  color:var(--muted-hi);
  font-weight:900;
  flex-shrink:0;
}
.ph-item[open] > .ph-sum::after{content:"–"}
.ph-icon{
  width:38px;height:38px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(159,243,207,.22);
  background:rgba(159,243,207,.08);
  color:var(--accent);
  flex-shrink:0;
}
.ph-icon svg{
  width:18px;height:18px;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.ph-title{font-weight:900;letter-spacing:-.02em}
.ph-plans{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:6px;
}
.ph-chip{
  display:inline-flex;
  align-items:center;
  padding:4px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.03);
  color:var(--muted);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:-.01em;
}
.ph-chip.on{
  border-color:rgba(159,243,207,.22);
  background:rgba(159,243,207,.1);
  color:var(--accent);
}
.ph-chip.on::before{content:"✓";margin-right:6px;font-weight:900}
.ph-item--life{
  border-color:rgba(246,207,142,.22);
  background:
    radial-gradient(circle at 30% 20%, rgba(246,207,142,.12), transparent 60%),
    rgba(255,255,255,.03);
}
.ph-item--life .ph-icon{
  border-color:rgba(246,207,142,.22);
  background:rgba(246,207,142,.1);
  color:var(--accent-3);
}
.ph-body{padding:0 14px 14px}
.ph-body ul{list-style:none;display:grid;gap:8px;margin:0;padding:0}
.ph-body li{display:flex;gap:9px;align-items:flex-start;color:var(--muted-hi);font-size:.88rem;line-height:1.5}
.ph-body li::before{content:"";flex-shrink:0;width:6px;height:6px;margin-top:.45em;border-radius:50%;background:var(--accent)}

/* ── Footer ─────────────────────────────────────────────── */
.footer{margin-top:100px;padding:34px 0 40px;border-top:1px solid var(--border);position:relative;z-index:1}
.footer-inner{display:block}
.footer-brand{display:flex;align-items:center;gap:11px}
.footer-brand img{width:30px;height:30px;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.3)}
.footer-brand strong{display:block;font-size:.93rem;font-weight:700}
.footer-brand span{display:block;margin-top:1px;font-size:.78rem;color:var(--muted)}
.footer-links{display:flex;align-items:center;gap:4px;flex-wrap:wrap}
.footer-links a{padding:7px 11px;border-radius:999px;font-size:.83rem;color:var(--muted-hi);transition:color 140ms,background 140ms}
.footer-links a:hover{color:var(--text);background:rgba(255,255,255,.05)}
.footer-sections{
  width:100%;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(34px, 9vw, 120px);
}
.footer-section{
  display:grid;
  align-content:start;
  gap:14px;
}
.footer-section h2{
  margin:0;
  padding-bottom:13px;
  border-bottom:1px solid rgba(255,255,255,.08);
  color:var(--text);
  font-size:.78rem;
  font-weight:820;
  line-height:1;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.footer-section__links{
  display:grid;
  gap:10px;
}
.footer-section__links a{
  width:fit-content;
  color:var(--muted-hi);
  font-size:.9rem;
  font-weight:560;
  line-height:1.35;
  transition:color 140ms ease, transform 140ms ease;
}
.footer-section__links a:hover,
.footer-section__links a:focus-visible{
  color:var(--text);
  transform:translateX(2px);
}
.footer-socials{display:flex;align-items:center;gap:7px}
.soc{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--border);border-radius:9px;background:rgba(255,255,255,.03);color:var(--muted-hi);transition:border-color 140ms,color 140ms,background 140ms}
.soc:hover{border-color:var(--border-hi);color:var(--text);background:rgba(255,255,255,.06)}
.soc svg{width:14px;height:14px;fill:currentColor}
.footer-meta{width:100%;display:flex;justify-content:space-between;align-items:center;margin-top:30px;padding-top:16px;border-top:1px solid rgba(255,255,255,.05);font-size:.78rem;color:var(--muted)}

/* ── Reveal ─────────────────────────────────────────────── */
.reveal{opacity:0;transform:translateY(18px)}
.reveal.on{opacity:1;transform:none;transition:opacity 480ms ease,transform 480ms ease}

/* ── Testimonials ───────────────────────────────────────── */
.testimonials-section{padding:92px 0 0;position:relative;z-index:1}
.reviews-marquee{
  margin-top:28px;
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:22px;
  background:rgba(255,255,255,.06);
  padding:14px 0;
  mask-image:linear-gradient(90deg,transparent,black 8%,black 92%,transparent);
}
.reviews-marquee:hover .reviews-track{animation-play-state:paused}
.reviews-track{
  display:flex;
  gap:14px;
  width:max-content;
  animation:reviews-scroll 30s linear infinite;
}
.review-card{
  position:relative;
  width:320px;
  flex-shrink:0;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:14px;
  padding:18px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  background:rgba(255,255,255,.05);
  box-shadow:var(--sh-md);
  overflow:hidden;
}
.review-card::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:2px;
  background:linear-gradient(90deg,rgba(159,243,207,.65),rgba(141,202,255,.4),transparent 85%);
}
.review-card p{
  color:var(--text);
  font-size:.92rem;
  line-height:1.68;
}
.review-card span{
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--muted);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.review-card span::before{
  content:"";
  width:7px;height:7px;border-radius:50%;
  background:rgba(159,243,207,.5);
  flex-shrink:0;
}

@keyframes reviews-scroll{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}

/* ── Responsive ─────────────────────────────────────────── */
@media(max-width:960px){
  .navbar-inner{grid-template-columns:minmax(0,1fr) auto auto}
  .features-grid{grid-template-columns:1fr}
  .feat-card:nth-child(n){border-right:none;border-bottom:1px solid var(--border)}
  .feat-card:last-child{border-bottom:none}
  .pricing-controls{flex-direction:column;align-items:flex-start}
  .pricing-proof{justify-content:flex-start}
  .plan-grid{grid-template-columns:1fr;border-radius:24px}
  .plan-card{border-right:none;border-bottom:1px solid var(--border)}
  .plan-card:last-child{border-bottom:none}
  .plan-card.featured{margin:0;border-radius:0;box-shadow:none;border:none;border-bottom:1px solid rgba(159,243,207,.18)}
  .plan-card.featured::after{display:none}
  .ph-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .navbar-inner{
    grid-template-columns:auto auto;
    grid-template-areas:
      "brand cta"
      "nav nav";
    row-gap:10px;
    border-radius:24px;
  }
  .navbar-slot--brand{grid-area:brand}
  .navbar-slot--cta{grid-area:cta}
  .nav-links--center{grid-area:nav;justify-self:start}
  .nav-links a{min-width:0}
  .win-body{grid-template-columns:1fr}
  .win-side{border-right:none;border-bottom:1px solid rgba(255,255,255,.055);flex-direction:row;flex-wrap:wrap;gap:4px}
  .ws-stat{display:none}
  .preset-grid,.pre-lib,.pre-mini{grid-template-columns:1fr 1fr}
}
@media(max-width:580px){
  .hero{padding-top:56px}
  .hero-badge{flex-wrap:wrap;justify-content:center;padding:8px 12px}
  .hero-badge__divider{display:none}
  .hero-badge__meta{width:100%;text-align:center}
  .hero-actions{flex-direction:column;width:100%}
  .btn-primary{width:100%;justify-content:center}
  .navbar-inner{border-radius:20px}
  .demo-tabs{flex-wrap:wrap;justify-content:center;border-radius:20px}
  .footer-inner{flex-direction:column;align-items:flex-start}
  .footer-meta{flex-direction:column;gap:5px;align-items:flex-start}
  .footer-sections{grid-template-columns:1fr;gap:28px}
}

/* ── Sky Theme Overrides ───────────────────────────────── */
:root{
  --bg:#eaf3ff;
  --bg-2:#f2f7ff;
  --surface:rgba(255,255,255,.84);
  --surface-s:#f7fbff;
  --border:rgba(38,91,180,.13);
  --border-hi:rgba(38,91,180,.24);
  --text:#132845;
  --muted:#617897;
  --muted-hi:#344f73;
  --accent:#2c79f0;
  --accent-2:#4f98ff;
  --accent-3:#76c5ff;
  --danger:#d95873;
  --sh-xl:0 28px 68px rgba(27,65,122,.14);
  --sh-lg:0 16px 36px rgba(27,65,122,.12);
  --sh-md:0 10px 22px rgba(27,65,122,.1);
}

body{
  background:#fff;
}

body::before{
  display:none;
}

.navbar-inner{
  background:rgba(255,255,255,.88);
  border:none;
  box-shadow:var(--sh-lg);
}

.nav-links{
  background:transparent;
}

.nav-links a{
  color:var(--muted);
}

.nav-links a:hover{
  color:var(--text);
  background:rgba(47,120,233,.08);
}

.btn-dl,
.btn-primary{
  background:linear-gradient(135deg,#f8fbff,#e5f0ff);
  color:#2159c7 !important;
  box-shadow:0 8px 22px rgba(39,93,190,.14);
}

.btn-dl__icon,
.btn-primary__icon{
  background:rgba(255,255,255,.82);
}

.btn-primary{
  padding:16px 32px 16px 18px;
  font-size:1.05rem;
}

.hero-badge{
  border-color:rgba(44,121,240,.28);
  background:rgba(44,121,240,.08);
}

.hero-badge__app{
  background:rgba(44,121,240,.12);
  color:#2a68cc;
}

.hero-badge__meta{
  color:var(--muted-hi);
}

.hero h1 em{
  color:#2a68cc;
}

.hero-meta{
  color:var(--muted);
}

.hero-proof{
  background:transparent;
  border:none;
  color:#245dc9;
  text-shadow:
    0 0 22px rgba(44,121,240,.3),
    0 0 54px rgba(118,197,255,.22),
    0 18px 46px rgba(27,65,122,.18);
}

.hero-proof::before{
  background:#2a68cc;
  box-shadow:0 0 22px rgba(44,121,240,.42),0 0 46px rgba(118,197,255,.28);
}

.hero-meta{
  margin-top:12px;
  font-size:.84rem;
  font-weight:600;
}

.demo-tabs{
  border-color:var(--border);
  background:rgba(255,255,255,.72);
}

.dtab{
  color:var(--muted);
}

.dtab.on{
  background:rgba(44,121,240,.12);
  color:#255dc9;
}

.demo-sub{
  color:var(--muted-hi);
  font-weight:500;
}

.app-window{
  border-color:rgba(38,91,180,.14);
  background:linear-gradient(160deg,#ffffff,#f5faff);
  box-shadow:var(--sh-xl);
}

.win-bar{
  background:rgba(236,244,255,.96);
  border-bottom-color:rgba(38,91,180,.12);
}

.win-ttl{
  color:var(--muted);
}

.win-body{
  background:transparent;
}

.win-side{
  background:rgba(237,245,255,.72);
  border-right-color:rgba(38,91,180,.12);
}

.ws-i{
  color:var(--muted);
}

.ws-i.on{
  background:rgba(44,121,240,.12);
  color:#255dc9;
}

.ws-stat{
  border-color:rgba(38,91,180,.12);
  background:#ffffff;
}

.ws-stat .lbl,
.ws-stat span{
  color:var(--muted);
}

.goal-card,
.prog-wrap,
.sstat,
.pcard,
.lcard,
.feat-screen,
.pre-mini-card,
.mb-mini-row,
.mrow:hover{
  background:rgba(244,249,255,.92);
  border-color:rgba(38,91,180,.12);
}

.pemoji,
.pme,
.lic{
  background:rgba(44,121,240,.1);
  border-color:rgba(44,121,240,.18);
  color:#245dc9;
}

.focus-sub,
.pcard p,
.pre-hdr p,
.lcard p,
.prog-meta,
.sstat span,
.feat-card p{
  color:var(--muted);
}

.mpill.on,
.stag,
.mchip,
.live-badge{
  background:rgba(44,121,240,.12);
  color:#245dc9;
}

.cta-row{
  background:rgba(44,121,240,.08);
  border-color:rgba(44,121,240,.2);
}

.cta-row span{
  color:var(--muted-hi);
}

.cta-row button,
.np-btn{
  background:linear-gradient(135deg,#f8fbff,#e5f0ff);
  color:#245dc9;
  border:1px solid rgba(44,121,240,.2);
}

.live-dot{
  background:#2a68cc;
}

.achip{
  background:rgba(230,240,255,.86);
  color:var(--muted-hi);
}

.achip.x{
  background:rgba(217,88,115,.12);
  color:#b4435d;
}

.s-ghost{
  background:rgba(230,240,255,.86);
  color:var(--muted-hi);
  border-color:rgba(38,91,180,.16);
}

.s-danger{
  background:rgba(217,88,115,.08);
  color:#b4435d;
  border-color:rgba(217,88,115,.18);
}

.menu-wrap{
  background:transparent;
}

.mpop{
  background:#fbfdff;
  border-color:rgba(38,91,180,.16);
  box-shadow:var(--sh-lg);
}

.mpop-hd,
.mgrp{
  border-bottom-color:rgba(38,91,180,.1);
}

.mrow{
  color:var(--text);
}

.mrow-ic,
.mgrp-lbl,
.mpop-hd span,
.feat-screen-bar span{
  color:var(--muted);
}

.mlive{
  background:rgba(44,121,240,.08);
  border-color:rgba(44,121,240,.18);
}

.mlive-n{
  color:var(--muted-hi);
}

.mlive-a button{
  background:#ffffff;
  border-color:rgba(38,91,180,.16);
  color:var(--muted-hi);
}

.sec-ey{
  color:#2a68cc;
}

.sec-sub{
  color:var(--muted);
}

.features-grid{
  border-color:var(--border);
  background:rgba(255,255,255,.74);
}

.feat-card{
  background:rgba(255,255,255,.84);
  border-color:var(--border);
}

.feat-card:hover{
  background:#ffffff;
  box-shadow:0 10px 32px rgba(38,91,180,.11);
}

.feat-icon{
  background:rgba(44,121,240,.1);
  border-color:rgba(44,121,240,.18);
}

.feat-screen{
  background:#fafdff;
}

.feat-screen-bar{
  border-bottom-color:rgba(38,91,180,.1);
  background:rgba(236,244,255,.92);
}

.app-lock-row{
  background:rgba(244,249,255,.92);
}

.lock-badge.allowed{
  background:rgba(44,121,240,.12);
  color:#245dc9;
}

.lock-badge.blocked{
  background:rgba(217,88,115,.1);
  color:#b4435d;
}

.block-row{
  background:rgba(217,88,115,.08);
  border-color:rgba(217,88,115,.14);
}

.block-row .burl{
  color:#b4435d;
}

.block-row-ok{
  background:rgba(44,121,240,.08);
  border-color:rgba(44,121,240,.14);
}

.block-row-ok .burl{
  color:#245dc9;
}

.pricing-section{
  padding-top:92px;
}

.billing-toggle{
  border-color:var(--border);
  background:rgba(255,255,255,.72);
}

.bt{
  color:var(--muted);
}

.bt.on{
  background:linear-gradient(135deg,rgba(44,121,240,.16),rgba(118,197,255,.18));
  border-color:rgba(44,121,240,.22);
  box-shadow:0 10px 24px rgba(27,65,122,.16),0 0 0 1px rgba(44,121,240,.08) inset;
  color:#255dc9;
}

.bt:hover:not(.on){
  background:rgba(44,121,240,.08);
  color:var(--text);
}

.bt-badge{
  background:rgba(44,121,240,.12);
  color:#245dc9;
}

.pchip{
  background:rgba(255,255,255,.74);
  border-color:var(--border);
  color:var(--muted-hi);
}

.plan-grid{
  border-color:var(--border);
  background:rgba(255,255,255,.82);
}

.plan-card{
  border-right-color:var(--border);
  background:rgba(255,255,255,.86);
}

.plan-card.featured{
  background:
    radial-gradient(ellipse 90% 70% at 50% -10%, rgba(255,193,122,.34), transparent),
    #fff9f0;
  border-left-color:rgba(255,193,122,.3);
  border-right-color:rgba(255,193,122,.3);
  box-shadow:0 0 0 1px rgba(255,193,122,.26),0 22px 60px rgba(27,65,122,.14);
}

.plan-card.featured::after{
  background:
    radial-gradient(circle at 18% 20%, rgba(255,193,122,.5), transparent 62%),
    radial-gradient(circle at 84% 14%, rgba(44,121,240,.18), transparent 62%),
    radial-gradient(circle at 48% 86%, rgba(118,197,255,.22), transparent 62%);
  filter:blur(28px);
  opacity:.95;
}

.plan-kicker,
.plan-desc{
  color:var(--muted);
}

.plan-card.featured .plan-kicker{
  color:#ab6d2c;
}

.save-badge{
  background:rgba(44,121,240,.12);
  color:#245dc9;
}

.plan-pts li{
  color:var(--muted-hi);
}

.plan-pts li::before{
  background:#2a68cc;
}

.cta-sec{
  border-color:rgba(38,91,180,.2);
  background:rgba(236,244,255,.9);
  color:#245dc9;
}

.plan-social{
  border-color:rgba(255,193,122,.28);
  background:rgba(255,193,122,.16);
  color:#ab6d2c;
}

.ph-item{
  background:rgba(255,255,255,.84);
  border-color:var(--border);
}

.ph-item[open]{
  background:#ffffff;
}

.ph-sum::after{
  border-color:rgba(38,91,180,.16);
  background:rgba(236,244,255,.92);
  color:var(--muted-hi);
}

.ph-icon{
  border-color:rgba(44,121,240,.18);
  background:rgba(44,121,240,.1);
  color:#245dc9;
}

.ph-chip{
  border-color:rgba(38,91,180,.16);
  background:rgba(236,244,255,.82);
  color:var(--muted);
}

.ph-chip.on{
  border-color:rgba(44,121,240,.22);
  background:rgba(44,121,240,.12);
  color:#245dc9;
}

.ph-item--life{
  border-color:rgba(255,193,122,.28);
  background:
    radial-gradient(circle at 30% 20%, rgba(255,193,122,.18), transparent 62%),
    rgba(255,255,255,.84);
}

.ph-item--life .ph-icon{
  border-color:rgba(255,193,122,.26);
  background:rgba(255,193,122,.16);
  color:#ab6d2c;
}

.ph-body li{
  color:var(--muted-hi);
}

.ph-body li::before{
  background:#2a68cc;
}

.testimonials-section{
  padding:92px 0 0;
}

.reviews-marquee{
  margin-top:28px;
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:22px;
  background:rgba(255,255,255,.82);
  padding:14px 0;
  mask-image:linear-gradient(90deg,transparent,black 8%,black 92%,transparent);
}

.reviews-track{
  display:flex;
  gap:14px;
  width:max-content;
  animation:reviews-scroll 30s linear infinite;
}

.review-card{
  width:320px;
  flex-shrink:0;
  padding:18px;
  border:1px solid rgba(38,91,180,.12);
  border-radius:16px;
  background:#ffffff;
  box-shadow:var(--sh-md);
}

.review-card::before{
  background:linear-gradient(90deg,rgba(44,121,240,.48),rgba(118,197,255,.42),transparent 85%);
}

.review-card p{
  color:var(--text);
  font-size:.92rem;
  line-height:1.68;
}

.review-card span{
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--muted);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.review-card span::before{
  background:rgba(44,121,240,.4);
}

@keyframes reviews-scroll{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}

.footer{
  border-top-color:var(--border);
}

.footer-links a{
  color:var(--muted);
}

.footer-links a:hover{
  color:var(--text);
  background:rgba(44,121,240,.08);
}

.footer-section h2{
  border-bottom-color:rgba(38,91,180,.1);
  color:var(--text);
}

.footer-section__links a{
  color:var(--muted);
}

.footer-section__links a:hover,
.footer-section__links a:focus-visible{
  color:var(--text);
}

.soc{
  background:rgba(236,244,255,.86);
  border-color:var(--border);
  color:var(--muted-hi);
}

.soc:hover{
  background:#ffffff;
  border-color:var(--border-hi);
}

.footer-meta{
  border-top-color:rgba(38,91,180,.1);
  color:var(--muted);
}

.reveal.is-visible{opacity:1;transform:none;transition:opacity 480ms ease,transform 480ms ease}

@media(max-width:760px){
  .win-side{border-bottom-color:rgba(38,91,180,.1)}
  .review-card{width:280px}
}

/* Redesign overrides */
.hero-proof{
  gap:0;
}

.hero-proof::before{
  display:none;
}

.features-copy,
.pricing-copy{
  max-width:60rem;
}

.feature-notes{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}

.feature-notes span{
  display:inline-flex;
  align-items:center;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(38,91,180,.12);
  background:rgba(255,255,255,.8);
  color:var(--muted-hi);
  font-size:.79rem;
  font-weight:800;
  letter-spacing:.02em;
  box-shadow:0 10px 24px rgba(27,65,122,.08);
}

.features-mosaic{
  display:grid;
  grid-template-columns:minmax(0,1.24fr) minmax(0,.9fr);
  gap:18px;
  margin-top:38px;
  align-items:stretch;
}

.feature-card{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:24px;
  padding:32px;
  border:1px solid rgba(38,91,180,.12);
  border-radius:30px;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(247,251,255,.92));
  box-shadow:0 24px 50px rgba(27,65,122,.08);
  overflow:hidden;
}

.feature-card::after{
  content:"";
  position:absolute;
  inset:auto -16% -34% auto;
  width:240px;
  height:240px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(118,197,255,.18), transparent 70%);
  pointer-events:none;
}

.feature-card--hero{
  grid-row:span 3;
  background:
    radial-gradient(circle at top right, rgba(255,193,122,.24), transparent 28%),
    radial-gradient(circle at 20% 18%, rgba(118,197,255,.2), transparent 24%),
    linear-gradient(160deg, rgba(255,255,255,.98), rgba(245,249,255,.96));
}

.feature-card__copy{
  position:relative;
  z-index:1;
}

.feature-card__eyebrow{
  display:inline-flex;
  align-items:center;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(44,121,240,.1);
  color:#245dc9;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.feature-card h3{
  margin-top:14px;
  font-size:clamp(1.45rem,2vw,2rem);
  font-weight:800;
  letter-spacing:-.05em;
  line-height:1.02;
  max-width:18ch;
}

.feature-card p{
  margin-top:12px;
  color:var(--muted-hi);
  font-size:.95rem;
  line-height:1.72;
  max-width:36rem;
}

.command-menu{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:18px;
  border-radius:24px;
  border:1px solid rgba(28,62,118,.12);
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(243,248,255,.96));
  box-shadow:0 18px 36px rgba(27,65,122,.11);
}

.command-menu--inline{
  margin-top:auto;
}

.command-menu__top,
.command-menu__session-meta,
.command-menu__presets-head,
.command-menu__preset-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.command-menu__eyebrow{
  display:block;
  color:var(--muted);
  font-size:.69rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.command-menu__top strong{
  display:block;
  margin-top:5px;
  font-size:1.05rem;
  letter-spacing:-.03em;
}

.command-menu__pill,
.command-menu__session-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 12px;
  border-radius:999px;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.03em;
}

.command-menu__pill{
  background:rgba(255,193,122,.18);
  color:#9f5c14;
}

.command-menu__session{
  padding:16px;
  border-radius:20px;
  border:1px solid rgba(38,91,180,.1);
  background:rgba(244,249,255,.94);
}

.command-menu__session-meta span{
  display:block;
  color:var(--muted);
  font-size:.75rem;
  font-weight:700;
}

.command-menu__session-meta strong{
  display:block;
  margin-top:6px;
  font-size:2.2rem;
  font-weight:800;
  letter-spacing:-.08em;
  line-height:.92;
}

.command-menu__session-chip{
  align-self:flex-start;
  background:rgba(44,121,240,.1);
  color:#245dc9;
}

.command-menu__bar{
  height:8px;
  margin-top:14px;
  border-radius:999px;
  background:rgba(38,91,180,.09);
  overflow:hidden;
}

.command-menu__bar span{
  display:block;
  width:74%;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg, #245dc9, #79c6ff);
}

.command-menu__facts{
  display:grid;
  gap:7px;
  margin-top:12px;
  color:var(--muted-hi);
  font-size:.8rem;
  font-weight:700;
}

.command-menu__launches{
  display:grid;
  gap:10px;
}

.command-menu__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:10px;
}

.command-menu__action{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
  width:100%;
  padding:14px 15px;
  border:1px solid rgba(38,91,180,.12);
  border-radius:18px;
  background:rgba(255,255,255,.9);
  color:var(--text);
  text-align:left;
  box-shadow:0 12px 24px rgba(27,65,122,.08);
  cursor:pointer;
}

.command-menu__action span{
  font-size:.93rem;
  font-weight:800;
  letter-spacing:-.02em;
}

.command-menu__action em{
  color:var(--muted);
  font-size:.76rem;
  font-style:normal;
  font-weight:700;
}

.command-menu__action--primary{
  background:linear-gradient(135deg,#eef5ff,#ffffff);
  border-color:rgba(44,121,240,.18);
}

.command-menu__presets{
  padding:16px;
  border-radius:20px;
  border:1px solid rgba(38,91,180,.1);
  background:rgba(255,255,255,.92);
}

.command-menu__presets-head{
  color:var(--muted);
  font-size:.75rem;
  font-weight:800;
  letter-spacing:.04em;
}

.command-menu__preset-list{
  display:grid;
  gap:8px;
  margin-top:12px;
}

.command-menu__preset-row{
  align-items:center;
  padding:11px 12px;
  border-radius:16px;
  background:rgba(243,248,255,.92);
  border:1px solid rgba(38,91,180,.08);
  color:var(--muted-hi);
}

.command-menu__preset-row span{
  font-size:.84rem;
  font-weight:800;
  letter-spacing:-.01em;
  color:var(--text);
}

.command-menu__preset-row em{
  color:var(--muted);
  font-size:.74rem;
  font-style:normal;
  font-weight:700;
  text-align:right;
}

.signal-list{
  display:grid;
  gap:10px;
}

.signal-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:13px 14px;
  border-radius:18px;
  border:1px solid rgba(38,91,180,.1);
  background:rgba(244,249,255,.92);
  box-shadow:0 8px 18px rgba(27,65,122,.05);
}

.signal-row span{
  font-size:.9rem;
  font-weight:800;
  letter-spacing:-.02em;
}

.signal-row em{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  font-style:normal;
  font-size:.73rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.signal-row--good em{
  background:rgba(44,121,240,.12);
  color:#245dc9;
}

.signal-row--bad{
  background:rgba(255,246,241,.96);
  border-color:rgba(191,104,77,.12);
}

.signal-row--bad em{
  background:rgba(191,104,77,.12);
  color:#955136;
}

.preset-quilt{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:10px;
}

.preset-quilt__tile{
  padding:15px 14px;
  border-radius:20px;
  border:1px solid rgba(38,91,180,.1);
  background:rgba(250,252,255,.96);
  box-shadow:0 10px 20px rgba(27,65,122,.05);
}

.preset-quilt__tile span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:38px;
  height:38px;
  padding:0 10px;
  border-radius:12px;
  background:rgba(44,121,240,.1);
  color:#245dc9;
  font-size:.75rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.preset-quilt__tile strong{
  display:block;
  margin-top:13px;
  font-size:.92rem;
  letter-spacing:-.03em;
}

.preset-quilt__tile p{
  margin-top:5px;
  color:var(--muted);
  font-size:.79rem;
  line-height:1.55;
}

.mpop--redesign{
  width:min(370px,100%);
  background:transparent;
  border:none;
  box-shadow:none;
  overflow:visible;
}

.pricing-shell{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:28px;
}

.pricing-proof{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.pchip{
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(38,91,180,.12);
  background:rgba(255,255,255,.8);
  color:var(--muted-hi);
  font-size:.79rem;
  font-weight:800;
  letter-spacing:.02em;
  box-shadow:0 10px 24px rgba(27,65,122,.08);
}

.plan-grid--trio{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:20px;
  margin-top:0;
  border:none;
  background:transparent;
  overflow:visible;
}

.plan-grid--trio .plan-card{
  padding:30px 28px 28px;
  min-height:100%;
  border:1px solid rgba(38,91,180,.12);
  border-radius:30px;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(247,251,255,.92));
  box-shadow:0 24px 50px rgba(27,65,122,.08);
  gap:0;
}

.plan-grid--trio .plan-card:last-child{
  border-right:1px solid rgba(38,91,180,.12);
}

.plan-grid--trio .plan-card.featured{
  margin:0;
  z-index:2;
  border:1px solid rgba(255,193,122,.32);
  transform:translateY(-22px);
  background:
    radial-gradient(circle at top center, rgba(255,193,122,.32), transparent 30%),
    linear-gradient(180deg, rgba(255,251,243,.98), rgba(255,247,235,.95));
  box-shadow:0 0 0 1px rgba(255,193,122,.16),0 34px 64px rgba(27,65,122,.12);
}

.plan-grid--trio .plan-card.featured::after{
  inset:-16%;
  background:
    radial-gradient(circle at 20% 12%, rgba(255,193,122,.38), transparent 56%),
    radial-gradient(circle at 82% 10%, rgba(118,197,255,.22), transparent 54%);
  filter:blur(26px);
}

.plan-grid--trio .plan-badge{
  margin-bottom:14px;
  background:rgba(255,193,122,.18);
  border-color:rgba(255,193,122,.3);
  color:#9f5c14;
}

.plan-grid--trio .plan-badge--ghost{
  background:rgba(44,121,240,.08);
  border-color:rgba(44,121,240,.18);
  color:#245dc9;
}

.plan-grid--trio .plan-kicker{
  color:var(--muted);
}

.plan-name{
  margin-top:12px;
  font-size:1.55rem;
  font-weight:800;
  letter-spacing:-.05em;
  line-height:1.02;
}

.plan-grid--trio .plan-desc{
  margin-top:12px;
  color:var(--muted-hi);
  font-size:.92rem;
  line-height:1.72;
  min-height:4.8rem;
}

.plan-grid--trio .plan-cta{
  width:100%;
  margin-top:24px;
}

.plan-grid--trio .plan-price{
  margin-top:28px;
  font-size:clamp(2.4rem,3.7vw,3.3rem);
}

.plan-grid--trio .plan-price sub{
  margin-left:4px;
}

.plan-note{
  margin-top:9px;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.65;
}

.plan-divider{
  height:1px;
  margin-top:22px;
  background:rgba(38,91,180,.1);
}

.plan-grid--trio .plan-pts{
  gap:10px;
  margin-top:22px;
}

.plan-grid--trio .plan-pts li{
  color:var(--muted-hi);
}

.plan-foot{
  margin-top:auto;
  padding-top:22px;
  color:var(--muted);
  font-size:.75rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.pricing-compare{
  margin-top:44px;
}

.compare-shell{
  margin-top:18px;
  border:1px solid rgba(38,91,180,.12);
  border-radius:24px;
  overflow:hidden;
  background:rgba(255,255,255,.88);
  box-shadow:0 18px 40px rgba(27,65,122,.08);
}

.compare-table{
  width:100%;
  border-collapse:collapse;
}

.compare-table th,
.compare-table td{
  padding:16px 18px;
  border-bottom:1px solid rgba(38,91,180,.08);
}

.compare-table thead th{
  color:var(--muted);
  font-size:.75rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  background:rgba(243,248,255,.9);
}

.compare-table thead th:first-child,
.compare-table tbody th{
  text-align:left;
}

.compare-table thead th:not(:first-child),
.compare-table tbody td{
  text-align:center;
}

.compare-table tbody th{
  color:var(--text);
  font-size:.91rem;
  font-weight:800;
  letter-spacing:-.02em;
}

.compare-table tbody td{
  color:var(--muted-hi);
  font-size:.88rem;
  font-weight:700;
}

.compare-table tbody tr:last-child th,
.compare-table tbody tr:last-child td{
  border-bottom:none;
}

.compare-table__featured{
  background:rgba(255,193,122,.16);
}

@media(max-width:1080px){
  .features-mosaic{
    grid-template-columns:1fr;
  }

  .feature-card--hero{
    grid-row:auto;
  }

  .pricing-shell{
    flex-direction:column;
    align-items:flex-start;
  }

  .plan-grid--trio{
    grid-template-columns:1fr;
  }

  .plan-grid--trio .plan-card.featured{
    order:-1;
    transform:none;
  }

  .plan-grid--trio .plan-card.featured::after{
    display:none;
  }

  .compare-shell{
    overflow:auto;
  }

  .compare-table{
    min-width:700px;
  }
}

@media(max-width:760px){
  .feature-card,
  .plan-grid--trio .plan-card{
    padding:26px 22px;
  }

  .feature-card h3,
  .plan-name{
    max-width:none;
  }

  .command-menu__grid,
  .preset-quilt{
    grid-template-columns:1fr;
  }

  .command-menu__preset-row{
    align-items:flex-start;
    flex-direction:column;
  }
}

@media(max-width:580px){
  .feature-notes,
  .pricing-proof{
    gap:8px;
  }

  .feature-notes span,
  .pchip{
    width:100%;
    justify-content:center;
  }

  .command-menu__session-meta,
  .command-menu__top{
    flex-direction:column;
  }

  .compare-table{
    min-width:620px;
  }
}

/* ── Lower Section Redesign ────────────────────────────── */
.btn-primary{
  padding:18px 38px 18px 20px;
  font-size:1.12rem;
  box-shadow:0 12px 30px rgba(39,93,190,.16);
}

.btn-primary__icon{
  width:46px;
  height:46px;
}

.btn-primary svg{
  width:24px;
  height:24px;
}

.hero-proof{
  margin-top:18px;
  padding:8px 16px;
  border:none;
  border-radius:999px;
  background:transparent;
  box-shadow:none;
  gap:0;
  font-family:var(--serif);
  font-size:clamp(1.65rem,3.6vw,2.95rem);
  font-weight:700;
  letter-spacing:-.06em;
  color:#245dc9;
  text-shadow:none;
}

.hero-proof::before{
  display:none;
}

.features-copy--studio{
  max-width:46rem;
}

.feature-notes--studio{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}

.feature-notes--studio span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(38,91,180,.12);
  background:rgba(255,255,255,.76);
  color:var(--muted-hi);
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.02em;
  box-shadow:0 10px 22px rgba(27,65,122,.06);
}

.features-grid--studio{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:18px;
  margin-top:40px;
  border:none;
  border-radius:0;
  overflow:visible;
  background:transparent;
}

.features-grid--studio .feat-card{
  padding:30px;
  border:1px solid rgba(38,91,180,.12);
  border-radius:30px;
  background:
    radial-gradient(circle at top right, rgba(255,193,122,.16), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(246,250,255,.92));
  box-shadow:0 22px 48px rgba(27,65,122,.08);
  transform:none;
}

.features-grid--studio .feat-card:hover{
  transform:translateY(-3px);
  background:
    radial-gradient(circle at top right, rgba(255,193,122,.18), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,251,255,.94));
}

.features-grid--studio .feat-card:nth-child(2n),
.features-grid--studio .feat-card:nth-child(3),
.features-grid--studio .feat-card:nth-child(4){
  border-right:1px solid rgba(38,91,180,.12);
  border-bottom:1px solid rgba(38,91,180,.12);
}

.features-grid--studio .feat-card--hero,
.features-grid--studio .feat-card--wide{
  grid-column:1 / -1;
}

.features-grid--studio .feat-icon{
  width:48px;
  height:48px;
  margin-bottom:18px;
  border-radius:15px;
  border:1px solid rgba(38,91,180,.12);
  background:linear-gradient(180deg, rgba(237,244,255,.92), rgba(255,255,255,.96));
  color:#275fc8;
  box-shadow:0 10px 24px rgba(27,65,122,.08);
}

.features-grid--studio .feat-card h3{
  max-width:18ch;
  font-size:1.38rem;
  font-weight:800;
  letter-spacing:-.05em;
  line-height:1.04;
}

.features-grid--studio .feat-card p{
  max-width:34rem;
  margin-top:12px;
  color:var(--muted-hi);
  font-size:.92rem;
  line-height:1.7;
}

.studio-hero-layout{
  display:grid;
  grid-template-columns:minmax(0, .92fr) minmax(0, 1.08fr);
  gap:22px;
  align-items:stretch;
}

.studio-hero-copy{
  display:flex;
  flex-direction:column;
}

.studio-hero-copy h3{
  max-width:12ch;
  font-size:clamp(1.8rem, 3vw, 2.5rem);
}

.studio-popover{
  margin-top:auto;
  padding:18px;
  border-radius:26px;
  border:1px solid rgba(27,65,122,.12);
  background:
    radial-gradient(circle at 82% 12%, rgba(255,193,122,.18), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,249,255,.96));
  box-shadow:0 18px 36px rgba(27,65,122,.1);
}

.studio-popover__top,
.studio-popover__row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.studio-eyebrow{
  display:block;
  color:var(--muted);
  font-size:.69rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.studio-popover__top strong{
  display:block;
  margin-top:5px;
  font-size:1.04rem;
  letter-spacing:-.03em;
}

.studio-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(255,193,122,.2);
  color:#9d6021;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.03em;
}

.studio-popover__timer{
  margin-top:18px;
  font-size:3rem;
  font-weight:800;
  letter-spacing:-.08em;
  line-height:.92;
}

.studio-popover__rows{
  display:grid;
  gap:10px;
  margin-top:16px;
}

.studio-popover__row{
  padding:12px 13px;
  border-radius:16px;
  background:rgba(244,249,255,.92);
  border:1px solid rgba(38,91,180,.08);
}

.studio-popover__row span{
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--muted);
}

.studio-popover__row em{
  color:var(--text);
  font-size:.82rem;
  font-style:normal;
  font-weight:700;
  text-align:right;
}

.studio-window{
  display:flex;
  flex-direction:column;
  min-height:100%;
  border-radius:28px;
  border:1px solid rgba(27,65,122,.12);
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(245,249,255,.95));
  box-shadow:0 22px 42px rgba(27,65,122,.12);
  overflow:hidden;
}

.studio-window__bar{
  display:flex;
  align-items:center;
  gap:12px;
  padding:14px 18px;
  border-bottom:1px solid rgba(38,91,180,.08);
  background:rgba(241,246,255,.94);
  color:var(--muted);
  font-size:.78rem;
  font-weight:700;
}

.studio-window__lights{
  display:flex;
  gap:6px;
}

.studio-window__lights span{
  width:10px;
  height:10px;
  border-radius:50%;
}

.studio-window__lights span:nth-child(1){background:#ff7d63}
.studio-window__lights span:nth-child(2){background:#ffca62}
.studio-window__lights span:nth-child(3){background:#65d38c}

.studio-window__body{
  display:grid;
  grid-template-columns:140px 1fr;
  min-height:360px;
}

.studio-window__sidebar{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:18px 14px;
  background:rgba(237,244,255,.82);
  border-right:1px solid rgba(38,91,180,.08);
}

.studio-window__sidebar span{
  padding:10px 12px;
  border-radius:14px;
  color:var(--muted);
  font-size:.8rem;
  font-weight:700;
}

.studio-window__sidebar .is-active{
  background:#ffffff;
  color:#255dc9;
  box-shadow:0 8px 20px rgba(27,65,122,.08);
}

.studio-window__main{
  display:flex;
  flex-direction:column;
  gap:16px;
  padding:22px;
}

.studio-window__headline strong{
  display:block;
  font-size:1.36rem;
  font-weight:800;
  letter-spacing:-.04em;
}

.studio-window__headline span{
  display:block;
  margin-top:6px;
  color:var(--muted);
  font-size:.82rem;
  line-height:1.6;
}

.studio-metric-row{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:12px;
}

.studio-metric{
  padding:14px 16px;
  border-radius:18px;
  background:#ffffff;
  border:1px solid rgba(38,91,180,.08);
}

.studio-metric span{
  display:block;
  color:var(--muted);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.studio-metric strong{
  display:block;
  margin-top:7px;
  font-size:1.55rem;
  font-weight:800;
  letter-spacing:-.06em;
}

.studio-stack{
  display:grid;
  gap:12px;
  margin-top:auto;
}

.studio-stack__card,
.studio-stack__cta{
  padding:16px;
  border-radius:20px;
  border:1px solid rgba(38,91,180,.08);
  background:rgba(255,255,255,.92);
}

.studio-stack__card span,
.studio-stack__cta span{
  display:block;
  color:var(--muted);
  font-size:.71rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.studio-stack__card strong{
  display:block;
  margin-top:8px;
  font-size:1rem;
  font-weight:800;
  letter-spacing:-.03em;
}

.studio-stack__card em{
  display:block;
  margin-top:6px;
  color:var(--muted-hi);
  font-size:.8rem;
  font-style:normal;
}

.studio-stack__cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  background:linear-gradient(180deg, rgba(239,245,255,.96), rgba(255,255,255,.94));
}

.studio-stack__cta button{
  border:none;
  border-radius:999px;
  padding:11px 16px;
  background:linear-gradient(135deg,#f8fbff,#e5f0ff);
  color:#2159c7;
  font-size:.85rem;
  font-weight:800;
  letter-spacing:-.02em;
  box-shadow:0 10px 24px rgba(27,65,122,.1);
}

.feat-card--compact{
  position:relative;
}

.studio-rule-list{
  display:grid;
  gap:10px;
  margin-top:20px;
}

.studio-rule{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 15px;
  border-radius:18px;
  border:1px solid rgba(38,91,180,.09);
  background:rgba(246,250,255,.92);
}

.studio-rule span{
  font-size:.9rem;
  font-weight:800;
  letter-spacing:-.02em;
  color:var(--text);
}

.studio-rule em{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 11px;
  border-radius:999px;
  font-style:normal;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.studio-rule--good em{
  background:rgba(44,121,240,.12);
  color:#245dc9;
}

.studio-rule--bad{
  background:rgba(255,246,240,.96);
  border-color:rgba(191,104,77,.12);
}

.studio-rule--bad em{
  background:rgba(191,104,77,.12);
  color:#99543a;
}

.feat-card--wide{
  display:grid;
  grid-template-columns:minmax(0, .78fr) minmax(0, 1.22fr);
  gap:22px;
  align-items:start;
}

.studio-memory{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:18px;
}

.studio-memory span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 12px;
  border-radius:999px;
  background:rgba(44,121,240,.08);
  color:#255dc9;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.02em;
}

.studio-library{
  padding:18px;
  border-radius:24px;
  border:1px solid rgba(38,91,180,.09);
  background:
    radial-gradient(circle at top right, rgba(118,197,255,.16), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(243,248,255,.94));
  box-shadow:0 16px 34px rgba(27,65,122,.08);
}

.studio-library__header,
.studio-library__footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.studio-library__header strong{
  font-size:.98rem;
  font-weight:800;
  letter-spacing:-.03em;
}

.studio-library__header span{
  color:var(--muted);
  font-size:.77rem;
  font-weight:700;
}

.studio-library__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:12px;
  margin-top:16px;
}

.studio-library__card{
  padding:16px 15px;
  border-radius:20px;
  border:1px solid rgba(38,91,180,.08);
  background:#ffffff;
}

.studio-library__card span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:38px;
  height:38px;
  padding:0 10px;
  border-radius:12px;
  background:rgba(44,121,240,.1);
  color:#255dc9;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.08em;
}

.studio-library__card strong{
  display:block;
  margin-top:12px;
  font-size:.92rem;
  font-weight:800;
  letter-spacing:-.03em;
}

.studio-library__card p{
  margin-top:5px;
  color:var(--muted);
  font-size:.76rem;
  line-height:1.55;
}

.studio-library__footer{
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid rgba(38,91,180,.08);
}

.studio-library__footer div{
  flex:1;
}

.studio-library__footer span{
  display:block;
  color:var(--muted);
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.studio-library__footer strong{
  display:block;
  margin-top:6px;
  font-size:.98rem;
  font-weight:800;
  letter-spacing:-.03em;
}

.pricing-stage{
  display:grid;
  grid-template-columns:minmax(0, 1.2fr) minmax(280px, .8fr);
  gap:22px;
  align-items:end;
}

.pricing-stage__copy{
  max-width:48rem;
}

.pricing-proof--stage{
  justify-content:flex-end;
  align-self:end;
}

.pricing-proof--stage .pchip{
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(38,91,180,.12);
  background:rgba(255,255,255,.82);
  color:var(--muted-hi);
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.02em;
  box-shadow:0 12px 24px rgba(27,65,122,.06);
}

.ownership-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:18px;
  margin-top:32px;
  max-width:920px;
  margin-left:auto;
  margin-right:auto;
}

.ownership-card{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:0;
  padding:30px 28px 28px;
  border:1px solid rgba(38,91,180,.12);
  border-radius:32px;
  background:
    radial-gradient(circle at top right, rgba(118,197,255,.16), transparent 26%),
    linear-gradient(180deg, rgba(255,255,255,.97), rgba(246,250,255,.92));
  box-shadow:0 24px 52px rgba(27,65,122,.08);
}

.ownership-card--featured{
  transform:translateY(-20px);
  z-index:2;
  border-color:rgba(255,193,122,.28);
  background:
    radial-gradient(circle at 50% -12%, rgba(255,193,122,.34), transparent 34%),
    radial-gradient(circle at 88% 12%, rgba(118,197,255,.16), transparent 24%),
    linear-gradient(180deg, rgba(255,251,244,.98), rgba(255,246,234,.95));
  box-shadow:0 0 0 1px rgba(255,193,122,.16), 0 32px 68px rgba(27,65,122,.12);
}

.ownership-card__badge,
.ownership-card__tag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:fit-content;
  padding:7px 12px;
  border-radius:999px;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.03em;
}

.ownership-card__badge{
  margin-bottom:16px;
  background:rgba(255,193,122,.18);
  color:#9f6121;
}

.ownership-card__tag{
  margin-top:12px;
  background:rgba(44,121,240,.08);
  color:#255dc9;
}

.ownership-card__eyebrow{
  color:var(--muted);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.ownership-card h3{
  margin-top:12px;
  font-size:1.55rem;
  font-weight:800;
  letter-spacing:-.05em;
  line-height:1.02;
}

.ownership-card p{
  margin-top:12px;
  color:var(--muted-hi);
  font-size:.9rem;
  line-height:1.72;
  min-height:4.8rem;
}

.ownership-price{
  margin-top:24px;
  font-size:clamp(2.45rem, 3.9vw, 3.35rem);
  font-weight:800;
  letter-spacing:-.08em;
  line-height:.92;
}

.ownership-price sub{
  margin-left:4px;
  color:var(--muted);
  font-size:.9rem;
  font-weight:700;
  vertical-align:middle;
}

.ownership-cta{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:50px;
  margin-top:22px;
  border-radius:18px;
  font-size:.92rem;
  font-weight:800;
  letter-spacing:-.02em;
  transition:transform 140ms, box-shadow 140ms, background 140ms;
}

.ownership-cta:hover{
  transform:translateY(-1px);
}

.ownership-cta--primary{
  background:linear-gradient(135deg,#fff9ef,#ffe8c7);
  color:#7a4710;
  box-shadow:0 16px 30px rgba(255,193,122,.18);
}

.ownership-cta--secondary{
  border:1px solid rgba(38,91,180,.16);
  background:rgba(239,245,255,.88);
  color:#245dc9;
}

.ownership-list{
  display:grid;
  gap:10px;
  margin:24px 0 0;
  padding:0;
  list-style:none;
}

.ownership-list li{
  position:relative;
  padding-left:17px;
  color:var(--muted-hi);
  font-size:.86rem;
  line-height:1.55;
}

.ownership-list li::before{
  content:"";
  position:absolute;
  top:.6em;
  left:0;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#255dc9;
}

.ownership-meta{
  margin-top:auto;
  padding-top:24px;
  color:var(--muted);
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.ownership-perks{
  display:grid;
  gap:10px;
  margin-top:24px;
}

.ownership-perks__item{
  padding:14px 15px;
  border-radius:18px;
  border:1px solid rgba(255,193,122,.16);
  background:rgba(255,255,255,.72);
}

.ownership-perks__item span{
  display:block;
  color:#9f6121;
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.ownership-perks__item strong{
  display:block;
  margin-top:7px;
  font-size:.92rem;
  font-weight:800;
  letter-spacing:-.03em;
  line-height:1.45;
}

.ownership-social{
  margin-top:16px;
  padding:12px 14px;
  border-radius:18px;
  background:rgba(255,193,122,.16);
  color:#9f6121;
  font-size:.82rem;
  font-weight:800;
  text-align:center;
}

.ownership-bridge{
  margin-top:20px;
  padding:26px 28px 28px;
  border:1px solid rgba(38,91,180,.12);
  border-radius:30px;
  background:
    radial-gradient(circle at top right, rgba(118,197,255,.16), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(244,249,255,.92));
  box-shadow:0 18px 40px rgba(27,65,122,.08);
}

.ownership-bridge__lead{
  margin:0;
  max-width:64rem;
  color:var(--muted-hi);
  font-size:.95rem;
  line-height:1.8;
}

.ownership-bridge__grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:14px;
  margin-top:20px;
}

.ownership-bridge__item{
  padding:16px;
  border-radius:20px;
  border:1px solid rgba(38,91,180,.09);
  background:rgba(255,255,255,.78);
}

.ownership-bridge__item span{
  display:block;
  color:var(--muted);
  font-size:.71rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.ownership-bridge__item strong{
  display:block;
  margin-top:8px;
  color:var(--text);
  font-size:.88rem;
  font-weight:800;
  letter-spacing:-.02em;
  line-height:1.55;
}

@media(max-width:1100px){
  .studio-hero-layout,
  .feat-card--wide,
  .pricing-stage,
  .ownership-grid,
  .ownership-bridge__grid{
    grid-template-columns:1fr;
  }

  .ownership-card--featured{
    transform:none;
  }
}

@media(max-width:960px){
  .features-grid--studio{
    grid-template-columns:1fr;
  }

  .features-grid--studio .feat-card--hero,
  .features-grid--studio .feat-card--wide{
    grid-column:auto;
  }

  .features-grid--studio .feat-card:nth-child(n){
    border-right:1px solid rgba(38,91,180,.12);
    border-bottom:1px solid rgba(38,91,180,.12);
  }
}

@media(max-width:760px){
  .features-grid--studio .feat-card,
  .ownership-card,
  .ownership-bridge{
    padding:24px 22px;
    border-radius:26px;
  }

  .studio-window__body,
  .studio-metric-row,
  .studio-library__grid,
  .studio-library__footer{
    grid-template-columns:1fr;
  }

  .studio-window__sidebar{
    flex-direction:row;
    flex-wrap:wrap;
  }

  .studio-library__footer{
    flex-direction:column;
    align-items:flex-start;
  }

  .studio-stack__cta,
  .studio-popover__top,
  .studio-popover__row{
    flex-direction:column;
  }

  .studio-popover__row em{
    text-align:left;
  }
}

@media(max-width:580px){
  .feature-notes--studio span,
  .pricing-proof--stage .pchip{
    width:100%;
    justify-content:center;
  }

  .ownership-card p,
  .ownership-bridge__lead{
    font-size:.9rem;
  }
}

/* ── Testimonials + Story + Pricing Refresh ─────────────── */
.testimonials-section{
  padding:104px 0 0;
  overflow:hidden;
}

.reviews-marquee{
  margin-top:24px;
  padding:0;
  border:none;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.reviews-track{
  gap:20px;
  padding:8px 0;
  animation-duration:36s;
}

.review-card{
  width:360px;
  gap:16px;
  padding:10px 0 16px;
  border:none;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.review-card::before{
  display:none;
}

.review-card::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:74px;
  height:1px;
  background:linear-gradient(90deg, rgba(44,121,240,.34), transparent);
}

.review-card p{
  color:var(--text);
  font-family:var(--serif);
  font-size:1.38rem;
  line-height:1.22;
  letter-spacing:-.04em;
}

.review-card span{
  color:var(--muted);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.review-card span::before{
  width:28px;
  height:1px;
  border-radius:999px;
  background:rgba(44,121,240,.34);
}

.features-section--stories{
  padding-top:92px;
}

.story-transition{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin-bottom:26px;
}

.story-transition span{
  display:block;
  width:clamp(44px, 8vw, 112px);
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(44,121,240,.08), rgba(44,121,240,.52), rgba(118,197,255,.08));
  transform-origin:center;
  animation:storyPulse 4.8s ease-in-out infinite;
}

.story-transition span:nth-child(2){animation-delay:.15s}
.story-transition span:nth-child(3){animation-delay:.3s}
.story-transition span:nth-child(4){animation-delay:.45s}
.story-transition span:nth-child(5){animation-delay:.6s}

.story-carousel{
  position:relative;
}

.story-carousel__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
}

.story-carousel__index{
  display:inline-flex;
  align-items:baseline;
  gap:8px;
}

.story-carousel__index span{
  color:var(--text);
  font-size:1.06rem;
  font-weight:800;
  letter-spacing:-.04em;
}

.story-carousel__index em{
  color:rgba(97,120,151,.74);
  font-style:normal;
  font-size:.8rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.story-carousel__controls{
  display:flex;
  gap:10px;
}

.story-carousel__arrow{
  width:50px;
  height:50px;
  border:none;
  border-radius:999px;
  background:rgba(255,255,255,.8);
  color:#245dc9;
  display:grid;
  place-items:center;
  box-shadow:0 10px 24px rgba(27,65,122,.08);
  transition:transform 140ms, box-shadow 140ms, background 140ms;
}

.story-carousel__arrow:hover{
  transform:translateY(-1px);
  background:#ffffff;
  box-shadow:0 16px 30px rgba(27,65,122,.12);
}

.story-carousel__arrow span{
  font-size:1.1rem;
  line-height:1;
}

.story-carousel__viewport{
  overflow:hidden;
}

.story-carousel__rail{
  display:flex;
  width:100%;
  transition:transform 840ms cubic-bezier(.22,1,.36,1);
  will-change:transform;
}

.story-panel{
  min-width:100%;
}

.story-panel__scene{
  position:relative;
  min-height:560px;
  border-radius:38px;
  overflow:hidden;
  border:1px solid rgba(38,91,180,.1);
  background:linear-gradient(180deg, rgba(255,255,255,.9), rgba(244,249,255,.88));
  box-shadow:0 28px 64px rgba(27,65,122,.1);
}

.story-panel__caption{
  position:absolute;
  left:26px;
  right:26px;
  bottom:24px;
  z-index:3;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:18px 20px;
  border-radius:24px;
  background:linear-gradient(180deg, rgba(255,255,255,.88), rgba(247,250,255,.74));
  border:1px solid rgba(38,91,180,.08);
  backdrop-filter:blur(14px);
  box-shadow:0 16px 34px rgba(27,65,122,.08);
}

.story-panel__caption span{
  color:#245dc9;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.story-panel__caption p{
  color:var(--text);
  font-size:1rem;
  line-height:1.6;
  letter-spacing:-.02em;
  max-width:40rem;
}

.story-panel__scene--boundary{
  background:linear-gradient(180deg,#d0e7ff 0%,#e5f1ff 52%,#eef6ff 100%);
}

.story-boundary__canvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
}

.story-panel__scene--boundary .story-panel__caption{
  left:50%;
  right:auto;
  width:min(560px, calc(100% - 40px));
  transform:translateX(-50%);
  text-align:center;
}

.story-panel__scene--boundary .story-panel__caption p{
  font-family:var(--serif);
  font-size:clamp(1.28rem, 2vw, 2rem);
  line-height:1.08;
  letter-spacing:-.03em;
}

.story-panel__scene--boundary .story-panel__caption span{
  color:rgba(97,120,151,.72);
}

.story-panel__scene--presets{
  background:
    radial-gradient(circle at top right, rgba(118,197,255,.18), transparent 26%),
    linear-gradient(180deg, rgba(255,255,255,.95), rgba(244,249,255,.9));
}

.story-presets__stack{
  position:absolute;
  inset:62px 48px 110px;
  display:grid;
  place-items:center;
}

.story-preset-card{
  position:absolute;
  width:min(320px, 78%);
  padding:24px 24px 22px;
  border-radius:28px;
  border:1px solid rgba(38,91,180,.1);
  background:linear-gradient(180deg, #ffffff, #f3f7ff);
  box-shadow:0 22px 42px rgba(27,65,122,.12);
  animation:storyFloat 6.6s ease-in-out infinite;
}

.story-preset-card span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  height:42px;
  padding:0 12px;
  border-radius:14px;
  background:rgba(44,121,240,.1);
  color:#245dc9;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.story-preset-card strong{
  display:block;
  margin-top:16px;
  color:var(--text);
  font-size:1.24rem;
  font-weight:800;
  letter-spacing:-.04em;
}

.story-preset-card em{
  display:block;
  margin-top:8px;
  color:var(--muted);
  font-size:.88rem;
  font-style:normal;
  font-weight:700;
}

.story-preset-card--back{
  transform:translate(-140px, -28px) rotate(-10deg);
  animation-delay:.2s;
}

.story-preset-card--front{
  transform:translate(0, 0) rotate(0deg);
  z-index:2;
}

.story-preset-card--side{
  transform:translate(150px, 34px) rotate(10deg);
  animation-delay:.4s;
}

.story-preset-dock{
  position:absolute;
  left:50%;
  bottom:120px;
  transform:translateX(-50%);
  display:flex;
  gap:10px;
  padding:14px 16px;
  border-radius:22px;
  background:rgba(19,40,69,.88);
  box-shadow:0 20px 36px rgba(27,65,122,.22);
}

.story-preset-dock span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:44px;
  height:44px;
  border-radius:14px;
  background:rgba(255,255,255,.12);
  color:#f6fbff;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.04em;
}

.story-panel__scene--menu{
  background:linear-gradient(180deg, #132845, #173358 58%, #214d83 100%);
}

.story-menu-stage{
  position:absolute;
  inset:22px 22px 108px;
  border-radius:30px;
  overflow:hidden;
  background:
    radial-gradient(circle at 85% 14%, rgba(159,243,207,.18), transparent 20%),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.1);
}

.story-menu-stage__bar{
  position:absolute;
  top:16px;
  left:16px;
  right:16px;
  height:34px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:0 14px;
  border-radius:18px;
  background:rgba(255,255,255,.1);
  backdrop-filter:blur(14px);
  color:#eff6ff;
}

.story-menu-stage__bar span{
  color:rgba(239,246,255,.76);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.story-menu-stage__bar strong{
  font-size:.94rem;
  font-weight:800;
  letter-spacing:-.03em;
}

.story-menu-stage__bar em{
  margin-left:auto;
  color:#ffffff;
  font-size:.88rem;
  font-style:normal;
  font-weight:800;
  letter-spacing:-.03em;
}

.story-menu-stage__window{
  position:absolute;
  left:44px;
  right:180px;
  bottom:32px;
  top:92px;
  border-radius:28px;
  background:linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.06));
  border:1px solid rgba(255,255,255,.1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}

.story-menu-stage__popover{
  position:absolute;
  top:78px;
  right:24px;
  width:286px;
  padding:16px;
  border-radius:24px;
  background:rgba(247,250,255,.96);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 24px 48px rgba(7,18,36,.26);
  animation:storyPopover 5.6s ease-in-out infinite;
}

.story-menu-stage__row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:13px 12px;
  border-radius:16px;
  background:rgba(244,248,255,.96);
  border:1px solid rgba(38,91,180,.08);
}

.story-menu-stage__row + .story-menu-stage__row{
  margin-top:10px;
}

.story-menu-stage__row span{
  color:var(--text);
  font-size:.9rem;
  font-weight:800;
  letter-spacing:-.02em;
}

.story-menu-stage__row em{
  color:var(--muted);
  font-size:.76rem;
  font-style:normal;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.story-menu-stage__row--live{
  background:linear-gradient(180deg, #eef5ff, #ffffff);
}

.story-menu-stage__row--live em{
  color:#245dc9;
}

.story-panel__scene--analytics{
  background:
    radial-gradient(circle at top right, rgba(118,197,255,.18), transparent 26%),
    linear-gradient(180deg, rgba(255,255,255,.95), rgba(243,248,255,.9));
}

.story-analytics-stage{
  position:absolute;
  inset:28px 28px 110px;
  border-radius:30px;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,250,255,.96));
  border:1px solid rgba(38,91,180,.08);
  box-shadow:0 18px 34px rgba(27,65,122,.08);
  overflow:hidden;
}

.story-analytics-stage__metric{
  position:absolute;
  top:24px;
  right:24px;
  width:190px;
  padding:18px 18px 16px;
  border-radius:22px;
  background:linear-gradient(180deg, #173358, #214d83);
  color:#f6fbff;
  box-shadow:0 18px 30px rgba(27,65,122,.2);
}

.story-analytics-stage__metric span{
  display:block;
  color:rgba(246,251,255,.74);
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.story-analytics-stage__metric strong{
  display:block;
  margin-top:10px;
  font-size:2rem;
  font-weight:800;
  letter-spacing:-.08em;
}

.story-analytics-stage__metric em{
  display:block;
  margin-top:8px;
  color:rgba(246,251,255,.82);
  font-size:.8rem;
  font-style:normal;
  font-weight:700;
}

.story-analytics-stage__bars{
  position:absolute;
  left:28px;
  right:244px;
  bottom:66px;
  height:220px;
  display:flex;
  align-items:flex-end;
  gap:14px;
}

.story-analytics-stage__bars span{
  flex:1;
  border-radius:18px 18px 10px 10px;
  background:linear-gradient(180deg, rgba(118,197,255,.9), rgba(44,121,240,.68));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.32);
  transform-origin:50% 100%;
  animation:storyBar 4.6s ease-in-out infinite;
}

.story-analytics-stage__bars span:nth-child(1){height:34%;animation-delay:.1s}
.story-analytics-stage__bars span:nth-child(2){height:48%;animation-delay:.25s}
.story-analytics-stage__bars span:nth-child(3){height:42%;animation-delay:.4s}
.story-analytics-stage__bars span:nth-child(4){height:62%;animation-delay:.55s}
.story-analytics-stage__bars span:nth-child(5){height:74%;animation-delay:.7s}
.story-analytics-stage__bars span:nth-child(6){height:88%;animation-delay:.85s}

.story-analytics-stage__line{
  position:absolute;
  left:44px;
  right:246px;
  bottom:176px;
  height:120px;
}

.story-analytics-stage__line i{
  position:absolute;
  display:block;
  height:4px;
  border-radius:999px;
  background:#245dc9;
  box-shadow:0 0 18px rgba(44,121,240,.22);
}

.story-analytics-stage__line i:nth-child(1){
  left:2%;
  bottom:22%;
  width:84px;
  transform:rotate(-18deg);
}

.story-analytics-stage__line i:nth-child(2){
  left:21%;
  bottom:40%;
  width:88px;
  transform:rotate(8deg);
}

.story-analytics-stage__line i:nth-child(3){
  left:41%;
  bottom:38%;
  width:92px;
  transform:rotate(-24deg);
}

.story-analytics-stage__line i:nth-child(4){
  left:61%;
  bottom:60%;
  width:88px;
  transform:rotate(12deg);
}

.story-analytics-stage__line i:nth-child(5){
  left:80%;
  bottom:64%;
  width:72px;
  transform:rotate(-30deg);
}

.story-analytics-stage__footer{
  position:absolute;
  left:28px;
  right:28px;
  bottom:22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding-top:18px;
  border-top:1px solid rgba(38,91,180,.08);
}

.story-analytics-stage__footer span{
  color:var(--text);
  font-size:.9rem;
  font-weight:800;
  letter-spacing:-.02em;
}

.story-analytics-stage__footer em{
  color:var(--muted);
  font-size:.8rem;
  font-style:normal;
  font-weight:700;
}

.story-carousel__dots{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-top:18px;
}

.story-carousel__dot{
  width:42px;
  height:8px;
  border:none;
  border-radius:999px;
  background:rgba(44,121,240,.14);
  transition:width 180ms, transform 180ms, background 180ms;
}

.story-carousel__dot.is-active{
  width:68px;
  transform:translateY(-1px);
  background:linear-gradient(90deg, #245dc9, #79c6ff);
}

.pricing-simple{
  max-width:48rem;
}

.pricing-simple__lead{
  margin-top:12px;
  color:var(--muted-hi);
  font-size:1rem;
  line-height:1.78;
}

.pricing-simple__meta{
  margin-top:8px;
  color:var(--muted);
  font-size:.8rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.ownership-grid{
  margin-top:34px;
}

@keyframes storyPulse{
  0%,100%{opacity:.38;transform:scaleX(.82)}
  50%{opacity:1;transform:scaleX(1.04)}
}

@keyframes storyFloat{
  0%,100%{transform:translate(var(--story-x, 0), var(--story-y, 0)) rotate(var(--story-r, 0deg))}
  50%{transform:translate(var(--story-x, 0), calc(var(--story-y, 0) - 10px)) rotate(var(--story-r, 0deg))}
}

.story-preset-card--back{--story-x:-140px;--story-y:-28px;--story-r:-10deg}
.story-preset-card--front{--story-x:0px;--story-y:0px;--story-r:0deg}
.story-preset-card--side{--story-x:150px;--story-y:34px;--story-r:10deg}

@keyframes storyPopover{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-8px)}
}

@keyframes storyBar{
  0%,100%{transform:scaleY(.94)}
  50%{transform:scaleY(1.04)}
}

@media(max-width:1100px){
  .story-panel__scene{
    min-height:520px;
  }

  .story-analytics-stage__bars{
    right:220px;
  }

  .story-analytics-stage__line{
    right:222px;
  }
}

@media(max-width:920px){
  .review-card{
    width:320px;
  }

  .story-panel__scene{
    min-height:500px;
  }

  .story-menu-stage__window{
    right:120px;
  }

  .story-menu-stage__popover{
    width:248px;
  }

  .story-analytics-stage__metric{
    width:166px;
  }

  .story-analytics-stage__bars{
    right:196px;
  }

  .story-analytics-stage__line{
    right:198px;
  }
}

@media(max-width:760px){
  .review-card{
    width:280px;
  }

  .review-card p{
    font-size:1.18rem;
  }

  .story-carousel__top{
    flex-direction:column;
    align-items:flex-start;
  }

  .story-carousel__controls{
    align-self:flex-end;
  }

  .story-panel__scene{
    min-height:460px;
    border-radius:30px;
  }

  .story-panel__caption{
    left:18px;
    right:18px;
    bottom:18px;
    padding:16px;
  }

  .story-presets__stack{
    inset:58px 26px 112px;
  }

  .story-preset-card{
    width:min(240px, 82%);
    padding:18px;
  }

  .story-preset-card strong{
    font-size:1.05rem;
  }

  .story-preset-card em{
    font-size:.8rem;
  }

  .story-preset-card--back{--story-x:-76px;--story-y:-20px;--story-r:-8deg}
  .story-preset-card--side{--story-x:82px;--story-y:28px;--story-r:8deg}

  .story-preset-dock{
    bottom:112px;
    padding:10px 12px;
  }

  .story-preset-dock span{
    width:38px;
    height:38px;
  }

  .story-menu-stage{
    inset:18px 18px 108px;
  }

  .story-menu-stage__window{
    left:22px;
    right:22px;
    bottom:22px;
    top:198px;
  }

  .story-menu-stage__popover{
    left:22px;
    right:22px;
    width:auto;
  }

  .story-analytics-stage{
    inset:18px 18px 108px;
  }

  .story-analytics-stage__metric{
    top:18px;
    right:18px;
    width:148px;
  }

  .story-analytics-stage__metric strong{
    font-size:1.72rem;
  }

  .story-analytics-stage__bars{
    left:18px;
    right:18px;
    bottom:88px;
    height:156px;
  }

  .story-analytics-stage__line{
    left:26px;
    right:20px;
    bottom:186px;
  }

  .story-analytics-stage__footer{
    flex-direction:column;
    align-items:flex-start;
  }
}

@media(max-width:580px){
  .review-card{
    width:248px;
  }

  .story-transition{
    gap:8px;
    margin-bottom:18px;
  }

  .story-panel__scene{
    min-height:430px;
  }

  .story-panel__scene--boundary .story-panel__caption{
    width:calc(100% - 24px);
  }

  .story-panel__scene--boundary .story-panel__caption p{
    font-size:1.08rem;
  }

  .story-panel__caption p{
    font-size:.92rem;
  }

  .pricing-simple__meta{
    letter-spacing:.1em;
  }
}

@media(prefers-reduced-motion: reduce){
  .reviews-track,
  .story-transition span,
  .story-preset-card,
  .story-menu-stage__popover,
  .story-analytics-stage__bars span{
    animation:none !important;
  }
}

/* ── Bento Features ─────────────────────────────────────────── */

.features-section--bento{
  padding-top:104px;
}

.bento-grid{
  margin-top:44px;
  display:grid;
  grid-template-columns:repeat(12, 1fr);
  gap:16px;
}

.bento-card{
  position:relative;
  border:1px solid var(--border);
  border-radius:30px;
  padding:26px 24px 28px;
  background:
    radial-gradient(circle at 18% 16%, rgba(141,202,255,.08), transparent 62%),
    radial-gradient(circle at 86% 18%, rgba(159,243,207,.07), transparent 64%),
    rgba(255,255,255,.02);
  box-shadow:var(--sh-md);
  overflow:hidden;
  min-height:230px;
}

.bento-card h3{
  font-size:1.18rem;
  font-weight:800;
  letter-spacing:-.03em;
}

.bento-card p{
  margin-top:10px;
  color:var(--muted-hi);
  font-size:.95rem;
  line-height:1.72;
}

.bento-icon{
  width:46px;
  height:46px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:rgba(141,202,255,.92);
  background:rgba(141,202,255,.08);
  border:1px solid rgba(141,202,255,.18);
  margin-bottom:18px;
}

.bento-icon svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.bento-card--hero{
  grid-column:span 7;
  grid-row:span 2;
  padding:0;
  min-height:560px;
}

.bento-card--hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 30% 12%, rgba(141,202,255,.16), transparent 58%),
    radial-gradient(circle at 78% 26%, rgba(159,243,207,.12), transparent 64%);
  opacity:.85;
}

.bento-story{
  position:relative;
  z-index:1;
  padding:24px 24px 20px;
  height:420px;
  background:
    radial-gradient(circle at 40% -20%, rgba(141,202,255,.18), transparent 56%),
    radial-gradient(circle at 84% 18%, rgba(159,243,207,.14), transparent 58%),
    radial-gradient(circle at 18% 68%, rgba(246,207,142,.08), transparent 58%),
    rgba(9,17,20,.26);
  overflow:hidden;
  -webkit-mask-image:radial-gradient(ellipse 120% 96% at 50% 48%, rgba(0,0,0,1) 62%, rgba(0,0,0,0) 100%);
  mask-image:radial-gradient(ellipse 120% 96% at 50% 48%, rgba(0,0,0,1) 62%, rgba(0,0,0,0) 100%);
}

.bento-card__copy{
  position:relative;
  z-index:1;
  padding:22px 26px 28px;
  border-top:1px solid rgba(255,255,255,.06);
  background:linear-gradient(180deg, rgba(9,17,20,0), rgba(9,17,20,.25));
}

.bento-card--hero h3{
  font-size:1.4rem;
}

.bento-card--hero p{
  font-size:1.02rem;
  max-width:34rem;
}

.bento-story__top{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(8,16,20,.52);
  backdrop-filter:blur(18px) saturate(1.5);
  -webkit-backdrop-filter:blur(18px) saturate(1.5);
  box-shadow:0 18px 55px rgba(0,0,0,.28);
}

.bento-story__dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:rgba(159,243,207,.85);
  box-shadow:0 0 18px rgba(159,243,207,.35);
}

.bento-story__title{
  font-weight:800;
  letter-spacing:-.02em;
}

.bento-story__pill{
  margin-left:6px;
  padding:4px 10px;
  border-radius:999px;
  border:1px solid rgba(159,243,207,.22);
  background:rgba(159,243,207,.1);
  color:rgba(159,243,207,.92);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.bento-story__time{
  margin-left:auto;
  font-variant-numeric:tabular-nums;
  font-size:.85rem;
  font-weight:800;
  letter-spacing:.06em;
  color:rgba(141,202,255,.9);
}

.bento-story__scenes{
  position:relative;
  margin-top:18px;
  height:calc(100% - 56px);
  min-height:300px;
}

.bento-story__scene{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:18px 18px 16px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(8,16,20,.46);
  backdrop-filter:blur(20px) saturate(1.5);
  -webkit-backdrop-filter:blur(20px) saturate(1.5);
  opacity:0;
  transform:translateY(10px) scale(.988);
  filter:blur(2px);
  animation:bentoScene 16s infinite;
  animation-play-state:paused;
}

.reveal.on .bento-story__scene{
  animation-play-state:running;
}

.bento-story__scene--focus{animation-delay:0s;}
.bento-story__scene--presets{animation-delay:4s;}
.bento-story__scene--menu{animation-delay:8s;}
.bento-story__scene--analytics{animation-delay:12s;}

@keyframes bentoScene{
  0%{opacity:0;transform:translateY(10px) scale(.988);filter:blur(2px)}
  4%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
  21%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
  25%{opacity:0;transform:translateY(-10px) scale(.992);filter:blur(2px)}
  100%{opacity:0;transform:translateY(-10px) scale(.992);filter:blur(2px)}
}

.bento-story__kicker{
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(167,187,181,.92);
}

.bento-story__row{
  display:flex;
  gap:12px;
  align-items:flex-start;
}

.bento-chip{
  padding:4px 10px;
  border-radius:999px;
  border:1px solid rgba(141,202,255,.18);
  background:rgba(141,202,255,.08);
  color:rgba(225,240,255,.92);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  flex-shrink:0;
}

.bento-chip--danger{
  border-color:rgba(255,179,173,.18);
  background:rgba(255,179,173,.08);
  color:rgba(255,214,211,.92);
}

.bento-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.bento-list span{
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.04);
  color:rgba(243,247,245,.92);
  font-size:.85rem;
  font-weight:700;
  letter-spacing:-.01em;
}

.bento-list--muted span{
  background:rgba(255,255,255,.03);
  color:rgba(207,216,211,.9);
}

.bento-progress{
  margin-top:auto;
  height:10px;
  border-radius:999px;
  background:rgba(255,255,255,.05);
  overflow:hidden;
  border:1px solid rgba(255,255,255,.06);
}

.bento-progress span{
  display:block;
  height:100%;
  width:42%;
  background:linear-gradient(90deg, rgba(159,243,207,.25), rgba(141,202,255,.45), rgba(159,243,207,.12));
  border-radius:999px;
  animation:bentoProgress 4.4s ease-in-out infinite;
  animation-play-state:paused;
}

.reveal.on .bento-progress span{
  animation-play-state:running;
}

@keyframes bentoProgress{
  0%{width:22%}
  55%{width:86%}
  100%{width:28%}
}

.bento-preset-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:2px;
}

.bento-preset{
  padding:12px 12px 13px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.04);
}

.bento-preset strong{
  display:block;
  font-weight:800;
  letter-spacing:-.02em;
}

.bento-preset span{
  display:block;
  margin-top:3px;
  color:rgba(167,187,181,.92);
  font-size:.88rem;
}

.bento-actions{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:2px;
}

.bento-action{
  padding:12px 12px 13px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.03);
}

.bento-action strong{
  display:block;
  font-weight:850;
  letter-spacing:-.02em;
}

.bento-action span{
  display:block;
  margin-top:3px;
  font-size:.88rem;
  color:rgba(167,187,181,.92);
}

.bento-action--primary{
  border-color:rgba(159,243,207,.18);
  background:linear-gradient(135deg, rgba(159,243,207,.12), rgba(141,202,255,.08));
}

.bento-chart{
  display:flex;
  gap:10px;
  align-items:flex-end;
  height:160px;
  padding:14px 12px 10px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.03);
  margin-top:2px;
}

.bento-chart span{
  flex:1;
  height:var(--h);
  border-radius:999px;
  background:linear-gradient(180deg, rgba(141,202,255,.7), rgba(159,243,207,.28));
  box-shadow:0 10px 26px rgba(141,202,255,.14);
  transform-origin:bottom;
  animation:bentoBar 1.8s ease-in-out infinite alternate;
  animation-play-state:paused;
}

.reveal.on .bento-chart span{
  animation-play-state:running;
}

.bento-chart span:nth-child(2n){
  animation-duration:2.1s;
}

.bento-chart span:nth-child(3n){
  animation-duration:2.4s;
}

@keyframes bentoBar{
  from{transform:scaleY(.92);filter:saturate(98%)}
  to{transform:scaleY(1.06);filter:saturate(112%)}
}

.bento-chart__meta{
  display:flex;
  justify-content:space-between;
  gap:12px;
  color:rgba(167,187,181,.92);
  font-size:.85rem;
  font-weight:700;
  letter-spacing:-.01em;
}

.bento-card--side{
  grid-column:span 5;
}

.bento-card--wide{
  grid-column:span 12;
  min-height:240px;
}

@media(max-width:920px){
  .bento-card--hero,
  .bento-card--side,
  .bento-card--wide{
    grid-column:span 12;
    grid-row:auto;
  }

  .bento-card--hero{
    min-height:unset;
  }

  .bento-story{
    height:380px;
  }
}

@media(max-width:640px){
  .bento-grid{
    gap:14px;
  }

  .bento-card{
    border-radius:26px;
    padding:22px 20px 24px;
  }

  .bento-card--hero{
    border-radius:28px;
  }

  .bento-story{
    padding:18px 18px 16px;
    height:360px;
  }

  .bento-card__copy{
    padding:18px 20px 22px;
  }

  .bento-chart{
    height:140px;
    gap:8px;
  }
}

@media(prefers-reduced-motion: reduce){
  .bento-story__scene{
    animation:none !important;
    opacity:1;
    transform:none;
    filter:none;
    position:relative;
  }

  .bento-story__scene:not(.bento-story__scene--focus){
    display:none;
  }

  .bento-progress span,
  .bento-chart span{
    animation:none !important;
  }
}

/* Document pages */
.doc-body{
  min-height:100vh;
  background:#fff;
  color:#111827;
  font-family:var(--sans);
}

.doc-body::before{
  display:none;
}

.doc-header,
.doc-main,
.doc-footer,
.doc-page-footer{
  width:min(840px, calc(100vw - 48px));
  margin:0 auto;
}

.doc-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:28px 0;
  border-bottom:1px solid #eef0f4;
}

.doc-brand,
.doc-nav,
.doc-tabs,
.doc-footer{
  display:flex;
  align-items:center;
}

.doc-brand{
  gap:10px;
  color:#111827;
  font-size:.95rem;
  font-weight:800;
}

.doc-brand img{
  width:28px;
  height:28px;
  border-radius:7px;
}

.doc-nav{
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:18px;
}

.doc-nav a,
.doc-tabs a,
.doc-article a,
.doc-footer a{
  color:#4b5563;
}

.doc-nav a{
  font-size:.85rem;
  font-weight:700;
}

.doc-main{
  padding:clamp(150px, 12vw, 184px) 0 88px;
}

.doc-tabs{
  flex-wrap:wrap;
  gap:20px;
  margin-bottom:42px;
  padding-bottom:18px;
  border-bottom:1px solid #eef0f4;
}

.doc-tabs a{
  font-size:.92rem;
  font-weight:750;
}

.doc-tabs a[aria-current="page"]{
  color:#111827;
}

.doc-article h1{
  margin:0 0 12px;
  color:#111827;
  font-family:var(--sans);
  font-size:3rem;
  font-weight:800;
  line-height:1.06;
}

.doc-effective{
  margin:0 0 34px;
  color:#6b7280;
  font-size:.95rem;
  line-height:1.6;
}

.doc-article h2{
  margin:42px 0 12px;
  color:#111827;
  font-size:1.38rem;
  font-weight:800;
  line-height:1.25;
}

.doc-article h3{
  margin:30px 0 10px;
  color:#111827;
  font-size:1.08rem;
  font-weight:800;
}

.doc-article p,
.doc-article li{
  color:#374151;
  font-size:1rem;
  line-height:1.82;
}

.doc-article p + p{
  margin-top:14px;
}

.doc-article ul,
.doc-article ol{
  margin:14px 0 0;
  padding-left:22px;
}

.doc-article li + li{
  margin-top:8px;
}

.doc-article a{
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:3px;
}

.doc-footer{
  justify-content:space-between;
  gap:20px;
  padding:26px 0 34px;
  border-top:1px solid #eef0f4;
  color:#6b7280;
  font-size:.86rem;
}

.doc-page-footer{
  display:grid;
  gap:20px;
  padding:28px 0 38px;
  border-top:1px solid #e8e1dd;
  color:#6b7280;
  font-family:var(--sans);
  font-size:.86rem;
}

.doc-page-footer__sections{
  gap:clamp(28px, 8vw, 82px);
}

.doc-page-footer .footer-section h2{
  border-bottom-color:#e8e1dd;
  color:#111827;
}

.doc-page-footer .footer-section__links{
  gap:9px;
}

.doc-page-footer .footer-section__links a{
  color:#4b5563;
  font-size:.86rem;
  font-weight:560;
  text-decoration:none;
}

.doc-page-footer .footer-section__links a:hover,
.doc-page-footer .footer-section__links a:focus-visible{
  color:#071014;
}

.doc-page-footer p{
  margin:4px 0 0;
}

@media(max-width:640px){
  .doc-header,
  .doc-main,
  .doc-footer,
  .doc-page-footer{
    width:min(100% - 32px, 840px);
  }

  .doc-header,
  .doc-footer,
  .doc-page-footer{
    align-items:flex-start;
    flex-direction:column;
  }

  .doc-page-footer__sections{
    grid-template-columns:1fr;
    gap:24px;
  }

  .doc-nav{
    justify-content:flex-start;
    gap:14px;
  }

  .doc-main{
    padding:132px 0 68px;
  }

  .doc-tabs{
    gap:14px;
    margin-bottom:34px;
  }

  .doc-article h1{
    font-size:2.35rem;
  }
}

/* Raycast-style navbar and download buttons */
.navbar{
  top:14px;
  padding:12px 0 0;
}

.navbar-inner{
  width:min(1236px, calc(100vw - 48px));
  min-height:64px;
  grid-template-columns:minmax(160px, 1fr) auto minmax(160px, 1fr);
  gap:28px;
  padding:13px 28px;
  border:1px solid rgba(255,255,255,.62);
  border-radius:14px;
  background:rgba(255,255,255,.46);
  color:#132845;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.72),
    0 18px 56px rgba(27,65,122,.13);
  backdrop-filter:blur(24px) saturate(160%);
}

.brand{
  gap:9px;
  color:#132845;
  font-size:.84rem;
  font-weight:700;
  letter-spacing:0;
}

.brand img{
  width:23px;
  height:23px;
  border-radius:6px;
  box-shadow:none;
}

.nav-links{
  gap:30px;
}

.nav-links a{
  min-width:0;
  padding:0;
  border-radius:0;
  color:rgba(19,40,69,.62);
  font-size:.79rem;
  font-weight:500;
  letter-spacing:0;
  line-height:1;
}

.nav-links a:hover{
  color:#132845;
  background:transparent;
}

.btn-dl,
.btn-primary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:34px;
  padding:0 15px 0 12px;
  border:1px solid rgba(17,20,24,.14);
  border-radius:9px;
  background:linear-gradient(180deg, #ffffff 0%, #e9ebee 100%);
  color:#151719 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    0 1px 2px rgba(0,0,0,.24);
  font-size:.78rem;
  font-weight:700;
  letter-spacing:0;
  line-height:1;
  transition:transform 140ms ease, background 140ms ease, box-shadow 140ms ease;
}

.btn-dl{
  min-height:36px;
  padding-right:16px;
}

.btn-primary{
  min-height:33px;
  padding:0 14px 0 12px;
  font-size:.8rem;
}

.btn-dl:hover,
.btn-primary:hover{
  transform:translateY(-1px);
  background:linear-gradient(180deg, #ffffff 0%, #f0f1f3 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.94),
    0 2px 6px rgba(0,0,0,.2);
}

.btn-dl:active,
.btn-primary:active{
  transform:translateY(0);
}

.btn-dl__icon,
.btn-primary__icon{
  width:auto;
  height:auto;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:currentColor;
}

.btn-dl__icon svg,
.btn-primary__icon svg,
.btn-primary svg{
  width:14px;
  height:14px;
  fill:currentColor;
}

@media(max-width:960px){
  .navbar-inner{
    grid-template-columns:auto 1fr auto;
    gap:22px;
  }
}

@media(max-width:760px){
  .navbar{
    top:10px;
    padding-top:8px;
  }

  .navbar-inner{
    width:calc(100vw - 24px);
    min-height:56px;
    grid-template-columns:auto 1fr auto;
    grid-template-areas:"brand nav cta";
    gap:14px;
    padding:10px 12px;
    border-radius:13px;
  }

  .navbar-slot--brand{grid-area:brand}
  .navbar-slot--cta{grid-area:cta}
  .nav-links--center{grid-area:nav;justify-self:center}

  .nav-links{
    gap:18px;
  }

  .nav-links a{
    font-size:.74rem;
  }

  .btn-dl{
    min-height:34px;
    padding:0 12px 0 10px;
  }
}

@media(max-width:580px){
  .navbar-inner{
    width:calc(100vw - 18px);
    grid-template-columns:24px minmax(0, 1fr) 34px;
    gap:10px;
    padding:9px 10px;
  }

  .brand span{
    display:none;
  }

  .brand img{
    width:24px;
    height:24px;
  }

  .nav-links{
    gap:12px;
  }

  .nav-links a{
    font-size:.72rem;
  }

  .btn-dl{
    width:34px;
    min-height:32px;
    padding:0;
    font-size:.73rem;
  }

  .btn-dl > span:last-child{
    display:none;
  }

  .navbar-slot--cta{
    justify-self:end;
  }

  .hero{
    padding-inline:16px;
    padding-top:44px;
  }

  .hero h1{
    max-width:11ch;
    font-size:clamp(3rem, 13vw, 3.35rem);
    line-height:.94;
  }

  .hero-sub{
    max-width:22rem;
  }

  .hero-actions{
    width:auto;
    flex-direction:row;
  }

  .btn-primary{
    width:auto;
    min-height:33px;
    padding:0 14px 0 12px;
    font-size:.8rem;
  }

  .demo-tabs{
    width:min(100%, calc(100vw - 32px));
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:3px;
  }

  .dtab{
    min-width:0;
    padding:8px 6px;
    font-size:.72rem;
    white-space:nowrap;
  }
}

/* Aside-inspired hero */
body{
  background:#f7fbff;
}

.navbar{
  top:0;
  padding:18px 0 0;
  z-index:20;
}

.navbar-inner{
  width:min(1228px, calc(100vw - 64px));
  min-height:48px;
  grid-template-columns:minmax(190px, 1fr) auto minmax(190px, 1fr);
  gap:34px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  color:#101318;
}

.brand{
  gap:8px;
  color:#101318;
  font-size:1.48rem;
  font-weight:800;
  letter-spacing:0;
  line-height:1;
}

.brand img{
  width:36px;
  height:36px;
  border-radius:10px;
  box-shadow:0 10px 22px rgba(41,96,142,.14);
}

.nav-links{
  gap:44px;
}

.nav-links a{
  min-width:0;
  padding:0;
  border-radius:0;
  color:#101318;
  font-size:.95rem;
  font-weight:650;
  letter-spacing:0;
  line-height:1;
}

.nav-links a:hover{
  color:#1d5f9f;
  background:transparent;
}

.btn-dl,
.hero .btn-primary{
  min-height:46px;
  padding:0 21px;
  border:0;
  border-radius:18px;
  background:#101114;
  color:#ffffff !important;
  box-shadow:0 12px 28px rgba(16,17,20,.16);
  font-size:.98rem;
  font-weight:650;
  letter-spacing:0;
}

.btn-dl:hover,
.hero .btn-primary:hover{
  background:#202226;
  box-shadow:0 16px 36px rgba(16,17,20,.2);
}

.btn-dl:active,
.hero .btn-primary:active{
  transform:translateY(1px);
}

.hero .btn-primary{
  gap:9px;
  padding-left:17px;
}

.hero .btn-primary__icon svg{
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.hero{
  min-height:100dvh;
  margin:-84px 16px 0;
  padding:168px 56px 0;
  border-radius:28px;
  overflow:hidden;
  color:#101318;
  background:
    linear-gradient(180deg, rgba(159,230,247,.92) 0%, rgba(186,238,249,.92) 47%, rgba(232,249,252,.98) 100%);
  text-align:center;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.7);
  isolation:isolate;
}

.hero-ambient{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  transform:none;
  opacity:1;
  filter:none;
  -webkit-mask-image:none;
  mask-image:none;
  background:
    radial-gradient(circle at 18% 24%, rgba(255,255,255,.55), transparent 19%),
    radial-gradient(circle at 72% 23%, rgba(255,255,255,.64), transparent 23%),
    linear-gradient(180deg, #91e2f4 0%, #c1f0f8 58%, #f1fbfd 100%);
}

.hero-ambient::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(255,255,255,.2), transparent 22%, transparent 76%, rgba(255,255,255,.22)),
    linear-gradient(180deg, transparent 0%, rgba(255,255,255,.52) 92%, rgba(255,255,255,.88) 100%);
}

.hero-cloud{
  position:absolute;
  display:block;
  width:520px;
  height:210px;
  border-radius:999px;
  background:
    radial-gradient(circle at 16% 58%, rgba(255,255,255,.86) 0 23%, transparent 24%),
    radial-gradient(circle at 32% 43%, rgba(255,255,255,.94) 0 30%, transparent 31%),
    radial-gradient(circle at 54% 36%, rgba(255,255,255,.9) 0 34%, transparent 35%),
    radial-gradient(circle at 76% 55%, rgba(255,255,255,.84) 0 28%, transparent 29%),
    radial-gradient(ellipse at 50% 70%, rgba(255,255,255,.8) 0 56%, transparent 57%);
  filter:blur(12px);
  opacity:.72;
  transform:translateZ(0);
  animation:cloudDrift 18s ease-in-out infinite alternate;
}

.hero-cloud--left{
  top:84px;
  left:-86px;
  transform:scale(1.08);
}

.hero-cloud--right{
  top:74px;
  right:18px;
  width:590px;
  height:250px;
  opacity:.82;
  animation-delay:-6s;
}

.hero-cloud--center{
  left:50%;
  top:310px;
  width:500px;
  height:185px;
  opacity:.46;
  transform:translateX(-50%) scale(.92);
  animation-delay:-10s;
}

@keyframes cloudDrift{
  from{translate:-10px -2px}
  to{translate:14px 8px}
}

.hero-copy{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
}

.hero-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:0 13px;
  border:1px solid rgba(17,19,22,.12);
  border-radius:999px;
  background:rgba(255,255,255,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.28);
  color:rgba(16,19,24,.72);
  font-size:.82rem;
  font-weight:650;
  letter-spacing:0;
}

.hero h1{
  max-width:930px;
  margin:26px auto 0;
  color:#101318;
  font-family:var(--sans);
  font-size:clamp(3.25rem, 6.1vw, 5.5rem);
  font-weight:500;
  letter-spacing:0;
  line-height:1.02;
}

.hero-actions{
  margin-top:32px;
}

.hero-preview{
  position:relative;
  z-index:1;
  width:min(1128px, calc(100vw - 116px));
  margin:64px auto 0;
}

.hero-preview::before{
  content:"";
  position:absolute;
  inset:-22px 40px auto;
  height:48px;
  border-radius:999px;
  background:rgba(255,255,255,.42);
  filter:blur(28px);
  pointer-events:none;
}

.hero-app-shot{
  position:relative;
  height:clamp(330px, 36vw, 438px);
  border:1px solid rgba(36,67,97,.16);
  border-radius:18px 18px 0 0;
  background:rgba(255,255,255,.74);
  box-shadow:0 34px 90px rgba(39,91,128,.18);
  backdrop-filter:blur(12px) saturate(118%);
}

.hero-app-shot .win-bar{
  padding:14px 18px;
  background:rgba(255,255,255,.62);
  border-bottom-color:rgba(36,67,97,.1);
}

.hero-app-shot .win-body{
  min-height:calc(100% - 44px);
  grid-template-columns:220px 1fr;
}

.hero-app-shot .win-side{
  padding:18px 14px;
  background:rgba(238,248,253,.62);
  border-right-color:rgba(36,67,97,.1);
}

.hero-app-shot .win-main{
  padding:22px;
  background:rgba(255,255,255,.58);
}

.preview-heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}

.preview-status{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(44,121,240,.1);
  color:#245dc9;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:0;
  white-space:nowrap;
}

.hero-app-shot .focus-h{
  font-family:var(--sans);
  font-size:1.8rem;
  font-weight:800;
  letter-spacing:0;
}

.hero-app-shot .focus-h em{
  color:#245dc9;
  font-style:normal;
}

.hero-app-shot .focus-sub{
  max-width:31rem;
}

.hero-app-shot .preset-grid{
  grid-template-columns:1fr 1fr minmax(124px, .55fr);
}

.hero-app-shot .pcard,
.hero-app-shot .goal-card,
.hero-app-shot .cta-row{
  background:rgba(255,255,255,.82);
}

.demo-section{
  margin-top:96px;
}

@media(max-width:960px){
  .navbar-inner{
    width:calc(100vw - 42px);
    grid-template-columns:auto minmax(0, 1fr) auto;
    gap:24px;
  }

  .brand{
    font-size:1.28rem;
  }

  .brand img{
    width:32px;
    height:32px;
  }

  .nav-links{
    gap:24px;
  }

  .hero{
    padding:150px 30px 0;
  }

  .hero-preview{
    width:min(100%, calc(100vw - 58px));
  }

  .hero-app-shot .win-body{
    grid-template-columns:168px 1fr;
  }
}

@media(max-width:760px){
  .navbar{
    padding-top:12px;
  }

  .navbar-inner{
    width:calc(100vw - 32px);
    min-height:42px;
    grid-template-columns:auto 1fr auto;
    grid-template-areas:"brand nav cta";
    gap:16px;
  }

  .nav-links{
    justify-self:center;
    gap:16px;
  }

  .nav-links a{
    font-size:.8rem;
  }

  .nav-links a:nth-child(3){
    display:none;
  }

  .btn-dl{
    min-height:40px;
    padding:0 16px;
    border-radius:15px;
    font-size:.88rem;
  }

  .hero{
    min-height:auto;
    margin:-70px 10px 0;
    padding:126px 18px 0;
    border-radius:24px;
  }

  .hero h1{
    max-width:10.8ch;
    font-size:clamp(3.2rem, 13vw, 4.7rem);
    line-height:1;
  }

  .hero-preview{
    width:calc(100vw - 44px);
    margin-top:44px;
  }

  .hero-app-shot{
    height:390px;
  }

  .hero-app-shot .win-body{
    grid-template-columns:1fr;
  }

  .hero-app-shot .win-side{
    display:none;
  }

  .hero-app-shot .preset-grid{
    grid-template-columns:1fr 1fr;
  }

  .hero-app-shot .pcard-new{
    display:none;
  }
}

@media(max-width:580px){
  .navbar-inner{
    width:calc(100vw - 24px);
    grid-template-columns:auto minmax(0, 1fr) auto;
    gap:11px;
  }

  .brand span{
    display:none;
  }

  .brand img{
    width:34px;
    height:34px;
  }

  .nav-links{
    gap:14px;
  }

  .nav-links a{
    font-size:.75rem;
  }

  .nav-links a:nth-child(2){
    display:none;
  }

  .btn-dl{
    width:auto;
    min-height:36px;
    padding:0 12px;
    font-size:.78rem;
  }

  .btn-dl > span:last-child{
    display:inline;
  }

  .hero{
    margin:-66px 8px 0;
    padding:112px 14px 0;
    border-radius:22px;
  }

  .hero-badge{
    min-height:28px;
    font-size:.76rem;
  }

  .hero h1{
    max-width:11.2ch;
    font-size:clamp(2.9rem, 13.5vw, 3.9rem);
  }

  .hero .btn-primary{
    min-height:42px;
    padding:0 17px 0 14px;
    font-size:.88rem;
  }

  .hero-preview{
    width:calc(100vw - 32px);
    margin-top:36px;
  }

  .hero-app-shot{
    height:352px;
    border-radius:16px 16px 0 0;
  }

  .hero-app-shot .win-main{
    padding:16px;
  }

  .preview-heading{
    flex-direction:column;
    gap:10px;
  }

  .hero-app-shot .focus-h{
    font-size:1.42rem;
  }

  .hero-app-shot .mode-pills{
    width:100%;
  }

  .hero-app-shot .mpill{
    flex:1;
    text-align:center;
  }

  .hero-cloud--left{
    left:-220px;
  }

  .hero-cloud--right{
    right:-220px;
  }

  .hero-cloud--center{
    top:360px;
  }
}

/* Refined Aside-style frame with original Nudge abstract background */
.navbar,
.hero{
  font-family:"Geist", "Manrope", "SF Pro Display", system-ui, sans-serif;
}

.hero{
  margin:-84px 16px 0;
  min-height:100dvh;
  padding:144px 56px 0;
  border-radius:34px;
  background:
    radial-gradient(circle at 50% 24%, rgba(255,255,255,.92), transparent 30%),
    radial-gradient(circle at 16% 35%, rgba(213,247,255,.9), transparent 28%),
    radial-gradient(circle at 88% 16%, rgba(205,239,255,.92), transparent 26%),
    linear-gradient(180deg, #f8fdff 0%, #eaf8ff 48%, #f8fcff 100%);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.74),
    0 20px 25px -5px rgba(32,78,112,.12),
    0 8px 10px -6px rgba(32,78,112,.14);
}

.hero-ambient{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 42%, rgba(255,255,255,.9), transparent 31%),
    radial-gradient(circle at 18% 31%, rgba(217,250,255,.78), transparent 30%),
    radial-gradient(circle at 82% 18%, rgba(220,242,255,.82), transparent 28%),
    radial-gradient(circle at 72% 70%, rgba(255,255,255,.78), transparent 34%),
    linear-gradient(180deg, #f9fdff 0%, #eaf8ff 58%, #fbfdff 100%);
  opacity:1;
  filter:none;
  transform:none;
  -webkit-mask-image:none;
  mask-image:none;
}

.hero-ambient::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(255,255,255,.06) 0%, rgba(255,255,255,.2) 58%, rgba(255,255,255,.9) 100%),
    linear-gradient(90deg, rgba(255,255,255,.42), transparent 22%, transparent 78%, rgba(255,255,255,.42));
  pointer-events:none;
}

.hero-ambient__canvas{
  position:absolute;
  inset:-22%;
  width:144%;
  height:144%;
  display:block;
  opacity:.7;
  mix-blend-mode:multiply;
  filter:blur(30px) saturate(112%) contrast(106%);
  transform:scale(1);
}

.hero-badge{
  min-height:30px;
  padding:0 14px;
  border-color:rgba(18,35,52,.13);
  background:rgba(255,255,255,.36);
  color:rgba(16,19,24,.66);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.52);
  font-size:.84rem;
  font-weight:600;
}

.hero h1{
  max-width:990px;
  margin-top:24px;
  font-family:"Geist", "Manrope", "SF Pro Display", system-ui, sans-serif;
  font-size:clamp(3.05rem, 4vw, 3.72rem);
  font-weight:500;
  line-height:1.06;
  letter-spacing:-.02em;
  text-wrap:balance;
}

.hero-actions{
  margin-top:30px;
}

.btn-dl,
.hero .btn-primary{
  min-height:44px;
  border-radius:16px;
  background:#0f1114;
  font-family:"Geist", "Manrope", "SF Pro Display", system-ui, sans-serif;
  font-size:.95rem;
  font-weight:600;
  box-shadow:0 12px 28px rgba(15,17,20,.17);
}

.hero-preview{
  width:min(1270px, calc(100vw - 152px));
  margin-top:56px;
  transform:translateY(-18px);
}

.hero-app-shot{
  height:clamp(500px, 38vw, 560px);
  border:0;
  border-radius:22px 22px 0 0;
  background:rgba(255,255,255,.64);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.86),
    0 0 0 .5px rgba(21,27,35,.18),
    0 20px 25px -5px rgba(32,78,112,.15),
    0 8px 10px -6px rgba(32,78,112,.17);
  backdrop-filter:blur(18px) saturate(140%);
}

.hero-app-shot .win-bar{
  min-height:38px;
  padding:11px 18px;
  background:rgba(255,255,255,.42);
  border-bottom:0;
}

.hero-app-shot .win-body{
  min-height:calc(100% - 38px);
  grid-template-columns:230px 1fr;
}

.hero-app-shot .win-side{
  padding:18px 14px;
  background:rgba(231,249,253,.55);
  border-right:0;
}

.hero-app-shot .win-main{
  margin:0;
  padding:28px;
  background:rgba(255,255,255,.78);
  border-radius:19px 19px 0 0;
  box-shadow:
    inset 0 0 0 .5px rgba(20,31,44,.13),
    0 0 4px rgba(0,0,0,.05);
}

.hero-app-shot .focus-scr{
  gap:18px;
}

.hero-app-shot .focus-h{
  font-family:"Geist", "Manrope", "SF Pro Display", system-ui, sans-serif;
  font-size:1.78rem;
  font-weight:700;
  letter-spacing:-.02em;
}

.hero-app-shot .goal-card,
.hero-app-shot .pcard,
.hero-app-shot .cta-row{
  border-color:rgba(28,62,96,.1);
  background:rgba(255,255,255,.9);
  box-shadow:0 8px 18px rgba(30,72,112,.04);
}

.hero-app-shot .preset-grid{
  gap:12px;
}

.demo-section{
  margin-top:88px;
}

@media(max-width:960px){
  .hero{
    padding-top:132px;
    border-radius:30px;
  }

  .hero h1{
    max-width:780px;
    font-size:clamp(3rem, 6vw, 3.65rem);
  }

  .hero-preview{
    width:calc(100vw - 76px);
    margin-top:48px;
    transform:translateY(-12px);
  }

  .hero-app-shot{
    height:500px;
  }

  .hero-app-shot .win-body{
    grid-template-columns:190px 1fr;
  }
}

@media(max-width:760px){
  .hero{
    margin:-70px 10px 0;
    padding:118px 18px 0;
    border-radius:26px;
  }

  .hero h1{
    max-width:11.4ch;
    font-size:clamp(2.85rem, 12.4vw, 4rem);
    line-height:1;
  }

  .hero-preview{
    width:calc(100vw - 44px);
    margin-top:42px;
    transform:none;
  }

  .hero-app-shot{
    height:430px;
  }

  .hero-app-shot .win-body{
    grid-template-columns:1fr;
  }

  .hero-app-shot .win-side{
    display:none;
  }

  .hero-app-shot .win-main{
    padding:22px;
    border-radius:0;
  }
}

@media(max-width:580px){
  .hero{
    margin:-66px 8px 0;
    padding:108px 14px 0;
    border-radius:22px;
  }

  .hero h1{
    max-width:11.2ch;
    font-size:clamp(2.72rem, 12.8vw, 3.45rem);
  }

  .hero-preview{
    width:calc(100vw - 32px);
    margin-top:36px;
  }

  .hero-app-shot{
    height:370px;
    border-radius:18px 18px 0 0;
  }

  .hero-app-shot .win-main{
    padding:17px;
  }

  .hero-app-shot .focus-h{
    font-size:1.4rem;
  }
}

/* Aside typography and focused acid-blue ambient */
.navbar,
.hero{
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
}

.brand{
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:1.5rem;
  font-weight:520;
  line-height:1;
  letter-spacing:-.01em;
}

.nav-links a{
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:.875rem;
  font-weight:500;
  line-height:1.25rem;
  letter-spacing:0;
}

.btn-dl{
  min-height:44px;
  padding:0 20px;
  border-radius:16px;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:.875rem;
  font-weight:500;
  line-height:1.25rem;
}

.hero{
  --bg:#fbfdff;
  --bg-2:#f5fbff;
  --accent:#008cff;
  --accent-2:#00dfff;
  --accent-3:#0059ff;
  background:
    radial-gradient(circle at 50% 28%, rgba(255,255,255,.96) 0 11%, transparent 24%),
    radial-gradient(circle at 49% 24%, rgba(0,223,255,.36) 0 5%, transparent 15%),
    radial-gradient(circle at 59% 22%, rgba(0,89,255,.26) 0 3%, transparent 11%),
    radial-gradient(circle at 41% 32%, rgba(0,140,255,.26) 0 4%, transparent 13%),
    radial-gradient(ellipse 17% 64% at 0% 44%, rgba(0,140,255,.22) 0%, rgba(0,223,255,.09) 38%, transparent 72%),
    radial-gradient(ellipse 18% 66% at 100% 40%, rgba(0,89,255,.2) 0%, rgba(0,223,255,.08) 40%, transparent 72%),
    linear-gradient(90deg, rgba(0,140,255,.12) 0%, rgba(0,223,255,.045) 7%, transparent 18%, transparent 82%, rgba(0,223,255,.05) 93%, rgba(0,89,255,.13) 100%),
    linear-gradient(180deg, #fbfdff 0%, #f3fbff 55%, #fafdff 84%, #eef9ff 100%);
  box-shadow:
    inset 22px 0 54px -36px rgba(0,140,255,.36),
    inset -22px 0 54px -36px rgba(0,89,255,.34),
    inset 0 -22px 44px -36px rgba(0,140,255,.45);
}

.hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  border-radius:inherit;
  background:
    linear-gradient(90deg, rgba(0,140,255,.16) 0%, rgba(0,223,255,.055) 4.5%, transparent 13%, transparent 87%, rgba(0,223,255,.06) 95.5%, rgba(0,89,255,.17) 100%),
    linear-gradient(180deg, transparent 0%, transparent 74%, rgba(0,140,255,.08) 92%, rgba(0,89,255,.16) 100%);
  box-shadow:inset 0 -1px 0 rgba(0,109,255,.12);
  opacity:.95;
}

.hero-ambient{
  background:
    radial-gradient(circle at 50% 25%, rgba(0,223,255,.48) 0 4%, rgba(0,223,255,.15) 9%, transparent 19%),
    radial-gradient(circle at 40% 31%, rgba(0,140,255,.3) 0 3%, transparent 13%),
    radial-gradient(circle at 60% 19%, rgba(0,89,255,.24) 0 3%, transparent 12%),
    radial-gradient(ellipse 20% 62% at 0% 43%, rgba(0,140,255,.2) 0%, rgba(0,223,255,.08) 42%, transparent 74%),
    radial-gradient(ellipse 21% 64% at 100% 39%, rgba(0,89,255,.19) 0%, rgba(0,223,255,.07) 42%, transparent 74%),
    radial-gradient(circle at 54% 43%, rgba(255,255,255,.92) 0 13%, transparent 27%),
    linear-gradient(180deg, #fbfdff 0%, #f4fbff 58%, #f8fdff 84%, #eef9ff 100%);
}

.hero-ambient::after{
  background:
    linear-gradient(180deg, rgba(255,255,255,.14) 0%, rgba(255,255,255,.25) 52%, rgba(255,255,255,.76) 100%),
    linear-gradient(90deg, rgba(0,140,255,.1), rgba(255,255,255,.35) 10%, transparent 26%, transparent 74%, rgba(255,255,255,.35) 90%, rgba(0,89,255,.11));
}

.hero-ambient__canvas{
  inset:auto auto auto 50%;
  top:9%;
  width:min(560px, 44vw);
  height:min(380px, 30vw);
  opacity:.88;
  mix-blend-mode:multiply;
  filter:blur(15px) saturate(215%) contrast(128%);
  transform:translateX(-50%) scale(1);
}

.site-bottom-glow{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  width:100vw;
  height:var(--footer-glow-height);
  pointer-events:none;
  z-index:1;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  overflow:visible;
  opacity:var(--bottom-glow-opacity, 0);
  will-change:opacity;
  isolation:isolate;
  -webkit-mask-image:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.34) 14%, rgba(0,0,0,1) 46%, rgba(0,0,0,1) 100%);
  mask-image:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.34) 14%, rgba(0,0,0,1) 46%, rgba(0,0,0,1) 100%);
}

.site-bottom-glow::before{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:64%;
  z-index:0;
  opacity:var(--bottom-glow-opacity, 0);
  background:
    radial-gradient(ellipse 42% 44% at 50% 88%, rgba(248,253,255,.42), transparent 68%),
    linear-gradient(180deg, rgba(255,255,255,0), rgba(238,249,255,.18) 58%, rgba(0,140,255,.18));
}

.site-bottom-glow::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-2px;
  z-index:0;
  height:clamp(54px, 8vh, 96px);
  opacity:var(--bottom-glow-opacity, 0);
  background:
    linear-gradient(180deg, rgba(93,158,255,0) 0%, rgba(93,158,255,.52) 42%, rgba(0,89,255,.82) 100%);
}

.site-bottom-glow__field{
  position:absolute;
  left:50%;
  bottom:-6vh;
  z-index:1;
  width:var(--footer-glow-field-width);
  height:calc(100% + 6vh);
  transform:translate3d(-50%, 0, 0) scaleY(var(--bottom-glow-scale, 0));
  transform-origin:center bottom;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  will-change:transform;
  filter:blur(.2px) saturate(152%) contrast(118%);
  -webkit-mask-image:linear-gradient(90deg, rgba(0,0,0,0) 0%, #000 8%, #000 92%, rgba(0,0,0,0) 100%);
  mask-image:linear-gradient(90deg, rgba(0,0,0,0) 0%, #000 8%, #000 92%, rgba(0,0,0,0) 100%);
}

.site-bottom-glow__field svg{
  width:100%;
  height:100%;
  display:block;
}

.footer > .wrap{
  position:relative;
  z-index:3;
}

.footer{
  --footer-glow-height:65vh;
  --footer-glow-field-width:max(185vw, 2200px);
  overflow:visible;
  isolation:isolate;
}

.footer-glow-runway{
  position:relative;
  z-index:0;
  height:var(--footer-glow-height);
  min-height:var(--footer-glow-height);
  overflow:visible;
  overflow-anchor:none;
  pointer-events:none;
}

html.is-safari .site-bottom-glow{
  overflow:hidden;
  contain:paint;
  transform:translateZ(0);
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  -webkit-mask-image:none;
  mask-image:none;
}

html.is-safari .site-bottom-glow::before{
  display:block;
  inset:auto -4vw -28px;
  height:calc(100% + 40px);
  opacity:1;
  transform:translateZ(0) scaleY(var(--bottom-glow-scale, 0));
  transform-origin:center bottom;
  background:
    radial-gradient(ellipse 32% 58% at 50% 92%, rgba(159,243,207,.54) 0%, rgba(72,239,255,.46) 34%, rgba(0,223,255,.18) 58%, rgba(0,223,255,0) 78%),
    radial-gradient(ellipse 64% 48% at 50% 100%, rgba(0,223,255,.92) 0%, rgba(0,140,255,.68) 48%, rgba(0,89,255,0) 82%),
    linear-gradient(180deg, rgba(159,243,207,0) 0%, rgba(159,243,207,.46) 22%, rgba(0,223,255,.92) 44%, rgba(225,236,254,.84) 64%, rgba(0,140,255,.92) 82%, rgba(0,89,255,.98) 100%);
}

html.is-safari .site-bottom-glow::after{
  height:clamp(48px, 7vh, 72px);
  opacity:1;
  background:linear-gradient(180deg, rgba(93,158,255,0) 0%, rgba(93,158,255,.48) 44%, rgba(0,89,255,.78) 100%);
}

html.is-safari .site-bottom-glow__field{
  display:none;
  bottom:-30px;
  height:calc(100% + 30px);
  filter:none;
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  -webkit-mask-image:none;
  mask-image:none;
}

html.is-safari .site-bottom-glow__field svg g{
  filter:none;
}

html.is-safari .footer{
  --footer-glow-height:clamp(190px, 28vh, 300px);
  --footer-glow-field-width:clamp(1600px, 135vw, 2400px);
}

.hero h1{
  max-width:990px;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:clamp(3rem, 3.38vw, 3rem);
  font-weight:400;
  line-height:3.25rem;
  letter-spacing:-.01em;
}

.hero .btn-primary{
  min-height:44px;
  padding:0 22px 0 18px;
  border-radius:16px;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:1rem;
  font-weight:500;
  line-height:1.25rem;
}

.hero-app-shot,
.hero-app-shot .win-main,
.hero-app-shot .focus-h,
.hero-app-shot .focus-sub,
.hero-app-shot .pcard,
.hero-app-shot .goal-card,
.hero-app-shot .cta-row,
.hero-app-shot .ws-i{
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
}

@media(max-width:960px){
  .hero-ambient__canvas{
    width:min(520px, 64vw);
    height:min(350px, 43vw);
  }

  .site-bottom-glow__field{
    width:var(--footer-glow-field-width);
  }

  .footer{
    --footer-glow-height:300px;
    --footer-glow-field-width:max(210vw, 1800px);
  }

  .hero h1{
    font-size:clamp(2.85rem, 5.3vw, 3rem);
    line-height:1.08;
  }
}

@media(max-width:760px){
  .hero-ambient__canvas{
    top:10%;
    width:74vw;
    height:52vw;
  }

  .site-bottom-glow__field{
    width:var(--footer-glow-field-width);
  }

  .footer{
    --footer-glow-height:300px;
    --footer-glow-field-width:max(240vw, 1400px);
  }

  .hero h1{
    max-width:11.6ch;
    font-size:clamp(2.78rem, 12vw, 3.25rem);
    line-height:1.02;
  }
}

@media(max-width:580px){
  .site-bottom-glow__field{
    width:var(--footer-glow-field-width);
  }

  .footer{
    --footer-glow-height:175px;
    --footer-glow-field-width:max(270vw, 1100px);
  }

  .brand{
    font-size:1.35rem;
  }

  .nav-links a{
    font-size:.82rem;
  }

  .hero h1{
    max-width:11.4ch;
    font-size:clamp(2.62rem, 12.1vw, 3.08rem);
  }
}

@media (hover: none), (pointer: coarse), (max-width:760px){
  .site-bottom-glow{
    display:flex;
    overflow:hidden;
    contain:paint;
    -webkit-mask-image:none;
    mask-image:none;
  }

  .site-bottom-glow::before{
    display:none;
  }

  .site-bottom-glow::after{
    height:54px;
    background:linear-gradient(180deg, rgba(93,158,255,0) 0%, rgba(93,158,255,.44) 44%, rgba(0,89,255,.72) 100%);
  }

  .site-bottom-glow__field{
    bottom:-24px;
    height:calc(100% + 24px);
    filter:none;
    -webkit-mask-image:none;
    mask-image:none;
  }

  .site-bottom-glow__field svg g{
    filter:none;
  }

  .footer{
    --footer-glow-height:clamp(170px, 28svh, 240px);
    --footer-glow-field-width:clamp(680px, 205vw, 980px);
  }
}

@media(max-width:580px){
  .footer{
    --footer-glow-height:clamp(150px, 26svh, 210px);
    --footer-glow-field-width:clamp(620px, 205vw, 820px);
  }
}

@media (prefers-reduced-motion: reduce){
  .footer-glow-runway{
    height:0;
    min-height:0;
    overflow:hidden;
  }

  .site-bottom-glow{
    display:none;
  }
}

/* Source-map particle hero */
.navbar{
  padding-top:28px;
}

.navbar-inner{
  width:calc(100vw - 128px);
  grid-template-columns:minmax(220px, 1fr) auto minmax(220px, 1fr);
}

.nav-links{
  justify-self:center;
  gap:38px;
}

.nav-links button{
  min-width:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#101318;
  font:inherit;
  font-size:.95rem;
  font-weight:650;
  letter-spacing:0;
  line-height:1;
  cursor:pointer;
}

.nav-links button:hover,
.nav-links button:focus-visible{
  color:#1d5f9f;
  outline:none;
}

.nav-links button:active{
  transform:translateY(1px);
}

.hero{
  margin:-62px 28px 0;
  min-height:calc(100dvh - 14px);
  padding-top:146px;
  border:0;
  border-radius:34px;
  background:
    radial-gradient(circle at 50% 33%, rgba(255,255,255,.72), transparent 30%),
    radial-gradient(circle at 18% 26%, rgba(255,255,255,.34), transparent 34%),
    radial-gradient(circle at 86% 22%, rgba(226,219,207,.48), transparent 32%),
    linear-gradient(180deg, #f1eee7 0%, #e7e2d8 48%, #f6f2ea 100%);
  box-shadow:none;
}

.hero::before{
  background:
    linear-gradient(180deg, rgba(255,255,255,.16) 0%, transparent 50%, rgba(255,255,255,.42) 100%),
    linear-gradient(90deg, rgba(255,255,255,.32), transparent 17%, transparent 83%, rgba(255,255,255,.32));
  box-shadow:none;
  opacity:.7;
}

.hero-ambient{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  background:
    linear-gradient(180deg, rgba(241,238,231,.76) 0%, rgba(231,226,216,.78) 52%, rgba(246,242,234,.84) 100%);
  opacity:var(--ambient-opacity, 1);
  filter:none;
  transform:none;
  -webkit-mask-image:none;
  mask-image:none;
}

.hero-ambient::after{
  display:none;
}

.hero-ambient__canvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  opacity:1;
  filter:none;
  transform:none;
  mix-blend-mode:multiply;
}

.hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  border-radius:inherit;
  box-shadow:none;
}

.hero-copy,
.hero-preview{
  position:relative;
  z-index:2;
}

.hero-preview{
  width:min(1270px, calc(100vw - 196px));
}

@media(max-width:960px){
  .navbar{
    padding-top:24px;
  }

  .navbar-inner{
    width:calc(100vw - 72px);
    grid-template-columns:minmax(150px, 1fr) auto minmax(150px, 1fr);
  }

  .nav-links{
    gap:28px;
  }

  .hero{
    margin:-56px 24px 0;
    min-height:calc(100dvh - 12px);
    padding-top:138px;
    border-radius:30px;
  }

  .hero-preview{
    width:calc(100vw - 104px);
  }
}

@media(max-width:760px){
  .navbar{
    padding-top:16px;
  }

  .navbar-inner{
    width:calc(100vw - 44px);
    grid-template-columns:auto minmax(0, 1fr) auto;
  }

  .nav-links{
    gap:18px;
  }

  .nav-links button{
    font-size:.8rem;
  }

  .hero{
    margin:-42px 16px 0;
    min-height:auto;
    padding-top:112px;
    border-radius:26px;
  }

  .hero-ambient__canvas{
    top:0;
    width:100%;
    height:100%;
  }

  .hero-preview{
    width:calc(100vw - 64px);
  }
}

@media(max-width:580px){
  .navbar-inner{
    width:calc(100vw - 32px);
    grid-template-columns:auto auto;
    grid-template-areas:"brand cta";
    justify-content:space-between;
    gap:12px;
  }

  .navbar-slot--brand{
    grid-area:brand;
  }

  .navbar-slot--cta{
    grid-area:cta;
  }

  .nav-links--center{
    display:none;
  }

  .btn-dl{
    width:44px;
    min-width:44px;
    min-height:40px;
    padding:0;
    justify-content:center;
  }

  .btn-dl > span:last-child{
    display:none;
  }

  .hero{
    margin:-38px 12px 0;
    padding-top:104px;
    border-radius:22px;
  }

  .hero h1{
    max-width:8.7ch;
    font-size:clamp(2.5rem, 11.2vw, 3.02rem);
    line-height:1.04;
  }

  .hero-preview{
    width:calc(100vw - 48px);
  }
}

.brand img.brand-cloud{
  width:53px;
  height:auto;
  border-radius:0;
  box-shadow:none;
}

.brand{
  font-size:1.78rem;
  gap:10px;
}

.nav-links--center{
  transition:opacity 140ms ease, transform 140ms ease, visibility 140ms ease;
}

.nav-links--center.is-hidden-on-scroll{
  opacity:0;
  transform:translateY(-4px);
  visibility:hidden;
  pointer-events:none;
}

.footer-inner,
.footer-meta{
  justify-content:center;
}

@media(max-width:640px){
  .brand img.brand-cloud{
    width:48px;
  }

  .brand{
    font-size:1.6rem;
  }
}

@media(max-width:640px){
  .navbar{
    top:10px;
    padding:10px 0 0;
  }

  .navbar-inner{
    width:calc(100vw - 28px);
    min-height:52px;
    grid-template-columns:auto;
    grid-template-areas:"brand";
    justify-content:space-between;
    gap:12px;
    padding:8px 10px 8px 12px;
    border-radius:18px;
  }

  .navbar-slot--brand{
    grid-area:brand;
    min-width:0;
  }

  .navbar-slot--cta{
    display:none;
  }

  .brand > span{
    display:inline !important;
  }

  .brand{
    gap:7px;
    font-size:1.22rem;
    line-height:1;
    letter-spacing:-.02em;
    min-width:0;
  }

  .brand img.brand-cloud{
    width:38px;
  }

  .nav-links--center{
    display:none;
  }

  .btn-dl{
    width:auto;
    min-width:86px;
    min-height:40px;
    padding:0 14px;
    border-radius:14px;
    font-size:.83rem;
  }

  .btn-dl > span{
    display:inline !important;
  }

  .hero{
    margin:-44px 8px 0;
    min-height:auto;
    padding:116px 14px 0;
    border-radius:22px;
  }

  .hero-badge{
    min-height:30px;
    padding:0 12px;
    font-size:.79rem;
  }

  .hero h1{
    max-width:10.4ch;
    margin-top:24px;
    font-size:clamp(2.32rem, 10.2vw, 2.72rem);
    line-height:1.05;
  }

  .hero-actions{
    margin-top:26px;
  }

  .hero .btn-primary{
    min-height:43px;
    padding:0 16px 0 14px;
    border-radius:16px;
    font-size:.9rem;
  }

  .hero-preview{
    width:calc(100vw - 24px);
    max-width:calc(100vw - 24px);
    margin-top:34px;
    overflow:hidden;
  }

  .hero-app-shot{
    width:100%;
    max-width:100%;
    height:auto;
    min-height:0;
    border-radius:18px 18px 0 0;
    overflow:hidden;
    box-sizing:border-box;
  }

  .hero-app-shot *{
    box-sizing:border-box;
    min-width:0;
  }

  .hero-app-shot .win-bar{
    padding:12px 14px;
  }

  .hero-app-shot .win-body{
    display:block;
    width:100%;
    max-width:100%;
    min-height:0;
    grid-template-columns:1fr;
  }

  .hero-app-shot .win-side{
    display:none;
  }

  .hero-app-shot .win-main{
    width:100%;
    max-width:100%;
    padding:16px;
    overflow:hidden;
  }

  .hero-app-shot .focus-scr{
    width:100%;
    max-width:100%;
    gap:14px;
  }

  .preview-heading{
    flex-direction:column;
    gap:8px;
  }

  .hero-app-shot .focus-h{
    font-size:1.42rem;
    line-height:1.04;
  }

  .hero-app-shot .focus-sub{
    max-width:100%;
    font-size:.8rem;
    line-height:1.35;
    white-space:normal;
  }

  .preview-status{
    min-height:28px;
    padding:0 10px;
    font-size:.72rem;
  }

  .goal-card{
    gap:11px;
    padding:12px;
  }

  .goal-card strong{
    font-size:.82rem;
  }

  .mode-pills{
    display:inline-flex;
    width:auto;
    max-width:100%;
  }

  .mpill{
    text-align:center;
  }

  .mode-pills .mpill:not(.on){
    display:none;
  }

  .hero-app-shot .preset-grid{
    width:100%;
    max-width:100%;
    display:block;
    grid-template-columns:1fr !important;
    gap:10px;
  }

  .hero-app-shot .pcard{
    width:100%;
    max-width:100%;
    min-width:0;
    padding:12px 10px;
  }

  .hero-app-shot .pcard:not(:first-child){
    display:none;
  }

  .hero-app-shot .pcard-new{
    display:none;
  }

  .cta-row{
    gap:10px;
    padding:12px;
  }

  .cta-row button{
    flex:0 0 auto;
    padding:7px 12px;
  }
}

/* Selected hero background tuning from the local animation lab. */
.hero{
  background:
    radial-gradient(circle at 50% 33%, rgba(255,255,255,.72), transparent 30%),
    radial-gradient(circle at 18% 26%, rgba(255,255,255,.34), transparent 34%),
    radial-gradient(circle at 86% 22%, rgba(233,227,216,.6), transparent 32%),
    linear-gradient(180deg, #f1eee7 0%, #e9e3d8 48%, #f6f2ea 100%);
}

.hero::before{
  background:
    linear-gradient(180deg, rgba(255,255,255,.16) 0%, transparent 50%, rgba(255,255,255,.42) 100%),
    linear-gradient(90deg, rgba(255,255,255,.32), transparent 17%, transparent 83%, rgba(255,255,255,.32));
  box-shadow:none;
  opacity:.7;
}

.hero-ambient{
  background:
    linear-gradient(180deg, rgba(241,238,231,.76) 0%, rgba(233,227,216,.78) 52%, rgba(246,242,234,.84) 100%);
}

/* Static Craft-style nav island. */
@keyframes navIslandBlurReveal{
  from{
    opacity:0;
    filter:blur(18px);
    transform:translateY(-12px);
  }
  to{
    opacity:1;
    filter:blur(0);
    transform:translateY(0);
  }
}

.navbar{
  position:fixed;
  inset:clamp(38px, 2.2vw, 48px) 0 auto;
  z-index:120;
  display:flex;
  justify-content:center;
  padding:0;
  pointer-events:none;
  animation:navIslandBlurReveal 720ms cubic-bezier(.16,1,.3,1) 90ms both;
}

.navbar.has-open-menu{
  pointer-events:auto;
}

.navbar-inner{
  position:relative;
  overflow:hidden;
  width:fit-content;
  max-width:calc(100vw - 72px);
  min-height:clamp(45px, 3.15vw, 65px);
  display:grid;
  grid-template-columns:auto auto auto;
  align-items:center;
  gap:clamp(22px, 1.85vw, 38px);
  padding:clamp(6px, .52vw, 11px) clamp(7px, .62vw, 13px) clamp(6px, .52vw, 11px) clamp(16px, 1.28vw, 27px);
  border:1px solid rgba(255,255,255,.9);
  border-radius:clamp(19px, 1.38vw, 29px);
  background:
    linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.84) 52%, rgba(250,250,250,.7) 100%);
  color:#071014;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.96),
    inset 0 -1px 0 rgba(255,255,255,.42),
    0 11px 29px rgba(28,28,26,.1);
  backdrop-filter:blur(20px) saturate(145%) brightness(1.04);
  -webkit-backdrop-filter:blur(20px) saturate(145%) brightness(1.04);
  pointer-events:auto;
}

.navbar-inner::before{
  content:"";
  position:absolute;
  inset:1px;
  border-radius:inherit;
  background:
    linear-gradient(110deg, rgba(255,255,255,.88) 0%, rgba(255,255,255,.34) 36%, rgba(255,255,255,.16) 67%, rgba(255,255,255,.64) 100%);
  opacity:.72;
  pointer-events:none;
}

.navbar-slot{
  display:flex;
  align-items:center;
  min-width:0;
  position:relative;
  z-index:1;
}

.navbar-slot--brand{
  justify-self:start;
}

.navbar-slot--cta{
  justify-self:end;
  justify-content:flex-end;
  gap:clamp(10px, .86vw, 18px);
}

.brand{
  display:inline-flex;
  align-items:center;
  gap:clamp(7px, .58vw, 12px);
  min-height:36px;
  min-width:0;
  color:#071014;
  font-family:var(--sans);
  font-size:clamp(1.18rem, 1.28vw, 1.72rem);
  font-weight:560;
  letter-spacing:0;
  line-height:1;
}

.brand img.brand-cloud{
  width:clamp(24px, 1.55vw, 32px);
  height:clamp(24px, 1.55vw, 32px);
  border-radius:clamp(7px, .45vw, 9px);
  box-shadow:none;
}

.nav-links,
.nav-links--center{
  display:inline-flex;
  align-items:center;
  justify-self:center;
  gap:clamp(12px, .9vw, 20px);
  padding:0;
  border:0;
  background:transparent;
  opacity:1;
  transform:none;
  visibility:visible;
  pointer-events:auto;
  position:relative;
  z-index:1;
}

.nav-links--center.is-hidden-on-scroll{
  opacity:1;
  transform:none;
  visibility:visible;
  pointer-events:auto;
}

.nav-links a{
  min-height:36px;
  display:inline-flex;
  align-items:center;
  min-width:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:#071014;
  font-size:clamp(1rem, .96vw, 1.23rem);
  font-weight:520;
  letter-spacing:0;
  line-height:1;
  text-decoration:none;
  transition:color 150ms ease, transform 150ms ease;
}

.nav-links a:hover,
.nav-links a:focus-visible{
  color:#071014;
  background:transparent;
}

.brand:focus-visible,
.nav-links a:focus-visible,
.btn-dl:focus-visible,
.nav-menu-button:focus-visible,
.mobile-menu a:focus-visible{
  outline:2px solid rgba(37,113,175,.5);
  outline-offset:3px;
}

.btn-dl{
  min-width:auto;
  min-height:clamp(36px, 2.25vw, 47px);
  width:auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:0;
  padding:0 clamp(19px, 1.42vw, 31px);
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  background:#050608;
  color:#fff !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    0 2px 7px rgba(0,0,0,.2);
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:clamp(1rem, .96vw, 1.23rem);
  font-weight:500;
  letter-spacing:0;
  line-height:1.25rem;
  white-space:nowrap;
  transition:transform 150ms ease, background 150ms ease, box-shadow 150ms ease;
}

.btn-dl:hover{
  transform:translateY(-1px);
  background:#111316;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.18),
    0 4px 12px rgba(0,0,0,.22);
}

.btn-dl:active{
  transform:translateY(0);
}

.btn-dl > span{
  display:inline !important;
}

.nav-menu-button{
  display:none;
  padding:0;
  border:0;
  width:38px;
  height:38px;
  flex:0 0 38px;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:4px;
  border-radius:999px;
  background:transparent;
  color:#071014;
  cursor:pointer;
  appearance:none;
}

.nav-menu-button span{
  width:15px;
  height:2px;
  border-radius:999px;
  background:currentColor;
  transition:transform 180ms ease, opacity 180ms ease;
}

.nav-menu-button.is-open span:nth-child(1){
  transform:translateY(6px) rotate(45deg);
}

.nav-menu-button.is-open span:nth-child(2){
  opacity:0;
}

.nav-menu-button.is-open span:nth-child(3){
  transform:translateY(-6px) rotate(-45deg);
}

.mobile-menu{
  position:absolute;
  top:calc(100% + 8px);
  left:50%;
  z-index:5;
  width:min(320px, calc(100vw - 36px));
  display:grid;
  gap:2px;
  padding:8px 5px;
  border:1px solid rgba(11,18,24,.1);
  border-radius:18px;
  background:#fff;
  color:#101318;
  transform:translateX(-50%);
  pointer-events:auto;
}

.mobile-menu[hidden]{
  display:none;
}

.mobile-menu a{
  display:flex;
  align-items:center;
  min-height:42px;
  padding:0 10px;
  border-radius:12px;
  color:#101318;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:.95rem;
  font-weight:500;
  letter-spacing:0;
}

.mobile-menu a:hover,
.mobile-menu a:focus-visible{
  background:#f2f7fa;
}

@media(min-width:761px){
  .mobile-menu{
    display:none !important;
  }
}

.hero{
  margin:28px 16px 0;
  min-height:auto;
  padding-top:clamp(86px, 5.85vw, 116px);
  padding-bottom:clamp(48px, 4.8vw, 78px);
}

.hero-preview{
  width:min(1056px, calc(100vw - 196px));
  margin-top:clamp(40px, 3.2vw, 54px);
}

.hero-preview picture{
  display:block;
}

.hero-product-shot{
  display:block;
  width:100%;
  height:auto;
  border:1px solid rgba(36,67,97,.16);
  border-radius:22px 22px 0 0;
  background:#f3f3f4;
  box-shadow:
    0 22px 54px rgba(39,91,128,.16),
    0 8px 18px rgba(39,91,128,.1);
}

.hero-app-shot{
  height:clamp(380px, 26vw, 430px);
}

@media(max-width:1180px){
  .nav-link--wide{
    display:none;
  }
}

@media(max-width:960px){
  .navbar{
    inset:38px 0 auto;
  }

  .navbar-inner{
    width:fit-content;
    max-width:calc(100vw - 44px);
    min-height:50px;
    gap:12px;
    padding:7px 8px 7px 15px;
  }

  .hero{
    margin:24px 12px 0;
    padding-top:88px;
    padding-bottom:54px;
  }
}

@media(max-width:760px){
  .navbar{
    inset:34px 0 auto;
    padding:0;
  }

  .navbar-inner{
    width:min(350px, calc(100vw - 28px));
    max-width:calc(100vw - 28px);
    min-height:56px;
    grid-template-columns:auto auto;
    grid-template-areas:"brand cta";
    justify-content:center;
    gap:10px;
    padding:8px 10px 8px 14px;
    border-radius:999px;
    background:#fff;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.96),
      0 12px 28px rgba(28,28,26,.13);
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
  }

  .navbar-inner::before{
    display:none;
  }

  .navbar-slot--brand{
    grid-area:brand;
  }

  .nav-links--center{
    grid-area:auto;
    display:none;
  }

  .navbar-slot--cta{
    grid-area:cta;
    display:grid;
    grid-template-columns:auto 38px;
    justify-self:end;
    align-items:center;
    gap:8px;
  }

  .brand{
    gap:7px;
    min-height:38px;
    font-size:1.2rem;
    letter-spacing:0;
    white-space:nowrap;
  }

  .brand > span{
    display:inline !important;
  }

  .brand img.brand-cloud{
    width:29px;
    height:29px;
  }

  .btn-dl{
    min-width:auto;
    width:auto;
    min-height:38px;
    padding:0 16px;
    border-radius:999px;
    font-size:.94rem;
  }

  .nav-menu-button{
    display:inline-flex;
  }

  .hero{
    margin:18px 10px 0;
    padding-top:86px;
    padding-bottom:38px;
  }

  .hero-app-shot{
    height:360px;
  }

  .hero-product-shot{
    border-radius:18px 18px 0 0;
  }
}

@media(max-width:380px){
  .navbar-inner{
    max-width:calc(100vw - 22px);
    width:calc(100vw - 28px);
    padding-left:12px;
    padding-right:8px;
    gap:6px;
  }

  .brand{
    font-size:1.08rem;
  }

  .brand img.brand-cloud{
    width:27px;
    height:27px;
  }

  .btn-dl{
    min-height:36px;
    padding:0 13px;
    font-size:.88rem;
  }

  .nav-menu-button{
    width:38px;
    height:38px;
    flex-basis:38px;
  }

  .hero-app-shot{
    height:330px;
  }
}

@media(prefers-reduced-motion:reduce){
  .navbar{
    animation:none;
  }
}

/* SEO blog */
.blog-preview-section{
  padding:96px 0 10px;
  position:relative;
  z-index:2;
}

.blog-preview-head{
  max-width:720px;
}

.blog-card-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:30px;
}

.blog-card{
  min-height:220px;
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:24px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:18px;
  background:rgba(255,255,255,.035);
  box-shadow:0 16px 36px rgba(2,8,10,.16);
}

.blog-card__meta,
.blog-kicker{
  color:#1f5f8f;
  font-family:var(--sans);
  font-size:.72rem;
  font-weight:760;
  letter-spacing:0;
  text-transform:uppercase;
}

.blog-card h3{
  color:var(--text);
  font-size:1.12rem;
  font-weight:850;
  letter-spacing:0;
  line-height:1.22;
}

.blog-card p:last-child{
  color:var(--muted-hi);
  font-size:.9rem;
  line-height:1.62;
}

.blog-card a{
  text-decoration:none;
}

.blog-body{
  background:#fff;
  color:#071014;
  font-family:var(--sans);
}

.blog-body::before{
  display:none;
}

.blog-main,
.blog-article-main{
  width:min(1160px, calc(100vw - 48px));
  margin:0 auto;
  padding:clamp(142px, 12vw, 176px) 0 96px;
}

.blog-main--hub{
  display:grid;
  gap:58px;
}

.blog-hero{
  margin:0 0 12px;
}

.blog-hero--hub{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
  gap:44px;
  align-items:end;
}

.blog-hero__copy{
  max-width:760px;
}

.blog-hero h1{
  margin-top:14px;
  color:#071014;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Geist", system-ui, sans-serif;
  font-size:clamp(3rem, 7vw, 5.9rem);
  font-weight:400;
  line-height:.98;
  letter-spacing:0;
}

.blog-hero p:last-child{
  margin-top:24px;
  max-width:700px;
  color:#4f5962;
  font-size:clamp(1rem, 1.16vw, 1.12rem);
  line-height:1.68;
}

.blog-hero__panel{
  display:grid;
  gap:18px;
  padding:24px;
  border:1px solid #dfe7ea;
  border-radius:8px;
  background:#f8faf9;
}

.blog-panel__eyebrow{
  color:#4f5962;
  font-size:.9rem;
  font-weight:760;
}

.blog-panel__stats{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.blog-panel__stats div{
  padding-top:14px;
  border-top:1px solid #dfe7ea;
}

.blog-panel__stats dt{
  color:#071014;
  font-size:2.25rem;
  font-weight:800;
  line-height:1;
}

.blog-panel__stats dd{
  margin-top:6px;
  color:#68737b;
  font-size:.86rem;
  font-weight:680;
}

.blog-chip-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.blog-chip-row span{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 10px;
  border:1px solid #dfe7ea;
  border-radius:999px;
  background:#fff;
  color:#34404a;
  font-size:.78rem;
  font-weight:700;
}

.blog-section-head{
  display:grid;
  gap:8px;
  margin-bottom:20px;
}

.blog-section-head h2{
  color:#071014;
  font-size:clamp(1.55rem, 2.4vw, 2.25rem);
  font-weight:800;
  line-height:1.08;
  letter-spacing:0;
}

.blog-feature-grid{
  display:grid;
  grid-template-columns:1.2fr .9fr .9fr;
  gap:14px;
}

.blog-index-grid{
  display:grid;
  gap:0;
  border-top:1px solid #dfe7ea;
}

.blog-index-grid--compact{
  grid-template-columns:repeat(2,minmax(0,1fr));
  border-top:0;
  gap:14px;
}

.blog-index-card{
  display:flex;
  flex-direction:column;
  gap:12px;
  min-height:0;
  padding:22px;
  border:1px solid #dfe7ea;
  border-radius:8px;
  background:#fff;
  box-shadow:0 14px 30px rgba(15,23,42,.05);
}

.blog-index-card--featured:first-child{
  min-height:340px;
  justify-content:flex-end;
  background:#071014;
}

.blog-index-card--featured:first-child .blog-card__meta,
.blog-index-card--featured:first-child h3,
.blog-index-card--featured:first-child h3 a,
.blog-index-card--featured:first-child .blog-read-link{
  color:#fff;
}

.blog-index-card--featured:first-child p:not(.blog-card__meta){
  color:#d8e4e5;
}

.blog-index-card__topline{
  display:flex;
  justify-content:space-between;
  gap:12px;
  color:#7a858d;
  font-size:.8rem;
  font-weight:680;
}

.blog-index-card h2,
.blog-index-card h3{
  color:#071014;
  font-family:var(--sans);
  font-size:clamp(1.12rem, 1.55vw, 1.46rem);
  font-weight:780;
  line-height:1.16;
  letter-spacing:0;
}

.blog-index-card h2 a,
.blog-index-card h3 a{
  color:inherit;
  text-decoration:none;
}

.blog-index-card p:not(.blog-card__meta){
  color:#4f5962;
  font-size:.95rem;
  line-height:1.62;
}

.blog-read-link{
  margin-top:auto;
  color:#071014;
  font-size:.9rem;
  font-weight:760;
  text-decoration:none;
}

.blog-read-link:hover,
.blog-read-link:focus-visible{
  color:#0f6f90;
}

.blog-breadcrumbs{
  margin-bottom:22px;
  color:#6b7280;
  font-size:.86rem;
  font-weight:700;
}

.blog-breadcrumbs a{
  color:#374151;
  text-decoration:none;
}

.blog-article-main{
  display:grid;
  grid-template-columns:220px minmax(0,820px);
  gap:54px;
  align-items:start;
}

.blog-article-rail{
  position:sticky;
  top:132px;
  display:grid;
  gap:16px;
}

.blog-back-link{
  color:#071014;
  font-size:.9rem;
  font-weight:760;
  text-decoration:none;
}

.blog-rail-box{
  display:grid;
  gap:12px;
  padding:16px;
  border:1px solid #dfe7ea;
  border-radius:8px;
  background:#f8faf9;
}

.blog-rail-box nav{
  display:grid;
  gap:9px;
}

.blog-rail-box a{
  color:#56616a;
  font-size:.86rem;
  font-weight:650;
  line-height:1.35;
  text-decoration:none;
}

.blog-rail-box a:hover,
.blog-rail-box a:focus-visible{
  color:#071014;
}

.blog-rich-article{
  max-width:820px;
}

.blog-rich-article h1{
  max-width:800px;
}

.blog-deck{
  margin:0 0 24px;
  color:#34404a;
  font-size:1.1rem;
  line-height:1.72;
}

.blog-verdict,
.blog-cta-panel{
  display:grid;
  gap:12px;
  margin:30px 0;
  padding:22px;
  border:1px solid #cfe1dc;
  border-radius:8px;
  background:#f6fbf8;
}

.blog-verdict__label{
  margin:0;
  color:#0f5f4a;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:0;
  text-transform:uppercase;
}

.blog-verdict p:last-child,
.blog-cta-panel p{
  color:#24313a;
  font-size:1rem;
  line-height:1.7;
}

.blog-quick-section,
.blog-tool-section,
.blog-content-section,
.blog-source-section,
.blog-related-section{
  margin-top:46px;
}

.blog-pick-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:16px;
}

.blog-pick{
  display:grid;
  gap:8px;
  padding:18px;
  border:1px solid #dfe7ea;
  border-radius:8px;
  background:#fff;
}

.blog-pick p{
  margin:0;
  color:#1f5f8f;
  font-size:.78rem;
  font-weight:800;
  line-height:1.2;
  text-transform:uppercase;
}

.blog-pick h3{
  margin:0;
  color:#071014;
  font-size:1.08rem;
  line-height:1.25;
}

.blog-pick span{
  color:#4f5962;
  font-size:.92rem;
  line-height:1.55;
}

.blog-table-wrap{
  width:100%;
  margin-top:18px;
  overflow:auto;
  border:1px solid #dfe7ea;
  border-radius:8px;
  background:#fff;
}

.blog-tool-table{
  width:100%;
  min-width:860px;
  border-collapse:collapse;
}

.blog-tool-table th,
.blog-tool-table td{
  padding:14px 16px;
  border-bottom:1px solid #e7edf0;
  color:#34404a;
  font-size:.9rem;
  line-height:1.48;
  text-align:left;
  vertical-align:top;
}

.blog-tool-table thead th{
  background:#f8faf9;
  color:#071014;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:0;
  text-transform:uppercase;
}

.blog-tool-table tbody th{
  color:#071014;
  font-weight:800;
}

.blog-tool-table tr:last-child th,
.blog-tool-table tr:last-child td{
  border-bottom:0;
}

.blog-article-main--reference .blog-table-wrap{
  border-color:rgba(255,255,255,.12);
  background:rgba(255,255,255,.045);
  box-shadow:0 18px 42px rgba(0,0,0,.18);
}

.blog-article-main--reference .blog-tool-table thead th{
  background:rgba(255,255,255,.06);
  color:rgba(243,247,245,.94);
}

.blog-article-main--reference .blog-tool-table th,
.blog-article-main--reference .blog-tool-table td{
  border-bottom-color:rgba(255,255,255,.09);
  color:rgba(205,216,211,.78);
}

.blog-article-main--reference .blog-tool-table tbody th{
  color:#f7fbf9;
}

.blog-article-main--reference .blog-pick{
  padding:22px;
  border-color:#dfe7ea;
  background:#fff;
  color:#071014;
}

.blog-article-main--reference .blog-pick p{
  color:#4a5561;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:.78rem;
  font-weight:620;
  letter-spacing:0;
}

.blog-article-main--reference .blog-pick h3{
  color:#071014;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:clamp(1.52rem, 2vw, 1.9rem);
  font-weight:460;
  line-height:1.02;
  letter-spacing:0;
}

.blog-article-main--reference .blog-pick span{
  color:#4f5962;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:1.02rem;
  font-weight:430;
  line-height:1.55;
}

.blog-article-main--reference .blog-table-wrap{
  border-color:#dfe7ea;
  background:#fff;
  box-shadow:0 18px 42px rgba(7,16,20,.08);
}

.blog-article-main--reference .blog-tool-table{
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
}

.blog-article-main--reference .blog-tool-table thead th{
  background:#f8faf9;
  color:#4a5561;
  font-size:.76rem;
  font-weight:620;
  letter-spacing:0;
}

.blog-article-main--reference .blog-tool-table th,
.blog-article-main--reference .blog-tool-table td{
  border-bottom-color:#e7edf0;
  color:#4f5962;
  font-size:.92rem;
  font-weight:430;
  line-height:1.5;
}

.blog-article-main--reference .blog-tool-table tbody th{
  color:#071014;
  font-weight:560;
}

.blog-check-list{
  display:grid;
  gap:9px;
  margin-top:16px;
  padding-left:0;
  list-style:none;
}

.blog-check-list li{
  position:relative;
  padding-left:20px;
}

.blog-check-list li::before{
  content:"";
  position:absolute;
  top:.78em;
  left:0;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#0f6f90;
}

.blog-source-list,
.blog-related-grid{
  margin-top:16px;
}

.blog-source-list{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding-left:0;
  list-style:none;
}

.blog-source-list li{
  margin:0;
}

.blog-source-list a{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 12px;
  border:1px solid #dfe7ea;
  border-radius:999px;
  background:#fff;
  color:#34404a;
  font-size:.86rem;
  text-decoration:none;
}

.blog-related-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.blog-related-grid a{
  display:grid;
  gap:8px;
  padding:16px;
  border:1px solid #dfe7ea;
  border-radius:8px;
  color:#071014;
  text-decoration:none;
}

.blog-related-grid span{
  color:#1f5f8f;
  font-size:.76rem;
  font-weight:800;
  text-transform:uppercase;
}

.blog-related-grid strong{
  font-size:.98rem;
  line-height:1.35;
}

.blog-cta-panel h2{
  margin:0;
}

html:has(.blog-main--reference),
html:has(.blog-article-main--reference),
body.blog-body:has(.blog-main--reference),
body.blog-body:has(.blog-article-main--reference){
  background:#fff;
}

body.blog-body:has(.blog-main--reference),
body.blog-body:has(.blog-article-main--reference){
  color:#071014;
  max-width:100vw;
  overflow-x:hidden;
}

.blog-main--reference,
.blog-article-main--reference{
  position:relative;
  isolation:isolate;
  box-sizing:border-box;
  width:min(1180px, calc(100vw - 48px));
  color:#071014;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  background:transparent;
}

.blog-main--reference{
  display:grid;
  gap:clamp(28px, 4vw, 48px);
  padding-bottom:clamp(86px, 9vw, 128px);
}

.blog-article-main--reference{
  display:block;
  width:min(1220px, calc(100vw - 48px));
  padding-bottom:clamp(86px, 9vw, 126px);
}

.blog-main--reference::before,
.blog-article-main--reference::before{
  content:none;
  display:none;
}

.blog-hero--reference{
  display:grid;
  grid-template-columns:minmax(0, .96fr) minmax(280px, .52fr);
  gap:clamp(28px, 5vw, 74px);
  align-items:end;
  padding-bottom:clamp(28px, 4vw, 48px);
  border-bottom:1px solid rgba(7,16,20,.1);
}

.blog-hero--reference .blog-kicker,
.blog-main--reference .blog-kicker,
.blog-article-main--reference .blog-kicker,
.blog-article-main--reference .blog-card__meta{
  color:#0f6f90;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-weight:500;
}

.blog-hero--reference h1{
  max-width:860px;
  color:#071014;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:clamp(3rem, 6vw, 5.6rem);
  font-weight:400;
  line-height:.98;
  letter-spacing:0;
}

.blog-hero--reference p:last-child{
  max-width:720px;
  color:#5c6268;
  font-size:clamp(1.03rem, 1.25vw, 1.22rem);
  line-height:1.7;
}

.blog-filter-row{
  max-width:100%;
  display:flex;
  flex-wrap:nowrap;
  gap:10px;
  margin-top:0;
  padding:0 2px 8px;
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-x:contain;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}

.blog-filter-row::-webkit-scrollbar{
  display:none;
}

.blog-filter-chip{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:38px;
  max-width:min(72vw, 320px);
  padding:0 15px;
  border:1px solid #dce5ea;
  border-radius:999px;
  appearance:none;
  background:#fff;
  color:#4f5962;
  box-shadow:none;
  font-size:.86rem;
  font-weight:500;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
}

.blog-filter-chip span:last-child{
  color:#6f7b84;
  font-size:.78rem;
  font-weight:500;
}

button.blog-filter-chip{
  cursor:pointer;
}

.blog-filter-chip:hover,
.blog-filter-chip:focus-visible{
  border-color:rgba(15,111,144,.28);
  color:#071014;
  background:#f7fbfd;
}

.blog-filter-chip.is-active,
.blog-filter-chip[aria-selected="true"],
.blog-filter-chip[aria-pressed="true"]{
  border-color:rgba(15,111,144,.32);
  background:#eefcf8;
  color:#0f6f90;
}

.blog-filter-chip.is-active span:last-child,
.blog-filter-chip[aria-selected="true"] span:last-child,
.blog-filter-chip[aria-pressed="true"] span:last-child{
  color:#0f6f90;
}

.blog-reference-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:14px;
  min-width:0;
  max-width:100%;
}

.blog-reference-card{
  min-width:0;
  display:grid;
  grid-template-rows:auto 1fr;
  overflow:hidden;
  border:1px solid #dce5ea;
  border-radius:8px;
  background:#fff;
  color:#071014;
  box-shadow:0 18px 42px rgba(7,16,20,.08);
  text-decoration:none;
}

.blog-reference-card:first-child{
  grid-column:auto;
}

.blog-reference-card:hover,
.blog-reference-card:focus-within{
  border-color:rgba(15,111,144,.26);
  background:#fbfdfc;
  transform:translateY(-2px);
}

.blog-reference-card__media{
  position:relative;
  aspect-ratio:16 / 10;
  overflow:hidden;
  border-bottom:1px solid #dce5ea;
  background:
    linear-gradient(135deg, rgba(159,243,207,.22) 0%, rgba(141,202,255,.14) 48%, rgba(246,207,142,.12) 100%),
    #f6fafb;
}

.blog-reference-card:first-child .blog-reference-card__media{
  aspect-ratio:16 / 10;
}

.blog-reference-card__media img,
.blog-reference-card__media picture,
.blog-reference-card__media video{
  width:100%;
  height:100%;
  display:block;
}

.blog-reference-card__media img,
.blog-reference-card__media video{
  object-fit:cover;
}

.blog-reference-card__media--variant-desktop img,
.blog-reference-card__media--variant-mobile img{
  object-fit:contain;
  object-position:center top;
}

.blog-reference-card__media::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg, transparent 58%, rgba(255,255,255,.24) 100%);
}

.blog-reference-card__content{
  min-width:0;
  display:grid;
  gap:12px;
  align-content:start;
  padding:18px;
}

.blog-reference-card__topline{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:#6a747d;
  font-size:.78rem;
  font-weight:500;
  line-height:1.25;
}

.blog-reference-card__topline > *{
  min-width:0;
  overflow-wrap:anywhere;
}

.blog-reference-card__topline .blog-card__meta{
  color:#0f6f90;
}

.blog-reference-card h2,
.blog-reference-card h3{
  color:#071014;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:clamp(1.08rem, 1.45vw, 1.38rem);
  font-weight:600;
  line-height:1.16;
  letter-spacing:0;
  overflow-wrap:break-word;
}

.blog-reference-card:first-child h2,
.blog-reference-card:first-child h3{
  font-size:clamp(1.08rem, 1.45vw, 1.38rem);
}

.blog-reference-card a{
  max-width:100%;
  display:block;
  color:inherit;
  text-decoration:none;
}

.blog-reference-card p{
  color:#5f6670;
  font-size:.95rem;
  line-height:1.6;
  overflow-wrap:anywhere;
}

.blog-article-layout{
  display:grid;
  grid-template-columns:minmax(0, 780px) minmax(200px, 260px);
  gap:clamp(34px, 6vw, 86px);
  align-items:start;
  min-width:0;
}

.blog-article-rail--reference{
  position:sticky;
  top:132px;
  min-width:0;
  display:grid;
  gap:16px;
  color:#5f6670;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
}

.blog-article-rail--reference .blog-back-link{
  color:#071014;
}

.blog-rail-nav{
  display:grid;
  gap:9px;
  padding:3px 0 3px 16px;
  border-left:1px solid #dce5ea;
}

.blog-rail-nav a{
  color:#6a747d;
  font-size:.86rem;
  font-weight:520;
  line-height:1.35;
  text-decoration:none;
  overflow-wrap:anywhere;
}

.blog-rail-nav a:hover,
.blog-rail-nav a:focus-visible,
.blog-rail-nav a[aria-current="true"]{
  color:var(--accent);
}

.blog-article-main--reference .blog-breadcrumbs,
.blog-article-main--reference .doc-effective{
  color:#6b7280;
}

.blog-article-main--reference .blog-breadcrumbs a{
  color:#374151;
}

.blog-article-main--reference .blog-rich-article{
  min-width:0;
  max-width:780px;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
}

.blog-article-main--reference .doc-article h1{
  color:#071014;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:clamp(2.75rem, 4.8vw, 4.6rem);
  font-weight:430;
  line-height:.98;
  letter-spacing:0;
}

.blog-article-main--reference .doc-article h2{
  color:#071014;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:clamp(2.15rem, 3.5vw, 3.45rem);
  font-weight:430;
  line-height:1;
  letter-spacing:0;
}

.blog-article-main--reference .doc-article h3{
  color:#071014;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:clamp(1.45rem, 2vw, 2rem);
  font-weight:460;
  line-height:1.06;
  letter-spacing:0;
}

.blog-article-main--reference .doc-article p,
.blog-article-main--reference .doc-article li{
  color:#374151;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-weight:430;
}

.blog-article-main--reference .doc-article a{
  color:#0f6f90;
}

.blog-article-lede{
  max-width:760px;
  margin:20px 0 28px;
  color:#34404a;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:clamp(1.14rem, 1.7vw, 1.42rem);
  font-weight:430;
  line-height:1.68;
}

.blog-quick-answer{
  display:grid;
  gap:11px;
  margin:30px 0;
  padding:20px;
  border:1px solid #dce5ea;
  border-radius:8px;
  background:
    linear-gradient(135deg, rgba(159,243,207,.18), rgba(141,202,255,.09)),
    #f8faf9;
}

.blog-quick-answer__label{
  margin:0;
  color:#0f6f90;
  font-size:.76rem;
  font-weight:620;
  line-height:1.2;
  letter-spacing:0;
  text-transform:uppercase;
}

.blog-quick-answer p{
  margin:0;
  color:#24313a;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:1rem;
  font-weight:430;
  line-height:1.68;
}

.download-body{
  background:#fff;
  color:#071014;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
}

.download-main{
  width:min(1168px, calc(100vw - 48px));
  padding:clamp(72px, 7vw, 104px) 0 104px;
}

.download-hero{
  display:grid;
  justify-items:center;
  text-align:center;
}

.download-hero .download-status{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:48px;
  padding:0 21px 0 14px;
  border-radius:999px;
  background:#f3f8ff;
  color:#2a68cc;
  font-size:.77rem;
  font-weight:860;
  letter-spacing:.045em;
  line-height:1;
  text-transform:uppercase;
}

.download-status__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border-radius:999px;
  background:#2a68cc;
  color:#fff;
  flex-shrink:0;
}

.download-status__icon svg{
  width:14px;
  height:14px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.download-hero h1{
  margin-top:24px;
  color:#071014;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  max-width:1180px;
  font-size:clamp(3rem, 6vw, 5.6rem);
  font-weight:400;
  line-height:.98;
  letter-spacing:0;
}

.download-hero p{
  margin-top:24px;
  max-width:980px;
  color:#717874;
  font-size:clamp(1rem, 1.25vw, 1.15rem);
  font-weight:560;
  line-height:1.58;
}

.download-hero a,
.download-manual-text{
  color:#2a68cc;
  font-weight:820;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:4px;
}

.download-manual-text{
  cursor:default;
}

.download-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  margin-top:24px;
  padding:0 24px;
  border-radius:999px;
  background:#071014;
  color:#fff;
  font-size:.95rem;
  font-weight:850;
  text-decoration:none;
  box-shadow:0 12px 28px rgba(17,24,39,.16);
  transition:transform 140ms, box-shadow 140ms;
}

.download-cta:hover{
  transform:translateY(-1px);
  box-shadow:0 16px 34px rgba(17,24,39,.2);
}

.download-steps{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:clamp(26px, 4vw, 48px);
  margin-top:clamp(74px, 8.4vw, 118px);
}

.download-step{
  display:grid;
  justify-items:center;
  align-content:start;
  gap:20px;
  min-width:0;
  text-align:center;
}

.download-step__number{
  display:grid;
  place-items:center;
  width:56px;
  height:56px;
  border-radius:999px;
  background:#2a68cc;
  color:#fff;
  font-size:1.55rem;
  font-weight:840;
  line-height:1;
  letter-spacing:-.04em;
}

.download-step__media{
  width:100%;
  aspect-ratio:1.5;
  border:1px solid #dfe6ee;
  border-radius:14px;
  background:#f2f5f8;
  overflow:hidden;
}

.download-step__image{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  background:#f2f5f8;
}

.download-step p{
  max-width:19rem;
  color:#737b76;
  font-size:clamp(1rem, 1.35vw, 1.16rem);
  font-weight:560;
  line-height:1.32;
  letter-spacing:-.015em;
}

.download-step strong{
  color:#2a68cc;
  font-weight:760;
}

@media(max-width:920px){
  .blog-hero--reference,
  .blog-reference-grid,
  .blog-article-layout{
    grid-template-columns:1fr;
  }

  .blog-reference-card:first-child{
    grid-column:auto;
  }

  .blog-reference-card:first-child .blog-reference-card__media{
    aspect-ratio:16 / 10;
  }

  .blog-article-rail--reference{
    position:static;
    order:-1;
  }

  .blog-rail-nav{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    padding:14px 0 0;
    border-left:0;
    border-top:1px solid rgba(255,255,255,.14);
  }
}

@media(max-width:820px){
  .blog-card-grid,
  .blog-index-grid,
  .blog-feature-grid,
  .blog-index-grid--compact,
  .blog-pick-grid,
  .blog-related-grid,
  .download-steps{
    grid-template-columns:1fr;
  }

  .blog-hero--hub,
  .blog-article-main{
    grid-template-columns:1fr;
    gap:28px;
  }

  .blog-article-rail{
    position:static;
    order:-1;
  }

  .blog-rail-box nav{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .blog-card,
  .blog-index-card{
    min-height:auto;
  }

  .blog-index-card{
    gap:12px;
    padding:20px;
  }

  .blog-index-card--featured:first-child{
    min-height:auto;
  }

  .blog-read-link{
    margin-top:4px;
    white-space:normal;
  }
}

@media(max-width:640px){
  .blog-preview-section{
    padding:72px 0 0;
  }

  .blog-main{
    width:calc(100vw - 32px);
    max-width:calc(100vw - 32px);
    margin-inline:auto;
  }

  .blog-main--reference{
    width:100%;
    max-width:100vw;
    margin-inline:0;
    padding-inline:16px;
  }

  .blog-reference-section,
  .blog-reference-grid,
  .blog-reference-card{
    width:100%;
    max-width:100%;
    min-width:0;
  }

  .blog-reference-grid{
    grid-template-columns:minmax(0, 1fr);
  }

  .blog-reference-card{
    box-sizing:border-box;
    overflow:hidden;
  }

  .blog-reference-card h2,
  .blog-reference-card h3{
    max-width:100%;
    font-size:1.15rem;
    line-height:1.22;
    word-break:normal;
    overflow-wrap:break-word;
  }

  .blog-article-main,
  .blog-article-main--reference{
    width:min(100% - 32px, 980px);
  }

  .download-main{
    width:min(100% - 32px, 980px);
  }

  .blog-hero h1{
    font-size:2.75rem;
  }

  .blog-hero--reference h1,
  .blog-article-main--reference .doc-article h1{
    font-size:clamp(2.65rem, 14vw, 3.6rem);
  }

  .blog-filter-row{
    margin-inline:0;
    padding-left:0;
    padding-right:0;
  }

  .blog-filter-chip{
    max-width:78vw;
  }

  .blog-reference-card__content{
    padding:16px;
  }

  .blog-rail-nav{
    grid-template-columns:1fr;
  }

  .blog-hero__panel,
  .blog-verdict,
  .blog-cta-panel,
  .blog-pick,
  .blog-index-card{
    padding:18px;
  }

  .blog-rail-box nav{
    grid-template-columns:1fr;
  }

  .blog-tool-table{
    min-width:0;
  }

  .blog-tool-table,
  .blog-tool-table thead,
  .blog-tool-table tbody,
  .blog-tool-table tr,
  .blog-tool-table th,
  .blog-tool-table td{
    display:block;
  }

  .blog-tool-table thead{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    white-space:nowrap;
  }

  .blog-tool-table tbody{
    display:grid;
    gap:10px;
    padding:10px;
  }

  .blog-tool-table tr{
    border:1px solid rgba(255,255,255,.1);
    border-radius:8px;
    background:rgba(255,255,255,.04);
    overflow:hidden;
  }

  .blog-tool-table th,
  .blog-tool-table td,
  .blog-tool-table tr:last-child th,
  .blog-tool-table tr:last-child td{
    padding:11px 12px;
    border-bottom:1px solid rgba(255,255,255,.08);
  }

  .blog-tool-table td{
    display:grid;
    gap:4px;
  }

  .blog-tool-table td::before{
    color:var(--accent);
    font-size:.72rem;
    font-weight:820;
    line-height:1.2;
    text-transform:uppercase;
  }

  .blog-tool-table td:nth-child(2)::before{
    content:"Best for";
  }

  .blog-tool-table td:nth-child(3)::before{
    content:"Layer";
  }

  .blog-tool-table td:nth-child(4)::before{
    content:"Choose if";
  }

  .blog-tool-table td:nth-child(5)::before{
    content:"Skip if";
  }

  .blog-tool-table tr th:last-child,
  .blog-tool-table tr td:last-child{
    border-bottom:0;
  }

  .download-hero h1{
    font-size:2.7rem;
  }
}

.blog-article-main--reference .blog-table-wrap{
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.blog-article-main--reference .blog-table-wrap:focus,
.blog-article-main--reference .blog-table-wrap:focus-visible{
  outline:0;
}

.blog-article-main--reference .blog-tool-table{
  min-width:0;
  width:100%;
  display:block;
  border-collapse:separate;
  border-spacing:0;
}

.blog-article-main--reference .blog-tool-table thead{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
  white-space:nowrap;
}

.blog-article-main--reference .blog-tool-table tbody{
  display:grid;
  gap:12px;
  padding:0;
}

.blog-article-main--reference .blog-tool-table tr{
  display:grid;
  grid-template-columns:minmax(118px, .48fr) minmax(0, 1fr) minmax(0, 1fr);
  gap:14px 20px;
  padding:18px 20px;
  border:1px solid #d5dde2;
  border-radius:8px;
  background:#fff;
  box-shadow:0 12px 30px rgba(7,16,20,.035);
  overflow:visible;
}

.blog-article-main--reference .blog-tool-table th,
.blog-article-main--reference .blog-tool-table td,
.blog-article-main--reference .blog-tool-table tr:last-child th,
.blog-article-main--reference .blog-tool-table tr:last-child td{
  display:block;
  padding:0;
  border:0;
}

.blog-article-main--reference .blog-tool-table tbody th{
  grid-column:1;
  grid-row:1 / span 3;
  color:#071014;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:clamp(1.12rem, 1.6vw, 1.36rem);
  font-weight:460;
  line-height:1.04;
  letter-spacing:0;
}

.blog-article-main--reference .blog-tool-table td{
  min-width:0;
  color:#24313a;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:1.02rem;
  font-weight:460;
  line-height:1.46;
}

.blog-article-main--reference .blog-tool-table td::before{
  display:block;
  margin-bottom:4px;
  color:#52616b;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:.78rem;
  font-weight:650;
  line-height:1.2;
  letter-spacing:0;
  text-transform:none;
}

.blog-article-main--reference .blog-tool-table td:nth-child(2){
  grid-column:2;
  grid-row:1;
}

.blog-article-main--reference .blog-tool-table td:nth-child(2)::before{
  content:"Best for";
}

.blog-article-main--reference .blog-tool-table td:nth-child(3){
  grid-column:3;
  grid-row:1;
}

.blog-article-main--reference .blog-tool-table td:nth-child(3)::before{
  content:"Layer";
}

.blog-article-main--reference .blog-tool-table td:nth-child(4){
  grid-column:2 / -1;
  grid-row:2;
}

.blog-article-main--reference .blog-tool-table td:nth-child(4)::before{
  content:"Choose if";
}

.blog-article-main--reference .blog-tool-table td:nth-child(5){
  grid-column:2 / -1;
  grid-row:3;
}

.blog-article-main--reference .blog-tool-table td:nth-child(5)::before{
  content:"Skip if";
}

.blog-article-main--reference .blog-related-grid a{
  gap:12px;
  padding:20px;
  border-color:#dfe7ea;
  background:#fff;
  color:#071014;
  text-decoration:none;
}

.blog-article-main--reference .blog-related-grid span{
  color:#6a747d;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:.82rem;
  font-weight:520;
  letter-spacing:0;
  text-transform:none;
}

.blog-article-main--reference .blog-related-grid strong{
  color:#071014;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:clamp(1.26rem, 1.8vw, 1.65rem);
  font-weight:460;
  line-height:1.08;
  letter-spacing:0;
}

.blog-article-main--reference .blog-cta-panel{
  gap:16px;
  margin-top:48px;
  padding:26px;
  border-color:#dfe7ea;
  background:#f8faf9;
  box-shadow:none;
}

.blog-article-main--reference .blog-cta-panel .blog-card__meta{
  color:#6a747d;
  font-weight:520;
}

.blog-article-main--reference .blog-cta-panel h2{
  max-width:620px;
  color:#071014;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:clamp(2rem, 3.2vw, 2.8rem);
  font-weight:430;
  line-height:1;
  letter-spacing:0;
}

.blog-article-main--reference .blog-cta-panel p{
  max-width:680px;
  color:#4f5962;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:1rem;
  font-weight:430;
  line-height:1.62;
}

.blog-article-main--reference .blog-cta-panel .download-cta{
  justify-self:start;
  width:auto;
  min-height:44px;
  margin-top:2px;
  padding:0 22px;
  color:#fff;
  font-weight:620;
  text-decoration:none;
}

@media(max-width:760px){
  .blog-article-main--reference .blog-tool-table tr{
    grid-template-columns:1fr;
    gap:10px;
    padding:16px;
  }

  .blog-article-main--reference .blog-tool-table tbody th,
  .blog-article-main--reference .blog-tool-table td{
    grid-column:1;
    grid-row:auto;
  }

  .blog-article-main--reference .blog-related-grid{
    grid-template-columns:1fr;
  }

  .blog-article-main--reference .blog-cta-panel{
    padding:20px;
  }
}

html,
body,
main{
  background:#fff;
}

/* Homepage focus story */
.focus-story{
  position:relative;
  z-index:2;
  padding:64px 20px 58px;
  scroll-margin-top:112px;
  background:#fff;
  color:#070706;
}

.focus-story__inner{
  width:min(1240px, calc(100vw - 96px));
  margin:0 auto;
}

.focus-story__header{
  max-width:790px;
  margin:0 auto 56px;
  text-align:center;
}

.focus-story__header h2{
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:clamp(2.65rem, 4.2vw, 4.35rem);
  font-weight:440;
  line-height:.94;
  letter-spacing:0;
}

.focus-story__content{
  display:grid;
  grid-template-columns:minmax(270px, 4fr) minmax(0, 8fr);
  gap:38px;
  align-items:stretch;
}

.focus-story__rail{
  min-width:0;
}

.focus-story__steps{
  position:sticky;
  top:18vh;
  display:grid;
  gap:8px;
}

.focus-story__step{
  position:relative;
  width:100%;
  display:grid;
  grid-template-columns:1fr;
  gap:0;
  padding:18px 22px 18px 24px;
  border:0;
  border-radius:18px;
  background:transparent;
  color:#86827c;
  text-align:left;
  cursor:pointer;
  transition:background 220ms ease, color 220ms ease, transform 180ms ease, box-shadow 220ms ease;
}

.focus-story__step:hover{
  color:#252320;
  background:#f8fafc;
}

.focus-story__step:active{
  transform:translateY(1px);
}

.focus-story__step.is-active{
  background:transparent;
  color:#080706;
  box-shadow:none;
}

.focus-story__step.is-active::after{
  content:"";
  position:absolute;
  left:0;
  top:20px;
  bottom:20px;
  width:2px;
  border-radius:999px;
  background:#0d0d0c;
}

.focus-story__step-index{
  color:inherit;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:.78rem;
  font-weight:650;
  line-height:1;
  opacity:.55;
}

.focus-story__step-title{
  display:block;
  margin-top:12px;
  max-width:12.5em;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:clamp(1.55rem, 1.95vw, 2.05rem);
  font-weight:520;
  line-height:1;
  letter-spacing:0;
}

.focus-story__step-copy{
  display:block;
  max-width:330px;
  max-height:0;
  margin-top:0;
  overflow:hidden;
  color:#53606f;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:.98rem;
  font-weight:440;
  line-height:1.45;
  opacity:0;
  transition:max-height 260ms ease, opacity 220ms ease, margin-top 220ms ease;
}

.focus-story__step.is-active .focus-story__step-copy{
  max-height:130px;
  margin-top:14px;
  opacity:1;
}

.focus-story__panels{
  display:grid;
  gap:48px;
  padding-top:4px;
  padding-bottom:0;
  min-width:0;
}

.focus-story__panel{
  min-height:auto;
  display:grid;
  align-items:start;
  scroll-margin-top:160px;
}

.focus-story__panel:last-child{
  min-height:auto;
}

.focus-story-mobile-copy{
  display:none;
}

.focus-story-window{
  width:100%;
  border:1px solid #dbe8f1;
  border-radius:24px;
  background:#f8fbff;
  box-shadow:0 26px 72px rgba(23,74,137,.15);
  overflow:hidden;
  transform:translateZ(0);
  transition:transform 260ms ease, box-shadow 260ms ease;
}

.focus-story-window--image{
  background:transparent;
}

.focus-story-window__bar{
  min-height:48px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 18px;
  border-bottom:1px solid #e1ebf4;
  background:linear-gradient(180deg,#f6fbff,#edf5ff);
  color:#7b8795;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:.82rem;
}

.focus-story-window__bar span{
  width:11px;
  height:11px;
  border-radius:50%;
  background:#d9e2ea;
}

.focus-story-window__bar strong{
  margin-left:7px;
  font-weight:550;
}

.focus-story-window--image img{
  width:100%;
  height:auto;
  background:#f5f5f5;
}

.focus-story-window--session,
.focus-story-window--review{
  min-height:560px;
  display:flex;
  flex-direction:column;
}

.focus-story-window--session{
  background:
    radial-gradient(circle at 16% 18%, rgba(79,152,255,.14), transparent 30%),
    linear-gradient(145deg,#f7fbff,#edf6ff);
}

.focus-menu-card{
  width:min(520px, calc(100% - 64px));
  margin:58px auto;
  padding:28px;
  border:1px solid rgba(44,121,240,.14);
  border-radius:26px;
  background:rgba(255,255,255,.78);
  box-shadow:0 24px 54px rgba(23,74,137,.14);
}

.focus-menu-card__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}

.focus-menu-card__top p,
.focus-review__summary p{
  color:#718096;
  font-size:.77rem;
  font-weight:650;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.focus-menu-card__top h3{
  margin-top:6px;
  color:#080706;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:2.35rem;
  font-weight:520;
  line-height:1;
}

.focus-menu-card__status{
  display:inline-flex;
  min-height:34px;
  align-items:center;
  padding:0 12px;
  border-radius:999px;
  background:#e8f2ff;
  color:#265dcc;
  font-size:.82rem;
  font-weight:620;
}

.focus-menu-card__timer{
  margin-top:34px;
  color:#080706;
  font-size:clamp(4.4rem, 8vw, 7.2rem);
  font-weight:520;
  line-height:.9;
  letter-spacing:-.03em;
  font-variant-numeric:tabular-nums;
}

.focus-menu-card__progress{
  height:8px;
  margin-top:28px;
  border-radius:999px;
  background:#e5ebf1;
  overflow:hidden;
}

.focus-menu-card__progress span{
  display:block;
  width:64%;
  height:100%;
  border-radius:inherit;
  background:#3774d8;
}

.focus-menu-card__rows{
  display:grid;
  gap:10px;
  margin-top:26px;
}

.focus-menu-card__rows div,
.focus-review__list div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:44px;
  padding:0 14px;
  border-radius:14px;
  background:#f4f7fb;
  color:#172337;
}

.focus-menu-card__rows span,
.focus-review__list span{
  color:#718096;
  font-size:.86rem;
  font-weight:520;
}

.focus-menu-card__rows strong,
.focus-review__list strong{
  font-size:.92rem;
  font-weight:620;
}

.focus-story-window--review{
  background:#fbfdff;
}

.focus-review{
  display:grid;
  grid-template-columns:minmax(210px, .9fr) minmax(0, 1.1fr);
  gap:28px;
  padding:52px;
}

.focus-review__summary{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:350px;
  padding:28px;
  border-radius:26px;
  background:#f2f7ff;
}

.focus-review__summary strong{
  display:block;
  margin-top:16px;
  color:#080706;
  font-size:clamp(3.2rem, 6.8vw, 5.7rem);
  font-weight:520;
  line-height:.86;
  letter-spacing:-.03em;
  font-variant-numeric:tabular-nums;
}

.focus-review__summary span{
  margin-top:16px;
  color:#556579;
  font-size:1rem;
  line-height:1.35;
}

.focus-review__chart{
  min-height:350px;
  display:flex;
  align-items:end;
  gap:12px;
  padding:28px 24px;
  border-radius:26px;
  background:
    linear-gradient(180deg, rgba(55,116,216,.08), rgba(55,116,216,0)),
    #f8fbff;
}

.focus-review__chart span{
  flex:1;
  height:var(--h);
  min-height:42px;
  border-radius:999px 999px 10px 10px;
  background:linear-gradient(180deg,#3c86f6,#9ac7ff);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45);
}

.focus-review__list{
  grid-column:1 / -1;
  display:grid;
  gap:10px;
}

@media(max-width:1120px){
  .focus-story__inner{
    width:min(100% - 56px, 1080px);
  }

  .focus-story__content{
    grid-template-columns:minmax(240px, 3.8fr) minmax(0, 8.2fr);
    gap:28px;
  }

  .focus-story__panels{
    gap:42px;
  }

  .focus-story-window--session,
  .focus-story-window--review{
    min-height:500px;
  }
}

@media(max-width:860px){
  .focus-story{
    padding:54px 0 42px;
  }

  .focus-story__inner{
    width:100%;
  }

  .focus-story__header{
    width:min(100% - 24px, 680px);
    margin-bottom:28px;
  }

  .focus-story__header h2{
    font-size:clamp(2.35rem, 10.4vw, 3.7rem);
    line-height:.98;
  }

  .focus-story__content{
    display:block;
  }

  .focus-story__rail{
    display:none;
  }

  .focus-story__steps{
    position:static;
    width:min(100% - 12px, 680px);
    margin:0 auto 22px;
  }

  .focus-story__step{
    padding:18px 18px 18px 20px;
  }

  .focus-story__step-title{
    max-width:none;
    font-size:1.55rem;
  }

  .focus-story__step-copy,
  .focus-story__step.is-active .focus-story__step-copy{
    max-height:none;
    margin-top:10px;
    opacity:1;
  }

  .focus-story__panels{
    display:block;
  }

  .focus-story__panel{
    min-height:auto;
    display:flex;
    flex-direction:column;
    scroll-margin-top:96px;
    margin-bottom:64px;
  }

  .focus-story__panel:last-child{
    min-height:auto;
    margin-bottom:0;
  }

  .focus-story-window{
    width:min(100% - 28px, 560px);
    margin:0 auto;
    border-radius:20px;
    box-shadow:0 18px 48px rgba(23,74,137,.13);
  }

  .focus-story-mobile-copy{
    width:min(100% - 40px, 560px);
    display:block;
    order:-1;
    margin:0 auto 34px;
    color:#080706;
  }

  .focus-story-mobile-copy__index{
    display:block;
    color:#8b8a87;
    font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
    font-size:.96rem;
    font-weight:520;
    line-height:1;
  }

  .focus-story-mobile-copy h3{
    margin-top:18px;
    font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
    font-size:clamp(2.05rem, 8.2vw, 3rem);
    font-weight:520;
    line-height:1.02;
    letter-spacing:0;
  }

  .focus-story-mobile-copy p{
    max-width:24rem;
    margin-top:18px;
    color:#252d39;
    font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
    font-size:clamp(1.12rem, 4.9vw, 1.45rem);
    font-weight:430;
    line-height:1.46;
  }

  .focus-story-window--session,
  .focus-story-window--review{
    min-height:auto;
  }

  .focus-menu-card{
    width:calc(100% - 32px);
    margin:28px auto;
    padding:22px;
  }

  .focus-menu-card__timer{
    font-size:clamp(3.05rem, 15vw, 5.1rem);
  }

  .focus-review{
    grid-template-columns:1fr;
    gap:16px;
    padding:20px;
  }

  .focus-review__summary,
  .focus-review__chart{
    min-height:230px;
    padding:22px;
  }
}

@media(max-width:480px){
  .focus-story{
    padding-top:42px;
  }

  .focus-story__header{
    width:100%;
    padding:0 6px;
    text-align:left;
  }

  .focus-story__steps{
    width:100%;
  }

  .focus-story__panel{
    margin-bottom:58px;
  }

  .focus-story-window__bar{
    min-height:42px;
    padding:0 13px;
    font-size:.76rem;
  }

  .focus-story-window__bar span{
    width:9px;
    height:9px;
  }

  .focus-menu-card{
    width:calc(100% - 22px);
    padding:18px;
    border-radius:22px;
  }

  .focus-menu-card__top{
    flex-direction:column;
  }

  .focus-menu-card__top h3{
    font-size:2rem;
  }

  .focus-menu-card__rows div,
  .focus-review__list div{
    align-items:flex-start;
    flex-direction:column;
    justify-content:center;
    gap:4px;
    padding:10px 12px;
  }

  .focus-review{
    padding:12px;
  }

  .focus-review__chart{
    gap:7px;
    padding:18px 14px;
  }

  .focus-story-mobile-copy{
    width:calc(100% - 40px);
    margin-top:30px;
  }
}

@media(prefers-reduced-motion: reduce){
  .focus-story__step,
  .focus-story__step-copy,
  .focus-story-window{
    transition:none;
  }
}

/* Homepage testimonial slider */
.testimonial-slider{
  position:relative;
  z-index:2;
  padding:28px 0 38px;
  background:#fff;
  color:#080706;
  border-top:1px solid #e5e5e2;
  overflow:hidden;
}

.testimonial-slider__viewport{
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 9%, #000 91%, transparent);
  mask-image:linear-gradient(90deg, transparent, #000 9%, #000 91%, transparent);
}

.testimonial-slider__track{
  --testimonial-quote-width:410px;
  --testimonial-quote-gap:14px;
  --testimonial-marquee-distance:2544px;
  width:max-content;
  display:flex;
  gap:var(--testimonial-quote-gap);
  transform:translate3d(0,0,0);
  animation:testimonialMarquee 32s linear infinite;
  will-change:transform;
}

.testimonial-slider__viewport:hover .testimonial-slider__track{
  animation-play-state:paused;
}

.testimonial-slider__group{
  flex:0 0 auto;
  display:contents;
}

.testimonial-quote{
  flex:0 0 var(--testimonial-quote-width);
  min-height:176px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:22px 24px 20px;
  border:1px solid #e8e8e5;
  border-radius:22px;
  background:#fff;
}

.testimonial-quote blockquote{
  color:#080706;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:1.68rem;
  font-weight:430;
  line-height:1.06;
  letter-spacing:0;
}

.testimonial-quote figcaption{
  display:grid;
  grid-template-columns:34px auto;
  grid-template-areas:
    "avatar name"
    "avatar role";
  column-gap:10px;
  align-items:center;
  margin-top:22px;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
}

.testimonial-quote figcaption span{
  grid-area:avatar;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#f2f1ee;
  color:#65615b;
  font-size:.72rem;
  font-weight:650;
  line-height:1;
}

.testimonial-quote figcaption strong{
  grid-area:name;
  color:#171614;
  font-size:.9rem;
  font-weight:620;
  line-height:1.15;
}

.testimonial-quote figcaption em{
  grid-area:role;
  margin-top:2px;
  color:#77736f;
  font-size:.82rem;
  font-style:normal;
  font-weight:450;
  line-height:1.15;
}

@keyframes testimonialMarquee{
  to{
    transform:translate3d(calc(-1 * var(--testimonial-marquee-distance)),0,0);
  }
}

@media(prefers-reduced-motion: reduce){
  .testimonial-slider__track{
    animation:none;
    transform:none;
    will-change:auto;
  }
}

/* Homepage pricing insert */
.pricing-plain{
  margin:0;
  padding:64px 20px 58px;
  scroll-margin-top:112px;
  position:relative;
  z-index:2;
  background:#fff;
  border-top:1px solid #e5e5e2;
  border-radius:0;
  box-shadow:none;
}

.pricing-plain__header{
  width:min(1060px, calc(100vw - 176px));
  margin:0 auto 20px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
}

.pricing-plain__header h2{
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  color:#030302;
  font-size:clamp(2.8rem, 4.2vw, 4.25rem);
  font-weight:440;
  line-height:.94;
  letter-spacing:0;
}

.pricing-plain__grid{
  width:min(1060px, calc(100vw - 176px));
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(360px, .82fr) minmax(0, 1.18fr);
  gap:20px;
  align-items:stretch;
}

.pricing-card{
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  min-height:420px;
  display:flex;
  flex-direction:column;
  padding:32px 30px 28px;
  border:1px solid #e5ded7;
  border-radius:22px;
  background:#fff;
  color:#080706;
  box-shadow:none;
}

.pricing-card--plus{
  position:relative;
  background:#f6f0ec;
}

.pricing-card h3{
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:clamp(2.35rem, 2.9vw, 3rem);
  font-weight:400;
  line-height:1;
  letter-spacing:-.01em;
}

.pricing-card__intro{
  max-width:315px;
  margin-top:18px;
  color:#5f5d59;
  font-size:1.05rem;
  line-height:1.36;
}

.pricing-card__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}

.pricing-wordmark{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:14px;
  color:#030302;
}

.pricing-wordmark span{
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:clamp(2.7rem, 3.4vw, 3.35rem);
  font-weight:520;
  line-height:.82;
  letter-spacing:0;
}

.pricing-wordmark em{
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  display:block;
  color:#030302;
  font-size:clamp(1.55rem, 1.9vw, 1.95rem);
  font-weight:520;
  font-style:normal;
  line-height:.9;
  letter-spacing:0;
}

.pricing-switch{
  width:180px;
  min-width:180px;
  height:46px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:4px;
  padding:4px;
  border:1px solid rgba(154,169,176,.28);
  border-radius:999px;
  background:#e4edf1;
  box-shadow:none;
  position:relative;
  overflow:hidden;
}

.pricing-switch::before{
  content:"";
  position:absolute;
  inset:4px auto 4px 4px;
  width:calc(50% - 6px);
  border-radius:999px;
  background:#fff;
  box-shadow:none;
  transform:translateX(0);
  transition:transform 220ms cubic-bezier(.2,.8,.2,1);
}

.pricing-plain__grid[data-pricing-billing="monthly"] .pricing-switch::before{
  transform:translateX(calc(100% + 4px));
}

.pricing-switch__option{
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  position:relative;
  z-index:1;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#1d1d1c;
  font-size:.9rem;
  font-weight:500;
  letter-spacing:0;
  cursor:pointer;
  transition:background 160ms ease, box-shadow 160ms ease, transform 140ms ease;
}

.pricing-switch__option.is-active{
  background:transparent;
  box-shadow:none;
}

.pricing-switch__option:active,
.pricing-card__button:active{
  transform:translateY(1px);
}

.pricing-card__body{
  margin-top:30px;
  padding-bottom:10px;
}

.pricing-card__body--plus{
  width:min(420px, 100%);
  margin-top:34px;
  padding-bottom:10px;
}

.pricing-card__label{
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  color:#0d0d0c;
  font-size:.88rem;
  font-weight:600;
  letter-spacing:0;
  text-transform:uppercase;
}

.pricing-card__price{
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  margin-top:0;
  color:#030302;
  font-size:4.1rem;
  font-weight:400;
  line-height:.88;
  letter-spacing:0;
}

.pricing-card__price--plus{
  margin-top:0;
}

.pricing-card__price em{
  margin-left:8px;
  color:#77736f;
  font-size:1.12rem;
  font-style:normal;
  font-weight:500;
}

.pricing-card__copy{
  max-width:360px;
  margin-top:12px;
  color:#5f5d59;
  font-size:1rem;
  line-height:1.42;
}

.pricing-feature-list{
  display:grid;
  gap:7px;
  margin:14px 0 0;
  padding:0;
  list-style:none;
  color:#2b2b29;
  font-size:.9rem;
  line-height:1.3;
}

.pricing-feature-list li{
  display:flex;
  align-items:flex-start;
  gap:10px;
}

.pricing-feature-list li::before{
  content:"+";
  flex:0 0 auto;
  color:#030302;
  font-weight:500;
  line-height:1.2;
}

.pricing-card__button{
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  width:fit-content;
  min-width:136px;
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:auto;
  padding:0 22px;
  border-radius:999px;
  font-size:.92rem;
  font-weight:500;
  letter-spacing:0;
  transition:transform 140ms ease, box-shadow 140ms ease;
}

.pricing-card__button--dark{
  min-width:112px;
  background:#030302;
  color:#fff;
  box-shadow:none;
}

.pricing-card__button--light{
  background:#fff;
  border:1px solid rgba(56,45,38,.08);
  color:#11110f;
  box-shadow:none;
}

.pricing-card__button:hover{
  transform:translateY(-1px);
}

.faq-plain{
  position:relative;
  z-index:2;
  padding:56px 20px 72px;
  background:#fff;
  color:#080706;
  border-bottom:1px solid #e5e5e2;
}

.faq-plain::before{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  width:min(1060px, calc(100vw - 176px));
  height:1px;
  background:#e5e5e2;
  transform:translateX(-50%);
}

.faq-plain__inner{
  width:min(1060px, calc(100vw - 176px));
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(220px, .58fr) minmax(0, 1.42fr);
  gap:48px;
  align-items:start;
}

.faq-plain__header h2{
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  color:#030302;
  font-size:clamp(2.8rem, 4.2vw, 4.25rem);
  font-weight:440;
  line-height:.94;
  letter-spacing:0;
}

.faq-list{
  display:grid;
  gap:0;
  border-top:1px solid #e8e8e5;
}

.faq-item{
  border-bottom:1px solid #e8e8e5;
}

.faq-item summary{
  min-height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  list-style:none;
  cursor:pointer;
  color:#080706;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:1.14rem;
  font-weight:560;
  line-height:1.2;
  transition:color 160ms ease;
}

.faq-item summary::-webkit-details-marker{
  display:none;
}

.faq-item summary::after{
  content:"+";
  flex:0 0 auto;
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#f6f6f4;
  color:#5f5d59;
  font-size:1.1rem;
  font-weight:460;
  line-height:1;
  transition:background 160ms ease, transform 180ms ease, color 160ms ease;
}

.faq-item summary:hover{
  color:#353330;
}

.faq-item[open] summary::after{
  background:#ececea;
  color:#080706;
  transform:rotate(45deg);
}

.faq-item p{
  max-width:680px;
  margin:-8px 54px 24px 0;
  color:#5f5d59;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:1rem;
  font-weight:430;
  line-height:1.48;
}

.final-cta-section{
  position:relative;
  z-index:2;
  padding:34px 20px 14px;
  background:#fff;
}

.final-cta-section + .footer{
  margin-top:26px;
}

.final-cta{
  position:relative;
  width:min(816px, calc(100vw - 64px));
  min-height:260px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0, 1fr) max-content;
  gap:42px;
  align-items:center;
  padding:44px 54px;
  overflow:hidden;
  border:1px solid rgba(36,117,178,.24);
  border-radius:36px;
  background:
    radial-gradient(ellipse at 72% 58%, rgba(75,198,255,.54), transparent 40%),
    radial-gradient(ellipse at 24% 78%, rgba(57,158,226,.28), transparent 44%),
    radial-gradient(ellipse at 58% 0%, rgba(139,229,255,.62), transparent 34%),
    linear-gradient(135deg,#0d244f 0%,#167fd0 48%,#071534 100%);
  box-shadow:
    0 26px 64px rgba(28,106,164,.15),
    inset 0 1px 0 rgba(255,255,255,.26),
    inset 0 0 0 1px rgba(255,255,255,.08);
  color:#071014;
  isolation:isolate;
}

.final-cta::before,
.final-cta::after{
  content:"";
  position:absolute;
  inset:auto;
  pointer-events:none;
}

.final-cta::before{
  inset:0;
  z-index:1;
  border-radius:inherit;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    inset 0 -1px 0 rgba(3,13,32,.18);
  background:
    linear-gradient(90deg, rgba(3,10,25,.5) 0%, rgba(3,10,25,.26) 43%, rgba(3,10,25,.44) 100%),
    linear-gradient(180deg, rgba(255,255,255,.08), transparent 30%),
    radial-gradient(ellipse at 32% 96%, rgba(55,150,214,.22), transparent 44%);
}

.final-cta::after{
  width:34%;
  height:50%;
  right:20%;
  bottom:-20%;
  z-index:1;
  border-radius:50%;
  background:radial-gradient(ellipse, rgba(223,252,255,.18), transparent 68%);
  filter:blur(7px);
}

.final-cta__shader{
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  display:block;
  pointer-events:none;
  opacity:1;
}

.final-cta__copy,
.final-cta__button{
  position:relative;
  z-index:2;
}

.final-cta__copy h2{
  max-width:620px;
  color:#fff;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:clamp(3.25rem, 5.35vw, 4.65rem);
  font-weight:360;
  line-height:.9;
  letter-spacing:0;
  text-shadow:0 3px 18px rgba(1,8,22,.34);
}

.final-cta__copy p{
  max-width:500px;
  margin-top:16px;
  color:rgba(255,255,255,.88);
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:clamp(1.18rem, 1.8vw, 1.52rem);
  font-weight:420;
  line-height:1.18;
  letter-spacing:0;
  text-shadow:0 2px 14px rgba(1,8,22,.34);
}

.final-cta__button{
  min-width:226px;
  min-height:76px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  align-self:center;
  justify-self:end;
  padding:0 42px;
  border-radius:999px;
  background:#050505;
  color:#fff;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:1.28rem;
  font-weight:680;
  line-height:1;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.1),
    0 14px 28px rgba(1,10,28,.28);
  transition:transform 160ms ease, background 180ms ease, box-shadow 180ms ease;
}

.final-cta__button:hover{
  background:#111110;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    0 18px 34px rgba(1,10,28,.32);
  transform:translateY(-1px);
}

.final-cta__button:active{
  transform:translateY(1px);
}

@media(max-width:1180px){
  .testimonial-quote{
    flex-basis:380px;
  }

  .pricing-plain__grid{
    width:min(100% - 72px, 980px);
    grid-template-columns:minmax(340px, .82fr) minmax(0, 1.18fr);
  }

  .pricing-plain__header{
    width:min(100% - 72px, 980px);
  }

  .faq-plain::before,
  .faq-plain__inner{
    width:min(100% - 72px, 980px);
  }

  .final-cta{
    width:min(100% - 48px, 765px);
    min-height:250px;
    gap:34px;
    padding:42px 48px;
  }

  .pricing-card{
    min-height:440px;
    padding:32px 26px 28px;
  }

  .pricing-card__body--plus{
    margin-top:40px;
  }

  .pricing-switch{
    width:174px;
    min-width:174px;
  }
}

@media(max-width:860px){
  .testimonial-slider{
    padding:28px 0 34px;
  }

  .testimonial-slider__track{
    --testimonial-quote-width:380px;
    --testimonial-marquee-distance:2364px;
    animation-duration:36s;
  }

  .testimonial-quote{
    flex-basis:340px;
    min-height:164px;
    padding:20px 20px 18px;
    border-radius:20px;
  }

  .testimonial-quote blockquote{
    font-size:1.48rem;
  }

  .pricing-plain{
    margin:0;
    padding:48px 12px 44px;
    border-radius:0;
  }

  .faq-plain{
    padding:44px 12px 54px;
  }

  .faq-plain::before,
  .faq-plain__inner{
    width:100%;
  }

  .faq-plain__inner{
    grid-template-columns:1fr;
    gap:22px;
    padding:0 10px;
  }

  .faq-plain__header h2{
    font-size:clamp(2.35rem, 10.4vw, 3.7rem);
  }

  .faq-item summary{
    min-height:70px;
    font-size:1.05rem;
  }

  .faq-item p{
    margin:-4px 44px 22px 0;
    font-size:.98rem;
  }

  .final-cta-section{
    padding:22px 12px 10px;
  }

  .final-cta{
    width:min(100%, 612px);
    min-height:242px;
    grid-template-columns:minmax(0, 1fr) auto;
    gap:24px;
    align-items:center;
    padding:38px 34px;
    border-radius:30px;
  }

  .final-cta__copy h2{
    font-size:clamp(2.65rem, 8.5vw, 3.7rem);
  }

  .final-cta__copy p{
    max-width:380px;
    margin-top:12px;
    font-size:clamp(1.04rem, 3.25vw, 1.18rem);
    line-height:1.22;
  }

  .final-cta__button{
    min-height:64px;
    min-width:178px;
    padding:0 30px;
    font-size:1.08rem;
  }

  .pricing-plain__header{
    width:100%;
    margin-bottom:18px;
    padding:0 10px;
  }

  .pricing-plain__header h2{
    font-size:clamp(2.35rem, 10.4vw, 3.7rem);
  }

  .pricing-plain__grid{
    width:100%;
    grid-template-columns:1fr;
    gap:16px;
  }

  .pricing-card{
    min-height:auto;
    padding:24px 20px;
  }

  .pricing-card__intro{
    margin-top:18px;
  }

  .pricing-card__top{
    flex-direction:column;
    gap:20px;
  }

  .pricing-card__body,
  .pricing-card__body--plus{
    margin-top:28px;
    padding-bottom:22px;
  }

  .pricing-wordmark span{
    font-size:2.7rem;
  }

  .pricing-wordmark em{
    font-size:1.8rem;
  }

  .pricing-switch{
    width:min(180px, 100%);
    min-width:0;
  }

  .pricing-card__price{
    font-size:3.25rem;
  }
}

@media(max-width:480px){
  .testimonial-slider{
    padding:24px 0 30px;
  }

  .testimonial-slider__group{
    display:flex;
    gap:10px;
    padding-right:10px;
  }

  .testimonial-quote{
    flex-basis:292px;
    min-height:162px;
    padding:18px 18px 16px;
  }

  .testimonial-quote blockquote{
    font-size:1.32rem;
    line-height:1.08;
  }

  .pricing-plain{
    margin:0;
    padding:30px 10px 36px;
  }

  .faq-plain{
    padding:38px 10px 46px;
  }

  .faq-plain__inner{
    padding:0 8px;
  }

  .faq-item summary{
    gap:16px;
  }

  .faq-item summary::after{
    width:28px;
    height:28px;
  }

  .final-cta-section{
    padding:24px 10px 10px;
  }

  .final-cta{
    min-height:238px;
    padding:30px 24px 26px;
    border-radius:24px;
  }

  .pricing-card{
    padding:24px 20px;
    border-radius:20px;
  }

  .pricing-wordmark{
    gap:12px;
  }

  .pricing-wordmark span{
    font-size:2.7rem;
  }

  .pricing-wordmark em{
    font-size:1.8rem;
  }

  .pricing-card__price{
    font-size:3.35rem;
  }
}

/* Mobile layout polish */
@media(max-width:860px){
  body{
    background:#fff;
  }

  .pricing-plain{
    padding:30px 10px 34px;
  }

  .faq-plain{
    padding:38px 10px 46px;
  }

  .final-cta-section{
    padding:22px 10px 10px;
  }

  .pricing-plain__grid{
    gap:14px;
  }

  .pricing-card{
    padding:24px 20px 22px;
  }

  .pricing-card__top{
    gap:18px;
  }

  .pricing-card__body,
  .pricing-card__body--plus{
    margin-top:22px;
    padding-bottom:18px;
  }

  .pricing-card__intro,
  .pricing-card__copy{
    max-width:100%;
  }

  .pricing-card h3{
    font-size:clamp(2.15rem, 10vw, 2.7rem);
  }

  .pricing-wordmark span{
    font-size:clamp(2.25rem, 11vw, 2.7rem);
    line-height:.9;
  }

  .pricing-wordmark em{
    font-size:clamp(1.45rem, 6.4vw, 1.8rem);
    line-height:.9;
  }

  .pricing-switch{
    height:48px;
    padding:2px;
  }

  .pricing-switch::before{
    inset:2px auto 2px 2px;
    width:calc(50% - 4px);
  }

  .pricing-plain__grid[data-pricing-billing="monthly"] .pricing-switch::before{
    transform:translateX(calc(100% + 4px));
  }

  .pricing-card__price{
    font-size:clamp(3.05rem, 15vw, 3.35rem);
    line-height:1;
  }

  .pricing-card__price em{
    margin-left:6px;
    font-size:1rem;
  }

  .pricing-feature-list{
    gap:7px;
    margin-top:16px;
  }

  .pricing-card__button{
    min-height:42px;
    margin-top:22px;
  }

  .footer{
    margin-top:0;
    padding:24px 0 28px;
    background:#fff;
    overflow:hidden;
  }

  .footer > .wrap{
    width:min(100% - 32px, 1240px);
  }

  .footer-links{
    justify-content:center;
    gap:6px 10px;
  }

  .footer-links a{
    min-height:36px;
    display:inline-flex;
    align-items:center;
    padding:6px 8px;
    font-size:.82rem;
  }

  .footer-meta{
    justify-content:center;
    margin-top:12px;
    text-align:center;
  }

}

@media(max-width:640px){
  .hero-preview{
    width:calc(100vw - 48px);
    max-width:calc(100vw - 48px);
    margin-left:auto;
    margin-right:auto;
  }

  .hero-app-shot{
    border-radius:18px 18px 0 0;
  }
}

@media(max-width:480px){
  .pricing-plain{
    padding:26px 8px 30px;
  }

  .faq-plain{
    padding:34px 8px 42px;
  }

  .faq-item summary{
    min-height:66px;
    font-size:1rem;
  }

  .faq-item p{
    margin:-2px 0 20px;
    font-size:.96rem;
  }

  .final-cta-section{
    padding:18px 8px 8px;
  }

  .final-cta{
    min-height:248px;
    grid-template-columns:1fr;
    gap:24px;
    padding:32px 24px 24px;
    border-radius:28px;
  }

  .final-cta__copy h2{
    font-size:2.68rem;
  }

  .final-cta__copy p{
    max-width:300px;
    margin-top:12px;
    font-size:1rem;
    line-height:1.22;
  }

  .final-cta__button{
    width:max-content;
    justify-self:start;
    min-height:58px;
    min-width:164px;
    font-size:1.02rem;
  }

  .pricing-card{
    padding:22px 18px 20px;
    border-radius:20px;
  }

  .pricing-card__intro{
    margin-top:16px;
    font-size:1rem;
    line-height:1.34;
  }

  .pricing-card__copy{
    margin-top:12px;
    font-size:.98rem;
    line-height:1.38;
  }

  .pricing-feature-list{
    font-size:.88rem;
  }
}

@media(max-width:380px){
  .testimonial-quote{
    flex-basis:270px;
  }

  .mobile-menu{
    width:calc(100vw - 28px);
  }

  .pricing-card__price{
    font-size:3rem;
  }
}

/* Mobile polish: keep quotes readable instead of starting a marquee mid-card. */
@media(max-width:860px){
  .testimonial-slider{
    overflow:hidden;
  }

  .testimonial-slider__viewport{
    overflow-x:auto;
    overflow-y:hidden;
    padding:0 14px;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -webkit-mask-image:none;
    mask-image:none;
  }

  .testimonial-slider__viewport::-webkit-scrollbar{
    display:none;
  }

  .testimonial-slider__track{
    animation:none !important;
    transform:none !important;
    will-change:auto;
    gap:0;
  }

  .testimonial-slider__group{
    display:flex;
    gap:10px;
    padding-right:0;
  }

  .testimonial-slider__group[aria-hidden="true"]{
    display:none;
  }

  .testimonial-quote{
    flex-basis:min(292px, calc(100vw - 52px));
    scroll-snap-align:start;
  }
}

@media(max-width:380px){
  .testimonial-slider__viewport{
    padding:0 12px;
  }

  .testimonial-quote{
    flex-basis:min(270px, calc(100vw - 44px));
  }
}

@media(min-width:700px) and (max-width:860px){
  .pricing-plain{
    padding:34px 10px 36px;
  }

  .pricing-plain__grid{
    width:min(100% - 20px, 820px);
    grid-template-columns:minmax(0, .82fr) minmax(0, 1.18fr);
    gap:16px;
  }

  .pricing-card{
    min-height:390px;
  }

  .pricing-card__top{
    flex-direction:column;
    align-items:flex-start;
  }

  .pricing-card__body,
  .pricing-card__body--plus{
    margin-top:24px;
  }
}

/* Checkout */
.checkout-body{
  background:#f5f5f6;
  color:#080706;
  color-scheme:light;
}

.checkout-main{
  position:relative;
  z-index:2;
  min-height:calc(100dvh - 92px);
  padding:58px 24px 52px;
  background:#f5f5f6;
}

.checkout-shell{
  position:relative;
  width:min(1220px, calc(100vw - 56px));
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(320px, 420px) minmax(0, 1fr);
  gap:64px;
  align-items:start;
}

.checkout-shell::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:452px;
  width:1px;
  background:rgba(15,23,42,.12);
}

.checkout-plan-panel{
  position:sticky;
  top:44px;
  min-width:0;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  color:#0b0b0c;
}

.checkout-mini-brand{
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin-bottom:54px;
  color:#0b0b0c;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:1.58rem;
  font-weight:520;
  line-height:1;
  text-decoration:none;
  letter-spacing:-.01em;
}

.checkout-mini-brand img{
  width:45px;
  height:45px;
}

.checkout-frame-panel{
  min-width:0;
  padding-top:54px;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--text);
  box-shadow:none;
}

.checkout-plan-picker{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin:0 0 26px;
  max-height:222px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  opacity:1;
  overflow:visible;
  transform:translateY(0);
  transition:max-height 240ms ease, margin 240ms ease, opacity 180ms ease, transform 220ms ease;
}

.checkout-is-complete .checkout-plan-picker{
  max-height:0;
  margin-bottom:0;
  opacity:0;
  overflow:hidden;
  pointer-events:none;
  transform:translateY(-8px);
}

.checkout-plan-option{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  width:100%;
  min-height:96px;
  padding:20px 22px;
  border:0;
  border-radius:22px;
  background:#fff;
  color:#0b0b0c;
  text-align:left;
  cursor:pointer;
  box-shadow:0 1px 2px rgba(16,24,40,.04), 0 16px 36px rgba(16,24,40,.055);
  transition:background 160ms ease, box-shadow 160ms ease, transform 140ms ease;
}

.checkout-plan-option.is-active{
  background:#0b0b0c;
  box-shadow:0 12px 24px rgba(16,24,40,.12);
  color:#fff;
}

.checkout-plan-option:hover{
  background:#fff;
  transform:translateY(-1px);
}

.checkout-plan-option.is-active:hover{
  background:#0b0b0c;
}

.checkout-plan-option:active{
  transform:translateY(1px);
}

.checkout-plan-option:focus-visible{
  outline:2px solid rgba(11,11,12,.28);
  outline-offset:3px;
}

.checkout-plan-option.is-active:focus-visible{
  outline-color:rgba(11,11,12,.38);
}

.checkout-plan-option__label{
  display:block;
  color:inherit;
  font-size:1.05rem;
  font-weight:760;
}

.checkout-plan-option__top{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}

.checkout-plan-option__badge{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:0 9px;
  border-radius:999px;
  background:#2b7de9;
  color:#fff;
  font-size:.72rem;
  font-weight:740;
  line-height:1;
  white-space:nowrap;
}

.checkout-plan-option.is-active .checkout-plan-option__badge{
  background:#2b7de9;
  color:#fff;
}

.checkout-plan-option strong{
  color:inherit;
  white-space:nowrap;
  font-size:1.55rem;
  font-weight:760;
  line-height:1;
  letter-spacing:0;
}

.checkout-plan-option strong em{
  margin-left:3px;
  color:#5e6168;
  font-size:.78rem;
  font-style:normal;
  font-weight:650;
}

.checkout-plan-option.is-active strong em,
.checkout-plan-option.is-active .checkout-plan-option__copy{
  color:rgba(255,255,255,.66);
}

.checkout-plan-option__copy{
  display:block;
  margin-top:8px;
  color:#5e6168;
  font-size:1.08rem;
  font-weight:720;
  line-height:1.2;
}

.checkout-frame-header{
  display:grid;
  gap:12px;
  margin:0 0 30px;
  color:#0b0b0c;
  text-align:left;
}

.checkout-frame-header h1{
  color:#0b0b0c;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:clamp(3.3rem, 5.2vw, 4.8rem);
  font-weight:400;
  line-height:.98;
  letter-spacing:-.01em;
}

.checkout-frame-header p{
  max-width:31rem;
  margin:0;
  color:#1f2329;
  font-size:1.12rem;
  font-weight:560;
  line-height:1.42;
}

.checkout-success-note{
  min-height:0;
  opacity:0;
  transform:translateY(4px);
  transition:opacity 200ms ease, transform 220ms ease;
}

.checkout-is-complete .checkout-success-note{
  opacity:.68;
  transform:translateY(0);
}

.checkout-benefits{
  display:grid;
  gap:13px;
  margin:8px 0 0;
  padding:0;
  color:#334155;
  font-size:1.08rem;
  font-weight:620;
  line-height:1.32;
  list-style:none;
}

.checkout-benefits li{
  position:relative;
  padding-left:28px;
}

.checkout-benefits li::before{
  content:"+";
  position:absolute;
  left:0;
  top:-.03em;
  color:#2b7de9;
  font-size:1.1em;
  font-weight:760;
}

.checkout-subscription-copy{
  max-width:35rem;
  margin:42px 0 0;
  padding-top:28px;
  border-top:1px solid rgba(15,23,42,.1);
  color:#1f2329;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
}

.checkout-subscription-copy h3{
  margin:0 0 10px;
  color:#0b0b0c;
  font-size:1.08rem;
  font-weight:760;
  line-height:1.35;
}

.checkout-subscription-copy p{
  margin:0;
  color:#2b3138;
  font-size:1.05rem;
  font-weight:450;
  line-height:1.5;
}

.checkout-subscription-copy p + p{
  margin-top:18px;
}

.checkout-subscription-copy a{
  color:#315fba;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}

.checkout-frame-card{
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.nudge-paddle-checkout{
  min-height:940px;
}

.checkout-body .footer{
  margin-top:94px;
  border-top:1px solid rgba(15,23,42,.1);
  background:transparent;
}

.checkout-body .footer-links a{
  color:#667085;
}

.checkout-body .footer-links a:hover{
  color:#0b0b0c;
  background:rgba(15,23,42,.06);
}

.checkout-body .footer-section h2{
  border-bottom-color:rgba(15,23,42,.1);
  color:#0b0b0c;
}

.checkout-body .footer-section__links a{
  color:#667085;
}

.checkout-body .footer-section__links a:hover,
.checkout-body .footer-section__links a:focus-visible{
  color:#0b0b0c;
}

.checkout-body .footer-meta{
  border-top:1px solid rgba(15,23,42,.08);
  color:#667085;
}

.checkout-confetti{
  position:fixed;
  inset:0;
  z-index:30;
  pointer-events:none;
  overflow:hidden;
}

.checkout-confetti__piece{
  position:absolute;
  top:132px;
  left:var(--x-start, 50%);
  width:7px;
  height:16px;
  border-radius:999px;
  background:var(--confetti-color, #0b0b0c);
  opacity:0;
  transform:translate3d(0, -16px, 0) rotate(0deg) scale(.9);
  animation:checkout-confetti-fall var(--duration, 1900ms) cubic-bezier(.16, 1, .3, 1) var(--delay, 0ms) forwards;
  will-change:transform, opacity;
}

.checkout-confetti__piece--dot{
  width:8px;
  height:8px;
}

@keyframes checkout-confetti-fall{
  0%{
    opacity:0;
    transform:translate3d(0, -16px, 0) rotate(0deg) scale(.8);
  }

  12%{
    opacity:.95;
  }

  100%{
    opacity:0;
    transform:translate3d(var(--x-end, 0), var(--y-end, 78vh), 0) rotate(var(--rotate, 360deg)) scale(.92);
  }
}

@media(prefers-reduced-motion:reduce){
  .checkout-plan-picker,
  .checkout-success-note{
    transition:none;
  }

  .checkout-confetti{
    display:none;
  }
}

@media(max-width:1100px){
  .checkout-shell{
    width:min(100% - 32px, 820px);
    grid-template-columns:1fr;
    gap:34px;
  }

  .checkout-shell::before{
    display:none;
  }

  .checkout-plan-panel{
    position:relative;
    top:auto;
  }

  .checkout-frame-panel{
    padding-top:0;
  }

  .checkout-mini-brand{
    margin-bottom:34px;
  }
}

@media(max-width:640px){
  .checkout-main{
    padding:28px 16px 36px;
  }

  .checkout-shell{
    width:100%;
    gap:28px;
  }

  .checkout-plan-picker{
    gap:10px;
    max-height:214px;
  }

  .checkout-plan-option{
    min-height:88px;
    padding:18px;
    border-radius:18px;
  }

  .checkout-frame-header{
    margin-bottom:26px;
  }

  .checkout-frame-header h1{
    font-size:3.2rem;
  }

  .checkout-frame-header p{
    font-size:1.06rem;
  }

  .checkout-frame-card{
    border-radius:0;
  }

  .nudge-paddle-checkout{
    min-height:820px;
  }
}

html[data-surface="public"] [data-public-hidden],
html[data-surface="public"] .btn-dl,
html[data-surface="public"] .nav-links a[href="#top"],
html[data-surface="public"] .nav-links a[href="/#top"],
html[data-surface="public"] .nav-links a[href="#pricing"],
html[data-surface="public"] .nav-links a[href="/#pricing"],
html[data-surface="public"] .nav-links a[href="/download"],
html[data-surface="public"] .mobile-menu a[href="#top"],
html[data-surface="public"] .mobile-menu a[href="/#top"],
html[data-surface="public"] .mobile-menu a[href="#pricing"],
html[data-surface="public"] .mobile-menu a[href="/#pricing"],
html[data-surface="public"] .mobile-menu a[href="/download"]{
  display:none !important;
}

html[data-surface="public"] [data-public-download]{
  cursor:default;
  opacity:.82;
}

html[data-surface="public"] [data-public-label]{
  font-size:0;
}

html[data-surface="public"] [data-public-label]::after{
  content:attr(data-public-label);
  font-size:.95rem;
  line-height:inherit;
}

html[data-surface="public"] .hero .btn-primary{
  min-height:5.5rem;
  gap:0;
  padding:0 3.25rem;
  border-radius:1.75rem;
  font-size:1.85rem;
  line-height:1;
}

html[data-surface="public"] .hero .btn-primary [data-public-label]::after{
  font-size:1.85rem;
}

html[data-surface="public"] .hero .btn-primary__icon svg{
  width:1.6rem;
  height:1.6rem;
}

html[data-surface="public"] .hero .btn-primary__icon{
  display:none;
}

html[data-surface="public"] body:not(.doc-body):not(.checkout-body):not(.blog-body):not(.symbol-logo-page) .navbar{
  display:flex !important;
}

html[data-surface="public"] body:not(.doc-body):not(.checkout-body):not(.blog-body):not(.symbol-logo-page) .nav-links,
html[data-surface="public"] body:not(.doc-body):not(.checkout-body):not(.blog-body):not(.symbol-logo-page) .navbar-slot--cta{
  display:none !important;
}

html[data-surface="public"] body:not(.doc-body):not(.checkout-body):not(.blog-body):not(.symbol-logo-page) .navbar-inner{
  grid-template-columns:auto;
  gap:0;
  padding:clamp(8px, .7vw, 13px) clamp(18px, 1.42vw, 31px);
}

html[data-surface="public"] .download-body .navbar-inner{
  grid-template-columns:auto;
  justify-content:center;
}

html[data-surface="public"] .download-body .navbar-slot--cta{
  display:none !important;
}

html[data-surface="public"] body:not(.doc-body):not(.checkout-body):not(.blog-body):not(.symbol-logo-page) .hero{
  padding-top:clamp(88px, 5.4vw, 112px);
}

html[data-surface="public"] .footer-section[aria-labelledby="footer-product-title"]{
  display:none;
}

html[data-surface="public"] .final-cta-section + .footer{
  margin-top:0;
}

@media(min-width:761px){
  html[data-surface="public"] .navbar-inner{
    grid-template-columns:auto auto;
    padding-right:clamp(16px, 1.28vw, 27px);
  }

  html[data-surface="public"] .navbar-slot--cta{
    display:none;
  }

  html[data-surface="public"] body:not(.doc-body):not(.checkout-body):not(.blog-body):not(.symbol-logo-page) .navbar-inner{
    grid-template-columns:auto;
  }
}

@media(max-width:760px){
  html[data-surface="public"] .navbar-slot--cta{
    grid-template-columns:38px;
  }

  html[data-surface="public"] .hero .btn-primary{
    min-height:4.35rem;
    gap:0;
    padding:0 2.2rem;
    border-radius:1.35rem;
    font-size:1.28rem;
  }

  html[data-surface="public"] .hero .btn-primary__icon svg{
    width:1.2rem;
    height:1.2rem;
  }

  html[data-surface="public"] .hero .btn-primary [data-public-label]::after{
    font-size:1.28rem;
  }

  html[data-surface="public"] body:not(.doc-body):not(.checkout-body):not(.blog-body):not(.symbol-logo-page) .hero{
    padding-top:98px;
  }
}

.desktop-link-sheet[hidden]{
  display:none;
}

.desktop-link-sheet{
  display:none;
}

@keyframes desktop-link-backdrop-in{
  from{
    opacity:0;
    backdrop-filter:blur(0) saturate(100%);
    -webkit-backdrop-filter:blur(0) saturate(100%);
  }

  to{
    opacity:1;
    backdrop-filter:blur(14px) saturate(108%);
    -webkit-backdrop-filter:blur(14px) saturate(108%);
  }
}

@keyframes desktop-link-panel-in{
  0%{
    opacity:0;
    transform:translate3d(0, calc(100% + 64px), 0);
  }

  18%{
    opacity:1;
  }

  to{
    opacity:1;
    transform:translate3d(0, 0, 0);
  }
}

@keyframes desktop-link-backdrop-out{
  from{
    opacity:1;
    backdrop-filter:blur(14px) saturate(108%);
    -webkit-backdrop-filter:blur(14px) saturate(108%);
  }

  to{
    opacity:0;
    backdrop-filter:blur(0) saturate(100%);
    -webkit-backdrop-filter:blur(0) saturate(100%);
  }
}

@keyframes desktop-link-panel-out{
  from{
    opacity:1;
    transform:translate3d(0, 0, 0);
  }

  to{
    opacity:0;
    transform:translate3d(0, calc(100% + 36px), 0);
  }
}

@media(max-width:820px), (hover:none) and (pointer:coarse){
  .desktop-link-sheet{
    position:fixed;
    top:var(--desktop-link-viewport-top, 0);
    right:0;
    left:0;
    height:var(--desktop-link-viewport-height, 100dvh);
    overflow:hidden;
    z-index:230;
    display:block;
    color:#071014;
    font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
    pointer-events:auto;
  }

  .desktop-link-sheet__backdrop{
    position:absolute;
    inset:0;
    background:rgba(7,16,20,.28);
    opacity:0;
    backdrop-filter:blur(0) saturate(100%);
    -webkit-backdrop-filter:blur(0) saturate(100%);
    animation:desktop-link-backdrop-in 420ms cubic-bezier(.22, 1, .36, 1) forwards;
    will-change:opacity, backdrop-filter;
  }

  .desktop-link-sheet__panel{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    z-index:1;
    display:grid;
    justify-items:center;
    max-height:min(600px, calc(var(--desktop-link-viewport-height, 100dvh) - 12px));
    padding:18px 24px calc(18px + env(safe-area-inset-bottom));
    border:1px solid rgba(15,23,42,.08);
    border-bottom:0;
    border-radius:28px 28px 0 0;
    background:#fff;
    box-shadow:0 -24px 58px rgba(7,16,20,.14);
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    opacity:0;
    transform:translate3d(0, calc(100% + 64px), 0);
    transform-origin:50% 100%;
    animation:desktop-link-panel-in 520ms cubic-bezier(.22, 1, .36, 1) 36ms forwards;
    will-change:transform, opacity;
    outline:none;
  }

  .desktop-link-sheet__panel::-webkit-scrollbar{
    display:none;
  }

  .desktop-link-sheet.is-keyboard-open .desktop-link-sheet__panel{
    max-height:calc(var(--desktop-link-viewport-height, 100dvh) - 8px);
    padding:10px 18px max(12px, env(safe-area-inset-bottom));
    animation:none;
    opacity:1;
    transform:none;
  }

  .desktop-link-sheet.is-closing .desktop-link-sheet__backdrop{
    animation:desktop-link-backdrop-out 240ms ease forwards;
  }

  .desktop-link-sheet.is-closing .desktop-link-sheet__panel{
    animation:desktop-link-panel-out 260ms cubic-bezier(.4, 0, .2, 1) forwards;
  }

  .desktop-link-sheet__handle{
    width:44px;
    height:5px;
    margin:0 auto 28px;
    border-radius:999px;
    background:#d9e0e7;
  }

  .desktop-link-sheet.is-keyboard-open .desktop-link-sheet__handle{
    width:38px;
    height:4px;
    margin-bottom:14px;
  }

  .desktop-link-sheet__close{
    position:absolute;
    top:20px;
    right:22px;
    display:flex;
    align-items:center;
    justify-content:center;
    place-items:center;
    width:38px;
    height:38px;
    border:1px solid rgba(15,23,42,.1);
    border-radius:999px;
    background:#fff;
    color:#0b0b0c;
    cursor:pointer;
  }

  .desktop-link-sheet__close span{
    position:absolute;
    width:15px;
    height:2px;
    border-radius:999px;
    background:currentColor;
  }

  .desktop-link-sheet__close span:first-child{
    transform:rotate(45deg);
  }

  .desktop-link-sheet__close span:last-child{
    transform:rotate(-45deg);
  }

  .desktop-link-sheet__icon{
    display:grid;
    place-items:center;
    width:48px;
    height:48px;
    margin:0 0 20px;
    color:#2a68cc;
    opacity:.34;
  }

  .desktop-link-sheet__icon svg{
    width:48px;
    height:48px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
  }

  .desktop-link-sheet.is-keyboard-open .desktop-link-sheet__icon{
    width:36px;
    height:36px;
    margin-bottom:10px;
  }

  .desktop-link-sheet.is-keyboard-open .desktop-link-sheet__icon svg{
    width:36px;
    height:36px;
  }

  .desktop-link-sheet h2{
    margin:0;
    color:#071014;
    font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
    font-size:2.1rem;
    font-weight:400;
    line-height:1;
    letter-spacing:0;
    text-align:center;
  }

  .desktop-link-sheet__panel > p{
    max-width:24rem;
    margin:14px 0 0;
    color:#5f6b66;
    font-size:1.06rem;
    font-weight:500;
    line-height:1.36;
    text-align:center;
  }

  .desktop-link-sheet.is-keyboard-open h2{
    font-size:1.72rem;
  }

  .desktop-link-sheet.is-keyboard-open .desktop-link-sheet__panel > p{
    max-width:21rem;
    margin-top:8px;
    font-size:.95rem;
    line-height:1.28;
  }

  .desktop-link-sheet__form{
    width:100%;
    max-width:530px;
    margin-top:30px;
  }

  .desktop-link-sheet.is-keyboard-open .desktop-link-sheet__form{
    margin-top:16px;
  }

  .desktop-link-sheet__form-row{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 126px;
    align-items:center;
    gap:8px;
    min-height:60px;
    padding:4px;
    border:1px solid rgba(15,23,42,.12);
    border-radius:999px;
    background:#fff;
  }

  .desktop-link-sheet__form input{
    min-width:0;
    min-height:50px;
    padding:0 18px;
    border:0;
    border-radius:999px;
    background:transparent;
    color:#071014;
    font:inherit;
    font-size:1.04rem;
    font-weight:500;
    outline:none;
    box-shadow:none;
  }

  .desktop-link-sheet__form-row:focus-within{
    border-color:rgba(15,23,42,.24);
    box-shadow:0 0 0 4px rgba(15,23,42,.045);
  }

  .desktop-link-sheet__form button{
    min-height:50px;
    padding:0 19px;
    border:0;
    border-radius:999px;
    background:#071014;
    color:#fff;
    font:inherit;
    font-size:1rem;
    font-weight:720;
    white-space:nowrap;
    cursor:pointer;
    box-shadow:none;
  }

  .desktop-link-sheet__form button:active{
    transform:translateY(1px);
  }

  .desktop-link-sheet__form button[disabled]{
    cursor:default;
    opacity:.68;
  }

  .desktop-link-sheet__status{
    min-height:0;
    margin-top:7px !important;
    color:#435567 !important;
    font-size:.9rem !important;
    line-height:1.35 !important;
  }

  .desktop-link-sheet__status.is-error{
    color:#9a2d2d !important;
  }

  .desktop-link-sheet__status.is-success{
    color:#1d6c57 !important;
  }
}

@media(max-width:420px){
  .desktop-link-sheet__panel{
    padding-right:20px;
    padding-left:20px;
  }

  .desktop-link-sheet__form-row{
    grid-template-columns:minmax(0, 1fr) 108px;
    gap:6px;
  }

  .desktop-link-sheet h2{
    font-size:1.82rem;
  }
}

body.has-waitlist-modal,
body.has-desktop-link-sheet{
  overflow:hidden;
  overscroll-behavior:none;
}

.waitlist-modal[hidden]{
  display:none;
}

.waitlist-modal{
  position:fixed;
  inset:0;
  z-index:220;
  display:grid;
  place-items:center;
  padding:24px;
  font-family:"AsideGeist", "Geist", "Manrope", system-ui, sans-serif;
}

.waitlist-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(8,7,6,.28);
  opacity:0;
  animation:waitlist-backdrop-in 180ms ease-out forwards;
}

.waitlist-modal__panel{
  position:relative;
  z-index:1;
  width:min(456px, calc(100vw - 32px));
  padding:34px;
  border:1px solid rgba(15,23,42,.1);
  border-radius:24px;
  color:#0b0b0c;
  background:#fff;
  box-shadow:0 18px 54px rgba(8,7,6,.14);
  opacity:0;
  transform:translateY(8px) scale(.985);
  transform-origin:center;
  animation:waitlist-panel-in 240ms cubic-bezier(.16, 1, .3, 1) 30ms forwards;
  outline:none;
}

@keyframes waitlist-backdrop-in{
  to{opacity:1}
}

@keyframes waitlist-panel-in{
  to{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

.waitlist-modal__close{
  position:absolute;
  top:18px;
  right:18px;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:1px solid rgba(15,23,42,.1);
  border-radius:999px;
  background:#fff;
  color:#0b0b0c;
  cursor:pointer;
}

.waitlist-modal__close span{
  position:absolute;
  width:15px;
  height:2px;
  border-radius:999px;
  background:currentColor;
}

.waitlist-modal__close span:first-child{
  transform:rotate(45deg);
}

.waitlist-modal__close span:last-child{
  transform:rotate(-45deg);
}

.waitlist-modal__icon{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  margin:0 0 18px;
  border-radius:14px;
  background:#f5fbff;
  box-shadow:inset 0 0 0 1px rgba(42,104,204,.08);
}

.waitlist-modal__icon img{
  width:30px;
  height:30px;
  display:block;
}

.waitlist-modal__panel h2{
  margin:0 44px 0 0;
  color:#071014;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:2.08rem;
  font-weight:400;
  line-height:1;
  letter-spacing:0;
}

.waitlist-modal__panel p{
  max-width:23rem;
  margin:12px 44px 0 0;
  color:#5f6b66;
  font-size:1rem;
  font-weight:500;
  line-height:1.42;
}

.waitlist-form{
  margin-top:26px;
}

.waitlist-form__row{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:10px;
}

.waitlist-form input{
  min-width:0;
  min-height:52px;
  padding:0 17px;
  border:1px solid rgba(15,23,42,.14);
  border-radius:18px;
  background:#fff;
  color:#0b0b0c;
  font:inherit;
  outline:none;
  box-shadow:none;
}

.waitlist-form input:focus{
  border-color:rgba(11,11,12,.5);
  box-shadow:0 0 0 3px rgba(11,11,12,.08);
}

.waitlist-form button{
  min-height:52px;
  padding:0 20px;
  border:0;
  border-radius:18px;
  background:#0b0b0c;
  color:#fff;
  font:inherit;
  font-weight:700;
  white-space:nowrap;
  cursor:pointer;
  box-shadow:none;
}

.waitlist-form button[disabled]{
  cursor:default;
  opacity:.72;
}

.waitlist-form__status{
  min-height:24px;
  margin-top:12px !important;
  color:#435567 !important;
  font-size:.92rem !important;
}

.waitlist-form__status.is-error{
  color:#9a2d2d !important;
}

.waitlist-form__status.is-success{
  color:#1d6c57 !important;
}

@media(max-width:560px){
  .waitlist-modal{
    padding:18px;
  }

  .waitlist-modal__panel{
    padding:24px;
    border-radius:24px;
  }

  .waitlist-modal__panel h2,
  .waitlist-modal__panel p{
    margin-right:42px;
  }

  .waitlist-form__row{
    grid-template-columns:1fr;
  }

  .waitlist-form button{
    width:100%;
  }
}

@media(prefers-reduced-motion:reduce){
  .desktop-link-sheet__backdrop,
  .desktop-link-sheet__panel,
  .waitlist-modal__backdrop,
  .waitlist-modal__panel{
    animation:none;
    opacity:1;
    transform:none;
  }
}

/* Interactive product states in the homepage hero. The footer glow is intentionally untouched. */
.hero-preview{
  display:flex;
  flex-direction:column;
  align-items:center;
  width:min(1096px, calc(100vw - 152px));
}

.preview-switch{
  position:relative;
  z-index:5;
  display:inline-flex;
  align-items:center;
  gap:3px;
  max-width:100%;
  margin:0 auto 24px;
  padding:4px;
  border:1px solid rgba(25,34,44,.1);
  border-radius:999px;
  background:rgba(232,239,242,.72);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72), 0 8px 20px rgba(28,46,61,.06);
  backdrop-filter:blur(14px) saturate(120%);
  -webkit-backdrop-filter:blur(14px) saturate(120%);
}

.preview-switch button{
  min-height:34px;
  padding:0 14px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#69737d;
  font-family:"AsideGeist", "Geist", system-ui, sans-serif;
  font-size:.84rem;
  font-weight:560;
  line-height:1;
  white-space:nowrap;
  cursor:pointer;
  transition:background 180ms ease, color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.preview-switch button:hover:not(.is-active){
  color:#1f2932;
}

.preview-switch button.is-active{
  background:rgba(255,255,255,.96);
  color:#0d151c;
  box-shadow:0 2px 7px rgba(31,48,62,.13), inset 0 1px 0 rgba(255,255,255,.96);
}

.preview-switch button:focus-visible{
  outline:2px solid #2a68cc;
  outline-offset:2px;
}

.hero-stage{
  position:relative;
  z-index:1;
  width:min(968px, 100%);
  margin:0 auto;
  padding:20px 64px 26px 0;
}

.hero-stage::after{
  content:"";
  position:absolute;
  z-index:2;
  right:64px;
  bottom:26px;
  left:0;
  height:15%;
  border-radius:0 0 22px 22px;
  background:linear-gradient(180deg, rgba(246,242,234,0), rgba(246,242,234,.92));
  pointer-events:none;
}

.product-frame{
  position:relative;
  z-index:1;
  aspect-ratio:16 / 10;
  overflow:hidden;
  border:1px solid rgba(23,33,43,.15);
  border-radius:24px;
  background:#f5f8fb;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.95),
    0 0 0 1px rgba(255,255,255,.58),
    0 24px 60px rgba(37,62,82,.18),
    0 7px 18px rgba(37,62,82,.1);
}

.hero-frame,
.menu-frame{
  display:block;
  width:100%;
  height:100%;
  border:0;
  background:#f5f8fb;
  pointer-events:none;
}

.stage-badge{
  position:absolute;
  z-index:4;
  top:0;
  left:-22px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:34px;
  padding:0 13px;
  border:1px solid rgba(24,38,51,.11);
  border-radius:999px;
  background:rgba(255,255,255,.86);
  color:#586572;
  box-shadow:0 10px 25px rgba(28,49,65,.13), inset 0 1px 0 rgba(255,255,255,.96);
  font-family:"AsideGeist", "Geist", system-ui, sans-serif;
  font-size:.78rem;
  font-weight:520;
  line-height:1;
  backdrop-filter:blur(16px) saturate(130%);
  -webkit-backdrop-filter:blur(16px) saturate(130%);
}

.stage-badge strong{
  color:#246acb;
  font-weight:680;
  font-variant-numeric:tabular-nums;
}

.stage-badge__dot{
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-radius:50%;
  background:#3774d8;
  box-shadow:0 0 0 4px rgba(55,116,216,.12);
}

.menu-float{
  position:absolute;
  z-index:4;
  top:22%;
  right:-12px;
  width:min(252px, 28%);
  aspect-ratio:1 / 1.08;
  overflow:hidden;
  border-radius:20px;
  box-shadow:0 22px 46px rgba(31,50,65,.2), 0 5px 15px rgba(31,50,65,.1);
  animation:hero-menu-float 5.8s ease-in-out infinite;
}

@keyframes hero-menu-float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-8px)}
}

.menu-frame{
  background:transparent;
}

.hero-preview__caption{
  position:relative;
  z-index:3;
  max-width:42rem;
  min-height:1.45em;
  margin:0 auto;
  color:#5a6873;
  font-family:"AsideGeist", "Geist", system-ui, sans-serif;
  font-size:.88rem;
  font-weight:500;
  line-height:1.45;
  text-align:center;
}

@media(max-width:960px){
  .hero-preview{
    width:min(880px, calc(100vw - 88px));
  }

  .hero-stage{
    padding-right:48px;
  }

  .hero-stage::after{
    right:48px;
  }

  .stage-badge{
    left:-12px;
  }

  .menu-float{
    right:-6px;
    width:min(224px, 29%);
  }
}

@media(max-width:760px){
  .hero-preview{
    width:calc(100vw - 32px);
    margin-top:34px;
  }

  .preview-switch{
    gap:2px;
    margin-bottom:18px;
    padding:3px;
  }

  .preview-switch button{
    min-height:32px;
    padding:0 10px;
    font-size:.78rem;
  }

  .hero-stage{
    width:100%;
    padding:0;
  }

  .hero-stage::after,
  .stage-badge,
  .menu-float{
    display:none;
  }

  .product-frame{
    aspect-ratio:4 / 3;
    border-radius:20px;
  }

  .hero-preview__caption{
    margin-top:14px;
    padding-inline:8px;
    font-size:.82rem;
  }
}

@media(max-width:390px){
  .hero-preview{
    width:calc(100vw - 24px);
  }

  .preview-switch button{
    padding:0 8px;
    font-size:.74rem;
  }
}

@media(prefers-reduced-motion:reduce){
  .preview-switch button,
  .menu-float{
    animation:none;
    transition:none;
  }
}

/* Exact Nudge Aside hero reference: https://nudge-aside-preview.pages.dev/ */
.hero{
  position:relative;
  min-height:0;
  margin:0;
  padding:124px 16px 0;
  border:0;
  border-radius:0;
  background:#fff;
  box-shadow:none;
  color:#090b0c;
  text-align:center;
  overflow:hidden;
}

.hero::before,
.hero::after,
.hero-ambient{
  display:none;
}

.hero-inner{
  position:relative;
  z-index:1;
  max-width:900px;
  margin:0 auto;
}

.hero h1{
  max-width:none;
  margin:0 0 28px;
  color:#090b0c;
  font-family:"Inter", "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size:clamp(2.25rem, 5.5vw, 3.25rem);
  font-weight:500;
  letter-spacing:-.035em;
  line-height:1.12;
}

.hero h1 .line-break{
  display:block;
}

.hero-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  margin:0 0 36px;
}

.hero .btn-primary,
.hero-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:48px;
  padding:0 22px;
  border:0;
  border-radius:18px;
  font-family:"Inter", "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size:1rem;
  font-weight:500;
  letter-spacing:0;
  line-height:1;
  white-space:nowrap;
  transition:background 150ms ease, transform 150ms ease;
}

.hero .btn-primary{
  gap:8px;
  background:#090b0c;
  color:#fafafa !important;
  box-shadow:none;
}

.hero .btn-primary:hover{
  background:#1a1d20;
  box-shadow:none;
  transform:none;
}

.hero .btn-primary:active,
.hero-secondary:active{
  transform:scale(.98);
}

.hero .btn-primary__icon{
  display:inline-flex;
  width:16px;
  height:16px;
  background:transparent;
}

.hero .btn-primary__icon svg{
  width:16px;
  height:16px;
  fill:currentColor;
  stroke:none;
}

.hero-secondary{
  background:#f5f5f5;
  color:#090b0c;
  text-decoration:none;
}

.hero-secondary:hover{
  background:#ebebeb;
  color:#090b0c;
}

.preview-switch{
  position:relative;
  z-index:4;
  display:flex;
  justify-content:center;
  gap:6px;
  width:fit-content;
  max-width:calc(100% - 32px);
  margin:0 auto 16px;
  padding:4px;
  border:0;
  border-radius:12px;
  background:#f5f5f5;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

.preview-switch button{
  height:34px;
  min-height:34px;
  padding:0 14px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:#5c636a;
  font-family:"Inter", "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size:.8rem;
  font-weight:550;
  line-height:1;
  box-shadow:none;
}

.preview-switch button:hover:not(.is-active){
  color:#090b0c;
}

.preview-switch button.is-active{
  background:#fff;
  color:#090b0c;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
}

.hero-stage{
  position:relative;
  z-index:1;
  width:min(1200px, 100%);
  height:min(72vw, 620px);
  max-height:720px;
  margin:0 auto;
  padding:0;
  overflow:hidden;
}

.hero-stage::after{
  display:block;
  content:"";
  position:absolute;
  z-index:3;
  right:0;
  bottom:0;
  left:0;
  height:28%;
  border-radius:0;
  background:linear-gradient(180deg, transparent, #fff);
  pointer-events:none;
}

.product-frame{
  position:absolute;
  z-index:1;
  top:8%;
  left:50%;
  width:min(92%, 980px);
  aspect-ratio:16 / 10;
  overflow:hidden;
  border:.5px solid rgba(0,0,0,.1);
  border-radius:12px;
  background:#f8fafc;
  box-shadow:0 0 8px 1px rgba(0,0,0,.1), 0 32px 80px rgba(0,0,0,.12);
  transform:translateX(-50%);
}

.product-frame iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
  background:#f8fafc;
  pointer-events:none;
}

.menu-float{
  position:absolute;
  z-index:2;
  top:18%;
  right:max(4%, calc(50% - 460px));
  width:min(280px, 32%);
  aspect-ratio:280 / 360;
  overflow:hidden;
  border:.5px solid rgba(0,0,0,.08);
  border-radius:14px;
  background:#fff;
  box-shadow:0 24px 64px rgba(0,0,0,.1);
  animation:aside-hero-float 5s cubic-bezier(.22,1,.36,1) infinite alternate;
}

.menu-float iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
  background:#fff;
  pointer-events:none;
  transform:scale(1.02);
}

@keyframes aside-hero-float{
  from{transform:translateY(0)}
  to{transform:translateY(-10px)}
}

.stage-badge{
  position:absolute;
  z-index:2;
  top:14%;
  left:max(4%, calc(50% - 480px));
  display:block;
  max-width:240px;
  min-height:0;
  padding:10px 14px;
  border:0;
  border-radius:12px;
  background:#f5f5f5;
  color:#090b0c;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
  font-family:"Inter", "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size:.875rem;
  font-weight:500;
  line-height:1.3;
  text-align:left;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

.stage-badge strong{
  color:#2563eb;
  font-weight:inherit;
}

@media(min-width:768px){
  .hero-stage{height:640px}
}

@media(min-width:1024px){
  .hero-stage{height:700px}
}

@media(max-width:767px){
  .hero{
    padding-top:104px;
  }

  .menu-float,
  .stage-badge{
    display:none;
  }

  .product-frame{
    top:4%;
    width:94%;
  }

  .hero-stage{
    height:380px;
  }
}

@media(prefers-reduced-motion:reduce){
  .menu-float{
    animation:none;
  }
}

/* Restore the existing animated hero. The interactive preview lives below it. */
.hero{
  min-height:auto;
  margin:28px 16px 0;
  padding-top:clamp(86px, 5.85vw, 116px);
  padding-bottom:clamp(48px, 4.8vw, 78px);
  border:0;
  border-radius:34px;
  background:
    radial-gradient(circle at 50% 33%, rgba(255,255,255,.72), transparent 30%),
    radial-gradient(circle at 18% 26%, rgba(255,255,255,.34), transparent 34%),
    radial-gradient(circle at 86% 22%, rgba(233,227,216,.6), transparent 32%),
    linear-gradient(180deg, #f1eee7 0%, #e9e3d8 48%, #f6f2ea 100%);
  box-shadow:none;
  color:#101318;
}

.hero::before{
  display:block;
  background:
    linear-gradient(180deg, rgba(255,255,255,.16) 0%, transparent 50%, rgba(255,255,255,.42) 100%),
    linear-gradient(90deg, rgba(255,255,255,.32), transparent 17%, transparent 83%, rgba(255,255,255,.32));
  box-shadow:none;
  opacity:.7;
}

.hero::after{
  display:block;
}

.hero-ambient{
  display:block;
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  background:linear-gradient(180deg, rgba(241,238,231,.76) 0%, rgba(233,227,216,.78) 52%, rgba(246,242,234,.84) 100%);
  opacity:var(--ambient-opacity, 1);
  filter:none;
  transform:none;
  -webkit-mask-image:none;
  mask-image:none;
}

.hero-ambient::after{
  display:none;
}

.hero-ambient__canvas{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  opacity:1;
  filter:none;
  transform:none;
  mix-blend-mode:multiply;
}

.hero-copy,
.hero-preview{
  position:relative;
  z-index:2;
}

.hero h1{
  max-width:990px;
  margin-top:24px;
  color:#101318;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:clamp(3rem, 3.38vw, 3rem);
  font-weight:400;
  line-height:3.25rem;
  letter-spacing:-.01em;
  text-wrap:balance;
}

.hero-actions{
  margin-top:30px;
  margin-bottom:0;
}

.hero .btn-primary{
  min-height:44px;
  padding:0 22px 0 18px;
  border:0;
  border-radius:16px;
  background:#0f1114;
  color:#fff !important;
  box-shadow:0 12px 28px rgba(15,17,20,.17);
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:1rem;
  font-weight:500;
  line-height:1.25rem;
}

.hero .btn-primary:hover{
  background:#202226;
  box-shadow:0 16px 36px rgba(16,17,20,.2);
  transform:translateY(-1px);
}

.hero .btn-primary__icon{
  width:auto;
  height:auto;
  background:transparent;
}

.hero .btn-primary__icon svg{
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.hero-preview{
  width:min(1056px, calc(100vw - 196px));
  margin-top:clamp(40px, 3.2vw, 54px);
  transform:translateY(-18px);
}

.hero-preview picture{display:block}

.hero-product-shot{
  display:block;
  width:100%;
  height:auto;
  border:1px solid rgba(36,67,97,.16);
  border-radius:22px 22px 0 0;
  background:#f3f3f4;
  box-shadow:0 22px 54px rgba(39,91,128,.16), 0 8px 18px rgba(39,91,128,.1);
}

@media(max-width:960px){
  .hero{
    margin:24px 12px 0;
    padding-top:88px;
    padding-bottom:54px;
  }
}

@media(max-width:760px){
  .hero{
    margin:18px 10px 0;
    padding-top:86px;
    padding-bottom:38px;
  }

  .hero-product-shot{border-radius:18px 18px 0 0}
}

/* The single standalone product-preview section requested by the user. */
.product-demo-section{
  position:relative;
  z-index:2;
  width:100%;
  padding:clamp(40px, 4vw, 56px) 0 0;
  background:transparent;
  overflow:hidden;
}

.product-demo-switch{
  position:relative;
  z-index:4;
  display:flex;
  justify-content:center;
  gap:6px;
  width:fit-content;
  max-width:calc(100% - 32px);
  margin:0 auto 16px;
  padding:4px;
  border-radius:12px;
  background:#f5f5f5;
}

.product-demo-switch button{
  height:34px;
  padding:0 14px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:#5c636a;
  font-family:"Inter", "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size:.8rem;
  font-weight:550;
  line-height:1;
  cursor:pointer;
}

.product-demo-switch button.is-active{
  background:#fff;
  color:#090b0c;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
}

.product-demo-switch button:focus-visible{
  outline:2px solid #2563eb;
  outline-offset:2px;
}

.product-demo-stage{
  position:relative;
  width:min(1200px, 100%);
  height:min(72vw, 620px);
  max-height:720px;
  margin:0 auto;
  overflow:hidden;
}

.product-demo-stage::after{
  display:none;
}

.product-demo-frame{
  position:absolute;
  z-index:1;
  top:8%;
  left:50%;
  width:min(92%, 980px);
  aspect-ratio:16 / 10;
  overflow:hidden;
  border:.5px solid rgba(0,0,0,.1);
  border-radius:12px;
  background:#f8fafc;
  box-shadow:0 0 8px 1px rgba(0,0,0,.1), 0 32px 80px rgba(0,0,0,.12);
  transform:translateX(-50%);
}

.product-demo-frame iframe,
.product-demo-menu iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
  pointer-events:none;
}

.product-demo-menu{
  position:absolute;
  z-index:2;
  top:18%;
  right:max(4%, calc(50% - 460px));
  width:min(280px, 32%);
  aspect-ratio:280 / 360;
  overflow:hidden;
  border:.5px solid rgba(0,0,0,.08);
  border-radius:14px;
  background:#fff;
  box-shadow:0 24px 64px rgba(0,0,0,.1);
}

.product-demo-menu iframe{transform:scale(1.02)}

.product-demo-badge{
  position:absolute;
  z-index:2;
  top:14%;
  left:max(4%, calc(50% - 480px));
  max-width:240px;
  padding:10px 14px;
  border-radius:12px;
  background:#f5f5f5;
  color:#090b0c;
  box-shadow:0 1px 2px rgba(0,0,0,.04);
  font-family:"Inter", "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size:.875rem;
  font-weight:500;
  line-height:1.3;
  text-align:left;
}

.product-demo-badge strong{color:#2563eb}

@media(min-width:768px){
  .product-demo-stage{height:640px}
}

@media(min-width:1024px){
  .product-demo-stage{height:700px}
}

@media(max-width:767px){
  .product-demo-section{padding-top:48px}
  .product-demo-menu,
  .product-demo-badge{display:none}
  .product-demo-frame{top:4%;width:94%}
  .product-demo-stage{height:380px}
}

@media(prefers-reduced-motion:reduce){
  .product-demo-menu{animation:none}
}

/* High-resolution ocean field: quiet at the copy, tactile around the product. */
.hero{
  margin-top:20px;
  padding-bottom:clamp(42px, 4vw, 68px);
  background:#79ddf0;
}

.hero::before{
  display:block;
  z-index:1;
  background:
    radial-gradient(ellipse 52% 29% at 50% 20%, rgba(255,255,255,.2), transparent 80%),
    linear-gradient(180deg, rgba(255,255,255,.08), transparent 34%, rgba(255,255,255,.07) 100%);
  opacity:1;
}

.hero::after{display:none}

.hero-ambient{
  display:block;
  background:
    radial-gradient(ellipse at 50% 24%, #8ce7f3 0%, #72d9eb 48%, #4cc7df 100%);
  opacity:1;
}

.hero-ocean-canvas{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  opacity:0;
  transition:opacity .22s ease-out;
}

.hero-ambient.is-rendered .hero-ocean-canvas{opacity:1}

.hero-copy,
.product-demo-section{z-index:2}

.hero h1{
  max-width:850px;
  text-shadow:0 1px 18px rgba(255,255,255,.22);
}

.hero-sub{
  max-width:650px;
  text-shadow:0 1px 12px rgba(255,255,255,.18);
}

.product-demo-section{
  padding-top:clamp(34px, 3vw, 46px);
}

.product-demo-switch{
  margin-bottom:clamp(22px, 2.2vw, 32px);
  padding:5px;
  border:1px solid rgba(255,255,255,.46);
  background:rgba(255,255,255,.58);
  box-shadow:0 10px 30px rgba(30,128,152,.12), inset 0 1px 0 rgba(255,255,255,.76);
  backdrop-filter:blur(10px) saturate(120%);
}

.product-demo-switch button{height:36px}

.product-demo-switch button.is-active{
  box-shadow:0 2px 8px rgba(28,79,96,.12), inset 0 1px 0 rgba(255,255,255,.82);
}

.product-demo-stage{
  width:min(1280px, 100%);
  height:min(54vw, 690px);
  max-height:690px;
}

.product-demo-frame{
  top:5.5%;
  width:min(94%, 1060px);
  border-color:rgba(19,69,84,.13);
  border-radius:20px;
  box-shadow:0 3px 12px rgba(14,72,91,.1), 0 34px 90px rgba(16,83,103,.2);
}

.product-demo-menu{
  top:17%;
  right:max(3%, calc(50% - 500px));
  width:min(292px, 30%);
  border-color:rgba(20,73,90,.1);
  border-radius:17px;
  box-shadow:0 26px 72px rgba(18,86,105,.19);
}

.product-demo-badge{
  top:12%;
  left:max(3%, calc(50% - 520px));
  padding:11px 15px;
  border:1px solid rgba(255,255,255,.64);
  background:rgba(255,255,255,.72);
  box-shadow:0 12px 32px rgba(17,85,105,.12), inset 0 1px 0 rgba(255,255,255,.9);
  backdrop-filter:blur(12px);
}

@media(min-width:1024px){
  .product-demo-stage{height:690px}
}

@media(max-width:767px){
  .hero{margin-top:12px}
  .product-demo-stage{height:380px}
  .product-demo-frame{border-radius:14px}
}

/* ═══════════════════════════════════════════════════════════════
   Aside-style chrome: full-width sticky nav, content rail,
   dashed section rules, footer typography.
   Does NOT touch footer bottom glow artwork (GRADIENT_LOCK).
   ═══════════════════════════════════════════════════════════════ */

:root{
  --aside-border:rgba(0,0,0,.06);
  --aside-ink:#0a0a0a;
  --aside-muted:rgba(10,10,10,.55);
  --aside-muted-label:rgba(10,10,10,.45);
  --aside-nav-h:56px;
  --aside-shell-max:1536px;
  --aside-shell-pad:clamp(16px, 4vw, 96px);
}

/* ── Full-width FIXED nav — Aside pattern: transparent → white on scroll ── */
.navbar[data-aside-nav],
.navbar{
  position:fixed !important;
  top:0 !important;
  inset:auto 0 auto 0 !important;
  left:0 !important;
  right:0 !important;
  z-index:200 !important;
  display:block;
  width:100%;
  min-height:var(--aside-nav-h);
  margin:0;
  padding:0;
  pointer-events:auto;
  animation:none !important;
  background:transparent;
  border-bottom:1px solid transparent;
  transition:background-color 150ms ease, border-color 150ms ease;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  isolation:isolate;
  overflow:visible;
}

/* Aside mid-scroll: solid white bar + hairline */
.navbar.is-scrolled,
.navbar.has-open-menu,
body:not(:has(.hero)) .navbar{
  background:#fff !important;
  border-bottom:1px solid var(--aside-border) !important;
}

.navbar-shell{
  width:100%;
  height:var(--aside-nav-h);
  background:inherit;
}

.navbar-inner{
  position:relative;
  overflow:visible;
  box-sizing:border-box;
  width:100% !important;
  max-width:var(--aside-shell-max) !important;
  min-height:var(--aside-nav-h) !important;
  height:var(--aside-nav-h);
  margin:0 auto;
  display:flex !important;
  grid-template-columns:none !important;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:0 var(--aside-shell-pad) !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  color:var(--aside-ink);
  pointer-events:auto;
}

.navbar-inner::before{
  display:none !important;
}

.navbar-slot{
  display:flex;
  align-items:center;
  position:relative;
  z-index:1;
  min-width:0;
}

.navbar-slot--brand{
  justify-self:start;
  flex:0 0 auto;
}

.navbar-slot--cta{
  justify-self:end;
  justify-content:flex-end;
  flex:0 0 auto;
  gap:10px;
  margin-left:auto;
}

.brand{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:36px;
  color:var(--aside-ink) !important;
  font-family:"AsideDisplay", "AsideDisplay Fallback", "Arial", sans-serif;
  font-size:1.125rem;
  font-weight:500;
  letter-spacing:0;
  line-height:1;
  text-decoration:none;
  transition:color 150ms ease;
}

/* Aside-like: plain mark, no chip/ring — slightly larger for cloud readability */
.brand img.brand-cloud,
.brand img{
  width:36px !important;
  height:36px !important;
  flex:0 0 auto;
  object-fit:contain;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  filter:drop-shadow(0 0.5px 0.5px rgba(0,0,0,.12));
}

.brand > span{
  display:inline !important;
}

.nav-links,
.nav-links--center{
  position:absolute !important;
  left:50%;
  top:50%;
  transform:translate(-50%, -50%) !important;
  display:none;
  align-items:center;
  justify-content:center;
  gap:clamp(28px, 2.4vw, 40px) !important;
  margin:0;
  padding:0 !important;
  list-style:none;
  border:0;
  background:transparent !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  z-index:2;
}

.nav-links li{
  display:flex;
  align-items:center;
  margin:0;
  padding:0;
}

.nav-links a{
  display:inline-flex;
  align-items:center;
  min-height:auto;
  min-width:0;
  padding:0 !important;
  border:0;
  border-radius:0;
  background:transparent !important;
  color:var(--aside-ink) !important;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:.875rem;
  font-weight:500;
  letter-spacing:0;
  line-height:1.25;
  text-decoration:none;
  transition:color 150ms ease, opacity 150ms ease;
}

.nav-links a:hover,
.nav-links a:focus-visible{
  color:var(--aside-muted) !important;
  background:transparent !important;
  opacity:1;
}

/* Scrolled / solid bar: dark ink on white */
.navbar.is-scrolled .brand,
.navbar.has-open-menu .brand,
body:not(:has(.hero)) .navbar .brand{
  color:var(--aside-ink) !important;
}

.navbar.is-scrolled .nav-links a,
.navbar.has-open-menu .nav-links a,
body:not(:has(.hero)) .navbar .nav-links a{
  color:var(--aside-ink) !important;
}

.navbar.is-scrolled .nav-links a:hover,
.navbar.is-scrolled .nav-links a:focus-visible,
.navbar.has-open-menu .nav-links a:hover,
body:not(:has(.hero)) .navbar .nav-links a:hover{
  color:var(--aside-muted) !important;
}

.navbar.is-scrolled .nav-menu-button,
.navbar.has-open-menu .nav-menu-button,
body:not(:has(.hero)) .navbar .nav-menu-button{
  color:var(--aside-ink) !important;
}

.btn-dl{
  min-width:auto;
  min-height:36px !important;
  height:36px;
  width:auto !important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:0;
  padding:0 16px !important;
  border:0 !important;
  border-radius:999px !important;
  background:var(--aside-ink) !important;
  color:#fff !important;
  box-shadow:none !important;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:.875rem !important;
  font-weight:500 !important;
  letter-spacing:0;
  line-height:1.25rem;
  white-space:nowrap;
  text-decoration:none;
  transition:background-color 150ms ease, transform 150ms ease, opacity 150ms ease;
}

.btn-dl:hover{
  background:#1a1a1a !important;
  transform:none;
  box-shadow:none !important;
}

.btn-dl:active{
  transform:scale(.97);
}

.btn-dl > span{
  display:inline !important;
}

.nav-menu-button{
  display:none;
  width:40px;
  height:40px;
  flex:0 0 40px;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
  padding:0;
  border:0;
  border-radius:10px;
  background:transparent;
  color:var(--aside-ink);
  cursor:pointer;
  appearance:none;
  transition:color 150ms ease;
}

.nav-menu-button span{
  width:15px;
  height:1.5px;
  border-radius:999px;
  background:currentColor;
  transition:transform 180ms ease, opacity 180ms ease;
}

.nav-menu-button.is-open span:nth-child(1){
  transform:translateY(5.5px) rotate(45deg);
}
.nav-menu-button.is-open span:nth-child(2){ opacity:0; }
.nav-menu-button.is-open span:nth-child(3){
  transform:translateY(-5.5px) rotate(-45deg);
}

.mobile-menu{
  position:absolute;
  top:calc(100% + 0px);
  left:0;
  right:0;
  z-index:5;
  width:100%;
  max-width:none;
  display:grid;
  gap:0;
  padding:8px var(--aside-shell-pad) 16px;
  border:0;
  border-bottom:1px solid var(--aside-border);
  border-radius:0;
  background:#fff;
  color:var(--aside-ink);
  transform:none;
  box-shadow:0 18px 40px rgba(0,0,0,.06);
}

.mobile-menu[hidden]{ display:none; }

.mobile-menu a{
  display:flex;
  align-items:center;
  min-height:44px;
  padding:0 4px;
  border-radius:8px;
  color:var(--aside-ink);
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:.9375rem;
  font-weight:500;
  text-decoration:none;
}

.mobile-menu a:hover,
.mobile-menu a:focus-visible{
  background:rgba(0,0,0,.04);
}

@media(min-width:768px){
  .nav-links,
  .nav-links--center{
    display:flex !important;
  }
  .nav-menu-button{ display:none !important; }
  .mobile-menu{ display:none !important; }
  .navbar-slot--cta .btn-dl{ display:inline-flex !important; }
}

@media(max-width:767px){
  .nav-links,
  .nav-links--center{
    display:none !important;
  }
  .nav-menu-button{ display:inline-flex !important; }
  .navbar-slot--cta{
    display:flex;
    align-items:center;
    gap:8px;
  }
  .navbar-slot--cta .btn-dl{
    display:none !important;
  }
  .navbar{
    position:fixed !important;
  }
  .navbar.has-open-menu{
    background:#fff !important;
    border-bottom-color:var(--aside-border);
  }
}

/* Hero sits under fixed transparent nav; full-bleed top */
.hero{
  margin-top:0 !important;
  padding-top:calc(var(--aside-nav-h) + clamp(48px, 4.5vw, 72px)) !important;
  border-top-left-radius:0 !important;
  border-top-right-radius:0 !important;
}

/* Hero copy: black on cyan field */
.hero h1,
.hero .hero-sub,
.hero-copy h1,
.hero-copy .hero-sub{
  color:var(--aside-ink) !important;
  text-shadow:none;
}

.hero h1{
  font-size:clamp(3.25rem, 5.2vw, 4.65rem) !important;
  font-weight:400 !important;
  line-height:1.02 !important;
  letter-spacing:-.02em !important;
}

.hero .hero-sub,
.hero-copy .hero-sub{
  font-size:clamp(1.12rem, 1.35vw, 1.35rem) !important;
  font-weight:480 !important;
  line-height:1.45 !important;
  color:rgba(10,10,10,.72) !important;
}

.navbar:not(.is-scrolled):not(.has-open-menu) .brand,
.navbar:not(.is-scrolled):not(.has-open-menu) .nav-links a,
.navbar:not(.is-scrolled):not(.has-open-menu) .nav-menu-button{
  color:var(--aside-ink) !important;
}

.navbar:not(.is-scrolled):not(.has-open-menu) .nav-links a:hover,
.navbar:not(.is-scrolled):not(.has-open-menu) .nav-links a:focus-visible{
  color:var(--aside-muted) !important;
}

/* Stronger rail edges so the page linearity reads like Aside */
.site-rail__inner{
  border-left-color:rgba(0,0,0,.08);
  border-right-color:rgba(0,0,0,.08);
  box-shadow:
    -1px 0 0 rgba(0,0,0,.02),
    1px 0 0 rgba(0,0,0,.02);
}

.site-rail__rule{
  border-top-color:rgba(0,0,0,.1);
  border-top-style:dashed;
  border-top-width:1px;
}

/* Outside the rail, match Aside's quiet white page frame */
body{
  background:#fff !important;
}

/* ── Content rail + dashed section rules (Aside linearity) ─── */
.site-rail{
  width:100%;
  max-width:var(--aside-shell-max);
  margin:0 auto;
  padding:0 var(--aside-shell-pad);
  position:relative;
  z-index:2;
  background:transparent;
}

.site-rail__inner{
  position:relative;
  border-left:1px solid var(--aside-border);
  border-right:1px solid var(--aside-border);
  background:#fff;
}

.site-rail__rule{
  display:block;
  width:100%;
  height:0;
  margin:0;
  padding:0;
  border:0;
  border-top:1px dashed var(--aside-border);
  background:transparent;
}

/* Soften section bleed so rail edges read cleanly */
.site-rail .focus-story,
.site-rail .testimonial-slider,
.site-rail .pricing-plain,
.site-rail .faq-plain,
.site-rail .final-cta-section{
  position:relative;
  z-index:1;
}

.site-rail .final-cta-section{
  padding-inline:clamp(16px, 3vw, 40px);
}

/* ── Footer: Aside type + layout, Nudge content ────────────── */
.footer{
  margin-top:0;
  padding:clamp(56px, 8vw, 96px) 0 0;
  border-top:0;
  background:#fff;
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
}

.footer > .wrap{
  width:min(var(--aside-shell-max), 100%);
  max-width:var(--aside-shell-max);
  margin:0 auto;
  padding:0 var(--aside-shell-pad) clamp(28px, 4vw, 40px);
  box-sizing:border-box;
}

.footer-inner{
  display:block;
  width:100%;
}

.footer-sections{
  width:100%;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:32px 16px;
  align-items:start;
}

.footer-section{
  display:flex;
  flex-direction:column;
  gap:12px;
  min-width:0;
}

.footer-section h2,
.footer-section__label{
  margin:0;
  padding:0;
  border:0;
  color:var(--aside-muted-label);
  font-family:"AsideGeist", "AsideGeist Fallback", "Geist", system-ui, sans-serif;
  font-size:.875rem;
  font-weight:500;
  line-height:1.25;
  letter-spacing:0;
  text-transform:none;
}

.footer-section__links{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
}

.footer-section__links li{
  margin:0;
  padding:0;
}

.footer-section__links a{
  width:fit-content;
  color:var(--aside-ink);
  font-size:.875rem;
  font-weight:500;
  line-height:1.35;
  text-decoration:none;
  text-underline-offset:2px;
  text-decoration-thickness:1px;
  text-decoration-style:dotted;
  text-decoration-color:transparent;
  transition:color 140ms ease, text-decoration-color 140ms ease;
  transform:none !important;
}

.footer-section__links a:hover,
.footer-section__links a:focus-visible{
  color:var(--aside-muted);
  text-decoration-line:underline;
  text-decoration-style:dotted;
  text-decoration-color:var(--aside-muted);
  transform:none !important;
}

.footer-divider{
  display:none;
}

.footer-meta{
  display:none;
}

.footer > .wrap{
  padding-bottom:clamp(36px, 5vw, 56px);
}

@media(min-width:640px){
  .footer-sections{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
}

@media(min-width:1280px){
  .footer-sections{
    display:flex;
    flex-wrap:wrap;
    gap:24px 12px;
  }
  .footer-section{
    flex:1 1 0;
    min-width:10rem;
    max-width:15rem;
  }
}

@media(max-width:639px){
  .footer-meta{
    flex-direction:row;
    align-items:center;
  }
}

/* Doc pages that share .navbar get the same Aside chrome */
.doc-body .navbar,
.blog-body .navbar{
  background:#fff;
  border-bottom:1px solid var(--aside-border);
}

/* Reduce old mobile island overrides fighting the new bar */
@media(max-width:760px){
  .navbar-inner{
    width:100% !important;
    max-width:none !important;
    min-height:var(--aside-nav-h) !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    padding:0 var(--aside-shell-pad) !important;
    grid-template-columns:none !important;
    grid-template-areas:none !important;
  }
  .navbar{
    position:fixed !important;
    inset:auto 0 auto 0 !important;
    top:0 !important;
    padding:0 !important;
  }
  .brand{
    font-size:1.12rem !important;
  }
  .hero h1{
    font-size:clamp(2.7rem, 11vw, 3.4rem) !important;
  }
}

@media(max-width:580px){
  .navbar-inner{
    width:100% !important;
  }
  .brand{
    font-size:1.05rem !important;
  }
}

@media(max-width:380px){
  .navbar-inner{
    width:100% !important;
  }
}

/* ═══════════════════════════════════════════════════════════════
   FINAL NAV LOCK — wins the cascade after all legacy island rules.
   Aside pattern: transparent at rest, solid white past hero.
   ═══════════════════════════════════════════════════════════════ */
header.navbar[data-aside-nav],
header.navbar{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  height:auto !important;
  min-height:56px !important;
  z-index:500 !important;
  margin:0 !important;
  padding:0 !important;
  display:block !important;
  pointer-events:auto !important;
  animation:none !important;
  transform:none !important;
  opacity:1 !important;
  filter:none !important;
  background-color:transparent !important;
  background-image:none !important;
  border:0 !important;
  border-bottom:1px solid transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  inset:auto 0 auto 0 !important;
  /* instant flip like Aside — no muddy mid-transition alpha */
  transition:none !important;
}

header.navbar[data-aside-nav].is-scrolled,
header.navbar.is-scrolled,
header.navbar[data-aside-nav].has-open-menu,
header.navbar.has-open-menu{
  background-color:#ffffff !important;
  background-image:none !important;
  border-bottom:1px solid rgba(0,0,0,.06) !important;
  box-shadow:none !important;
  opacity:1 !important;
}

header.navbar[data-aside-nav] .navbar-inner,
header.navbar .navbar-inner{
  width:100% !important;
  max-width:1536px !important;
  min-height:56px !important;
  height:56px !important;
  margin:0 auto !important;
  padding:0 clamp(16px, 4vw, 96px) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  overflow:visible !important;
  grid-template-columns:none !important;
}

header.navbar[data-aside-nav] .navbar-inner::before,
header.navbar .navbar-inner::before{
  content:none !important;
  display:none !important;
}

header.navbar[data-aside-nav] .brand,
header.navbar .brand{
  gap:8px !important;
  color:#0a0a0a !important;
  font-family:"AsideDisplay","AsideDisplay Fallback",Arial,sans-serif !important;
  font-size:1.4625rem !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
  background:transparent !important;
}

header.navbar[data-aside-nav] .brand img.brand-cloud,
header.navbar[data-aside-nav] .brand img,
header.navbar .brand img.brand-cloud,
header.navbar .brand img{
  width:2.925rem !important;
  height:2.925rem !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  filter:none !important;
}

header.navbar[data-aside-nav] .nav-links,
header.navbar .nav-links{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  display:flex !important;
  gap:2.5rem !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
  background:transparent !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}

header.navbar[data-aside-nav] .nav-links a,
header.navbar .nav-links a{
  min-width:0 !important;
  min-height:auto !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#0a0a0a !important;
  font-family:"AsideGeist","AsideGeist Fallback",Geist,system-ui,sans-serif !important;
  font-size:1.1375rem !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
  line-height:1.25 !important;
}

header.navbar[data-aside-nav] .nav-links a:hover,
header.navbar .nav-links a:hover{
  color:rgba(10,10,10,.55) !important;
  background:transparent !important;
}

header.navbar[data-aside-nav] .btn-dl,
header.navbar .btn-dl{
  min-height:2.6rem !important;
  height:2.6rem !important;
  padding:0 1.2rem !important;
  border:0 !important;
  border-radius:999px !important;
  background:#0a0a0a !important;
  color:#fff !important;
  box-shadow:none !important;
  font-size:1.1375rem !important;
  font-weight:500 !important;
  backdrop-filter:none !important;
}

@media (max-width:767px){
  header.navbar[data-aside-nav] .nav-links,
  header.navbar .nav-links{
    display:none !important;
  }
  header.navbar[data-aside-nav] .btn-dl,
  header.navbar .btn-dl{
    display:none !important;
  }
  header.navbar[data-aside-nav] .nav-menu-button,
  header.navbar .nav-menu-button{
    display:inline-flex !important;
    color:#0a0a0a !important;
  }
}
