:root{
  --bg:#FFFFFF;
  --text:#0F172A;
  --muted:#475569;
  --line:#E2E8F0;
  --brand:#2563EB;
  --brand2:#38BDF8;
  --brand-gradient:linear-gradient(135deg,#2563EB,#38BDF8);
  --shadow:0 20px 60px rgba(2,6,23,.08);
  --radius:22px;
  --max:1200px;
  --sans: ui-sans-serif, system-ui, -apple-system, Segoe UI, Inter;
  --mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas;
  --ease-out:cubic-bezier(.16,1,.3,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--sans);
  color:var(--text);
  background:
    radial-gradient(rgba(0,0,0,0.016) 1px, transparent 1px),
    radial-gradient(rgba(0,0,0,0.016) 1px, transparent 1px),
    #FFFFFF;
  background-size:20px 20px;
  background-position:0 0,10px 10px;
}

a{text-decoration:none;color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:32px}

/* blobs */
.bg-blobs{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.blob{position:absolute;width:520px;height:520px;border-radius:999px;filter:blur(40px);opacity:.55;transform:translate3d(0,0,0);animation:blobFloat 14s var(--ease-out) infinite}
.blob.b1{left:-140px;top:-120px;background:rgba(37,99,235,.22);animation-duration:16s}
.blob.b2{right:-160px;top:-80px;background:rgba(56,189,248,.18);animation-duration:18s;animation-delay:-3s}
.blob.b3{left:18%;bottom:-220px;background:rgba(37,99,235,.14);animation-duration:20s;animation-delay:-6s}
@keyframes blobFloat{
  0%{transform:translate3d(0,0,0) scale(1)}
  33%{transform:translate3d(24px,-18px,0) scale(1.05)}
  66%{transform:translate3d(-18px,22px,0) scale(.98)}
  100%{transform:translate3d(0,0,0) scale(1)}
}

/* header/nav */
header{position:sticky;top:0;background:rgba(255,255,255,.82);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line);z-index:50}
.nav{display:flex;justify-content:space-between;align-items:center;padding:16px 0;gap:20px}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px;letter-spacing:-.3px}
.brand img{height:28px;width:auto}

.tabs{display:flex;gap:22px;font-family:var(--mono);font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--muted)}
.tabs a{position:relative;padding:10px 12px;border-radius:12px;transition:color .18s var(--ease-out),transform .18s var(--ease-out)}
.tabs a::after{content:"";position:absolute;left:12px;right:12px;bottom:6px;height:2px;border-radius:999px;background:var(--brand-gradient);opacity:0;transform:translateY(4px);transition:opacity .18s var(--ease-out),transform .18s var(--ease-out)}
.tabs a:hover{color:var(--brand);transform:translateY(-1px)}
.tabs a.active{color:var(--text)}
.tabs a.active::after{opacity:1;transform:translateY(0)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 18px;border-radius:16px;border:1px solid var(--line);background:#fff;font-weight:700;transition:transform .18s var(--ease-out),box-shadow .18s var(--ease-out)}
.btn.primary{border:0;background:var(--brand-gradient);color:#fff;box-shadow:var(--shadow)}
.btn.ghost{background:rgba(255,255,255,.7)}
.btn:active{transform:translateY(1px) scale(.99)}

/* hero */
.hero{padding:92px 0 30px}
.kicker{font-family:var(--mono);letter-spacing:2px;text-transform:uppercase;font-size:12px;color:var(--muted);margin-bottom:18px}
h1{font-size:clamp(44px,5.4vw,74px);line-height:1.04;margin:0 0 18px}
.lede{font-size:18px;color:var(--muted);line-height:1.8;max-width:820px;margin:0}
.heroCtas{margin-top:26px;display:flex;gap:12px;flex-wrap:wrap}

.gradText{
  background:var(--brand-gradient);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

/* sections */
.section{padding:84px 0}
.sectionHead{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}
h2{font-size:34px;margin:0 0 12px}
h3{margin:0}
.subhead{margin-top:44px}

/* cards/grids */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:30px}
.card{border:1px solid var(--line);border-radius:var(--radius);padding:22px;background:rgba(255,255,255,.85);box-shadow:0 14px 40px rgba(2,6,23,.06);transition:transform .22s var(--ease-out),box-shadow .22s var(--ease-out),border-color .22s var(--ease-out)}
.card:hover{transform:translateY(-4px)}

.card h3{margin:0 0 6px}
.card p{margin:0;color:var(--muted);line-height:1.75}

/* schedule split */
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:start;margin-top:12px}
.stack{display:grid;gap:12px;margin-top:18px}
.note{margin-top:18px;color:var(--muted);line-height:1.8}
.calWrap h2{margin-bottom:14px}
.calWrap{border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.85);box-shadow:0 14px 40px rgba(2,6,23,.06);padding:18px}
.calWrap .calendly-inline-widget{border-radius:18px;overflow:hidden}

/* steps */
.steps{display:grid;gap:14px;margin-top:26px}
.step{display:grid;grid-template-columns:64px 1fr;gap:16px;align-items:start;border:1px solid var(--line);border-radius:var(--radius);padding:18px;background:rgba(255,255,255,.85);box-shadow:0 14px 40px rgba(2,6,23,.06)}
.stepNum{font-family:var(--mono);font-size:12px;letter-spacing:2px;color:var(--brand);font-weight:800}
.step h4{margin:0 0 6px;font-size:16px}
.step p{margin:0;color:var(--muted);line-height:1.75}

/* proof grids */
.proofGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:22px;margin-top:26px}
.proofCard{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:rgba(255,255,255,.9);box-shadow:0 14px 40px rgba(2,6,23,.06)}
.proofCard img{width:100%;display:block}

/* reveal */
.reveal{opacity:0;transform:translateY(14px);transition:opacity .65s var(--ease-out),transform .65s var(--ease-out);will-change:opacity,transform}
.reveal.is-visible{opacity:1;transform:translateY(0)}
.reveal.delay-1{transition-delay:.06s}
.reveal.delay-2{transition-delay:.12s}
.reveal.delay-3{transition-delay:.18s}

/* footer */
footer{border-top:1px solid var(--line);padding:34px 0;color:var(--muted)}
.foot{display:flex;justify-content:space-between;align-items:center}

/* responsive */
@media(max-width:1000px){
  .split{grid-template-columns:1fr}
  .grid3{grid-template-columns:1fr}
  .tabs{display:none}
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  .blob{animation:none}
  .reveal{opacity:1;transform:none;transition:none}
}