@import url('https://rsms.me/inter/inter.css');
:root{--warm:#F8F6F1;--charcoal:#1F2528;--graphite:#566366;--bluegrey:#88A7AC;--bluegreyd:#6F8F95;--skin:#E8D6BF;--biogreen:#E1E6C6;--line:#D9DEDD}
*{box-sizing:border-box}
body{margin:0;background:var(--warm);color:var(--charcoal);font-family:'Inter',system-ui,sans-serif;font-weight:400;line-height:1.55}
a{color:var(--bluegreyd);text-decoration:none}
.wrap{max-width:960px;margin:0 auto;padding:0 24px}
header.site{border-bottom:1px solid var(--line);background:rgba(248,246,241,.9);backdrop-filter:blur(6px);position:sticky;top:0;z-index:10}
header.site .bar{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{font-weight:600;letter-spacing:-.01em;font-size:18px;color:var(--charcoal)}
.brand b{color:var(--bluegrey);font-weight:600}
nav.site a{margin-left:20px;color:var(--graphite);font-size:14px}
nav.site a:hover{color:var(--charcoal)}
main{padding:40px 0 80px}
.eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--bluegrey);font-weight:600}
h1{font-size:34px;font-weight:300;letter-spacing:-.02em;margin:.2em 0 .1em}
h2{font-size:22px;font-weight:400;margin:0 0 .2em}
.lead{color:var(--graphite);font-size:17px;margin:0 0 28px}
hr{border:0;border-top:1px solid var(--line);margin:24px 0}
.card{border:1px solid var(--line);background:#fff;padding:22px 24px;margin-bottom:16px}
.card .meta{color:var(--graphite);font-size:14px;margin:.3em 0 0}
.row{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap}
.price{font-size:20px;font-weight:500;white-space:nowrap}
.price small{display:block;font-size:12px;color:var(--graphite);font-weight:400}
.tag{display:inline-block;font-size:12px;padding:3px 9px;border:1px solid var(--line);border-radius:2px;color:var(--graphite)}
.tag.green{color:#3f6f54;border-color:#cfe0d4;background:#f1f7f3}
.tag.amber{color:#8a5a2b;border-color:#e6d6c2;background:#faf3ea}
.btn{display:inline-block;padding:.6rem 1.15rem;border:1px solid var(--charcoal);background:var(--charcoal);color:#fff;border-radius:2px;font-weight:500;font-size:14px;cursor:pointer}
.btn.accent{background:var(--bluegreyd);border-color:var(--bluegreyd)}
.btn.ghost{background:transparent;color:var(--charcoal)}
.btn:disabled{opacity:.5;cursor:not-allowed}
form .field{margin-bottom:16px}
label{display:block;font-size:14px;margin-bottom:6px;color:var(--charcoal)}
input[type=text],input[type=email],input[type=password]{width:100%;padding:.6rem .7rem;border:1px solid var(--line);border-radius:2px;font:inherit;background:#fff}
input:focus{outline:2px solid var(--bluegreyd);outline-offset:0;border-color:var(--bluegreyd)}
.checks label{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--graphite);margin-bottom:10px;cursor:pointer}
.err{color:#9b3434;font-size:13px;margin-top:4px}
.note{background:#fff;border:1px solid var(--line);border-left:3px solid var(--bluegreyd);padding:14px 18px;font-size:14px;color:var(--graphite)}
.breakdown{width:100%;border-collapse:collapse;margin:8px 0}
.breakdown td{padding:6px 0;font-size:15px}
.breakdown tr.total td{border-top:1px solid var(--line);font-weight:600;font-size:17px;padding-top:10px}
.breakdown td.r{text-align:right}
.muted{color:var(--graphite)}
.center-narrow{max-width:440px;margin:0 auto}
.flash{background:#f1f7f3;border:1px solid #cfe0d4;color:#3f6f54;padding:12px 16px;border-radius:2px;margin-bottom:20px;font-size:14px}
