/* Shared design: same palette, typography and layout as the site's mortgage simulators. */
:root{--ink:#12251f;--forest:#173e32;--forest-2:#0d2c24;--gold:#c9a66b;--ivory:#f6f1e7;--white:#fffdf8;--muted:#627068;--line:#dfd9cc;font:16px Arial,Helvetica,sans-serif;color:var(--ink);background:var(--white)}
*{box-sizing:border-box}body{margin:0}main{padding:clamp(48px,6vw,86px) clamp(22px,5vw,76px) clamp(76px,9vw,120px);background:linear-gradient(180deg,var(--ivory) 0 400px,var(--white) 400px)}main>div,main>section,main>details{max-width:1380px;margin-left:auto;margin-right:auto}p{line-height:1.7}a{color:var(--forest)}button,input,a{touch-action:manipulation}button,.button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.intro{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-bottom:32px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:#8a6a37;margin:0 0 20px}h1{font:500 clamp(42px,5vw,68px)/1 Georgia,serif;letter-spacing:-.045em;margin:0}h2{font:500 28px/1.2 Georgia,serif;margin:0}.intro>div>p:last-child{max-width:760px;font-size:16px;color:var(--muted);margin:20px 0 0}.outline{border:1px solid #cfc8bb;border-radius:3px;background:var(--white);padding:13px 18px;font-size:14px;font-weight:700;color:var(--forest);white-space:nowrap}.outline:hover{background:white;border-color:var(--forest)}.notice{background:var(--ivory);border-left:2px solid var(--gold);padding:18px 20px;font-size:14px;line-height:1.65;color:var(--muted);margin-bottom:28px}
.workspace{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;align-items:start}.workspace>form{min-width:0;padding:clamp(25px,3.5vw,46px);background:white;border:1px solid var(--line);box-shadow:0 20px 60px #173e3212}.workspace>aside{min-width:0}.simulator-brand{display:flex;align-items:center;gap:12px;padding-bottom:24px;margin-bottom:30px;border-bottom:1px solid #e2ded5}.brand-logo{width:54px;height:54px;flex:0 0 54px;overflow:hidden;position:relative;border-radius:50%;background:#00372d;box-shadow:0 0 0 1px #c9a66b66}.brand-logo img{position:absolute;width:300px;height:auto;max-width:none;left:50%;top:50%;transform:translate(-50%,-44%)}.simulator-brand strong{display:block;font:500 20px Georgia,serif}.simulator-brand small{display:block;margin-top:5px;color:#8a6a37;font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:700}
.panel{background:white;border:1px solid var(--line);padding:clamp(25px,3.5vw,46px);margin-bottom:24px;border-radius:0}.workspace form>.panel{padding:0 0 28px;margin:0 0 28px;border:0;border-bottom:1px solid #e2ded5;background:transparent}.workspace form>.panel:last-child{margin-bottom:0;padding-bottom:0;border-bottom:0}.section-title{display:flex;align-items:flex-start;gap:16px;margin-bottom:24px}.section-title h2{padding-top:5px}.number{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border-radius:50%;background:var(--ivory);color:#8a6a37;font:500 21px Georgia,serif}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 20px}.fields>div{min-width:0}label{display:block;font-size:14px;font-weight:700;color:#344b43;line-height:1.45}.fields label{min-height:41px}.input-wrap{position:relative;margin-top:8px}.input-wrap input{width:100%;min-width:0;height:54px;background:var(--white);border:1px solid #cfc8bb;border-radius:3px;padding:0 54px 0 15px;font:600 19px Georgia,serif;color:var(--forest)}.input-wrap span{position:absolute;right:15px;top:50%;transform:translateY(-50%);font-size:14px;color:#92713c;pointer-events:none}input:focus{outline:2px solid var(--gold);outline-offset:2px}input[aria-invalid=true]{border-color:#a53024;background:#fff5f2}.help{font-size:14px;line-height:1.65;color:var(--muted);margin:12px 0 0}details{border-top:1px solid #e2ded5;padding-top:20px;margin-top:26px}summary{cursor:pointer;font-size:14px;font-weight:700;color:#344b43;line-height:1.6}details .fields{margin-top:20px}
.results{background:var(--forest);color:white;padding:clamp(26px,3.4vw,44px);box-shadow:0 25px 65px #173e3233;margin-bottom:24px;border-radius:0}.result-kicker{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:12px;line-height:1.5;text-transform:uppercase;letter-spacing:.14em;font-weight:700;color:#dfbd80}.result-main{padding:26px 0;border-bottom:1px solid #ffffff24}.result-label{font-size:15px;line-height:1.5;color:#e3e9e6;margin:0 0 10px}.amount{font:500 clamp(35px,4vw,52px)/1.12 Georgia,serif;letter-spacing:-.025em;overflow-wrap:anywhere}.results .small{font-size:14px;line-height:1.65;color:#bccbc4;margin:12px 0 0}.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#ffffff24;margin:26px 0}.result-grid>div{padding:24px;background:#12372c;min-width:0}.result-grid>div:last-child{background:var(--forest-2)}.result-grid .amount{font-size:clamp(25px,2.6vw,35px);color:#dfbd80}.monthly{padding:24px;background:var(--forest-2);margin-bottom:24px;border-left:2px solid var(--gold)}.monthly .amount{color:#dfbd80}.monthly>p:not(.small):not(.result-label){font-size:18px;line-height:1.8;margin:0}.breakdown{margin:0}.breakdown div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:13px 0;border-bottom:1px solid #ffffff1f;font-size:14px;line-height:1.5}.breakdown dt{color:#bccbc4}.breakdown dd{margin:0;text-align:right;font-weight:700;color:#dfbd80;white-space:nowrap}.warning{background:var(--ivory);border-left:2px solid var(--gold);color:#654b22;padding:18px;font-size:14px;line-height:1.65;margin-top:20px}.contact{box-shadow:0 20px 60px #173e3212}.contact p{font-size:14px;color:var(--muted)}.button{display:flex;align-items:center;justify-content:center;min-height:52px;padding:14px 22px;margin-top:14px;background:var(--forest);color:white;border-radius:4px;text-align:center;text-decoration:none;font-size:14px;font-weight:700;line-height:1.5}.button:hover{background:var(--forest-2)}.button.secondary{background:var(--white);border:1px solid #a9a99f;color:var(--forest)}.button.secondary:hover{border-color:var(--forest);background:var(--ivory)}.slider{margin:24px 0}.slider label{display:flex;justify-content:space-between;gap:12px}.slider output{white-space:nowrap;color:#8a6a37}.slider input{display:block;width:100%;accent-color:var(--forest);margin:18px 0 0;min-height:24px}.text-button{background:none;border:0;padding:0;color:var(--forest);font-size:14px;text-decoration:underline;line-height:1.5}
main>.panel{margin-top:28px}.table-wrap{overflow-x:auto;margin-top:24px}table{border-collapse:collapse;width:100%;font-size:14px;text-align:left;font-variant-numeric:tabular-nums}th{padding:16px;color:#627068;font-size:14px;line-height:1.4;background:var(--ivory);border-bottom:1px solid var(--line);font-weight:700}td{padding:18px 16px;border-bottom:1px solid #e2ded5;white-space:nowrap;line-height:1.5}td:first-child{white-space:normal;min-width:160px}tr.expected{background:var(--ivory);font-weight:700}td small{display:block;margin-top:6px;font-size:13px;font-weight:400;color:#8a6a37;white-space:normal}.methodology{background:var(--ivory);border:0;border-left:2px solid var(--gold)}.methodology p{font-size:14px;line-height:1.7;color:var(--muted)}
@media(max-width:1050px){.workspace{grid-template-columns:1fr}.result-grid .amount{font-size:35px}.fields label{min-height:0}}
@media(max-width:680px){main{padding:34px 16px 68px}.intro{align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:28px}h1{font-size:clamp(34px,11vw,46px);line-height:1.04}h2{font-size:25px}.eyebrow{font-size:12px;letter-spacing:.12em}.intro>div>p:last-child{font-size:16px}.workspace>form,.results,.panel{padding:22px 18px}.workspace{gap:24px}.fields,.result-grid{grid-template-columns:1fr}.fields label{min-height:0}.section-title{gap:13px}.number{width:38px;height:38px;flex-basis:38px}.simulator-brand{padding-bottom:20px;margin-bottom:24px}.simulator-brand small{font-size:12px;letter-spacing:.06em}.result-grid>div{padding:22px 18px}.result-grid .amount{font-size:32px}.amount{font-size:clamp(32px,9vw,43px)}.monthly{padding:20px 18px}.breakdown div{grid-template-columns:1fr;gap:5px}.breakdown dd{text-align:left;white-space:normal}.slider label{flex-wrap:wrap}.result-kicker{font-size:12px;letter-spacing:.1em}.notice{padding:18px;margin-bottom:24px}th,td{padding:14px 12px}.methodology{padding:22px 18px}}
@media print{.intro button,.contact,.experiments{display:none}main{padding:0;background:white}.workspace{display:block}.results{background:white;color:var(--ink);box-shadow:none;border:1px solid var(--line)}.results *{color:var(--ink)!important}.result-grid,.result-grid>div,.monthly{background:white}.panel,.workspace>form{box-shadow:none}.table-wrap{overflow:visible}}
