.tools-main{flex:1}.wrap{max-width:1280px;margin:0 auto;padding-left:clamp(24px,5vw,64px);padding-right:clamp(24px,5vw,64px)}.sec-pad{padding-top:clamp(56px,7vw,80px);padding-bottom:clamp(56px,7vw,80px)}.sec-pad-md{padding-top:clamp(40px,5vw,60px);padding-bottom:clamp(40px,5vw,60px)}.soft{background:var(--color-surface-soft)}.btn{white-space:nowrap;border-radius:var(--radius-button);font-family:var(--font-primary);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;font-size:15px;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn-primary{background:var(--color-primary);color:#fff;padding:13px 28px}.btn-primary:hover,.btn-primary:active{background:var(--color-primary-active)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-outline{background:var(--color-canvas);color:var(--color-ink);border-color:var(--color-hairline);padding:11px 22px}.btn-outline:hover{background:var(--color-surface-soft)}.btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.text-link{color:var(--color-ink);align-items:center;gap:6px;font-size:14px;font-weight:600;text-decoration:none;transition:color .15s;display:inline-flex}.text-link .arrow{transition:transform .15s}.text-link:hover{color:var(--color-primary)}.text-link:hover .arrow{transform:translate(2px)}.text-link svg{width:15px;height:15px}.text-link.lg{font-size:15px}.tools-hero{background:var(--color-surface-soft)}.tools-hero-inner{text-align:center;max-width:820px;margin:0 auto;padding:clamp(64px,9vw,100px) clamp(24px,5vw,48px)}.tools-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);font-size:13px;font-weight:700}.tools-hero h1{letter-spacing:-.025em;color:var(--color-ink);margin-top:14px;font-size:clamp(32px,5.5vw,50px);font-weight:700;line-height:1.1}.tools-hero .lede{color:var(--color-body);max-width:600px;margin:16px auto 0;font-size:clamp(15px,1.8vw,18px);line-height:1.65}.tools-hero .hero-cta{margin-top:28px}@media (max-width:639px){.tools-hero-inner{text-align:left}}.tool-cards{grid-template-columns:repeat(2,1fr);gap:24px;margin-top:40px;display:grid}.tool-card{border:1px solid var(--color-hairline);border-radius:var(--radius-card);background:var(--color-canvas);flex-direction:column;gap:0;padding:24px 24px 22px;text-decoration:none;transition:box-shadow .18s,transform .18s;display:flex}.tool-card:hover{box-shadow:var(--shadow-float);transform:translateY(-2px)}.tool-card-icon{background:var(--color-surface-soft);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.tool-card-icon svg{width:20px;height:20px;color:var(--color-ink)}.tool-card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.tc-time{color:var(--color-muted);background:var(--color-surface-soft);border-radius:var(--radius-chip);white-space:nowrap;padding:3px 10px;font-size:11px;font-weight:500}.tool-card h3{color:var(--color-ink);margin-top:16px;font-size:17px;font-weight:700}.tool-card p{color:var(--color-body);flex:1;margin-top:8px;font-size:14px;line-height:1.6}.tool-card-cta{color:var(--color-ink);align-items:center;gap:6px;margin-top:18px;font-size:13px;font-weight:600;transition:color .15s;display:inline-flex}.tool-card-cta .arrow{transition:transform .15s}.tool-card-cta svg{width:14px;height:14px}.tool-card:hover .tool-card-cta{color:var(--color-primary)}.tool-card:hover .tool-card-cta .arrow{transform:translate(2px)}.hub-section-head{margin-bottom:4px}.hub-section-head h2{color:var(--color-ink);font-size:22px;font-weight:700}.hub-section-head p{color:var(--color-body);margin-top:8px;font-size:15px;line-height:1.55}@media (max-width:639px){.tool-cards{grid-template-columns:1fr}}.tools-crosslinks{flex-wrap:wrap;align-items:center;gap:20px 24px;display:flex}.tools-crosslinks .sep{color:var(--color-hairline)}@media (max-width:639px){.tools-crosslinks{flex-direction:column;align-items:flex-start;gap:14px}.tools-crosslinks .sep{display:none}}.calc-page{background:var(--color-canvas)}.calc-hero{background:var(--color-surface-soft)}.calc-hero-inner{max-width:680px;padding:clamp(48px,7vw,80px) clamp(24px,5vw,48px) clamp(32px,4vw,48px)}.calc-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--color-muted);font-size:12px;font-weight:700}.calc-hero h1{letter-spacing:-.02em;color:var(--color-ink);margin-top:10px;font-size:clamp(28px,4.5vw,40px);font-weight:700;line-height:1.12}.calc-hero .calc-lede{color:var(--color-body);max-width:520px;margin-top:12px;font-size:15px;line-height:1.65}.calc-body{grid-template-columns:480px 1fr;align-items:start;gap:clamp(32px,4vw,56px);max-width:1200px;margin:0 auto;padding:clamp(40px,5vw,64px) clamp(24px,5vw,64px);display:grid}@media (max-width:1023px){.calc-body{grid-template-columns:1fr;gap:40px}}.input-panel{background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--radius-card);padding:28px 26px}.input-panel h2{color:var(--color-ink);margin-bottom:22px;font-size:16px;font-weight:700}.field-row{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.field-row:last-of-type{margin-bottom:0}.field-row label{color:var(--color-ink);align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.field-row input[type=text],.field-row select,.field-row textarea{font-family:var(--font-primary);color:var(--color-ink);background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--radius-button);appearance:none;width:100%;padding:10px 13px;font-size:15px;transition:border-color .15s}.field-row input[type=text]:focus,.field-row select:focus{border-color:var(--color-ink);border-width:2px;outline:none;padding:9px 12px}.field-row input[type=text]:focus-visible,.field-row select:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.input-prefix{position:relative}.input-prefix span{color:var(--color-muted);pointer-events:none;font-size:15px;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.field-row .input-prefix input[type=text]{padding-left:28px}.field-row .input-prefix input[type=text]:focus{padding-left:27px}.input-suffix{position:relative}.input-suffix span{color:var(--color-muted);pointer-events:none;font-size:14px;position:absolute;top:50%;right:13px;transform:translateY(-50%)}.field-row .input-suffix input[type=text]{padding-right:34px}.field-row .input-suffix input[type=text]:focus{padding-right:33px}.dp-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.field-hint{color:var(--color-muted);margin-top:3px;font-size:11px;line-height:1.45}.field-row select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236a6a6a' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.tip-btn{cursor:pointer;color:var(--color-muted);background:0 0;border:none;align-items:center;padding:0;transition:color .15s;display:inline-flex}.tip-btn:hover{color:var(--color-ink)}.tip-btn svg{width:14px;height:14px}.tip-wrap{display:inline-flex;position:relative}.tip-panel{z-index:20;background:var(--color-ink);color:#fff;pointer-events:none;border-radius:8px;width:220px;padding:10px 12px;font-size:12px;line-height:1.55;display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.tip-panel:after{content:"";border:6px solid #0000;border-top-color:var(--color-ink);position:absolute;top:100%;left:50%;transform:translate(-50%)}.tip-wrap.open .tip-panel{display:block}.adv-toggle{cursor:pointer;font-family:var(--font-primary);color:var(--color-muted);background:0 0;border:none;align-items:center;gap:6px;padding:14px 0 0;font-size:13px;font-weight:600;transition:color .15s;display:flex}.adv-toggle:hover{color:var(--color-ink)}.adv-toggle svg{width:14px;height:14px;transition:transform .18s}.adv-toggle.open svg{transform:rotate(180deg)}.adv-panel{opacity:0;max-height:0;transition:max-height .22s,opacity .18s;overflow:hidden}.adv-panel.open{opacity:1;max-height:600px}.adv-inner{border-top:1px solid var(--color-hairline);flex-direction:column;gap:0;margin-top:16px;padding-top:16px;display:flex}.field-divider{border:none;border-top:1px solid var(--color-hairline);margin:20px 0}.calc-btn{background:var(--color-primary);color:#fff;border-radius:var(--radius-button);width:100%;font-size:15px;font-family:var(--font-primary);cursor:pointer;border:none;margin-top:22px;padding:14px;font-weight:600;transition:background .15s}.calc-btn:hover{background:var(--color-primary-active)}.calc-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.role-toggle{border:1px solid var(--color-hairline);border-radius:var(--radius-button);gap:0;margin-bottom:20px;display:flex;overflow:hidden}.role-btn{font-family:var(--font-primary);color:var(--color-muted);cursor:pointer;background:0 0;border:none;flex:1;padding:10px 0;font-size:14px;font-weight:600;transition:background .15s,color .15s}.role-btn[aria-checked=true]{background:var(--color-ink);color:#fff}.role-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.slider-row{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.slider-row label{color:var(--color-ink);font-size:13px;font-weight:600}.slider-val{color:var(--color-ink);font-size:22px;font-weight:700}.slider-val span{color:var(--color-muted);margin-left:4px;font-size:14px;font-weight:500}input[type=range]{width:100%;height:4px;accent-color:var(--color-primary);cursor:pointer}.result-panel{flex-direction:column;gap:0;display:flex}.res-fade{transition:opacity .15s}.result-card{background:var(--color-surface-soft);border:1px solid var(--color-hairline);border-radius:var(--radius-card);padding:28px 26px}.result-card .res-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted);font-size:12px;font-weight:700}.result-card .big-num{color:var(--color-ink);letter-spacing:-.03em;margin-top:8px;font-size:clamp(36px,5vw,52px);font-weight:700;line-height:1}.result-card .big-num-sub{color:var(--color-muted);margin-top:6px;font-size:14px}.res-breakdown{border-top:1px solid var(--color-hairline);margin-top:22px;padding-top:18px}.res-row{justify-content:space-between;align-items:baseline;gap:16px;padding:8px 0;display:flex}.res-row+.res-row{border-top:1px solid var(--color-hairline)}.res-row .lbl{color:var(--color-muted);font-size:13px}.res-row .val{color:var(--color-ink);font-size:14px;font-weight:600}.res-row .val.pmi{color:#b45c38}.res-note{color:var(--color-muted);margin-top:14px;font-size:12px;line-height:1.5}.res-note a{color:var(--color-muted);text-decoration:underline}.conforming-note{color:var(--color-muted);background:#fff8f5;border:1px solid #f0c4b0;border-radius:8px;margin-top:10px;padding:10px 12px;font-size:12px;line-height:1.5}.result-empty{background:var(--color-surface-soft);border:1px dashed var(--color-hairline);border-radius:var(--radius-card);text-align:center;padding:40px 28px}.result-empty p{color:var(--color-muted);font-size:14px;line-height:1.6}.amort-wrap{border-top:1px solid var(--color-hairline);margin-top:24px;padding-top:20px}.amort-wrap h3{color:var(--color-ink);margin-bottom:12px;font-size:14px;font-weight:700}.amort-table{border-collapse:collapse;width:100%;font-size:13px}.amort-table th{text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);text-align:right;border-bottom:1px solid var(--color-hairline);padding:6px 8px;font-size:11px;font-weight:700}.amort-table th:first-child{text-align:left}.amort-table td{text-align:right;color:var(--color-ink);border-bottom:1px solid var(--color-hairline);padding:7px 8px}.amort-table td:first-child{text-align:left;color:var(--color-muted);font-weight:600}.amort-table tr.hidden-row{display:none}.amort-table.show-all tr.hidden-row{display:table-row}.amort-expand{font-family:var(--font-primary);color:var(--color-muted);cursor:pointer;background:0 0;border:none;margin-top:10px;padding:0;font-size:13px;font-weight:600;transition:color .15s}.amort-expand:hover{color:var(--color-ink)}.afford-result{flex-direction:column;gap:14px;display:flex}.afford-card{border:1px solid var(--color-hairline);border-radius:var(--radius-card);background:var(--color-canvas);padding:20px 22px}.afford-card .ac-label{text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted);font-size:12px;font-weight:700}.afford-card .ac-price{color:var(--color-ink);letter-spacing:-.02em;margin-top:6px;font-size:clamp(28px,4vw,38px);font-weight:700;line-height:1}.afford-card.primary{background:var(--color-surface-soft)}.afford-card .ac-sub{color:var(--color-muted);margin-top:6px;font-size:13px;line-height:1.5}.afford-debt-warn{color:var(--color-body);background:#fff8f5;border:1px solid #f0c4b0;border-radius:10px;padding:14px 16px;font-size:13px;line-height:1.6}.rvb-headline{color:var(--color-ink);margin-bottom:18px;font-size:clamp(17px,2.5vw,21px);font-weight:700;line-height:1.3}.rvb-headline.saves{color:var(--color-ink)}.rvb-compare{grid-template-columns:1fr 1fr;gap:12px;display:grid}.rvb-side{background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--radius-card);padding:16px 18px}.rvb-side .rs-label{text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted);font-size:11px;font-weight:700}.rvb-side .rs-val{color:var(--color-ink);letter-spacing:-.02em;margin-top:6px;font-size:24px;font-weight:700}.rvb-note{color:var(--color-muted);margin-top:14px;font-size:12px;line-height:1.5}.cc-section{margin-bottom:22px}.cc-section h3{color:var(--color-ink);margin-bottom:10px;font-size:14px;font-weight:700}.cc-total-row{border-top:2px solid var(--color-ink);justify-content:space-between;align-items:baseline;margin-top:10px;padding:12px 0 0;display:flex}.cc-total-row .lbl{color:var(--color-ink);font-size:14px;font-weight:700}.cc-total-row .val{color:var(--color-ink);font-size:20px;font-weight:700}.cc-notice{color:var(--color-muted);background:#f0f9f0;border:1px solid #b8dcb8;border-radius:8px;margin-top:14px;padding:10px 12px;font-size:12px;line-height:1.55}.lead-wrap{background:var(--color-surface-soft);border:1px solid var(--color-hairline);border-radius:var(--radius-card);margin-top:20px;padding:28px 26px}.lead-wrap h3{color:var(--color-ink);font-size:16px;font-weight:700}.lead-wrap p.lead-body{color:var(--color-body);margin-top:8px;font-size:14px;line-height:1.6}.lead-form{flex-direction:column;gap:12px;margin-top:18px;display:flex}.lead-field{flex-direction:column;gap:5px;display:flex}.lead-field label{color:var(--color-ink);font-size:13px;font-weight:600}.lead-field label .opt{color:var(--color-muted);font-weight:400}.lead-field input{font-family:var(--font-primary);color:var(--color-ink);background:var(--color-canvas);border:1px solid var(--color-hairline);border-radius:var(--radius-button);appearance:none;width:100%;padding:10px 13px;font-size:15px;transition:border-color .15s}.lead-field input:focus{border-color:var(--color-ink);border-width:2px;outline:none;padding:9px 12px}.lead-field input:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.lead-field input.invalid{border-color:#b42318}.lead-field .field-err{color:#b42318;font-size:12px;display:none}.lead-field .field-err.on{display:block}.lead-tcpa{color:var(--color-muted);font-size:11px;line-height:1.5}.lead-submit{margin-top:4px}.lead-submit .btn-primary{width:100%}.lead-error{color:var(--color-body);margin-top:10px;font-size:13px;line-height:1.5}.lead-success{color:var(--color-body);background:#f0f9f0;border:1px solid #b8dcb8;border-radius:10px;padding:16px;font-size:15px;line-height:1.6}.lead-disclaimer{color:var(--color-muted);margin-top:12px;font-size:11px}.lead-disclaimer a{color:var(--color-muted);text-decoration:underline}@media print{.calc-btn,.lead-wrap,.adv-toggle,.amort-expand{display:none}.adv-panel{opacity:1;max-height:none}.amort-table tr.hidden-row{display:table-row}.input-panel{border:none;padding:0}.result-card{border:1px solid #ccc}}@media (prefers-reduced-motion:reduce){.res-fade,.adv-panel,.tip-panel{transition:none}}
