:root{color-scheme:only light;--bg:#f7f3ea;--card:#fcfaf4;--ink:#2d1b12;--mut:#72665e;--line:#e6dfd2;--soft:#efe9db;--g:#1a9a4a;--gd:#127a39;--yel:#ffc93c;--red:#d9412b;--dark:#241711;
--sans:"Bricolage Grotesque",system-ui,sans-serif;--serif:"Fraunces",Georgia,serif;--mono:"DM Mono",ui-monospace,monospace}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{font-family:var(--sans);color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.loading{overflow:hidden}
a{color:inherit}
svg{flex:none}
.mono{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.narrow{max-width:780px}
.center{text-align:center}
em{font-family:var(--serif);font-style:normal;font-weight:500;color:var(--g);letter-spacing:-.02em}

/* splash */
.splash{position:fixed;inset:0;z-index:100;background:var(--dark);color:#fff;display:grid;place-items:center;text-align:center;transition:opacity .6s,visibility .6s}
.splash.done{opacity:0;visibility:hidden}
.splash-logo{width:128px;height:128px;border-radius:50%;background:#fff;display:grid;place-items:center;margin:0 auto 26px;box-shadow:0 0 0 14px rgba(255,255,255,.06),0 0 0 40px rgba(255,255,255,.04);animation:pop .9s ease both}
.splash-logo img{border-radius:18px}
@keyframes pop{from{transform:scale(.6);opacity:0}}
.splash-t{font-family:var(--serif);font-size:26px;font-weight:600}
.splash-s{font-size:12px;color:#b9aea5;margin-top:8px}
.splash-s b{color:var(--yel);font-weight:500}
.splash-p{position:absolute;bottom:34px;left:0;right:0;font-size:13px;color:#9bd07a}

/* nav */
.nav-wrap{position:sticky;top:0;z-index:30;padding:12px 16px}
.nav{max-width:1160px;margin:0 auto;display:flex;align-items:center;gap:14px;background:rgba(252,250,244,.92);backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:22px;padding:8px 12px 8px 14px;box-shadow:0 6px 24px rgba(45,27,18,.06)}
.brand{display:flex;align-items:center;gap:9px;text-decoration:none;font-weight:700;font-size:22px;letter-spacing:-.03em}
.brand img{border-radius:9px}
.brand b{color:var(--red);font-weight:700}
.links{display:flex;gap:6px;margin-left:auto}
.links a{text-decoration:none;font-size:15px;color:var(--mut);padding:8px 14px;border-radius:99px}
.links a:hover{background:var(--soft);color:var(--ink)}
.burger{display:none;margin-left:auto;background:none;border:0;width:40px;height:40px;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:6px}
.burger span{width:22px;height:2px;background:var(--ink)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--g);color:#fff;text-decoration:none;font-weight:500;font-size:16px;padding:14px 26px;border-radius:99px;border:1.5px solid var(--g);transition:transform .15s,background .15s}
.btn svg{width:18px;height:18px}
.btn:hover{background:var(--gd);transform:translateY(-1px)}
.btn-line{background:transparent;color:var(--ink);border-color:#cfc6b4}
.btn-line:hover{background:var(--soft)}
.btn-block{display:flex;width:100%}
.btn-light{background:#fff;color:var(--ink);border-color:#fff}
.btn-light:hover{background:var(--soft)}
.btn-ghost-d{background:transparent;border-color:rgba(255,255,255,.5)}
.btn-ghost-d:hover{background:rgba(255,255,255,.1)}
.cta-row{display:flex;gap:12px;flex-wrap:wrap}
.cta-row.center{justify-content:center}

/* type */
.eyebrow{font-size:12px;color:var(--gd);margin-bottom:16px;font-weight:500}
.eyebrow.on-dark{color:var(--yel)}
h1{font-size:clamp(40px,7vw,84px);line-height:.98;font-weight:700;letter-spacing:-.045em}
h2{font-size:clamp(32px,5vw,58px);line-height:1.02;font-weight:700;letter-spacing:-.04em}
h3{font-size:21px;font-weight:600;letter-spacing:-.02em;line-height:1.2;margin-bottom:8px}
.lead{font-size:19px;color:var(--mut);margin:24px 0 30px;max-width:540px}
.sub{color:var(--mut);font-size:18px;margin:18px 0 44px;max-width:640px}
.center .sub{margin-inline:auto}
.sub.left{margin:18px 0 24px}
.sub.on-dark{color:#c9bdb3}
.tag{font-size:12px;color:var(--mut);margin-top:26px}

/* hero */
.hero{padding:34px 0 56px;background:radial-gradient(900px 500px at 85% 0,#dff3e3 0,transparent 60%),radial-gradient(700px 400px at 0 20%,#fff1c9 0,transparent 60%)}
.hero-in{display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center}
.phone-wrap{position:relative;justify-self:center}
.phone{width:290px;background:var(--dark);border-radius:38px;padding:10px;box-shadow:0 30px 70px rgba(45,27,18,.25);transform:rotate(2.5deg)}
.screen{background:var(--card);border-radius:29px;padding:18px 14px;font-size:13px}
.s-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;gap:8px}
.s-head small{display:block;font-size:10px;color:var(--gd)}
.s-head b{font-size:15px;line-height:1.2;display:block}
.s-date{font-size:10px;color:var(--mut)}
.s-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.s-cards div{background:#fff;border:1px solid var(--line);border-radius:12px;padding:9px 10px}
.s-cards small{display:block;color:var(--mut);font-size:11px}
.s-cards b{font-size:15px;letter-spacing:-.02em}
.s-row{display:flex;justify-content:space-between;padding:9px 2px;border-bottom:1px solid var(--line)}
.g{color:var(--gd)}.r{color:var(--red)}
.s-mic{margin-top:12px;background:#e3f4e8;border-radius:14px;padding:10px 12px;font-size:12px;display:flex;gap:8px;align-items:center;color:var(--gd)}
.s-mic svg{width:16px;height:16px}
.s-mic span{color:var(--ink)}
.float{position:absolute;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:99px;padding:8px 14px;font-size:13px;box-shadow:0 10px 30px rgba(45,27,18,.12);animation:bob 4s ease-in-out infinite}
.float svg{width:16px;height:16px;color:var(--g)}
.f1{left:-46px;top:56px}.f1 svg{color:var(--red)}
.f2{right:-24px;bottom:50px;animation-delay:-2s}
@keyframes bob{50%{transform:translateY(-8px)}}

/* marquee */
.marquee{overflow:hidden;background:var(--dark);color:#d9cfc5;padding:14px 0}
.track{display:flex;gap:40px;width:max-content;animation:slide 30s linear infinite}
.track span{font-size:12px;white-space:nowrap}
.track span::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--yel);margin-right:40px;vertical-align:middle}
@keyframes slide{to{transform:translateX(-50%)}}

/* sections */
.sec{padding:96px 0}
.sec.soft{background:var(--soft)}
.sec.dark{background:var(--dark);color:#fff}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:44px}
.card{background:var(--card);border:1px solid var(--line);border-radius:26px;padding:28px;transition:transform .2s,box-shadow .2s}
.card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(45,27,18,.08)}
.card p:last-child{color:var(--mut);font-size:16px}
.ic{width:48px;height:48px;border-radius:14px;background:#e3f4e8;color:var(--gd);display:grid;place-items:center;margin-bottom:18px}
.ic svg{width:24px;height:24px}
.kicker{font-size:11px;color:var(--gd);margin-bottom:8px}

.story h2{text-align:left}
.story .sub{margin-bottom:34px}
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.trio div{display:flex;flex-direction:column;gap:4px;border-top:2px solid var(--ink);padding-top:16px}
.trio svg{width:26px;height:26px;color:var(--g);margin-bottom:6px}
.trio span{color:var(--mut);font-size:15px}

.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.step{padding:6px 0}
.num{display:block;font-size:56px;font-weight:500;color:var(--yel);letter-spacing:-.04em;line-height:1;margin-bottom:14px;-webkit-text-stroke:1px var(--ink)}
.step p{color:var(--mut)}

.mods{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:8px}
.mod{display:flex;flex-direction:column;gap:6px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:22px;padding:24px;transition:background .2s}
.mod:hover{background:rgba(255,255,255,.1)}
.mod svg{width:26px;height:26px;color:var(--yel);margin-bottom:8px}
.mod b{font-size:19px;font-weight:600;letter-spacing:-.02em}
.mod span{color:#c9bdb3;font-size:15px}

.two{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.ticks{list-style:none;padding:0;display:grid;gap:10px}
.ticks li{display:flex;gap:10px;align-items:center;font-size:16px}
.ticks svg{width:20px;height:20px;color:#fff;background:var(--g);border-radius:50%;padding:3px}
.ticks.left{text-align:left;margin:22px 0 26px}
.chat{background:var(--card);border:1px solid var(--line);border-radius:30px;padding:24px;display:flex;flex-direction:column;gap:12px;box-shadow:0 24px 60px rgba(45,27,18,.08)}
.chat-h{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--gd)}
.chat-h svg{width:16px;height:16px}
.bub{max-width:84%;padding:12px 16px;border-radius:20px;font-size:16px}
.bub.you{align-self:flex-end;background:var(--dark);color:#fff;border-bottom-right-radius:6px}
.bub.bot{align-self:flex-start;background:#fff;border:1px solid var(--line);border-bottom-left-radius:6px}
.bub.ok{display:flex;gap:8px;align-items:center;color:var(--gd);background:#e3f4e8;border-color:#c9e9d3}
.bub.ok svg{width:18px;height:18px}

/* pricing */
.toggle{display:inline-flex;background:#fff;border:1px solid var(--line);border-radius:99px;padding:5px;margin-bottom:26px}
.toggle button{font:500 15px var(--sans);border:0;background:none;padding:10px 24px;border-radius:99px;cursor:pointer;color:var(--mut)}
.toggle button.on{background:var(--ink);color:#fff}
.price-box{max-width:460px;margin:0 auto;background:var(--card);border:1.5px solid var(--ink);border-radius:30px;padding:34px 30px;box-shadow:8px 8px 0 var(--ink)}
.price{display:flex;align-items:baseline;justify-content:center;gap:8px}
.cur{font-size:22px;font-weight:600}
.amt{font-size:84px;font-weight:700;line-height:1;letter-spacing:-.05em}
.per{color:var(--mut);font-size:19px}
.price-note{color:var(--mut);font-size:15px;margin:6px 0 4px}
.fine{font-size:14px;color:var(--mut);margin-top:16px}
.compare{display:flex;justify-content:center;gap:12px 26px;flex-wrap:wrap;font-size:12px;color:var(--mut);margin-top:34px}

.faq{margin-top:34px}
details{border-bottom:1px solid var(--line);padding:20px 0}
summary{cursor:pointer;font-weight:600;font-size:19px;letter-spacing:-.02em;list-style:none;display:flex;justify-content:space-between;gap:12px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--g);font-size:26px;line-height:1;transition:transform .2s}
details[open] summary::after{transform:rotate(45deg)}
details p{color:var(--mut);margin-top:10px}

.final{background:var(--dark);color:#fff;text-align:center;padding:96px 0}
.final em{color:var(--yel)}
.final p{color:#c9bdb3;font-size:18px;margin:16px 0 30px}
.foot{padding:40px 0;text-align:center;background:var(--dark);border-top:1px solid rgba(255,255,255,.08);color:#d9cfc5}
.foot .brand{color:#fff}
.foot-in{display:flex;flex-direction:column;align-items:center;gap:10px}
.small{font-size:11px;color:#8d8077}

/* download */
.dl{padding:72px 0}
.dl-box{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;background:var(--dark);color:#fff;border-radius:36px;padding:56px 48px;background-image:radial-gradient(600px 300px at 100% 0,rgba(26,154,74,.35),transparent 60%)}
.dl-box h2{font-size:clamp(30px,4.4vw,50px)}
.dl-box em{color:var(--yel)}
.dl-box .sub{margin:18px 0 28px}
.btn-yel{background:var(--yel);border-color:var(--yel);color:var(--ink)}
.btn-yel:hover{background:#ffd966}
.dl-note{font-size:11px;color:#9d9087;margin-top:18px}
.dl-steps{display:grid;gap:14px}
.dl-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:22px 24px}
.dl-card.hi{border-color:var(--yel);background:rgba(255,201,60,.08)}
.dl-card .kicker{color:var(--yel)}
.dl-card ol{padding-left:20px;display:grid;gap:6px;font-size:15px;color:#e2d8cf}
.dl-card b{color:#fff;font-weight:600}
@media(max-width:860px){.dl-box{grid-template-columns:1fr;padding:36px 22px;border-radius:28px}.dl{padding:48px 0}}

/* reveal */
.reveal>*{opacity:0;transform:translateY(22px);transition:opacity .6s,transform .6s}
.reveal.in>*{opacity:1;transform:none}
.reveal.in>*:nth-child(2){transition-delay:.08s}.reveal.in>*:nth-child(3){transition-delay:.16s}
.reveal.in>*:nth-child(4){transition-delay:.1s}.reveal.in>*:nth-child(5){transition-delay:.18s}.reveal.in>*:nth-child(6){transition-delay:.26s}

@media(max-width:860px){
  .hero-in,.two{grid-template-columns:1fr}
  .grid3,.steps,.trio{grid-template-columns:1fr}
  .mods{grid-template-columns:1fr 1fr}
  .burger{display:flex}
  .links{display:none;position:absolute;top:72px;left:16px;right:16px;margin:0;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:10px;box-shadow:0 20px 40px rgba(45,27,18,.12)}
  .links.open{display:flex}
  .links a{padding:13px 16px;font-size:17px}
  .sec{padding:64px 0}
  .burger{margin-left:auto}
  .phone{transform:none}
  .f1{left:-6px}.f2{right:-6px;bottom:-16px}
  .phone-wrap{margin-top:10px}
}
@media(max-width:520px){.mods{grid-template-columns:1fr}.amt{font-size:68px}.btn{width:100%}.toggle button{padding:10px 16px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal>*{opacity:1;transform:none}}
.foot-tel{color:#fff;text-decoration:none;font-weight:500;border-bottom:1px solid rgba(255,255,255,.3)}
.foot-tel:hover{border-color:var(--yel)}
