:root{--ink:#111a2b;--navy:#142640;--cream:#f6eedc;--paper:#fbf7eb;--acid:#c9dc35;--orange:#e97844;--blue:#6683a0;--line:#c9c0ad;--mono:'DM Mono',monospace;--sans:'Libre Franklin',sans-serif;--serif:'Source Serif 4',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 var(--sans)}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.skip{position:absolute;top:-50px;left:10px;background:#fff;padding:10px;z-index:10}.skip:focus{top:10px}button,a,input,select{font:inherit}button,a{cursor:pointer}.network{background:var(--cream);border-bottom:1px solid var(--ink);padding:7px;text-align:center;font:11px var(--mono)}.network button{margin-left:14px;border:1px solid;background:none;font:inherit}.nav{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ink)}.logo{display:flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;font:600 16px/1.1 var(--sans);letter-spacing:.05em}.logo b{font:700 39px/.8 var(--serif);border-right:1px solid;padding-right:10px}.logo small{font:9px var(--mono);letter-spacing:.09em}.nav nav{display:flex;align-items:center;gap:30px}.nav nav a{color:var(--ink);text-decoration:none;font:10px var(--mono);letter-spacing:.08em}.wallet,.run,.print{background:var(--navy);color:#fff;border:0;padding:13px 18px;font:11px var(--mono);letter-spacing:.06em}.hero{min-height:670px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center}.kicker,.section-no{font:10px var(--mono);letter-spacing:.12em}.hero h1{font:700 clamp(58px,7.3vw,108px)/.86 var(--serif);letter-spacing:-.055em;margin:20px 0 30px}.hero h1 em{color:var(--orange);font-style:italic}.lead{max-width:570px;font-size:18px;color:#48463f}.cta{display:inline-flex;justify-content:space-between;width:260px;margin-top:28px;background:var(--acid);border:1px solid var(--ink);color:var(--ink);text-decoration:none;padding:15px 18px;font:11px var(--mono);box-shadow:4px 4px 0 var(--ink)}.hero-art{position:relative;align-self:end;text-align:center}.advisor{display:block;width:100%;max-width:390px;margin:auto}.hero-art .advisor{max-width:500px}.scribble{position:absolute;right:-10px;top:10%;font:italic 22px var(--serif);transform:rotate(4deg)}.scribble i{font-size:16px}.premise{background:var(--navy);color:#fff;padding:100px 0}.premise .wrap{display:grid;grid-template-columns:1fr 2fr 1fr;gap:60px}.premise .section-no{color:#aeb8c8}.premise blockquote{font:600 52px/1.08 var(--serif);margin:0}.premise-copy{border-left:1px solid #617084;padding-left:30px;color:#d8dde3}.intake,.whatif,.method,.faq{padding-block:105px}.title-row{display:flex;justify-content:space-between;align-items:end}.title-row h2,.whatif h2,.summary h2,.method h2,.faq h2{font:700 58px/1 var(--serif);margin:10px 0 35px}.restored{text-align:right;font:10px/1.8 var(--mono)}.start-over{border:0;background:none;text-decoration:underline;font:inherit}.fields{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid}.fields>label{font:10px var(--mono);padding:22px 18px;border-right:1px solid var(--line)}.fields>label:first-child{border-left:1px solid var(--line)}.input{display:flex;align-items:end;margin-top:16px}.input input,select{width:100%;border:0;border-bottom:2px solid var(--ink);background:transparent;padding:8px 0;font:500 25px var(--serif);color:var(--ink)}.input i,label small{font:9px var(--mono);font-style:normal;white-space:nowrap}.fields select{font-size:16px;margin-top:16px;height:48px}.fields small{display:block;margin-top:7px;color:#777}.run{display:flex;justify-content:space-between;width:100%;margin-top:28px;padding:19px 24px;background:var(--orange);border:1px solid var(--ink);box-shadow:5px 5px 0 var(--ink)}.connection-note{font:10px var(--mono);margin-top:20px}.results{background:#e9e3d3;border-block:1px solid var(--ink);padding:90px 0}.result-grid{display:grid;grid-template-columns:280px 1fr 1.2fr;gap:60px;align-items:center}.result-grid .advisor{max-height:285px}.result-label,.target-explain,.verdict>p:first-child{font:10px var(--mono);letter-spacing:.1em}.target-value{font:700 67px/1 var(--serif)}.equation{font:10px var(--mono);margin-top:12px}.verdict{border-left:1px solid var(--ink);padding-left:50px}.retire-age{font:700 70px/.95 var(--serif);color:var(--orange)}.verdict h3{font:600 26px var(--serif);margin:20px 0 4px}.verdict-copy{margin:0;color:#4a4a45}.horizon{border-top:1px solid;margin-top:15px;padding-top:9px;font:10px var(--mono)!important}.already .retire-age{font-size:42px;color:var(--acid);background:var(--navy);padding:10px;display:inline-block}.chart-card{background:var(--paper);border:1px solid var(--ink);margin-top:55px;padding:18px 22px}.chart-top{display:flex;justify-content:space-between;font:9px var(--mono)}.legend{display:flex;gap:24px}.legend span:before{content:'';display:inline-block;width:25px;border-top:3px solid;margin-right:7px;vertical-align:middle}.legend .bull:before{border-color:var(--blue);border-top-style:dashed}.legend .bear:before{border-color:#a89f8f;border-top-style:dashed}.legend .target:before{border-color:var(--orange);border-top-width:1px}#chart{width:100%;height:auto;display:block}.grid line{stroke:#d5cebf;stroke-width:1}.grid text,.target-label{font:9px var(--mono);fill:#67635c}.base-path,.bull-path,.bear-path{fill:none;vector-effect:non-scaling-stroke}.base-path{stroke:var(--navy);stroke-width:3}.bull-path{stroke:var(--blue);stroke-width:2;stroke-dasharray:7 5}.bear-path{stroke:#a89f8f;stroke-width:2;stroke-dasharray:3 5}.target-line{stroke:var(--orange);stroke-width:1.5;stroke-dasharray:5 3}.target-label{fill:var(--orange)}.what-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:100px}.what-grid>div:last-child{background:var(--cream);border:1px solid;padding:35px}.slider{display:block;padding:22px 0;border-top:1px solid}.slider>span{display:flex;justify-content:space-between;font:10px var(--mono)}.slider output{font-size:14px}.slider input{width:100%;accent-color:var(--orange);margin-top:15px}.summary{background:var(--acid);padding:95px 0;border-block:1px solid}.summary-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.print{background:transparent;color:var(--ink);border:1px solid;margin-top:20px}.assumptions{background:var(--paper);border:1px solid;padding:20px 30px;box-shadow:7px 7px 0 var(--ink)}.assumptions div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font:10px var(--mono)}.assumptions b{font-weight:500}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.method code{display:block;background:var(--navy);color:#eef0e9;padding:24px;font:11px/2 var(--mono);margin:28px 0;overflow:auto}.faq{max-width:900px}.faq details{border-top:1px solid}.faq details:last-child{border-bottom:1px solid}.faq summary{list-style:none;padding:22px 0;font:600 19px var(--serif);display:flex;justify-content:space-between;cursor:pointer}.faq details p{max-width:650px;margin:0 0 22px}.faq summary span{font-family:var(--mono)}footer{background:var(--navy);color:#fff;padding:55px 0}footer .wrap{display:flex;align-items:center;justify-content:space-between}.inverse{color:#fff}footer a{color:#fff;font:10px var(--mono)}[hidden]{display:none!important}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:3px}@media(max-width:900px){.nav nav a{display:none}.hero{grid-template-columns:1fr;min-height:auto;padding-top:80px}.hero-art{margin-top:30px}.premise .wrap,.result-grid,.what-grid,.summary-grid,.method-grid{grid-template-columns:1fr}.premise .wrap,.what-grid,.summary-grid,.method-grid{gap:30px}.fields{grid-template-columns:1fr 1fr}.fields>label{border:1px solid var(--line);border-top:0}.result-grid{gap:20px}.result-grid>div:first-child{display:none}.verdict{border-left:0;border-top:1px solid;padding:30px 0}.scribble{right:5%}}@media(max-width:600px){.wrap{width:min(100% - 28px,1180px)}.nav{height:70px}.wallet{padding:10px}.hero h1{font-size:57px}.premise blockquote,.title-row h2,.whatif h2,.summary h2,.method h2,.faq h2{font-size:42px}.premise{padding:70px 0}.fields{grid-template-columns:1fr}.intake,.whatif,.method,.faq{padding-block:75px}.chart-card{padding:10px 5px;overflow:auto}#chart{min-width:720px}.legend{gap:8px}.target-value,.retire-age{font-size:54px}footer .wrap{flex-direction:column;gap:25px;align-items:flex-start}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}@media print{header,.hero,.premise,.intake,.whatif,.method,.faq,footer,.chart-card,.print{display:none!important}.summary{border:0}.summary-grid{grid-template-columns:1fr}.results{break-after:page}}
