:root { --ink:#1d211d; --muted:#6d716a; --sage:#3e5947; --sage-light:#e8eee8; --cream:#f7f4ec; --line:#dedfd8; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:#fbfaf7; font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
a { color:inherit; }
.site-header { width:min(1180px,calc(100% - 40px)); height:82px; margin:auto; display:flex; align-items:center; justify-content:space-between; }
.brand { display:flex; align-items:center; gap:10px; color:var(--ink); font:700 24px Georgia,serif; text-decoration:none; }
.brand span,.mini-brand b { width:33px; height:33px; display:grid; place-items:center; border-radius:50%; color:#fff; background:var(--sage); font-size:16px; }
nav { display:flex; align-items:center; gap:30px; }
nav a { color:#555a53; text-decoration:none; font-size:13px; }
.nav-cta { padding:10px 15px; border:1px solid var(--line); border-radius:999px; background:#fff; }
.hero { padding:105px 20px 0; overflow:hidden; text-align:center; background:radial-gradient(circle at 50% 35%,#eef2ea 0,transparent 43%); }
.eyebrow { margin:0 0 16px; color:var(--sage); font-size:11px; font-weight:750; letter-spacing:.16em; text-transform:uppercase; }
.hero h1 { max-width:900px; margin:0 auto; font:500 clamp(52px,8vw,96px)/.96 Georgia,serif; letter-spacing:-.045em; }
.hero h1 em { color:var(--sage); font-weight:400; }
.hero-copy { max-width:650px; margin:28px auto 0; color:var(--muted); font-size:17px; line-height:1.7; }
.hero-actions { margin-top:30px; display:flex; justify-content:center; align-items:center; gap:25px; }
.primary-button { padding:14px 20px; display:inline-block; border-radius:999px; color:#fff; background:var(--sage); text-decoration:none; font-size:13px; font-weight:700; }
.text-link { color:var(--muted); text-decoration:none; font-size:13px; }
.text-link span { margin-left:5px; color:var(--sage); }
.browser-preview { width:min(1040px,95vw); margin:80px auto -170px; overflow:hidden; border:1px solid #d4d8d1; border-radius:20px; background:#fff; box-shadow:0 35px 90px rgba(43,54,45,.15); text-align:left; }
.browser-bar { height:47px; padding:0 16px; display:flex; align-items:center; gap:7px; border-bottom:1px solid #e7e6e1; background:#f6f5f2; }
.browser-bar i { width:8px; height:8px; border-radius:50%; background:#c8cac5; }
.browser-bar span { margin-left:15px; color:#9a9d96; font-size:10px; }
.preview-page { min-height:570px; display:grid; grid-template-columns:1fr 365px; background:#f1f0eb; }
.product-ghost { padding:55px 9%; }
.product-ghost div { height:380px; border-radius:16px; background:linear-gradient(135deg,#e0ded6,#c9cdc4); }
.product-ghost p { width:45%; height:10px; margin:17px 0 0; border-radius:10px; background:#dad9d3; }.product-ghost p:last-child{width:28%}
.assistant-preview { padding:27px; background:#fbfaf7; box-shadow:-12px 0 30px rgba(25,30,25,.08); }
.mini-brand { display:flex; align-items:center; gap:8px; font:700 19px Georgia,serif; }.mini-brand b{width:27px;height:27px;font-size:12px}
.assistant-preview>small { display:block; margin:28px 0 10px; color:#708075; font-size:8px; letter-spacing:.14em; }
.current-product { display:grid; grid-template-columns:78px 1fr; gap:12px; }.current-image{height:100px;border-radius:8px;background:#d2d0c7}.current-product>div:last-child{display:grid;align-content:center;gap:5px}.current-product i,.recommendation i{color:#777b74;font-size:7px;font-style:normal;letter-spacing:.1em}.current-product strong{font:500 15px/1.25 Georgia,serif}.current-product span{font-size:10px}
.assistant-preview h2 { margin:30px 0 12px; font:500 19px Georgia,serif; }
.recommendation { margin-top:8px; padding:9px; display:grid; grid-template-columns:50px 1fr; gap:10px; border:1px solid #e4e3dc; border-radius:10px; background:#fff; }.recommendation>div{border-radius:6px;background:#d9d8d2}.recommendation p{margin:0;display:grid;gap:4px}.recommendation strong{font-size:9px}.recommendation span{color:#477254;font-size:8px}
.section { width:min(1120px,calc(100% - 40px)); margin:auto; }
.steps { padding:310px 0 125px; }.steps>h2,.privacy-section h2{margin:0;font:500 clamp(38px,5vw,64px)/1.05 Georgia,serif;letter-spacing:-.03em}
.step-grid { margin-top:65px; display:grid; grid-template-columns:repeat(3,1fr); gap:45px; }.step-grid article{padding-top:18px;border-top:1px solid var(--line)}.step-grid span{color:#78917e;font-size:10px}.step-grid h3{margin:25px 0 10px;font:500 24px Georgia,serif}.step-grid p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}
.promise { padding:100px 0; border-top:1px solid var(--line); }.promise blockquote{max-width:900px;margin:0;font:400 clamp(35px,5vw,62px)/1.15 Georgia,serif;color:var(--sage)}.promise-points{margin-top:70px;display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.promise-points div{display:grid;gap:8px}.promise-points span{color:var(--muted);font-size:12px;line-height:1.6}
.privacy-section { padding:115px 0; display:grid; grid-template-columns:1fr 1fr; gap:100px; border-top:1px solid var(--line); }.privacy-section>div:last-child{padding-top:25px}.privacy-section p{color:var(--muted);font-size:15px;line-height:1.8}.privacy-section a{color:var(--sage);font-size:13px;font-weight:700;text-decoration:none}
.beta-section { padding:110px 20px; color:#fff; background:var(--sage); text-align:center; }.beta-section .eyebrow{color:#c8d7ca}.beta-section h2{margin:0;font:500 clamp(40px,6vw,72px) Georgia,serif}.beta-section>p:not(.eyebrow){margin:18px 0 30px;color:#d7dfd8}.primary-button.light{color:var(--sage);background:#fff}
footer { width:min(1180px,calc(100% - 40px)); min-height:115px; margin:auto; display:flex; align-items:center; justify-content:space-between; color:var(--muted); font-size:11px; }footer .brand{font-size:19px}footer .brand span{width:27px;height:27px;font-size:12px}footer>div{display:flex;gap:20px}footer>div a{text-decoration:none}
.auth-shell { width:min(560px,calc(100% - 40px)); min-height:calc(100vh - 160px); margin:auto; padding:70px 0 80px; }
.auth-shell h1 { margin:0; font:500 clamp(36px,6vw,56px)/1.05 Georgia,serif; }
.auth-copy { color:var(--muted); font-size:15px; line-height:1.7; }
.auth-form { margin-top:28px; display:grid; gap:16px; }
.auth-form label { display:grid; gap:8px; font-size:12px; font-weight:700; }
.auth-form input { padding:12px 14px; border:1px solid var(--line); border-radius:12px; font:16px inherit; }
.auth-status { min-height:1.4em; color:var(--sage); font-size:13px; }
.auth-status.error { color:#8a3d32; }
.auth-card { margin-top:36px; padding:24px; border:1px solid var(--line); border-radius:18px; background:#fff; }
.auth-card h2 { margin:0 0 10px; font:500 22px Georgia,serif; }
.pairing-code { margin:18px 0 0; letter-spacing:.18em; font:700 28px ui-monospace,monospace; color:var(--sage); }
.legal { width:min(760px,calc(100% - 40px)); min-height:calc(100vh - 197px); margin:auto; padding:85px 0; }.legal h1{margin:0;font:500 clamp(44px,7vw,72px) Georgia,serif}.legal .updated{color:var(--muted);font-size:12px}.legal h2{margin:42px 0 10px;font:500 24px Georgia,serif}.legal p,.legal li{color:#5f645d;font-size:14px;line-height:1.8}
@media(max-width:760px){nav>a:not(.nav-cta){display:none}.hero{padding-top:70px}.hero-actions{flex-direction:column}.browser-preview{margin-top:55px}.preview-page{grid-template-columns:1fr}.product-ghost{display:none}.assistant-preview{min-height:520px}.steps{padding-top:250px}.step-grid,.promise-points,.privacy-section{grid-template-columns:1fr}.privacy-section{gap:25px}.step-grid{gap:32px}footer{padding:28px 0;gap:20px;flex-wrap:wrap}}
