:root{--ink:#22201d;--muted:#655f57;--paper:#fbf8f1;--cream:#f1eadc;--rust:#9b3f29;--teal:#1f6260;--line:#d9cebd;--white:#fff;--max:74rem}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:1.05rem/1.65 system-ui,-apple-system,"Segoe UI",sans-serif}a{color:var(--teal);text-underline-offset:.2em}a:hover{text-decoration-thickness:.15em}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.7rem;z-index:9}.mast{max-width:var(--max);margin:auto;padding:1.2rem 1.5rem;display:flex;align-items:center;gap:2rem;border-bottom:1px solid var(--line)}.brand{color:var(--ink);text-decoration:none;font:700 1.25rem Georgia,serif;letter-spacing:.02em}.brand span{color:var(--rust)}nav{display:flex;gap:1.1rem;flex-wrap:wrap;margin-left:auto}nav a{color:var(--ink);font-size:.9rem;text-decoration:none}nav a[aria-current]{color:var(--rust);text-decoration:underline}.menu{display:none}.hero,.pagehead{max-width:var(--max);margin:auto;padding:5rem 1.5rem}.hero{display:grid;grid-template-columns:1.3fr .7fr;gap:4rem;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.13em;color:var(--rust);font-weight:750;font-size:.78rem}.hero h1,.pagehead h1{font:700 clamp(2.6rem,7vw,5.3rem)/.98 Georgia,serif;max-width:15ch;margin:.3rem 0 1.3rem}.lede{font-size:1.3rem;max-width:46rem;color:var(--muted)}.bookmark{background:var(--rust);color:white;padding:3rem 2rem;box-shadow:1.1rem 1.1rem 0 var(--cream);border-radius:.15rem}.bookmark span{display:block;font:700 2rem Georgia,serif;margin:.8rem 0}.button{display:inline-block;background:var(--teal);color:white;text-decoration:none;padding:.75rem 1rem;border-radius:.2rem;font-weight:700;margin:.3rem}.journey,.feature,.article,.tools,footer{max-width:var(--max);margin:auto;padding:3rem 1.5rem}.steps,.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.step,.card{border:1px solid var(--line);background:rgba(255,255,255,.55);padding:1.4rem}.step b{color:var(--rust);font:700 2rem Georgia,serif}.card{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);min-height:8rem}.card span{color:var(--muted);margin-top:.4rem}.feature{background:var(--cream);max-width:none}.feature>div{max-width:var(--max);margin:auto}.article{max-width:52rem}.article .pagehead{padding:3rem 0}.article h2,.journey h2,.tools h2{font:700 2rem Georgia,serif;margin-top:3rem}.article h3{font:700 1.25rem Georgia,serif}.article li{margin:.45rem 0}.review,.fine{color:var(--muted);font-size:.88rem}.related{border-top:3px solid var(--rust);margin-top:3rem}.checklist label{display:block;padding:.7rem;border-bottom:1px solid var(--line)}.checklist input{width:1.2rem;height:1.2rem;margin-right:.7rem}.calc{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:var(--max);margin:auto;padding:2rem 1.5rem 5rem}.panel{background:white;border:1px solid var(--line);padding:1.5rem}.field{margin-bottom:1rem}.field label{display:block;font-weight:700}.field input,.field select{width:100%;font:inherit;padding:.7rem;border:1px solid #81786d;border-radius:.2rem}.hint,.error{font-size:.9rem;color:var(--muted)}.error{color:#a22518;font-weight:700}.results{border-left:5px solid var(--teal)}.resultbig{font:700 2.2rem Georgia,serif;color:var(--teal)}button{font:inherit;min-height:44px;padding:.65rem .9rem;border:0;background:var(--teal);color:#fff;border-radius:.2rem;cursor:pointer}button.secondary{background:var(--rust)}:focus-visible{outline:3px solid #ef9d35;outline-offset:3px}footer{border-top:1px solid var(--line);display:flex;gap:2rem;flex-wrap:wrap}footer .fine{flex-basis:100%}@media(max-width:760px){.hero,.calc{grid-template-columns:1fr}.hero{padding-top:3rem;gap:2rem}.steps,.cards{grid-template-columns:1fr}.mast{flex-wrap:wrap}.menu{display:block;margin-left:auto}.mast nav{display:none;flex-basis:100%;flex-direction:column}.mast nav.open{display:flex}.hero h1,.pagehead h1{font-size:2.8rem}body{font-size:1rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.mast,footer,.menu,.buttons,.related{display:none!important}body{background:#fff;color:#000;font-size:11pt}.article,.calc,.pagehead{max-width:none;padding:0}.calc{display:block}.panel{border:0}.checklist label{break-inside:avoid}}
