:root{--ink:#1C2321;--panel:#242E2A;--paper:#F7F5EF;--rule:#DDD8C8;--emerald:#0E7C5B;--emerald2:#17B978;--amber:#D9930D;--rust:#B3402A;--mut:#5A665F}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,system-ui,sans-serif;font-size:16px;line-height:1.55}
h1,h2,h3,.serif{font-family:Fraunces,Georgia,serif}
.num,.money,td.n,th.n{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}
a{color:var(--emerald)}header.top{background:var(--ink);color:var(--paper);padding:14px 20px;display:flex;gap:18px;align-items:center;flex-wrap:wrap}
header.top a{color:var(--paper);text-decoration:none;font-weight:600}header.top nav{display:flex;gap:16px;margin-left:auto;flex-wrap:wrap}
header.top nav a{font-weight:400;opacity:.92}header.top nav a:hover{opacity:1;text-decoration:underline}
.logo{display:flex;align-items:center;gap:10px}.gauge-mini{width:30px;height:18px}
main{max-width:1080px;margin:0 auto;padding:28px 20px 64px}
.hero{padding:38px 0 10px}.hero h1{font-size:2.6rem;line-height:1.08;margin:0 0 14px}.hero p.lede{font-size:1.15rem;color:var(--mut);max-width:640px}
.cta{display:inline-block;background:var(--emerald);color:#fff;padding:13px 26px;border-radius:6px;text-decoration:none;font-weight:700;border:0;cursor:pointer;font-size:1rem}
.cta:hover{background:#0a6248}.cta.ghost{background:transparent;color:var(--emerald);border:2px solid var(--emerald)}
.card{background:#fff;border:1px solid var(--rule);border-top:4px double var(--ink);padding:22px;margin:18px 0;border-radius:4px}
table.ledger{width:100%;border-collapse:collapse}table.ledger th{border-bottom:3px double var(--ink);text-align:left;padding:8px 6px;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em}
table.ledger td{border-bottom:1px solid var(--rule);padding:8px 6px}table.ledger td.n,table.ledger th.n{text-align:right}
tr:nth-child(even) td{background:#FBFAF5}.stamp{display:inline-block;border:2px solid var(--rust);color:var(--rust);padding:2px 10px;transform:rotate(-2deg);font-weight:700;letter-spacing:.08em;font-size:.8rem}
.pill{display:inline-block;background:#E4F3EC;color:var(--emerald);border-radius:99px;padding:2px 10px;font-size:.8rem;font-weight:700}
.pill.lock{background:#F7E9D2;color:#8a5c00}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.folio{background:#fff;border:1px solid var(--rule);border-left:10px solid var(--emerald);padding:16px;border-radius:3px}
input,select{width:100%;padding:11px;border:1px solid #B9B2A0;border-radius:5px;font-size:1rem;background:#fff;margin:4px 0 12px}
label{font-weight:600;font-size:.92rem}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--emerald2);outline-offset:2px}
.mut{color:var(--mut)}.err{background:#FBEAE6;border:1px solid var(--rust);padding:10px 14px;border-radius:5px}.ok{background:#E4F3EC;border:1px solid var(--emerald);padding:10px 14px;border-radius:5px}
footer{border-top:3px double var(--ink);padding:22px 20px;color:var(--mut);font-size:.9rem;max-width:1080px;margin:0 auto}
.price{font-size:2.2rem;font-family:Fraunces,serif}.needle{transition:transform .6s}
@media(max-width:480px){.hero h1{font-size:1.9rem}main{padding:18px 12px 48px}table.ledger th,table.ledger td{padding:6px 4px;font-size:.9rem}header.top{padding:12px}}
