@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;1,500&display=swap');

:root { --ink:#20201d; --muted:#74736d; --line:#d8d6ce; --paper:#f4f2ec; --accent:#c5d36b; --dark:#272a23; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:'DM Sans',sans-serif; }
main { max-width:1200px; margin:0 auto; padding:0 5vw; }
.nav { align-items:center; display:flex; justify-content:space-between; padding:30px 0; }
.wordmark { color:var(--ink); font-size:20px; font-weight:700; letter-spacing:-.06em; text-decoration:none; }
.wordmark span { align-items:center; background:var(--accent); border-radius:50%; display:inline-flex; height:25px; justify-content:center; margin-right:4px; width:25px; }
.nav-link { color:var(--ink); font-family:'DM Mono',monospace; font-size:11px; text-decoration:none; text-transform:uppercase; }
.hero { max-width:830px; padding:13vh 0 15vh; }
.eyebrow,.number { color:var(--muted); font-family:'DM Mono',monospace; font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
h1 { font-size:clamp(56px,9vw,125px); letter-spacing:-.075em; line-height:.9; margin:25px 0 35px; }
h1 em { font-family:'Playfair Display',serif; font-weight:500; letter-spacing:-.08em; }
.lede { color:#57564f; font-size:clamp(18px,2vw,24px); line-height:1.45; max-width:570px; }
.quiet-note { color:var(--muted); font-family:'DM Mono',monospace; font-size:10px; margin-top:17px; text-transform:uppercase; }
.button { border:0; cursor:pointer; display:inline-flex; font-family:'DM Mono',monospace; font-size:11px; gap:30px; justify-content:space-between; letter-spacing:.05em; padding:17px 19px; text-decoration:none; text-transform:uppercase; }
.button-primary { background:var(--dark); color:white; margin-top:23px; }
.button-dark { background:var(--ink); color:white; }
.signal-row { border-top:1px solid var(--line); display:grid; gap:35px; grid-template-columns:repeat(3,1fr); padding:42px 0 110px; }
.signal-row article { border-left:1px solid var(--line); padding-left:20px; }
.signal-row h2 { font-size:19px; letter-spacing:-.04em; margin:45px 0 10px; }
.signal-row p,.waitlist p { color:var(--muted); line-height:1.55; margin:0; max-width:270px; }
.quote { border-bottom:1px solid var(--line); border-top:1px solid var(--line); padding:90px 0; }
.quote p { font-family:'Playfair Display',serif; font-size:clamp(32px,5vw,66px); letter-spacing:-.06em; line-height:1; margin:0; max-width:850px; }
.waitlist { align-items:center; display:grid; gap:50px; grid-template-columns:1fr 1fr; padding:115px 0 130px; }
.waitlist h2 { font-size:clamp(38px,5vw,65px); letter-spacing:-.07em; line-height:.95; margin:20px 0; }
form { display:flex; flex-direction:column; gap:10px; max-width:420px; }
input { background:transparent; border:1px solid #aaa89f; border-radius:0; color:var(--ink); font:16px 'DM Sans',sans-serif; padding:17px; }
input:focus { border-color:var(--ink); outline:2px solid var(--accent); outline-offset:2px; }
.form-message { min-height:24px; }
.honey { display:none; }
.sr-only { height:1px; margin:-1px; overflow:hidden; position:absolute; width:1px; clip:rect(0,0,0,0); }
footer { border-top:1px solid var(--line); color:var(--muted); display:flex; font-family:'DM Mono',monospace; font-size:10px; justify-content:space-between; margin:0 auto; max-width:1100px; padding:25px 5vw 35px; text-transform:uppercase; }
@media (max-width:700px) { main { padding:0 22px; } .nav-link { font-size:9px; } .hero { padding:11vh 0 14vh; } .signal-row,.waitlist { grid-template-columns:1fr; } .signal-row { gap:38px; padding-bottom:80px; } .waitlist { gap:35px; padding:80px 0 90px; } footer { padding-left:22px; padding-right:22px; } }
