.budget-planner-page{background:var(--ink);color:var(--white)}.budget-planner-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.55fr);grid-gap:clamp(40px,9vw,150px);gap:clamp(40px,9vw,150px);padding:clamp(76px,12vw,155px) clamp(24px,9vw,160px) clamp(52px,8vw,110px);border-bottom:1px solid var(--line);background:linear-gradient(90deg,color-mix(in oklch,var(--ink) 94%,transparent),color-mix(in oklch,var(--ink-2) 88%,transparent)),repeating-linear-gradient(90deg,transparent 0 39px,color-mix(in oklch,var(--line) 40%,transparent) 40px),var(--ink)}.budget-planner-hero h1{max-width:11ch;margin:0;font-family:var(--sans);font-size:clamp(58px,8vw,126px);font-weight:800;line-height:.84;letter-spacing:-.05em}.budget-planner-hero>div>p:not(.eyebrow){max-width:47ch;margin:30px 0 0;color:var(--muted);font-size:clamp(18px,1.8vw,25px);line-height:1.5}.budget-planner-hero aside{align-self:end;max-width:32ch;padding:22px 0;border-top:1px solid var(--gold)}.budget-final-ledger article>span,.budget-planner-hero aside p,.budget-planner-hero aside span,.budget-section header>div:first-child>span,.budget-section-total span,.budget-summary span{font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase}.budget-planner-hero aside span{color:var(--gold);font-size:14px;font-weight:700}.budget-planner-hero aside p{margin:12px 0 0;color:var(--muted);font-size:15px;line-height:1.55}.budget-planner-controls{display:flex;justify-content:space-between;gap:32px;padding:28px clamp(24px,9vw,160px);border-bottom:1px solid var(--line);background:var(--ink-2)}.budget-details{display:grid;grid-template-columns:minmax(190px,1.35fr) minmax(170px,1fr) minmax(145px,.65fr);grid-gap:16px;gap:16px;flex:1 1}.budget-details label{display:grid;grid-gap:7px;gap:7px;color:var(--muted);font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.budget-details input{min-height:46px;width:100%;border:1px solid var(--line);border-radius:0;background:var(--ink);color:var(--white);padding:10px 12px;outline:0}.budget-details input:focus{border-color:var(--gold);box-shadow:0 0 0 2px color-mix(in oklch,var(--gold) 30%,transparent)}.budget-actions{display:flex;gap:10px;align-items:end}.budget-actions button{min-height:46px;border:1px solid var(--gold);border-radius:0;background:transparent;color:var(--gold);padding:0 15px;font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;cursor:pointer}.budget-actions button:hover{background:var(--gold);color:var(--blue)}.budget-overview{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:clamp(24px,6vw,90px);gap:clamp(24px,6vw,90px);padding:clamp(52px,7vw,100px) clamp(24px,9vw,160px);border-bottom:1px solid var(--line);background:var(--ink)}.budget-final-ledger h2,.budget-overview h2{max-width:12ch;margin:0;font-family:var(--sans);font-size:clamp(38px,5vw,72px);line-height:.9;letter-spacing:-.04em}.budget-scenario-tabs{display:flex;align-self:end;justify-content:flex-end;gap:1px}.budget-scenario-tabs button{min-width:110px;min-height:48px;border:1px solid var(--line);border-radius:0;background:var(--ink-2);color:var(--muted);font-family:var(--sans);font-size:15px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.budget-scenario-tabs button:hover,.budget-scenario-tabs button[aria-selected=true]{border-color:var(--gold);background:var(--gold);color:var(--blue)}.budget-summary{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.budget-summary>div{display:grid;grid-gap:9px;gap:9px;padding:22px 26px;border-right:1px solid var(--line);background:var(--ink-2)}.budget-summary>div:last-child{border-right:0}.budget-summary span{color:var(--muted);font-size:13px;font-weight:700}.budget-summary strong{font-family:var(--sans);font-size:clamp(34px,4vw,56px);line-height:.9;letter-spacing:-.03em}.budget-summary .is-positive{background:color-mix(in oklch,var(--gold) 18%,var(--ink-2))}.budget-summary .is-negative{background:color-mix(in oklch,oklch(55% .16 25) 18%,var(--ink-2))}.budget-sheet{padding:0 clamp(24px,9vw,160px) clamp(54px,8vw,100px);background:var(--paper);color:var(--blue)}.budget-columns{display:grid;grid-template-columns:minmax(180px,1fr) repeat(3,minmax(105px,.27fr));grid-gap:12px;gap:12px;align-items:center}.budget-columns-heading{padding:20px 18px 16px;color:color-mix(in oklch,var(--blue) 72%,var(--paper));font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.budget-columns-heading span:not(:first-child){text-align:right}.budget-section{padding:clamp(38px,5vw,64px) 0 0}.budget-section header{display:grid;grid-template-columns:minmax(180px,1fr) minmax(380px,.82fr);grid-gap:32px;gap:32px;padding:0 18px 20px;border-bottom:2px solid var(--blue)}.budget-section header>div:first-child{display:grid;grid-template-columns:42px 1fr;grid-column-gap:14px;column-gap:14px}.budget-section header>div:first-child>span{grid-row:span 2;color:var(--gold-deep);font-size:14px;font-weight:700;padding-top:4px}.budget-section h2{margin:0;font-family:var(--sans);font-size:clamp(30px,3.2vw,48px);line-height:.85;letter-spacing:-.03em}.budget-section header p{grid-column:2;max-width:52ch;margin:9px 0 0;color:color-mix(in oklch,var(--blue) 70%,var(--paper));font-size:15px;line-height:1.45}.budget-section-total{display:grid;grid-template-columns:minmax(140px,1fr) repeat(3,minmax(80px,.55fr));grid-gap:12px;gap:12px;align-items:end}.budget-section-total span{color:color-mix(in oklch,var(--blue) 70%,var(--paper));font-size:12px;font-weight:700}.budget-section-total strong{text-align:right;font-size:17px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.budget-row{min-height:53px;padding:7px 18px;border-bottom:1px solid color-mix(in oklch,var(--line) 75%,transparent)}.budget-row>span{font-size:16px}.budget-amount{display:flex;align-items:center;justify-content:flex-end;gap:5px;min-height:38px;border:1px solid transparent;color:color-mix(in oklch,var(--blue) 72%,var(--paper));font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.budget-amount:focus-within{border-color:var(--gold-deep);background:color-mix(in oklch,var(--gold) 14%,var(--paper))}.budget-amount input{width:100%;min-width:0;border:0;border-radius:0;background:transparent;color:var(--blue);padding:6px 0;text-align:right;font:inherit;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;outline:0}.budget-amount input::placeholder{color:color-mix(in oklch,var(--blue) 40%,var(--paper))}.budget-income{padding-bottom:0}.budget-income header{border-bottom-color:var(--gold-deep)}.budget-final-ledger{display:grid;grid-template-columns:.75fr 1.25fr;grid-gap:clamp(36px,8vw,135px);gap:clamp(36px,8vw,135px);padding:clamp(60px,10vw,130px) clamp(24px,9vw,160px);background:var(--ink-2)}.budget-final-ledger,.budget-final-ledger>div:last-child{border-top:1px solid var(--line)}.budget-final-ledger article{display:grid;grid-template-columns:145px 1fr;grid-gap:24px;gap:24px;padding:22px 0;border-bottom:1px solid var(--line)}.budget-final-ledger article>span{color:var(--gold);font-size:14px;font-weight:700}.budget-final-ledger dl{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;margin:0}.budget-final-ledger dl div{display:grid;grid-gap:4px;gap:4px}.budget-final-ledger dt{color:var(--muted);font-size:14px}.budget-final-ledger dd{margin:0;font-family:var(--sans);font-size:clamp(22px,2vw,32px);font-weight:700;line-height:1;letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.budget-disclosure{padding:24px clamp(24px,9vw,160px) 42px;background:var(--ink-2);color:var(--muted)}.budget-disclosure p{max-width:90ch;margin:0;font-size:13px;line-height:1.6}.budget-disclosure strong{color:var(--white)}@media(max-width:900px){.budget-final-ledger,.budget-overview,.budget-planner-hero{grid-template-columns:1fr}.budget-planner-hero aside{align-self:start}.budget-overview{gap:32px}.budget-scenario-tabs{justify-content:start}.budget-section header{grid-template-columns:1fr}.budget-section-total{max-width:600px}.budget-final-ledger>div:last-child{max-width:750px}.budget-details{grid-template-columns:1fr 1fr}.budget-details label:first-child{grid-column:1/-1}.budget-planner-controls{display:grid}.budget-actions{justify-content:flex-start}}@media(max-width:620px){.budget-planner-hero{padding-top:68px}.budget-planner-hero h1{font-size:clamp(54px,17vw,76px)}.budget-details{grid-template-columns:1fr}.budget-details label:first-child{grid-column:auto}.budget-actions{display:grid;grid-template-columns:1fr 1fr}.budget-actions button{padding:0 8px;font-size:12px}.budget-scenario-tabs{display:grid;grid-template-columns:repeat(3,1fr)}.budget-scenario-tabs button{min-width:0}.budget-summary{grid-template-columns:1fr}.budget-summary>div{border-right:0;border-bottom:1px solid var(--line)}.budget-summary>div:last-child{border-bottom:0}.budget-sheet{padding-right:14px;padding-left:14px;overflow:hidden}.budget-columns{grid-template-columns:minmax(122px,1fr) repeat(3,minmax(64px,.42fr));gap:5px}.budget-columns-heading{padding-right:5px;padding-left:5px;font-size:10px;letter-spacing:.04em}.budget-section{padding-top:42px}.budget-section header{gap:18px;padding-right:5px;padding-left:5px}.budget-section header>div:first-child{grid-template-columns:28px 1fr;column-gap:8px}.budget-section h2{font-size:34px}.budget-section header p{font-size:14px}.budget-section-total{grid-template-columns:minmax(110px,1fr) repeat(3,minmax(55px,.5fr));gap:5px}.budget-section-total span{font-size:10px}.budget-section-total strong{font-size:12px}.budget-row{min-height:48px;padding-right:5px;padding-left:5px}.budget-row>span{font-size:14px;line-height:1.2}.budget-amount{gap:2px;font-size:12px}.budget-amount input{font-size:14px}.budget-final-ledger article{grid-template-columns:1fr;gap:14px}.budget-final-ledger dl{gap:10px}.budget-final-ledger dt{font-size:12px}.budget-final-ledger dd{font-size:24px}}@media print{.budget-disclosure,.budget-final-ledger,.budget-overview,.budget-planner-controls,.budget-planner-hero aside,.site-footer,.site-header{display:none!important}.budget-planner-page{background:#fff!important;color:#11243d!important}.budget-planner-hero{display:block!important;padding:24px!important;background:#fff!important;border:0!important}.budget-planner-hero h1{font-size:42px!important}.budget-planner-hero>div>p:not(.eyebrow){color:#30425b!important}.budget-sheet{padding:0 24px!important}.budget-section{page-break-inside:avoid;break-inside:avoid}.budget-amount input{color:#11243d!important}.budget-section h2{font-size:28px!important}}