:root{--bg:#fff;--panel:#fff;--border:#dbe3e9;--text:#101d28;--muted:#657585;--green:#287765;--header-h:150px}*{box-sizing:border-box}html,body{margin:0;background:#fff;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px}.fixed-header{position:fixed;z-index:50;top:0;left:0;right:0;height:var(--header-h);background:#fff;border-bottom:1px solid var(--border);box-shadow:0 5px 20px rgba(19,43,61,.07)}.header-inner{width:min(920px,100%);height:100%;margin:auto;padding:20px 34px;display:grid;grid-template-columns:minmax(170px,1fr) minmax(360px,1.65fr);gap:38px;align-items:center}.logo{display:block;width:100%;max-width:245px;height:auto}.header-title{min-width:0;border-left:1px solid var(--border);padding-left:38px}.kicker{color:var(--green);font-size:15px;font-weight:850;letter-spacing:.15em;white-space:nowrap}.header-title h1{font:40px/1.05 Georgia,serif;margin:10px 0 0;letter-spacing:-.02em;white-space:nowrap}main{width:min(920px,100%);margin:auto;padding:calc(var(--header-h) + 48px) 34px 50px}.intro{margin-bottom:42px}.intro p{color:var(--muted);font-size:20px;line-height:1.55;margin:0}.panel{background:var(--panel);border:1px solid var(--border);box-shadow:0 10px 30px rgba(19,43,61,.07);border-radius:24px;padding:34px;margin:0 0 34px}.field{padding:0 0 28px;margin:0 0 28px;border-bottom:1px solid var(--border)}.field:last-child{padding:0;margin:0;border:0}label,legend,.question b{font-size:21px;font-weight:800}.labelrow{display:flex;justify-content:space-between;align-items:center}.labelrow output{font:28px Georgia,serif;color:var(--green)}input[type=range]{width:100%;margin:24px 3px 5px;accent-color:var(--green)}.money{height:88px;border:1.5px solid #bdcad3;background:#fbfcfd;border-radius:13px;display:flex;align-items:center;margin-top:18px;padding:0 24px;gap:18px}.money:focus-within{border-color:var(--green);box-shadow:0 0 0 3px #2877651c}.money span{color:var(--muted);font-size:26px}.money input{width:100%;background:transparent;border:0;outline:0;color:var(--text);font-size:25px;font-weight:700;letter-spacing:.06em}fieldset{border:0;padding:0;margin:0}legend{margin-bottom:19px}.options{display:grid;gap:14px}.property{grid-template-columns:1fr 1fr}.options button{min-height:68px;background:#fff;border:1.5px solid #b9c8d2;border-radius:12px;color:#536577;font-size:19px;font-weight:800;padding:12px;cursor:pointer}.options button:hover{border-color:var(--green);color:var(--green)}.options button.selected{background:var(--green);border-color:var(--green);color:#fff}.question{padding:0 0 29px;margin:0 0 29px;border-bottom:1px solid var(--border)}.question:last-child{border:0;margin:0;padding:0}.question b,.question small{display:block}.question small{color:var(--muted);font-size:17px;margin-top:8px}.yesno{grid-template-columns:1fr 1fr;margin-top:20px}.status{border:1.5px solid;border-radius:24px;padding:34px;margin-bottom:34px}.status.eligible{background:#ecf8f3;border-color:#69a996}.status.ineligible{background:#fff0f1;border-color:#d78a93}.status.review{background:#fff8e8;border-color:#d9ba70}.status div{font-weight:900;letter-spacing:.2em;color:#23735f;font-size:18px}.status.ineligible div{color:#aa3543}.status.review div{color:#8b6718}.status p{font-size:20px;line-height:1.45;margin:13px 0 0}.estimate h2{font-size:17px;letter-spacing:.18em;color:var(--muted);margin:0 0 25px}dl{margin:0}dl>div{display:flex;justify-content:space-between;gap:25px;margin:15px 0;font-size:20px}dt{color:#526474;font-weight:650}dd{font:22px Georgia,serif;margin:0;white-space:nowrap}.total{border-top:1px solid var(--border);padding-top:25px;margin-top:25px}.total dt{color:var(--text);font-weight:850}.total dd{color:var(--green);font-size:31px}.disclaimer{color:#6b7b89;font-size:17px;line-height:1.55;margin:27px 0 0}footer{text-align:center;color:#71808c;font-size:14px;padding-top:10px}@media(max-width:600px){:root{--header-h:100px}.header-inner{padding:13px 18px;grid-template-columns:105px 1fr;gap:15px}.logo{max-width:105px}.header-title{padding-left:15px}.kicker{font-size:9px;letter-spacing:.09em}.header-title h1{font-size:24px;margin-top:6px;white-space:normal}main{padding:calc(var(--header-h) + 27px) 18px 35px}.intro{margin-bottom:25px}.intro p{font-size:17px}.panel,.status{padding:22px 18px;border-radius:18px;margin-bottom:22px}label,legend,.question b{font-size:17px}.money{height:65px}.money input{font-size:20px}.options{gap:9px}.options button{font-size:15px;min-height:58px}.status p{font-size:17px}dl>div{font-size:16px}dd{font-size:17px}.total dd{font-size:25px}.disclaimer{font-size:14px}}