:root { --ink:#1d1821; --paper:#fffdf9; --rose:#bd4266; --soft:#f7eceb; --line:#eadbd8; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:var(--paper); font:16px/1.55 Georgia, "Times New Roman", serif; }
.nav, .hero, .how, .promise, footer { max-width:1120px; margin:auto; padding-left:28px; padding-right:28px; }
.nav { min-height:88px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.brand { font-size:21px; font-weight:700; letter-spacing:-.04em; color:inherit; text-decoration:none; }
.nav-contact { color:inherit; text-underline-offset:4px; }
.hero { min-height:590px; display:flex; flex-direction:column; justify-content:center; padding-top:72px; padding-bottom:92px; background:radial-gradient(circle at 88% 15%, #f5dfe2 0, transparent 30%); }
.eyebrow { margin:0 0 18px; color:var(--rose); font:700 12px/1.2 Arial, sans-serif; letter-spacing:.16em; }
h1, h2, h3 { margin:0; line-height:1.02; letter-spacing:-.055em; }
h1 { max-width:850px; font-size:clamp(48px,8vw,104px); }
.lead { max-width:650px; margin:30px 0; font-size:clamp(20px,2.5vw,28px); }
.button { display:inline-block; width:max-content; padding:16px 24px; background:var(--ink); color:white; text-decoration:none; font:700 14px Arial,sans-serif; }
.launch-note { margin:18px 0 0; color:#6d6266; font-size:14px; }
.how { padding-top:100px; padding-bottom:100px; border-top:1px solid var(--line); }
h2 { font-size:clamp(40px,5vw,66px); }
.steps { display:grid; grid-template-columns:repeat(3,1fr); gap:32px; margin:68px 0 0; padding:0; list-style:none; }
.steps li { border-top:2px solid var(--ink); padding-top:18px; }
.steps span { color:var(--rose); font:700 13px Arial,sans-serif; }
.steps h3 { margin-top:32px; font-size:30px; }
.steps p { margin:14px 0 0; font-size:18px; }
.promise { padding-top:104px; padding-bottom:114px; color:white; background:var(--ink); max-width:none; text-align:center; }
.promise > * { max-width:850px; margin-left:auto; margin-right:auto; }
.promise .eyebrow { color:#f1a3b8; }
.promise h2 { font-size:clamp(42px,6vw,78px); }
.promise p:last-child { max-width:600px; margin-top:26px; font-size:20px; }
footer { padding-top:42px; padding-bottom:42px; font-size:14px; }
footer p { margin:7px 0; } footer a { color:inherit; } .fine-print { max-width:600px; color:#6d6266; }
@media (max-width:700px) { .nav,.hero,.how,.promise,footer { padding-left:21px; padding-right:21px; } .hero { min-height:540px; } .steps { grid-template-columns:1fr; margin-top:50px; gap:42px; } }
