.calculator-heading{margin-bottom:30px;max-width:900px}
.calculator-heading h1{font-size:clamp(2rem,3.6vw,2.8rem);line-height:1.12}
.calculator-heading .lead{margin-bottom:0}
.calculator-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:26px;align-items:start;max-width:1120px}
.calculator-form{border:1px solid var(--line);border-radius:var(--radius);background:white;padding:30px}
.calculator-form-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:27px}
.calculator-form-heading h2{font-size:1.5rem;margin:0;letter-spacing:-.025em}
.calculator-form-heading>span{font-size:.8125rem;color:var(--muted);white-space:nowrap}
.calculator-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 20px;align-items:start}
.calculator-fields label{display:grid;gap:9px;font-size:.875rem;font-weight:500;min-width:0}
.calculator-fields input{font-size:1.375rem;line-height:1.3;padding:14px;font-weight:500;min-height:55px;font-variant-numeric:tabular-nums}
.calculator-field-hint{font-size:.875rem;color:var(--muted);font-weight:400;line-height:1.5}
.calculator-fields .calculator-date{grid-column:1/-1}
.calculator-date>span:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.calculator-date small{font-weight:400;font-size:.8125rem;color:var(--muted)}
.calculator-date input{font-size:1.125rem}
#calc-start-date,#calc-result-title{scroll-margin-top:125px}
.calculation-date{display:grid;gap:9px;padding-top:21px;color:#d1e0ed}
.calculation-date>span:first-child{font-size:.875rem;line-height:1.5}
.calculation-date>strong{font-size:1.375rem;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1.3}
.calculation-date-hint{font-size:.875rem;line-height:1.6;color:#bcd0e3}
.calculator-presets{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:25px 0}
.calculator-presets>span{font-size:.875rem;color:var(--muted)}
.calculator-presets button{border:1px solid #dce5ee;border-radius:7px;min-height:40px;background:#f5f8fb;color:#46637e;font-size:.875rem;padding:8px 11px}
.calculator-presets button:hover{background:#edf3fc}
.calculator-presets button[aria-pressed=true]{background:#eaf2ff;border-color:#adc7ed;color:var(--blue)}
.calculator-form>.button{width:100%;justify-content:space-between;min-height:48px}
.calculator-form-note{color:var(--muted);font-size:.875rem;line-height:1.65;margin:19px 0 0}
.calculation-result{position:sticky;top:108px;border-radius:var(--radius);background:var(--navy);color:white;padding:32px}
.calculation-result h2{font-size:1rem;letter-spacing:0;line-height:1.5;color:#d2e1f0;font-weight:400;margin:0 0 12px}
.calculation-result output{display:block;font-size:clamp(2.2rem,4vw,3.125rem);line-height:1.15;letter-spacing:-.04em;font-weight:600;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.calculation-scenario{font-size:.875rem;color:#c2d4e6;line-height:1.5;margin:12px 0 0}
.cost-bar{display:flex;height:10px;border-radius:6px;overflow:hidden;margin:27px 0 22px;background:#2a4b6e}
.cost-bar>span{display:block;height:100%;flex-shrink:0}
.cost-principal,.mint-dot{background:var(--mint)}
.cost-interest,.blue-dot{background:#82aff6}
.cost-fees,.amber-dot{background:#efc28b}
.calculation-breakdown{margin:0}
.calculation-breakdown>div{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 18px;padding:14px 0;border-bottom:1px solid #385877;font-size:1rem;line-height:1.45}
.calculation-breakdown dt{display:flex;align-items:center;color:#d1e0ed;gap:9px}
.calculation-breakdown dd{margin:0 0 0 auto;max-width:100%;overflow-wrap:anywhere;text-align:right;font-weight:500;font-variant-numeric:tabular-nums}
.dot{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}
.calculation-result [data-calculator-catalog]{width:100%;margin-top:24px;min-height:48px;justify-content:space-between;background:var(--mint);border-color:var(--mint);color:#20462e}
.calculation-result [data-calculator-catalog]:hover{background:#c9ebaf;border-color:#c9ebaf}
.calculation-disclaimer{font-size:.875rem;line-height:1.65;color:#c2d4e6;margin:19px 0 0}
.calc-error{color:#ffe4bc;background:#ffffff0b;border-left:3px solid #e3bd80;padding:12px 15px;font-size:.875rem;line-height:1.6;margin:20px 0 0}
.calculator-explainer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:42px;max-width:1120px;margin:42px 0 65px;padding-top:30px;border-top:1px solid var(--line)}
.calculator-explainer h2{font-size:1.625rem;line-height:1.25;margin:0}
.calculator-explainer p{font-size:1rem;line-height:1.7;color:#4c6277}
.calculator-explainer .eyebrow{font-size:.75rem;line-height:1.5;margin-bottom:14px}
.calculator-explainer .calculator-formula{padding:17px 20px;border:1px solid #dce6f0;border-radius:10px;background:#edf3f9;color:#2a4d70;font-weight:500;line-height:1.65}
.calculator-explainer a{font-size:.875rem}
.calculator-terms{max-width:1120px;margin:36px 0}
.calculator-terms-heading h2{font-size:1.75rem;line-height:1.3;letter-spacing:-.025em;margin:0 0 13px}
.calculator-terms-heading p{font-size:1rem;line-height:1.7;color:var(--muted);max-width:810px;margin:0 0 23px}
.calculator-term-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:18px}
.calculator-term{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);padding:23px 25px;background:white;color:var(--ink);min-width:0}
.calculator-term:hover{border-color:#a8bfd8;background:#f8fbff;text-decoration:none}
.calculator-term[aria-current=true]{border-color:#afc6e5;background:#edf4ff}
.calculator-term-caption{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:.875rem;line-height:1.5;color:#54718e;margin-bottom:17px}
.calculator-term-caption>span{color:var(--blue);font-size:1.125rem}
.calculator-term-days{font-size:1.5rem;line-height:1.2;letter-spacing:-.02em;font-weight:500;margin-bottom:20px}
.calculator-term-label{font-size:.875rem;line-height:1.5;color:var(--muted);padding-top:18px;border-top:1px solid #dce6f0;margin-bottom:8px}
.calculator-term-total{font-size:1.75rem;line-height:1.25;letter-spacing:-.035em;font-weight:600;color:#244a75;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.calculator-term-interest,.calculator-term-date{font-size:.875rem;line-height:1.6;color:#59738d;margin-top:9px}
.calculator-term-date{margin-top:15px;padding-top:14px;border-top:1px solid #dce6f0}
.calculator-terms-note{font-size:.875rem;line-height:1.7;max-width:930px;margin:19px 0 0;color:var(--muted)}
.calculator-terms-error{padding:20px 23px;background:#eaf1f8;border-radius:10px;font-size:1rem;line-height:1.65;color:#516b84}
@media(max-width:900px){
.calculator-layout{grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:20px}
.calculator-form,.calculation-result{padding:24px}
.calculator-form-heading{align-items:start;flex-direction:column;gap:8px}
.calculator-fields{gap:21px 16px}
.calculator-fields input{font-size:1.1875rem;padding:12px}
.calculation-breakdown>div{font-size:.9375rem;gap:12px}
.calculation-result output{font-size:2.5rem}
.calculator-explainer{gap:28px}
}
@media(max-width:700px){
.calculator-layout{grid-template-columns:1fr}
.calculator-form-heading{flex-direction:row;align-items:center;gap:15px}
.calculation-result{position:static}
.calculation-result output{font-size:2.875rem}
.calculator-explainer{grid-template-columns:1fr;gap:22px;margin-top:32px}
.calculation-breakdown>div{font-size:1rem}
.calculator-term-options{grid-template-columns:1fr}
.calculator-term{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;align-items:baseline}
.calculator-term-caption,.calculator-term-date{grid-column:1/-1}
.calculator-term-days{grid-column:1;grid-row:2/4;margin-bottom:0;align-self:center}
.calculator-term-label,.calculator-term-total,.calculator-term-interest{grid-column:2}
.calculator-term-label{padding-top:0;border:0}
.calculator-term-total{font-size:1.5rem}
.calculator-terms-heading h2{font-size:1.5625rem}
}
@media(max-width:420px){
.calculator-form,.calculation-result{padding:22px 20px}
.calculator-form-heading{flex-direction:column;align-items:start;gap:8px}
.calculator-fields{gap:20px 14px}
.calculator-presets>span{width:100%}
.calculation-result output{font-size:2.625rem}
.calculator-form-heading h2{font-size:1.375rem}
.calculator-explainer .calculator-formula{padding:16px}
}
