.home-page{background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.home-page main{overflow:visible}
.stage{position:relative;padding:64px 24px 28px;background:
  radial-gradient(circle at 12% 18%,#ffe7a3 0,transparent 28%),
  radial-gradient(circle at 88% 8%,#ffd0ea 0,transparent 26%),
  radial-gradient(circle at 78% 70%,#d9f5e6 0,transparent 24%),
  radial-gradient(circle at 8% 78%,#d9e6ff 0,transparent 28%),
  #fff}
.stage-copy{position:relative;z-index:1;max-width:980px;margin:0 auto;text-align:center}
.stage h1{margin:0;font-size:clamp(64px,8.4vw,118px);font-weight:650;line-height:.9;letter-spacing:-.06em;color:#16181d}
.cycle{display:inline-block;color:#2467ef;position:relative}
.cycle::after{content:"";position:absolute;left:0;right:0;bottom:.06em;height:.14em;border-radius:99px;background:currentColor;opacity:.28;transform-origin:left center;animation:marker 2.2s ease}
.cycle.out{animation:word-out .22s ease forwards}
.cycle.in{animation:word-in .28s ease}
.stage-copy>p:not(.eyebrow){max-width:640px;margin:22px auto 0;font-size:19px;line-height:1.55;color:#4d5b73}
.stage-actions{display:flex;justify-content:center;gap:12px;margin-top:28px}
.stage-actions .button{height:52px;padding:0 22px;border-radius:999px;font-size:16px;font-weight:700;gap:8px}
.hero-art{position:relative;z-index:1;max-width:1100px;margin:48px auto 0}
.hero-art-scene{display:block;width:100%;height:auto;border-radius:28px}
.hero-art-app{position:absolute;left:16%;top:12%;width:68%;height:auto;border-radius:16px;box-shadow:0 28px 70px #1d3f7a33;animation:hero-float 7s ease-in-out infinite}
.suite-card svg{width:16px;height:16px;display:block}
.suite{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;width:min(1180px,calc(100% - 48px));margin:56px auto 8px}
.suite-card{display:flex;flex-direction:column;min-height:240px;padding:22px;border-radius:22px;color:#172033;transition:transform .25s ease,box-shadow .25s ease}
.suite-card span{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:#fff}
.suite-card h2{margin:auto 0 8px;font-size:28px;font-weight:700;letter-spacing:-.04em}
.suite-card p{margin:0;font-size:15px;line-height:1.45;color:#3d4d66}
.suite-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px #1c2b4420}
.suite-purple{background:#efe7ff}
.suite-amber{background:#fff1cc}
.suite-green{background:#ddf7ea}
.suite-pink{background:#ffe4f1}
.proof{padding:72px 24px 24px}
.proof-lead{max-width:760px;margin:0 auto 28px;text-align:center}
.proof-lead h2,.steps h2,.reasons h2,.answers h2{font-size:clamp(40px,5vw,68px);font-weight:650;line-height:.98;letter-spacing:-.05em}
.proof-lead p:not(.eyebrow){margin-top:12px;font-size:18px;color:#52627a}
.proof-hero{max-width:1100px;margin:0 auto;padding:22px 22px 0;border-radius:28px;background:linear-gradient(160deg,#efe7ff,#d9e8ff 55%,#fff);box-shadow:0 24px 60px #243e6e16}
.proof-hero img,.proof-row img{width:100%;height:auto;border-radius:16px 16px 0 0;box-shadow:0 16px 40px #1d3f7a18}
.proof-hero figcaption,.proof-row figcaption{padding:16px 8px 18px;font-size:14px;color:#52627a}
.proof-hero figcaption strong{color:#172033;margin-right:8px}
.proof-row{display:grid;grid-template-columns:.8fr 1.2fr;gap:36px;align-items:center;max-width:1100px;margin:36px auto 0;padding:28px;border-radius:28px;background:#ddf7ea}
.proof-row h3{margin:0 0 12px;font-size:clamp(28px,3vw,42px);line-height:1.05;letter-spacing:-.04em}
.proof-row p:not(.eyebrow){margin:0;font-size:17px;line-height:1.55;color:#3d4d66}
.proof-row figure{margin:0}
.proof-row img{border-radius:16px}
.home-page .launch{padding:36px 24px 12px;background:#fff}
.home-page .launch-panel{width:min(1100px,100%);background:#16181d;color:#fff;border-radius:28px}
.home-page .launch-copy h2,.home-page .launch-copy .eyebrow{color:#fff}
.home-page .launch-copy p:last-of-type{color:#c9d2e3}
.home-page .launch-copy .button-primary{background:#fff;color:#16181d}
.home-page .launch-copy .button-primary:hover{background:#f3f6ff}
.home-page .steps{padding:28px 24px}
.home-page .steps-panel{width:min(1100px,100%);margin:0 auto;padding:36px;border-radius:28px;background:#fff8df;border:0}
.home-page .step-grid{gap:14px}
.home-page .step-grid li{padding:22px;border:0;border-radius:18px;background:#fff}
.home-page .step-grid li>span{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;margin:0 0 18px;border-radius:12px;background:#2467ef;color:#fff;font-weight:800}
.home-page .step-grid li:nth-child(2)>span{background:#ef8a1a}
.home-page .step-grid li:nth-child(3)>span{background:#11a36a}
.home-page .reasons{padding:20px 24px 8px}
.home-page .reason-grid article{border:0;border-radius:22px;background:#f4f7fb}
.home-page .reason-grid article:nth-child(1){background:#e7f0ff}
.home-page .reason-grid article:nth-child(2){background:#efe7ff}
.home-page .reason-grid article:nth-child(3){background:#ffe4f1}
.home-page .answers{background:#fff}
.home-page .close{padding:28px 24px 64px}
.home-page .close-panel{min-height:0;background:linear-gradient(135deg,#2467ef,#7a45e0 55%,#ff4f9a);color:#fff}
.home-page .close-panel h2,.home-page .close-panel p{color:#fff}
.home-page .close-panel .button-primary{background:#fff;color:#1d4ed8}
.home-page .close-panel .button-outline{border-color:#fff;color:#fff}
.rise.in{animation:rise .7s ease both}
@keyframes marker{from{transform:scaleX(.2)}to{transform:scaleX(1)}}
@keyframes word-out{to{opacity:0;transform:translateY(-.25em)}}
@keyframes word-in{from{opacity:0;transform:translateY(.25em)}to{opacity:1;transform:none}}
@keyframes hero-float{50%{transform:translateY(-8px)}}
@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@media(max-width:900px){
  .suite{grid-template-columns:1fr 1fr}
  .proof-row{grid-template-columns:1fr;padding:20px}
  .hero-art-app{left:10%;width:80%;top:10%}
}
@media(max-width:700px){
  .stage{padding:40px 16px 16px}
  .stage h1{font-size:52px}
  .stage-copy>p:not(.eyebrow){font-size:16px}
  .stage-actions{flex-direction:column;align-items:stretch}
  .hero-art{margin-top:28px;aspect-ratio:4/3}
  .hero-art-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
  .hero-art-app{position:absolute;left:6%;top:8%;width:88%;margin:0;animation:none}
  .suite{grid-template-columns:1fr;width:calc(100% - 32px)}
  .suite-card{min-height:0}
  .proof{padding:48px 16px 8px}
  .proof-hero{padding:12px 12px 0}
  .home-page .steps{padding:16px}
  .home-page .steps-panel{padding:22px}
}
@media(prefers-reduced-motion:reduce){
  .cycle::after,.hero-art-app,.rise.in{animation:none}
  .suite-card:hover{transform:none}
}
