:root{--brand: #0a6e5c;--brand-dark: #085548;--ink: #1a2b27;--muted: #5b6f6a;--bg: #ffffff;--surface: #f3f7f5;--surface-hover: #e9f2ee;--line: #dbe5e1;--accent: #c47f17;--max-width: 56rem}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55}.wrap{max-width:var(--max-width);margin:0 auto;padding:0 1rem}h1{font-size:1.6rem;line-height:1.25;margin:1rem 0 .5rem}h2{font-size:1.2rem;margin:2rem 0 .5rem}a{color:var(--brand)}.skip-link{position:absolute;left:-999px;top:0;z-index:100;background:#fff;color:var(--brand);padding:.5rem 1rem;border-radius:0 0 4px}.skip-link:focus{left:0}.site-header{background:var(--brand);color:#fff;padding:.55rem 0}.header-row{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem .75rem}.site-header .brand{color:#fff;font-weight:700;font-size:1.15rem;text-decoration:none}.site-header .tagline{font-size:.85rem;opacity:.85}.site-nav{margin-left:auto;display:flex;gap:.15rem}.nav-group{position:relative}.nav-group summary{list-style:none;cursor:pointer;user-select:none;color:#fff;font-size:.9rem;font-weight:600;padding:.35rem .6rem;border-radius:4px;white-space:nowrap}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary:after{content:" ▾";font-size:.7em;opacity:.8}.nav-group summary:hover,.nav-group[open] summary{background:var(--brand-dark)}.nav-group ul{position:absolute;left:0;top:100%;z-index:20;min-width:16rem;margin:.35rem 0 0;padding:.35rem 0;list-style:none;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:0 6px 18px #0a28232e}.nav-group:last-child ul{left:auto;right:0}.nav-group li a{display:block;padding:.45rem .9rem;color:var(--ink);text-decoration:none;font-size:.9rem}.nav-group li a:hover{background:var(--surface);color:var(--brand)}.nav-group li a[aria-current=page]{font-weight:700;color:var(--brand)}@media(max-width:599px){.site-header .tagline{display:none}.site-nav{position:relative}.nav-group{position:static}.nav-group ul,.nav-group:last-child ul{left:auto;right:0}}.breadcrumb{display:flex;gap:.4rem;margin-top:.9rem;font-size:.8rem;color:var(--muted)}.breadcrumb a{color:var(--muted)}.breadcrumb+h1{margin-top:.3rem}.calc-grid{list-style:none;margin:.8rem 0 0;padding:0;display:grid;gap:.7rem;grid-template-columns:1fr}@media(min-width:640px){.calc-grid{grid-template-columns:1fr 1fr}}.calc-card{display:block;height:100%;padding:.85rem 1rem;background:var(--surface);border:1px solid var(--line);border-radius:8px;text-decoration:none;color:var(--ink)}.calc-card:hover{border-color:var(--brand);background:var(--surface-hover)}.calc-card-name{display:block;font-weight:700;color:var(--brand);margin-bottom:.15rem}.calc-card-blurb{display:block;font-size:.85rem;line-height:1.45;color:var(--muted)}.chip-list{list-style:none;margin:.6rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.chip-list a{display:inline-block;padding:.45rem .9rem;background:var(--surface);border:1px solid var(--line);border-radius:999px;text-decoration:none;font-size:.9rem;font-weight:600}.chip-list a:hover{border-color:var(--brand);background:var(--surface-hover)}.site-footer{margin-top:3rem;padding:1.4rem 0 2rem;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted)}.footer-directory{display:grid;gap:1rem 2rem;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));margin-bottom:1.2rem;padding-bottom:1.2rem;border-bottom:1px solid var(--line)}.footer-col h2{margin:0 0 .4rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink)}.footer-col ul{list-style:none;margin:0;padding:0}.footer-col li{margin:.3rem 0}.footer-col a{color:var(--muted);text-decoration:none}.footer-col a:hover{color:var(--brand);text-decoration:underline}.footer-nav{margin-top:.8rem;display:flex;gap:1rem}table{border-collapse:collapse;width:100%;font-size:.95rem}th,td{text-align:left;padding:.45rem .6rem;border-bottom:1px solid var(--line)}thead th{background:var(--surface)}@media(min-width:720px){h1{font-size:2rem}}@media(max-width:719px){h1{margin-top:.8rem}h2{margin-top:1.5rem}}form label{display:block;font-weight:600;margin:1rem 0 .3rem}form input,form select{display:block;width:100%;max-width:20rem;font-size:16px;padding:.5rem .6rem;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--ink)}form input:focus,form select:focus{outline:2px solid var(--brand);outline-offset:1px}form .field-hint{font-size:.8rem;color:var(--muted);margin:.2rem 0 0}form .form-error{color:#a3241a;font-size:.85rem;font-weight:600;margin:.3rem 0 0}form .checkbox-field{display:flex;align-items:center;gap:.5rem;margin:1rem 0 .3rem}form .checkbox-field input[type=checkbox]{display:inline-block;width:auto;max-width:none}form .checkbox-field label{display:inline;margin:0;font-weight:600}.advice-note{color:var(--muted);font-size:.85rem}.table-scroll{overflow-x:auto}form button{margin-top:1.2rem;padding:.6rem 1.4rem;font-size:1rem;font-weight:600;color:#fff;background:var(--brand);border:none;border-radius:4px;cursor:pointer}form button:hover{background:var(--brand-dark)}.results[aria-live]{margin-top:1.5rem;padding:1rem 1.2rem;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:4px}.results[aria-live] p{margin:.35rem 0}.results[aria-live] strong{font-size:1.08em;font-variant-numeric:tabular-nums}.results[aria-live] .result-total{margin-top:.7rem;padding-top:.6rem;border-top:1px solid var(--line)}.results[aria-live] .result-total strong{font-size:1.25em}.share-btn{margin-top:.8rem;padding:.4rem .9rem;font-size:.85rem;font-weight:600;color:var(--brand);background:#fff;border:1px solid var(--line);border-radius:4px;cursor:pointer}.share-btn:hover{border-color:var(--brand);background:var(--surface-hover)}.disclaimer{color:var(--muted);font-size:.85rem;margin-top:1.5rem}.faq details{border:1px solid var(--line);border-radius:6px;margin:.5rem 0;background:#fff}.faq summary{padding:.6rem .9rem;cursor:pointer;font-weight:600}.faq details p{margin:0;padding:.1rem .9rem .8rem}@media print{header,footer,form,.faq,.related,.breadcrumb,.skip-link{display:none}.results,#methodology{display:block}}
