:root{--bg:#f4f6f9;--surface:#fff;--surface-alt:#0f172a;--text:#0f172a;--muted:#4b5563;--line:#dbe2ea;--brand:#0369a1;--brand-dark:#075985;--brand-soft:#e0f2fe;--accent:#059669;--danger:#dc2626;--radius:14px}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;font-size:16px}a{color:var(--brand);text-decoration:none;font-weight:500}a:hover{text-decoration:underline}.wrap{max-width:1100px;margin:0 auto;padding:0 20px}.site-header{background:#0a111f;border-bottom:1px solid #1e293b;position:-webkit-sticky;position:sticky;top:0;z-index:40}.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;height:64px}.logo{font-weight:800;font-size:1.22rem;color:#f8fafc;letter-spacing:-.4px;display:inline-flex;align-items:center;gap:4px}.logo:hover{text-decoration:none}.logo span{color:#38bdf8}.site-nav{display:flex;gap:22px;font-size:.92rem}.site-nav a{color:#cbd5e1;font-weight:600;transition:color .15s ease}.site-nav a:hover{color:#38bdf8;text-decoration:none}main.wrap{padding-top:32px;padding-bottom:56px}.hero-badge{display:inline-flex;align-items:center;gap:8px;background:var(--brand-soft);color:var(--brand-dark);border:1px solid #bae6fd;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.6px;padding:5px 12px;border-radius:999px;margin-bottom:12px}h1{font-size:clamp(1.75rem,4vw,2.45rem);line-height:1.18;letter-spacing:-.6px;margin-bottom:12px}h1,h2{color:#0b111e;font-weight:800}h2{font-size:1.38rem;margin:40px 0 12px;letter-spacing:-.3px}h3{font-size:1.05rem;margin:18px 0 6px;font-weight:700}p{margin:0 0 12px}.lead{font-size:1.08rem;color:var(--muted);max-width:780px}.breadcrumbs{font-size:.85rem;color:var(--muted);margin-bottom:14px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:0 4px 18px rgba(15,23,42,.04)}.answer{background:var(--brand-soft);border:1px solid #bae6fd;border-radius:var(--radius);padding:18px 20px;margin:20px 0}.answer strong{color:var(--brand-dark)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));grid-gap:12px;gap:12px;margin:20px 0}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;box-shadow:0 2px 8px rgba(15,23,42,.03)}.stat span{display:block;font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-weight:700;margin-bottom:4px}.stat strong{font-size:1.35rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:#0b111e}.calc{display:grid;grid-template-columns:1fr 1.15fr;grid-gap:28px;gap:28px;margin:26px 0;align-items:start}.calc-group-title{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);padding-bottom:6px;border-bottom:1px solid var(--line);margin-bottom:4px}.calc-inputs{display:grid;grid-gap:14px;gap:14px}.calc-row-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.calc-inputs label{display:grid;grid-gap:5px;gap:5px;font-size:.85rem;font-weight:700;color:#334155}.calc-inputs input,.calc-inputs select{font:inherit;font-size:.98rem;font-weight:600;color:var(--text);padding:10px 12px;border:1px solid #cbd5e1;border-radius:10px;background:#f8fafc;width:100%;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:border-color .15s ease,background .15s ease}.calc-inputs input:focus,.calc-inputs select:focus{outline:2px solid var(--brand);outline-offset:1px;background:#fff;border-color:var(--brand)}.calc-result{background:#0a111f;color:#f8fafc;border:1px solid #1e293b;border-radius:14px;padding:22px;content-visibility:auto;contain-intrinsic-size:auto 320px auto 420px}.calc-result-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.eyebrow{font-size:.76rem;text-transform:uppercase;letter-spacing:.6px;color:#38bdf8;font-weight:800}.rate-pill{font-size:.75rem;font-weight:700;padding:3px 9px;border-radius:999px;background:rgba(56,189,248,.14);color:#7dd3fc;border:1px solid rgba(56,189,248,.3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.big{display:block;font-size:2.25rem;color:#fff;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin:6px 0 14px;font-weight:800;letter-spacing:-.8px}.big span{font-size:.98rem;font-weight:600;color:#94a3b8;margin-left:6px}.piti-bar{display:flex;height:10px;border-radius:999px;overflow:hidden;background:#1e293b;margin-bottom:16px;gap:2px}.piti-seg{height:100%;transition:width .25s ease}.seg-pi{background:#10b981}.seg-401k{background:#38bdf8}.seg-ti{background:#f59e0b}.seg-fica{background:#a855f7}.seg-pmi{background:#ef4444}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:7px;vertical-align:middle}.dot-pi{background:#10b981}.dot-ti{background:#f59e0b}.dot-fica{background:#a855f7}.dot-pmi{background:#ef4444}.calc-result dl{display:grid;grid-gap:8px;gap:8px;font-size:.9rem}.calc-result dl div{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid rgba(148,163,184,.14);padding-top:8px}.calc-result dl div.dl-divider{border-top:1px dashed rgba(148,163,184,.3);margin-top:4px;padding-top:10px}.calc-result dl div.payoff-highlight{background:rgba(56,189,248,.12);border:1px solid rgba(56,189,248,.32);border-radius:8px;padding:8px 10px;margin-top:4px}.calc-result dt{color:#cbd5e1}.calc-result dd{font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:#fff}.calc-result dd.pos-val{color:#34d399}.calc-result dd.neg-val{color:#f87171}.deferred-section{content-visibility:auto;contain-intrinsic-size:auto none auto 380px}@supports not (content-visibility:auto){.calc-result,.deferred-section{contain:layout style paint}}.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:0 2px 10px rgba(15,23,42,.03);margin:14px 0 24px}table{width:100%;border-collapse:collapse;font-size:.9rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}td,th{padding:10px 14px;text-align:right;border-bottom:1px solid var(--line);white-space:nowrap}td:first-child,th:first-child{text-align:left}thead th{background:#f1f5f9;font-size:.76rem;text-transform:uppercase;letter-spacing:.4px;color:#475569;font-weight:800}tr.highlight td{background:var(--brand-soft);font-weight:700;color:var(--brand-dark)}td.pos{color:#059669;font-weight:700}td.neg{color:#dc2626;font-weight:600}.badge-zero{background:#dcfce7;color:#166534}.badge-flat,.badge-zero{display:inline-block;font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:999px}.badge-flat{background:#e0f2fe;color:#075985}.badge-prog{display:inline-block;font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:999px;background:#fef3c7;color:#92400e}.bridge-box{background:linear-gradient(135deg,#0f172a,#1e293b);color:#f8fafc;border-radius:var(--radius);padding:20px 24px;margin:26px 0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.bridge-box h3{color:#38bdf8;margin:0 0 4px;font-size:1.05rem}.bridge-box p{margin:0;color:#cbd5e1;font-size:.92rem;max-width:680px}.bridge-actions{display:flex;gap:10px;flex-wrap:wrap}.bridge-btn{display:inline-block;background:#38bdf8;color:#0f172a;font-weight:800;font-size:.88rem;padding:10px 16px;border-radius:10px}.bridge-btn:hover{background:#7dd3fc;text-decoration:none}.links{display:grid;grid-template-columns:repeat(auto-fill,minmax(195px,1fr));grid-gap:10px;gap:10px;margin:14px 0}.links a{display:flex;align-items:center;justify-content:space-between;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:11px 14px;font-size:.9rem;font-weight:600;color:#0f172a;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.links a:hover{border-color:var(--brand);text-decoration:none;transform:translateY(-1px);box-shadow:0 4px 12px rgba(3,105,161,.08)}.faq details{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin-bottom:10px}.faq summary{cursor:pointer;font-weight:700;color:#0f172a}.faq details p{margin-top:8px;color:var(--muted)}.note{font-size:.85rem;color:var(--muted);margin-top:24px}.ad-slot{margin:24px auto;width:100%;overflow:hidden;contain:layout}.ad-banner{min-height:100px}.ad-rectangle{min-height:280px}.site-footer{border-top:1px solid var(--line);background:var(--surface);padding:28px 0;font-size:.85rem;color:var(--muted)}.site-footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px}.site-footer nav{display:flex;gap:16px;flex-wrap:wrap}@media (max-width:760px){.calc,.calc-row-2{grid-template-columns:1fr}.site-nav{gap:14px;font-size:.85rem}.big{font-size:1.9rem}}