:root{--ink: #15110D;--paper: #FAF7F2;--paper-warm: #F3EDE2;--muted: #6B6358;--line: #E5DED1;--accent: #8B5A2B;--accent-ink: #4A2F17;--good: #2E7D4F;--bad: #B33A3A}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100%;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.serif{font-family:Fraunces,Georgia,serif;font-weight:400}.italic{font-style:italic}.container{max-width:1080px;margin:0 auto;padding:0 24px}.nav{padding:22px 0 12px;display:flex;align-items:center;justify-content:space-between}.nav .brand{font-family:Fraunces;font-style:italic;font-size:18px;color:var(--accent)}.nav .brand span{color:var(--ink);font-style:normal}.nav .links{font-size:14px;color:var(--muted);display:flex;gap:22px}.nav .links a{color:inherit;text-decoration:none}.nav .links a:hover{color:var(--ink)}.hero{padding:56px 0 32px;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:start}@media(max-width:900px){.hero{grid-template-columns:1fr;gap:32px;padding:28px 0 16px}}.eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}h1.hero-title{font-family:Fraunces;font-weight:400;font-size:clamp(40px,6vw,64px);line-height:1.02;letter-spacing:-.015em;margin:14px 0 18px}h1.hero-title em{font-style:italic;color:var(--accent)}.hero-blurb{font-size:19px;line-height:1.55;color:var(--ink);max-width:520px}.hero-sub{margin-top:14px;font-size:15px;color:var(--muted);max-width:520px}.bullets{margin:22px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;max-width:520px}.bullets li{font-size:15px;color:var(--ink);display:flex;gap:10px}.bullets li:before{content:"→";color:var(--accent);font-family:Fraunces;flex-shrink:0}.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:28px;box-shadow:0 1px #15110d05,0 24px 48px -32px #15110d2e}.card .price-row{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px}.card .price{font-family:Fraunces;font-size:36px;line-height:1;letter-spacing:-.01em}.card .price small{font-size:14px;color:var(--muted);margin-left:6px;font-family:Inter;font-weight:400}.card .one-off{font-size:13px;color:var(--muted)}.card h3{font-family:Fraunces;font-style:italic;font-size:22px;margin:0 0 18px;font-weight:400}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}.field label{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.field input{font:inherit;font-size:15px;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink);outline:none;transition:border-color .15s,background .15s}.field input:focus{border-color:var(--accent);background:#fff}.field .hint{font-size:12px;color:var(--muted)}.row-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:540px){.row-2{grid-template-columns:1fr}}button.primary{display:block;width:100%;background:var(--ink);color:var(--paper);border:none;padding:14px 18px;font:inherit;font-size:15px;font-weight:500;border-radius:6px;cursor:pointer;margin-top:6px;transition:background .12s,transform .12s}button.primary:hover{background:var(--accent-ink)}button.primary:active{transform:translateY(1px)}button.primary:disabled{opacity:.55;cursor:wait}.tiny{font-size:12px;color:var(--muted);margin-top:12px;text-align:center;line-height:1.5}.section{padding:72px 0}.section h2{font-family:Fraunces;font-size:clamp(28px,4vw,42px);font-weight:400;letter-spacing:-.01em;margin:0 0 12px;max-width:720px}.section h2 em{font-style:italic;color:var(--accent)}.section .lede{font-size:18px;color:var(--muted);max-width:680px;margin:0 0 32px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}@media(max-width:740px){.steps{grid-template-columns:1fr}}.step{background:#fff;border:1px solid var(--line);border-radius:8px;padding:22px}.step .num{font-family:Fraunces;font-style:italic;font-size:14px;color:var(--accent)}.step h3{font-family:Fraunces;font-weight:400;font-size:20px;margin:6px 0 8px}.step p{margin:0;font-size:15px;color:var(--muted)}.faq dt{font-family:Fraunces;font-style:italic;font-size:19px;margin:22px 0 6px}.faq dd{margin:0;color:var(--muted);font-size:16px}.footer{border-top:1px solid var(--line);padding:36px 0 48px;margin-top:40px;color:var(--muted);font-size:13px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.footer .brand{font-family:Fraunces;font-style:italic;color:var(--accent)}.success{text-align:center;padding:80px 0;max-width:600px;margin:0 auto}.success h1{font-family:Fraunces;font-size:44px;line-height:1.1;margin:0 0 16px;font-weight:400}.success p{font-size:17px;color:var(--muted)}.error-banner{background:#fbecec;border:1px solid #E8C8C8;color:var(--bad);padding:10px 12px;border-radius:6px;font-size:14px;margin-bottom:14px}
