:root{--bg: #ffffff;--surface: #f7f8fa;--border: #e3e6eb;--text: #14181f;--muted: #5c6675;--accent: #1f6feb;--accent-text: #ffffff;--positive: #12805c;--negative: #b3261e;--radius: 10px;--maxw: 44rem}@media(prefers-color-scheme:dark){:root{--bg: #0f1216;--surface: #161b22;--border: #262d36;--text: #e7ebf0;--muted: #99a3b0;--accent: #4f8ff7;--positive: #3fbf92;--negative: #f07167}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:17px;line-height:1.6}main,.site-header,.site-footer{max-width:var(--maxw);margin:0 auto;padding:0 1.25rem}.wide{max-width:58rem}a{color:var(--accent)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1.25rem;padding-bottom:1.25rem}.brand{font-weight:650;text-decoration:none;color:var(--text)}.site-header nav{display:flex;align-items:center;gap:.5rem}.nav-link{font-size:.9rem;text-decoration:none;color:var(--muted);padding:.5rem}.nav-link:hover{color:var(--text)}.site-footer{margin-top:3.5rem;padding-top:1.5rem;padding-bottom:3rem;border-top:1px solid var(--border);color:var(--muted);font-size:.9rem}.site-footer p{margin:.35rem 0}.btn-primary,.btn-ghost{display:inline-block;padding:.7rem 1.15rem;border-radius:8px;font:inherit;font-weight:550;cursor:pointer;text-decoration:none;border:1px solid transparent;text-align:center}.btn-primary{background:var(--accent);color:var(--accent-text)}.btn-ghost{background:transparent;border-color:var(--border);color:var(--text);padding:.5rem .85rem;font-size:.9rem}.btn-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin:1.5rem 0 .75rem}.hero h1{font-size:clamp(1.7rem,5vw,2.4rem);line-height:1.2;letter-spacing:-.02em;margin:.5rem 0 .75rem}.lede{color:var(--muted);font-size:1.05rem;margin:0 0 2rem}.hero .lede{margin-bottom:0}.prose{margin-top:3rem}.prose h2,.cta h2,section>h2{font-size:1.4rem;letter-spacing:-.01em;margin-top:2.5rem}.prose h3{font-size:1.05rem;margin-top:1.75rem;margin-bottom:.4rem}.prose p{margin:.5rem 0}.hint{margin:.35rem 0 0;font-size:.85rem;color:var(--muted)}.disclaimer{margin-top:1.5rem;font-size:.85rem;color:var(--muted);border-left:3px solid var(--border);padding-left:.9rem}.cards{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));margin-top:1.25rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem}.card h3{margin:0 0 .4rem;font-size:1rem}.card p{margin:0;color:var(--muted);font-size:.95rem}.steps{list-style:none;counter-reset:step;padding:0;margin:1.25rem 0 0}.steps li{counter-increment:step;position:relative;padding-left:2.6rem;margin-bottom:1.25rem}.steps li:before{content:counter(step);position:absolute;left:0;top:.1rem;width:1.8rem;height:1.8rem;border-radius:50%;background:var(--accent);color:var(--accent-text);display:grid;place-items:center;font-size:.9rem;font-weight:650}.steps strong{display:block}.steps p{margin:.2rem 0 0;color:var(--muted);font-size:.95rem}.plans{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));margin-top:1.25rem}.plan h3{margin:0 0 .25rem}.plan ul{margin:.75rem 0 0;padding-left:1.1rem;font-size:.95rem;color:var(--muted)}.plan li{margin-bottom:.35rem}.plan-note{font-size:.85rem;color:var(--muted);margin:.35rem 0 0}.cta{margin-top:3rem;padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.cta h2{margin-top:0}.calc-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.field{margin-bottom:1rem}.field-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr))}label{display:block;font-weight:550;font-size:.95rem;margin-bottom:.35rem}.input-row{display:flex;align-items:stretch;gap:.5rem}input[type=number],select{width:100%;padding:.65rem .7rem;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);font-size:16px;font-family:inherit}input[type=number]:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}select{width:auto;min-width:6.5rem}.field-grid select{width:100%}.suffix{display:flex;align-items:center;color:var(--muted);padding-right:.25rem}.toggles{border:0;padding:0;margin:1.25rem 0 0;display:grid;gap:.75rem}.check{display:flex;align-items:flex-start;gap:.6rem;font-weight:400;margin:0;cursor:pointer}.check input{width:20px;height:20px;margin:.15rem 0 0;flex:none;accent-color:var(--accent)}.check small{display:block;color:var(--muted);font-size:.85rem}.calc-form .btn-primary{width:100%;margin-top:1.25rem}.results{margin-top:1.25rem}.results-placeholder,.results-info{color:var(--muted);text-align:center;padding:1.5rem 0;margin:0}.results-error{color:var(--negative);padding:1rem;margin:0;border:1px solid currentColor;border-radius:8px}.headline{text-align:center;padding:1.5rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.headline-label{display:block;color:var(--muted);font-size:.9rem;text-transform:uppercase;letter-spacing:.06em}.headline-value{display:block;font-size:clamp(2.2rem,9vw,3.2rem);font-weight:700;line-height:1.1;letter-spacing:-.03em;color:var(--positive);margin:.25rem 0}.headline-sub{display:block;color:var(--muted);font-size:.95rem}.breakdown{margin-top:1rem;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.row{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 1rem;border-bottom:1px solid var(--border)}.row:last-child{border-bottom:0}.row .num{font-variant-numeric:tabular-nums;white-space:nowrap}.row.sub{padding-left:2rem;color:var(--muted);font-size:.9rem}.row.positive .num{color:var(--positive)}.row.total{font-weight:650;background:var(--surface)}.aside{margin-top:.75rem;font-size:.9rem;color:var(--muted)}.aside p{margin:0}.notes{margin:1rem 0 0;padding-left:1.1rem;font-size:.9rem;color:var(--muted)}.notes li{margin-bottom:.4rem}
