.housing-panel{margin:34px 0 42px;background:linear-gradient(155deg,#f4f7ff,#fff);border:1px solid #dce5f4;border-radius:24px;padding:30px;box-shadow:0 16px 50px rgba(28,49,92,.055)}
.housing-mini{display:inline-block;font-size:11px;letter-spacing:.12em;font-weight:900;text-transform:uppercase;color:#344db4;margin-bottom:12px}
.housing-lede{max-width:750px;color:#53637e;font-size:15px;line-height:1.75}
.housing-main-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;gap:24px;margin-top:22px}
.housing-form{border:1px solid #e0e7f3;background:white;border-radius:19px;padding:22px}
.housing-form h2{font-size:22px;margin:0 0 8px;letter-spacing:-.035em}
.housing-form p{font-size:13px;color:#69768c;margin:0 0 18px;line-height:1.6}
.housing-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.housing-field-grid label{display:flex;flex-direction:column;gap:7px;color:#283a58;font-weight:750;font-size:12px;min-width:0}
.housing-field-grid label span.housing-fieldhelp{font-size:11px;color:#72809a;font-weight:500;line-height:1.35}
.housing-field-grid input{width:100%;min-width:0;background:#fff;border:1px solid #cfd9ea;border-radius:11px;padding:11px 12px;font-size:15px;font-weight:700;color:#121d34;transition:border-color .15s}
.housing-field-grid input:focus-visible{border-color:#5266d2;outline:3px solid #dee5ff;outline-offset:1px}
.housing-field-grid .housing-full{grid-column:1/-1}
.housing-form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:17px}
.housing-form-actions button{background:#f4f6fd;border:1px solid #d2dcef;border-radius:10px;font-size:12px;font-weight:850;padding:11px 14px;color:#344362}
.housing-error{color:#a52c2c;font-size:13px;line-height:1.5;min-height:1.5em;margin:8px 0 0}
.housing-results{border-radius:19px;background:#10243e;padding:23px;color:white;min-width:0;box-shadow:0 16px 40px rgba(15,37,70,.13)}
.housing-overline{color:#a5f2d7;font-size:11px;letter-spacing:.12em;font-weight:800;text-transform:uppercase}
.housing-payment{font-size:clamp(30px,4.8vw,44px);font-weight:900;letter-spacing:-.055em;margin:9px 0 4px;line-height:1.12;overflow-wrap:anywhere}
.housing-small{font-size:12px;color:#c3d3e7;line-height:1.6;margin:0 0 19px}
.housing-figures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.housing-figure{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px;min-width:0}
.housing-figure span{display:block;color:#bfcee2;font-size:11px;line-height:1.35;margin-bottom:6px}
.housing-figure strong{font-size:clamp(14px,2.3vw,20px);letter-spacing:-.025em;overflow-wrap:anywhere;display:block}
.housing-warning{padding:12px 14px;margin:15px 0;border:1px solid #ffd1a1;background:#fff6e9;color:#874c12;border-radius:10px;line-height:1.55;font-size:12px}
.housing-breakdown{margin-top:24px}
.housing-breakdown h3{font-size:14px;color:#e9f3ff;margin:0 0 13px}
.housing-bar-outer{display:flex;align-items:center;height:14px;background:#233a59;border-radius:99px;overflow:hidden}
.housing-bar-outer span{height:100%;display:block;transition:width .2s ease}
#housing-bar-interest{background:#78b2ff}
#housing-bar-amort{background:#98ead6}
#housing-bar-running{background:#f8d696}
.housing-legend{display:grid;gap:8px;margin-top:12px}
.housing-legend span{font-size:12px;color:#d9e7f4;line-height:1.4}
.housing-legend b{display:inline-block;height:9px;width:9px;border-radius:50%;margin-right:7px}
.housing-legend .i{background:#78b2ff}
.housing-legend .a{background:#98ead6}
.housing-legend .r{background:#f8d696}
.housing-stress{margin-top:24px;background:#f0f4ff;color:#1c2b4a;border-radius:17px;padding:21px;border:1px solid #dce5f4}
.housing-stress h2{font-size:20px;margin:0 0 6px;letter-spacing:-.035em}
.housing-stress p{font-size:12px;line-height:1.6;color:#61708b;margin:0 0 17px}
.housing-stress-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:19px}
.housing-stress-tile{padding:12px;border-radius:11px;background:#fff;border:1px solid #dce5f4;min-width:0}
.housing-stress-tile span{font-size:11px;display:block;color:#667793;margin-bottom:7px}
.housing-stress-tile strong{display:block;font-size:clamp(16px,2.5vw,22px);line-height:1.15;overflow-wrap:anywhere}
.housing-compare-row{margin:12px 0}
.housing-compare-row div:first-child{display:flex;justify-content:space-between;gap:12px;color:#3d4e6b;font-size:12px;font-weight:800}
.housing-compare-track{height:11px;background:#dce4f3;margin-top:7px;border-radius:99px;overflow:hidden}
.housing-compare-fill{display:block;height:100%;background:#5368cc;border-radius:99px;transition:width .2s ease}
#housing-comparison-stress{background:#e78b5b}
.housing-shock-change{font-size:12px;color:#77442d;font-weight:800;margin-top:14px}
.housing-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:20px}
.housing-actions button{font-size:12px;font-weight:850;border:1px solid #cdd6e9;background:white;color:#304d88;border-radius:10px;padding:11px 13px}
.housing-actions button:disabled{opacity:.4;cursor:not-allowed}
.housing-actions button:hover{background:#eef3ff}
.housing-copy-status{font-size:12px;color:#50607d;min-height:1.2em;margin:9px 0 0}
.housing-copy-note{color:#67768f;font-size:11px;line-height:1.55;margin-top:9px}
.housing-prose{max-width:850px;margin:0 auto 50px;line-height:1.75;color:#34445e}
.housing-prose h2{font-size:clamp(22px,3.4vw,28px);color:#14213a;letter-spacing:-.035em;margin:27px 0 10px}
.housing-prose h3{font-size:19px;color:#15223d;margin:18px 0 9px}
.housing-prose p,.housing-prose li{font-size:15px;line-height:1.8}
.housing-prose a{color:#3a52ba;text-decoration:underline;text-underline-offset:3px}
.housing-prose .housing-example{background:#f3f6fc;border:1px solid #e3e9f4;border-left:4px solid #5268cf;border-radius:11px;padding:15px 18px;margin:22px 0}
.housing-prose .housing-example p{margin:5px 0}
.housing-related{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.housing-related a{display:inline-flex;align-items:center;gap:8px;padding:10px 15px;border:1px solid #d6def0;border-radius:11px;color:#304d8b;text-decoration:none;background:#f7f9ff;font-weight:750;font-size:13px}
@media(max-width:860px){.housing-main-grid{grid-template-columns:1fr;gap:15px}}
@media(max-width:540px){.housing-panel{padding:18px 12px;margin:18px 0 32px;border-radius:18px}.housing-form,.housing-results{padding:17px 13px}.housing-field-grid{grid-template-columns:1fr}.housing-field-grid .housing-full{grid-column:auto}.housing-payment{font-size:34px}.housing-stress{padding:15px 12px}.housing-prose{padding:0 2px}.housing-actions button{flex:1 1 130px}}
@media print{@page{size:A4;margin:13mm}body{background:white!important}.site-header,.site-footer,.page-hero,.housing-form,.housing-actions,.housing-prose,.housing-copy-status,.housing-copy-note{display:none!important}.housing-panel{border:0;box-shadow:none;background:#fff;padding:0}.housing-results{background:#fff;color:#17243c;box-shadow:none;border:1px solid #dae2f0}.housing-overline,.housing-small,.housing-breakdown h3,.housing-legend span,.housing-figure span{color:#34445e}.housing-figure{border:1px solid #dbe2ee;background:#fff}.housing-stress{break-inside:avoid}.housing-compare-track,.housing-bar-outer{-webkit-print-color-adjust:exact;print-color-adjust:exact}.housing-payment{font-size:34px}}