.goals-page{max-width:1240px;margin:auto;padding:44px 24px 80px}.goals-page [hidden]{display:none!important}.goals-hero{max-width:760px;margin-bottom:26px}.goals-hero h1{font-size:clamp(34px,5vw,60px);line-height:1.08;letter-spacing:-2px;margin:0}.goals-hero h1 span{color:var(--green)}.goals-hero>p{font-size:17px;color:var(--muted);max-width:650px;line-height:1.6;margin:14px 0 0}.budget-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:20px;align-items:start}.goal-form,.budget-results,.property-check{padding:26px;min-width:0}.goals-page h2{font-size:24px;line-height:1.2;letter-spacing:-.6px;margin:0}.goal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px;margin-top:20px}.goal-grid label{display:block;min-width:0;font-size:13px;font-weight:750}.goal-grid label>span{display:block;color:var(--muted);font-size:11px;font-weight:500;margin-top:3px}.goal-grid input,.goal-grid select{width:100%;min-width:0;box-sizing:border-box;margin-top:8px;border:1px solid #ede9df;background:#f5f2e9;border-radius:9px;padding:12px;font:inherit;font-size:16px;min-height:48px;color:var(--ink)}.goal-grid select{padding-right:24px}.goal-grid input:focus-visible,.goal-grid select:focus-visible,.goals-page button:focus-visible,.goals-page summary:focus-visible{outline:3px solid #ede9df;outline-offset:3px}.goal-help{color:var(--muted);font-size:13px;line-height:1.6}.goal-note{background:var(--mint);border:1px solid #ede9df;color:var(--green2);padding:13px 15px;border-radius:10px;font-size:13px;line-height:1.6}.goal-details{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.goal-details>summary{cursor:pointer;font-size:14px;font-weight:750;line-height:1.5;min-height:30px}.goal-details>summary>span{display:block;font-size:12px;font-weight:500;color:var(--muted);margin:5px 0 0 16px}.budget-results{border-color:#ede9df;background:linear-gradient(145deg,#f5f2e9,#fff)}.budget-price{display:block;font-size:clamp(32px,4vw,49px);line-height:1.15;letter-spacing:-1.5px;color:var(--green);margin:16px 0 8px;overflow-wrap:anywhere}.budget-results>p{font-size:13px;line-height:1.65}.budget-breakdown{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:20px 0;padding:12px 0}.budget-breakdown>div{display:flex;justify-content:space-between;gap:18px;font-size:13px;padding:6px 0}.budget-breakdown strong{font-variant-numeric:tabular-nums;text-align:right}.budget-breakdown .cash-total{border-top:1px solid var(--line);margin-top:8px;padding-top:12px;font-weight:800}.return-results{display:grid;grid-template-columns:1fr 1fr;gap:14px}.return-results small,.return-results strong,.return-results span{display:block}.return-results small{font-size:12px;color:var(--muted);line-height:1.4}.return-results strong{font-size:25px;letter-spacing:-.7px;margin:5px 0}.return-results span{font-size:11px;color:var(--muted);line-height:1.5}.property-check{margin-top:24px}.property-check>summary{cursor:pointer;line-height:1.5}.property-check>summary>.eyebrow{display:inline-block}.property-check>summary>strong{display:block;font-size:23px;line-height:1.25;margin:7px 0;letter-spacing:-.5px}.property-check>summary>.goal-help{display:block;margin:0}.goal-section-head{display:flex;justify-content:space-between;align-items:start;gap:18px}.property-intro{margin-top:22px}.property-intro p{margin:0;max-width:600px}.property-intro button{white-space:nowrap}.goal-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:start}.goal-score{background:#f5f2e9;border:1px solid var(--line);border-radius:14px;padding:20px;margin-top:20px;min-width:0}.goal-score h2{font-size:22px}.goal-score>p{font-size:13px;line-height:1.6}.current-metrics{display:grid;gap:9px;margin-top:16px}.current-metrics>div{display:grid;grid-template-columns:1fr auto;gap:5px 14px;padding:11px 0;border-bottom:1px solid var(--line)}.current-metrics small{font-size:12px;color:var(--muted);align-self:center}.current-metrics strong{font-size:18px;text-align:right}.current-metrics span{font-size:12px;grid-column:1/-1}.goal-pass{color:var(--green)}.goal-miss{color:#955026}.property-answers{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.property-answers article{background:var(--mint);border:1px solid #ede9df;border-radius:13px;padding:20px;min-width:0}.property-answers small{display:block;font-size:12px;font-weight:750}.property-answers strong{display:block;font-size:29px;color:var(--green);margin:7px 0;overflow-wrap:anywhere}.property-answers p{font-size:13px;line-height:1.6;margin:8px 0}.property-answers button{margin-top:10px}.optimizer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}.optimizer-grid article{border:1px solid var(--line);border-radius:12px;padding:15px;background:#f5f2e9;min-width:0}.optimizer-grid small{font-size:12px;font-weight:750;color:var(--muted)}.optimizer-grid strong{display:block;font-size:18px;color:var(--green);line-height:1.4;margin:10px 0}.optimizer-grid button{min-height:44px;border:1px solid #ede9df;background:var(--mint);color:var(--green2);border-radius:8px;padding:10px 14px;font-size:13px;font-weight:750;cursor:pointer}.goals-page button:disabled{opacity:.5;cursor:default}.goal-method{max-width:900px;margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}.goal-method h2{font-size:18px}.goal-method p{font-size:13px;line-height:1.7;color:var(--muted)}.goal-method a{color:var(--green);text-decoration:underline}#loadStatus:empty{display:none}
@media(max-width:900px){.budget-layout,.goal-layout{grid-template-columns:1fr}.goal-score{margin-top:0}.budget-results{max-width:none}}
@media(max-width:560px){.goals-page{padding:28px 16px 60px}.goals-hero{margin-bottom:22px}.goals-hero h1{letter-spacing:-1.2px}.goals-hero>p{font-size:15px}.goal-form,.budget-results,.property-check{padding:20px 17px}.goal-grid{grid-template-columns:1fr;gap:16px}.goals-page h2{font-size:22px}.goal-section-head{flex-direction:column}.goal-section-head button{width:100%}.property-answers,.optimizer-grid{grid-template-columns:1fr}.property-check>summary>strong{font-size:21px}.return-results{gap:12px}.return-results strong{font-size:23px}.budget-breakdown>div{font-size:12px}.goal-score{padding:16px}.budget-price{font-size:39px}}
@media(prefers-reduced-motion:reduce){.goals-page *{scroll-behavior:auto}}
.goal-grid label{display:flex;flex-direction:column}.goal-grid .goal-select{justify-content:space-between;gap:8px}.goal-grid .goal-select select{margin-top:auto}
