:root{--paper:#fff;--ink:#111;--muted:#777;--line:#e6e6e6;--soft:#f4f4f4;--lav:#726087;--lav-deep:#59416f;--peach:#806149;--mint:#507c6d;--sky:#557793;--sans:-apple-system,BlinkMacSystemFont,"Helvetica Neue","Segoe UI",Roboto,sans-serif;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans)}
a{color:inherit}img,svg{max-width:100%}
.wrap{max-width:1040px;margin:0 auto;padding:0 24px}
header.top{display:flex;align-items:center;justify-content:space-between;height:76px}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none;font-weight:600;font-size:18px;letter-spacing:-.6px;white-space:nowrap}
nav.main{display:flex;gap:6px;flex-wrap:wrap}
.wash{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:12px;text-decoration:none;font-weight:500;font-size:14px;color:var(--lav);border:0;background:transparent;cursor:pointer}
.wash::before{content:"";position:absolute;inset:-8px -12px;border-radius:50%;filter:blur(8px);z-index:-1;opacity:.35;transition:opacity .2s,transform .25s;background:radial-gradient(ellipse at 48% 48%,#cfbaffad 0%,#ded0ff96 22%,#e9dfff66 40%,#f4edff33 56%,#f4edff00 73%)}
.wash:hover::before{opacity:.95;transform:scale(1.05)}
.wash.primary{color:var(--lav-deep);font-weight:600}.wash.primary::before{opacity:1}
.wash.peach{color:var(--peach)}.wash.peach::before{background:radial-gradient(ellipse at 48% 48%,#ffd7adad 0%,#ffe0c496 22%,#ffe5d766 40%,#fff0e933 56%,#fff0e900 73%)}
.wash.mint{color:var(--mint)}.wash.mint::before{background:radial-gradient(ellipse at 48% 48%,#a9e2cdad 0%,#c6eddd96 22%,#dcf3e866 40%,#eef9f233 56%,#eef9f200 73%)}
.wash.sky{color:var(--sky)}.wash.sky::before{background:radial-gradient(ellipse at 48% 48%,#acd4ffad 0%,#c9e3ff96 22%,#deedff66 40%,#edf6ff33 56%,#edf6ff00 73%)}
.eyebrow{font:11px var(--mono);letter-spacing:1.6px;text-transform:uppercase;color:#a6a2a0}
h1{font-size:clamp(40px,7vw,68px);font-weight:500;letter-spacing:-2.5px;line-height:1.02;margin:14px 0 18px}
h2{font-size:clamp(28px,4vw,38px);font-weight:500;letter-spacing:-1.3px;line-height:1.1;margin:0 0 12px}
h3{font-size:17px;font-weight:600;margin:0 0 6px}
p.sub{color:var(--muted);font-size:18px;max-width:520px;margin:0 0 28px}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;padding:56px 0 72px}
.phone{margin:0 auto;width:300px;max-width:100%;border:7px solid #111;border-radius:44px;background:#fff;box-shadow:0 30px 65px -22px #3c3c3c40,0 5px 15px #3c3c3c20;overflow:hidden;aspect-ratio:390/830;position:relative}
.phone .notch{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:90px;height:24px;background:#111;border-radius:20px}
.phone .screen{padding:64px 22px 24px;display:flex;flex-direction:column;height:100%}
.phone .kicker{font:8px var(--mono);letter-spacing:1.5px;color:#a6a2a0}
.phone .title{font-size:30px;font-weight:500;letter-spacing:-1.5px;margin:18px 0 6px}
.phone .muted{font-size:11px;color:#aaa3a0;line-height:1.5}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px 10px;margin-top:26px}
.tile{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:9px;color:#55514e;text-align:center}
.icon{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center}
.icon svg{width:26px;height:26px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.cta{margin-top:auto;display:flex;align-items:center;gap:10px;padding:14px;border-radius:16px;color:#fff;background:radial-gradient(ellipse at 110% 100%,#ffce8966 0,#ff8b5355 25%,transparent 66%),radial-gradient(ellipse at -10% -55%,#bc94fe 0,#7661ab 38%,transparent 66%),linear-gradient(125deg,#3c3655,#28232e 65%,#633925)}
.cta .orb{width:30px;height:30px;border-radius:50%;background:radial-gradient(circle at 32% 15%,#ffe7b1,#ffae68 37%,#f47740 74%,#c94d2d);flex-shrink:0}
.cta strong{display:block;font-size:11px;font-weight:500}.cta small{font-size:8px;color:#e2d5e4b0}
section{padding:56px 0;border-top:1px solid var(--line)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:28px}
.step{padding:24px;border:1px solid var(--line);border-radius:20px;background:#fff}
.step .num{font:11px var(--mono);color:#a6a2a0;letter-spacing:1px}
.step h3{margin-top:10px}
.step p{margin:0;color:var(--muted);font-size:15px}
.starters{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin-top:28px}
.starters .tile{font-size:13px}
.starters .icon{width:72px;height:72px;border-radius:20px}.starters .icon svg{width:32px;height:32px}
.note{display:flex;gap:12px;align-items:flex-start;padding:18px;border-radius:14px;background:var(--soft);color:#6f6f6f;font-size:15px}
.note svg{width:20px;height:20px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;margin-top:3px}
.stores{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.badge{display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border:1px solid var(--line);border-radius:12px;font-size:14px;color:var(--muted);background:#fff}.badge svg{width:16px;height:16px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
footer{border-top:1px solid var(--line);padding:32px 0 48px;color:var(--muted);font-size:14px}
footer .row{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center}
footer nav{display:flex;gap:18px;flex-wrap:wrap}footer a{text-decoration:none}footer a:hover{text-decoration:underline}
.legal{max-width:760px;margin:0 auto;padding:24px 24px 80px}
.legal h1{font-size:clamp(34px,5vw,48px);letter-spacing:-1.8px}
.legal h2{font-size:22px;letter-spacing:-.6px;margin-top:40px}
.legal h3{margin-top:24px}
.legal p,.legal li{color:#444;font-size:16px}
.legal .meta{color:var(--muted);font-size:14px;margin-bottom:28px}
.legal table{border-collapse:collapse;width:100%;font-size:15px}.legal td,.legal th{border-bottom:1px solid var(--line);padding:10px 8px;text-align:left;vertical-align:top}
.legal .box{padding:18px;border:1px solid var(--line);border-radius:14px;margin:18px 0}
.legal ol.plain{padding-left:20px}
@media(max-width:820px){.hero{grid-template-columns:1fr;padding:32px 0 48px}.steps{grid-template-columns:1fr}.starters{grid-template-columns:repeat(3,1fr)}header.top{height:64px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
