*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}
body{font:16px/1.55 var(--body);background:var(--bg);color:var(--ink);-webkit-text-size-adjust:100%}
a{color:inherit;text-decoration:none}ul,ol{list-style:none;padding:0}
.top{position:fixed;inset:0 0 auto;z-index:5;display:flex;align-items:center;gap:20px;padding:12px 20px;backdrop-filter:blur(10px);background:var(--bar)}
.top nav{display:flex;gap:18px;margin-left:auto;font-size:14px}.logo{font-weight:800;letter-spacing:.02em}.logo b{font-weight:400;margin-left:6px;opacity:.7}
.btn{display:inline-block;padding:13px 22px;border-radius:var(--r);background:var(--acc);color:var(--onacc);font-weight:700;min-height:44px}
.btn.sm{padding:9px 16px;min-height:0;font-size:14px}.btn.ghost{background:transparent;color:inherit;border:1.5px solid currentColor}
.hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;isolation:isolate}
.poster,.stage{position:absolute;inset:0;z-index:-1}.stage{opacity:0;transition:opacity .9s}.stage.on{opacity:1}.stage canvas{width:100%;height:100%;display:block}
.hero-in{position:relative;max-width:min(680px,92vw);padding:120px 24px 64px 6vw}
.eyebrow{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--acc);font-weight:700;margin-bottom:14px}
h1{font:var(--h1w) clamp(2.3rem,7vw,4.6rem)/1.04 var(--head);letter-spacing:-.02em;margin-bottom:18px}
.lead{font-size:clamp(1.05rem,2.2vw,1.25rem);opacity:.85;max-width:52ch;margin-bottom:26px}.btns{display:flex;gap:12px;flex-wrap:wrap}
.sec{padding:clamp(56px,9vw,110px) 6vw}h2{font:var(--h2w) clamp(1.5rem,3.6vw,2.4rem)/1.15 var(--head);max-width:26ch;margin-bottom:36px}
.svc{display:grid;gap:16px}.svc h3,.real h3,.steps h3{font:700 1.15rem/1.25 var(--head);margin:6px 0}.svc p,.real p,.steps p{opacity:.8;font-size:.97rem}
.num{font-weight:800;color:var(--acc)}.reals{display:grid;gap:16px}.real{display:block;padding:24px;border-radius:var(--r);border:1px solid var(--line)}
.real small{color:var(--acc);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:12px}.real span{display:inline-block;margin-top:12px;font-weight:700;color:var(--acc)}
.steps{display:grid;gap:16px}.steps li{padding:22px;border-radius:var(--r);border:1px solid var(--line)}.steps b{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--acc);color:var(--onacc)}
.band{background:var(--band);color:var(--onband)}.band p{max-width:62ch}.band .eyebrow{color:inherit;opacity:.8}.final{text-align:center}.final h2{margin-inline:auto}.final p{margin-bottom:22px}
footer{display:flex;gap:20px;flex-wrap:wrap;padding:26px 6vw;font-size:14px;border-top:1px solid var(--line);opacity:.85}
@media(min-width:760px){.svc{grid-template-columns:repeat(2,1fr)}.reals{grid-template-columns:1fr 1fr}.steps{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.top nav{display:none}.top{justify-content:space-between}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.stage{transition:none}}
:root{--bg:#f6e7c8;--ink:#1f3a2b;--bar:rgba(246,231,200,.75);--acc:#b45309;--onacc:#fff;--r:18px;--line:rgba(31,58,43,.22);--band:#1f3a2b;--onband:#f6e7c8;--body:"Avenir Next",ui-rounded,system-ui,sans-serif;--head:ui-serif,Georgia,serif;--h1w:700;--h2w:600}
.hero{justify-content:center;text-align:center}.hero-in{background:radial-gradient(closest-side,rgba(246,231,200,.92) 55%,transparent)}.hero-in{padding:110px 24px 96px;margin-inline:auto}.hero .lead{margin-inline:auto}.btns{justify-content:center}
.poster{background:radial-gradient(ellipse at 50% 135%,#2d5a3a 0 34%,transparent 35%),radial-gradient(ellipse at 14% 138%,#4f8a52 0 28%,transparent 29%),radial-gradient(ellipse at 90% 136%,#c9a24a 0 30%,transparent 31%),radial-gradient(circle at 78% 22%,#fcd34d 0 5%,transparent 5.5%),linear-gradient(#fbd8a0,#f6e7c8 60%)}
.sec h2{margin-inline:auto;text-align:center}.svc li{padding:28px;border-radius:var(--r);background:#fffaf0;box-shadow:0 10px 30px rgba(31,58,43,.12);transform:rotate(-.6deg)}.svc li:nth-child(even){transform:rotate(.6deg)}
.band{clip-path:ellipse(75% 100% at 50% 100%);padding-top:clamp(80px,12vw,150px)}.real,.steps li{background:#fffaf0}
