:root{--ink:#14201f;--muted:#5d6967;--paper:#f6f1e7;--card:#fffdf8;--line:#d9d1c3;--accent:#0e655b}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.62 system-ui,-apple-system,Segoe UI,sans-serif}a{color:var(--accent)}header,main,footer{max-width:1050px;margin:auto;padding:24px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font:700 22px Georgia,serif;text-decoration:none;color:var(--ink)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:var(--accent);font-weight:700}h1{font:700 clamp(38px,7vw,72px)/1.02 Georgia,serif;max-width:900px;margin:.3em 0}h2{font:700 30px/1.2 Georgia,serif;margin-top:1.6em}h3{font:700 21px/1.25 Georgia,serif}.lede{font-size:20px;max-width:760px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.card,.note,.calculator{background:var(--card);border:1px solid var(--line);padding:22px;border-radius:10px}.steps li{margin-bottom:12px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.cta,.secondary{display:inline-block;padding:13px 18px;border-radius:6px;text-decoration:none;font-weight:700}.cta{background:var(--accent);color:white}.secondary{border:1px solid var(--accent);background:transparent}.crumbs{font-size:14px;color:var(--muted)}label{display:block;font-weight:700;margin-bottom:12px}input{display:block;width:100%;margin-top:5px;padding:11px;border:1px solid var(--line);border-radius:5px;font:inherit}.result{font:700 30px Georgia,serif;color:var(--accent);margin:.5em 0}.fine{font-size:13px;color:var(--muted)}table{width:100%;border-collapse:collapse;background:var(--card)}th,td{text-align:left;vertical-align:top;padding:13px;border:1px solid var(--line)}th{background:#e9e3d8}.table-wrap{overflow-x:auto}footer{border-top:1px solid var(--line);margin-top:60px;color:var(--muted)}@media print{header,footer,.actions,.cta,.secondary{display:none}.card,.note,.calculator{break-inside:avoid}}@media(max-width:600px){header,main,footer{padding:18px}h1{font-size:42px}.topbar{align-items:flex-start;flex-direction:column}}