.budget-tool{max-width:1120px;margin:auto;padding:128px 48px 64px;color:#171314;font-family:var(--font-sans)}.budget-tool header{max-width:1024px;margin:0 auto 64px}.budget-tool h1{font:600 16px/1.5 var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:#7952b3;margin:0 0 24px}.budget-tool .budget-tagline{font:400 clamp(40px,5vw,72px)/1.08 Fraunces,serif;margin:0 0 24px}.budget-tool header>p:not([class]){font-size:24px;max-width:768px;margin-bottom:32px;color:#171314b3}.budget-tool p,.budget-tool li{line-height:1.65}.budget-tool .budget-note{background:#eee8f7;padding:24px;border-radius:12px;font-size:14px;margin:24px 0;line-height:1.65}.budget-tool form,.budget-tool .budget-results,.budget-tool .budget-method{max-width:896px;margin-left:auto;margin-right:auto}.budget-tool fieldset{border:0;border-top:1px solid #dcd2c7;padding:28px 0 0;margin:0 0 48px;min-width:0}.budget-tool legend,.budget-tool h2{font:400 32px/1.2 Fraunces,serif;margin:0 0 20px}.budget-tool fieldset>p{margin:0 0 24px;color:#171314b3;max-width:768px}.budget-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 32px}.budget-scenarios{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.budget-scenarios>section,.budget-scenarios>article{border:1px solid #dcd2c7;border-radius:18px;padding:24px;background:#fff}.budget-field{margin:0 0 24px}.budget-field:last-child{margin-bottom:0}.budget-field label{font-weight:600;line-height:1.5;display:block}.budget-field p{font-size:14px;margin:8px 0 12px;color:#171314b3}.budget-field input{display:block;width:100%;min-height:48px;border:1px solid #dcd2c7;border-radius:8px;padding:12px;background:#fffaf4;color:#171314}.budget-tool :focus-visible{outline:3px solid #7952B3;outline-offset:4px;scroll-margin-top:100px}.budget-tool .budget-error{color:#8c1d18}.budget-field [aria-invalid=true]{border:2px solid #8c1d18}.budget-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:28px}.budget-actions button{border:1px solid #171314;border-radius:10px;padding:16px 22px;min-height:56px;text-transform:uppercase;font-size:14px;letter-spacing:.06em;font-weight:600;background:#d4ff00;color:#171314}.budget-actions button:hover{background:#7952b3;color:#171314}.budget-actions button+button{background:transparent;color:#7952b3;border-color:#7952b3}.budget-actions button+button:hover{background:#eee8f7;color:#7952b3}.budget-tool .budget-results{margin-top:24px;margin-bottom:48px;scroll-margin-top:100px}.budget-results>p{margin:0 0 24px;color:#171314b3}.budget-results h3{font:400 28px Fraunces,serif;margin:0 0 20px}.budget-results dl>div{padding:12px 0;border-bottom:1px solid #EEE8F7}.budget-results dt{font-size:14px}.budget-results dd{font-size:24px;margin:4px 0;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.budget-results ul,.budget-method ul{list-style:disc;padding-left:24px;margin:24px 0}.budget-results li,.budget-method li{padding-left:4px;margin-bottom:16px}.budget-tool .budget-method{border-top:1px solid #dcd2c7;padding-top:40px}.budget-method h2{max-width:700px;margin-bottom:24px}.budget-method p{margin:24px 0}.budget-tool a{text-decoration:underline;color:#7952b3}.budget-tool header>a{display:inline-block;margin-bottom:32px;font-size:14px;text-decoration:none}@media(max-width:1000px){.budget-scenarios{grid-template-columns:1fr}.budget-scenarios>section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.budget-scenarios>section>h2{grid-column:1/-1}}@media(max-width:600px){.budget-grid,.budget-scenarios>section{grid-template-columns:1fr}.budget-tool{padding:128px 24px 48px}.budget-tool header>p:not([class]){font-size:20px}.budget-scenarios>section,.budget-scenarios>article{padding:20px}.budget-actions button{width:100%}.budget-tool legend,.budget-tool h2{font-size:28px}}.budget-optional{border-top:1px solid #dcd2c7;padding:24px 0}.budget-tool summary{font-size:20px;font-weight:600;cursor:pointer;line-height:1.5}.budget-tool details>p{margin:20px 0}.budget-optional .budget-scenarios{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-results article{padding:28px 0;border-top:1px solid #dcd2c7}.budget-results article:first-of-type dl>div:first-child dd{font:400 40px/1.2 Fraunces,serif}.budget-results dd{overflow-wrap:anywhere}.budget-tool header>a{display:inline-block;margin-bottom:28px}.budget-tool h3{font:400 26px/1.3 Fraunces,serif;margin-bottom:20px}@media(max-width:600px){.budget-optional .budget-scenarios{grid-template-columns:1fr}.budget-results dl>div{display:block}.budget-results dd{margin-top:8px}}
