:root{--bg:#f4f6fb;--surface:#fff;--ink:#0f172a;--muted:#475569;--line:#e2e8f0;--brand:#4f46e5;--brand-dark:#3730a3;--soft:#eef2ff;--navy:#0b1220;--green:#047857;--green-soft:#ecfdf5;--shadow:0 1px 2px rgb(15 23 42/.06),0 14px 32px -16px rgb(15 23 42/.22);--r:18px}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;min-width:320px;background:var(--bg);color:var(--ink);font:400 16px/1.65 ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-variant-numeric:tabular-nums}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}button,input,select{font:inherit}button{cursor:pointer}:focus-visible{outline:3px solid #818cf8;outline-offset:2px}.skip{position:absolute;left:-999px;top:0;background:var(--brand);color:#fff;padding:.75rem 1rem;z-index:100;border-radius:0 0 10px 0}.skip:focus{left:0;text-decoration:none}.wrap{width:min(100% - 2rem,1120px);margin:0 auto}.topbar{position:sticky;top:0;z-index:20;background:rgb(255 255 255/.94);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:68px}.brand{display:inline-flex;align-items:center;gap:.6rem;color:var(--ink);font-weight:800;letter-spacing:-.02em;white-space:nowrap;font-size:1.1rem}.brand span{color:var(--brand)}.brand:hover{text-decoration:none}.brand::before{content:"$";display:inline-grid;place-items:center;width:32px;height:32px;border-radius:9px;background:linear-gradient(135deg,#6366f1,#4338ca);color:#fff;font-weight:800;font-size:1.1rem}.nav-links{display:flex;align-items:center;flex-wrap:wrap;gap:.15rem}.nav-links a{display:inline-block;padding:.45rem .8rem;border-radius:999px;color:var(--muted);font-weight:600;white-space:nowrap}.nav-links a:hover{background:var(--soft);color:var(--brand-dark);text-decoration:none}.nav-links a[aria-current=page]{background:var(--soft);color:var(--brand-dark)}.nav-toggle{display:none;min-height:44px;min-width:44px;padding:.4rem .9rem;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font-weight:700}.page{width:min(100% - 2rem,1120px);margin:0 auto;padding:1.5rem 0 4rem}.crumbs{margin:0 0 1rem}.crumbs ol{display:flex;flex-wrap:wrap;gap:.25rem;list-style:none;margin:0;padding:0;font-size:.95rem;color:var(--muted)}.crumbs li{margin:0}.crumbs li+li::before{content:"›";margin-right:.35rem}.crumbs a{padding:.25rem 0;display:inline-block}h1,h2,h3{line-height:1.15;margin:0 0 .75rem;letter-spacing:-.03em;font-weight:800}h1{font-size:clamp(2rem,5vw,3.4rem)}h2{font-size:clamp(1.4rem,2.6vw,1.9rem)}h3{font-size:1.15rem}p{margin:0 0 1rem;color:var(--muted)}ul{margin:0 0 1rem 1.25rem;padding:0;color:var(--muted)}li{margin-bottom:.5rem}.hero{position:relative;overflow:hidden;color:#fff;border-radius:24px;padding:2.5rem;background:radial-gradient(circle at 85% 0,rgb(99 102 241/.55),transparent 45%),linear-gradient(135deg,#0b1220,#1e1b4b 65%,#312e81);box-shadow:var(--shadow)}.hero h1{color:#fff}.hero p{color:#cbd5e1}.hero a:not(.button){color:#c7d2fe}.hero .eyebrow{color:#a5b4fc}.hero .card .result-card .value{color:var(--ink)}.hero .card p.badge{color:var(--green)}.hero .card{color:var(--ink);box-shadow:0 24px 48px -24px rgb(0 0 0/.55)}.hero .card p{color:var(--muted)}.hero .card a:not(.button){color:var(--brand)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.875rem;font-weight:800;color:var(--brand);margin:0 0 .75rem}.lead{font-size:1.15rem;max-width:62ch}.button-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border:1px solid var(--brand);background:var(--brand);color:#fff;padding:.7rem 1.2rem;border-radius:12px;font-weight:700;text-align:center;transition:background .15s,transform .15s}.button:hover{background:var(--brand-dark);text-decoration:none;transform:translateY(-1px)}.button.secondary{background:#fff;color:var(--brand);border-color:#c7d2fe}.button.secondary:hover{background:var(--soft)}.button[aria-pressed=false]{background:#fff;color:var(--brand);border-color:#c7d2fe}.button[aria-pressed=false]:hover{background:var(--soft)}.hero .button{background:#fff;color:#1e1b4b;border-color:#fff}.hero .button:hover{background:#e0e7ff}.hero .button.secondary,.hero .button[aria-pressed=false]{background:transparent;color:#fff;border-color:rgb(255 255 255/.45)}.hero .button.secondary:hover,.hero .button[aria-pressed=false]:hover{background:rgb(255 255 255/.14)}.hero .card .button{background:var(--brand);color:#fff;border-color:var(--brand)}.card,.related{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:1.6rem;box-shadow:var(--shadow)}.calculator{margin-top:1.5rem}.form-grid{align-items:end;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem;margin:1.25rem 0}label{display:grid;gap:.4rem;color:var(--ink);font-weight:700}input,select{width:100%;min-height:50px;border:1px solid #cbd5e1;border-radius:12px;background:#f8fafc;color:var(--ink);padding:.6rem .8rem;font-size:1rem}input:focus,select:focus{background:#fff;border-color:var(--brand);outline:3px solid #c7d2fe;outline-offset:0}.results{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:1rem;margin-top:1.5rem}.result-card{min-width:0;background:#fff;border:1px solid var(--line);border-top:4px solid var(--brand);border-radius:var(--r);padding:1.1rem;box-shadow:var(--shadow);overflow-wrap:anywhere}.result-card h3{color:var(--brand-dark);margin-bottom:.4rem}.result-card p{margin-bottom:.5rem;font-size:1rem}.result-card .value{font-size:1.75rem;font-weight:800;color:var(--ink);line-height:1.2;letter-spacing:-.02em}.result-card--best{border-color:#6ee7b7;border-top-color:#10b981;background:linear-gradient(180deg,var(--green-soft),#fff 60%)}.badge{display:inline-block;margin-bottom:.5rem;padding:.2rem .65rem;border-radius:999px;background:var(--green-soft);color:var(--green);border:1px solid #a7f3d0;font-weight:800;font-size:.875rem}.fine-print{margin-top:1rem;font-size:1rem}.grid{display:grid;grid-template-columns:1.2fr .8fr;gap:1.25rem;margin-top:1.5rem}.section{margin-top:1.5rem}.faq h3{margin-top:1.4rem;color:var(--ink);font-size:1.1rem}.faq h3:first-of-type{margin-top:0}.related{margin-top:1.5rem;background:linear-gradient(180deg,#fff,#f8faff)}.related-links{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.75rem}.related-links a{display:inline-block;padding:.45rem .95rem;border:1px solid #c7d2fe;border-radius:999px;background:#fff;font-weight:600}.related-links a:hover{background:var(--soft);text-decoration:none}.table-wrap{overflow-x:auto;margin:1rem 0;border:1px solid var(--line);border-radius:14px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.8rem .9rem;border-bottom:1px solid var(--line);color:var(--muted)}th{background:#f1f5f9;color:var(--ink)}tbody tr:nth-child(even){background:#f8fafc}tr:last-child td{border-bottom:0}tr.total td{font-weight:800;color:var(--ink);background:var(--green-soft)}.foot{margin-top:2rem;background:var(--navy);padding:2.5rem 0;color:#94a3b8}.foot p{color:#94a3b8}.foot .brand{color:#fff}.foot .brand span{color:#a5b4fc}.foot-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:1.5rem}.foot h2{font-size:1rem;margin-bottom:.5rem;color:#fff;letter-spacing:0}.foot ul{list-style:none;margin:0}.foot li{margin-bottom:.25rem}.foot a{display:inline-block;padding:.25rem 0;color:#cbd5e1}.foot a:hover{color:#fff}.foot .legal{margin:1.5rem 0 0;padding-top:1rem;border-top:1px solid #1e293b;font-size:1rem}[hidden]{display:none!important}.notfound{text-align:center;padding:3rem 1.5rem}.notfound .lead{margin-inline:auto}@media(max-width:900px){.js .nav-toggle{display:inline-flex;align-items:center}.js .nav-links{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;padding:.5rem 1rem 1rem;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.js .nav-links.open{display:flex}.js .nav-links a{padding:.85rem .5rem;border-radius:10px}.grid{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.page,.wrap{width:min(100% - 1.25rem,1120px)}.hero{padding:1.5rem 1rem;border-radius:18px}.card,.related{padding:1.1rem;border-radius:14px}.button-row{flex-direction:column;align-items:stretch}.foot-grid{grid-template-columns:1fr}th,td{padding:.6rem .5rem}}