:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-canvas:#f6f3eb;--color-surface:#fffefa;--color-surface-subtle:#eef3ef;--color-text:#17342e;--color-text-soft:#4b625c;--color-text-inverse:#f8faf7;--color-border:#cfd9d3;--color-border-strong:#91a69d;--color-accent:#176b55;--color-accent-strong:#0c513f;--color-accent-soft:#d9ece4;--color-focus:#075fcc;--color-positive:#176b55;--color-positive-soft:#e5f2ed;--color-negative:#9f2d20;--color-negative-soft:#faeae6;--color-chart-target:#9f2d20;--color-footer:#102f29;--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:Georgia, "Times New Roman", serif;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4.5rem;--radius-small:.4rem;--radius-medium:.8rem;--content-readable:46rem;--content-wide:78rem;--context-nav-width:15rem;--header-height:4.75rem;--shadow-dialog:0 1.5rem 5rem #0a251e47;--motion-fast:.14s;font-family:var(--font-sans);background:var(--color-canvas);color:var(--color-text)}*{box-sizing:border-box}html{background:var(--color-canvas);min-width:20rem}body{background:var(--color-canvas);min-height:100vh;margin:0}body:has(dialog[open]){overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.skip-link{z-index:100;top:var(--space-3);left:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-small);background:var(--color-text);color:var(--color-text-inverse);transition:transform var(--motion-fast) ease-out;font-weight:750;position:fixed;transform:translateY(calc(-100% - 2rem))}.skip-link:focus{transform:translateY(0)}.app-frame{grid-template-rows:auto 1fr auto;min-height:100vh;display:grid}.site-header{z-index:20;border-bottom:1px solid var(--color-border);background:#fffefaf5;position:relative}.site-header__inner{width:min(100% - 2rem, var(--content-wide));min-height:var(--header-height);align-items:center;gap:var(--space-6);margin-inline:auto;display:flex}.brand{font-family:var(--font-display);letter-spacing:-.025em;flex:none;font-size:1.45rem;font-weight:700;text-decoration:none}.brand:hover{color:var(--color-accent-strong)}.primary-nav{align-self:stretch;margin-left:auto}.primary-nav ul,.context-nav ul,.mobile-nav__list{margin:0;padding:0;list-style:none}.primary-nav ul{align-items:stretch;gap:var(--space-1);height:100%;display:flex}.primary-nav li{display:flex}.primary-nav a{min-height:2.75rem;padding:var(--space-3) var(--space-4);color:var(--color-text-soft);align-items:center;font-size:.94rem;font-weight:700;text-decoration:none;display:flex;position:relative}.primary-nav a:after{right:var(--space-4);bottom:0;left:var(--space-4);content:"";background:0 0;border-radius:3px 3px 0 0;height:3px;position:absolute}.primary-nav a:hover{color:var(--color-text)}.primary-nav a[aria-current=page]{color:var(--color-accent-strong)}.primary-nav a[aria-current=page]:after{background:var(--color-accent)}.account-placeholder{align-items:center;gap:var(--space-2);color:var(--color-text-soft);flex:none;font-size:.72rem;font-weight:700;line-height:1.15;display:inline-flex}.account-placeholder__avatar{border:1px dashed var(--color-border-strong);background:var(--color-surface-subtle);width:2.25rem;height:2.25rem;color:var(--color-accent-strong);letter-spacing:.04em;border-radius:50%;place-items:center;font-size:.68rem;display:grid}.menu-trigger{min-height:2.75rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-small);color:var(--color-text);cursor:pointer;background:0 0;font-weight:750;display:none}.menu-trigger:hover{background:var(--color-surface-subtle)}.shell-layout{width:min(100% - 2rem, var(--content-wide));padding-block:clamp(var(--space-6), 5vw, var(--space-8));margin-inline:auto}.shell-layout--with-context{grid-template-columns:var(--context-nav-width) minmax(0, 1fr);gap:clamp(var(--space-6), 5vw, var(--space-8));display:grid}.context-panel{top:var(--space-5);padding-right:var(--space-5);border-right:1px solid var(--color-border);align-self:start;position:sticky}.context-nav__title,.mobile-nav__title{margin:0 0 var(--space-3);color:var(--color-text-soft);letter-spacing:.11em;text-transform:uppercase;font-size:.72rem;font-weight:800}.context-nav li+li,.mobile-nav__list li+li{margin-top:var(--space-1)}.context-nav a,.context-nav__planned,.mobile-nav__list a,.mobile-nav__planned{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-height:2.75rem;padding:var(--space-3);border-radius:var(--radius-small);font-size:.92rem;text-decoration:none;display:flex}.context-nav a,.mobile-nav__list a{font-weight:700}.context-nav a:hover,.mobile-nav__list a:hover{background:var(--color-surface-subtle)}.context-nav a[aria-current=page],.mobile-nav__list a[aria-current=page]{background:var(--color-accent-soft);color:var(--color-accent-strong)}.context-nav__planned,.mobile-nav__planned{color:var(--color-text-soft)}.planned-label{letter-spacing:.03em;text-transform:uppercase;font-size:.67rem;font-weight:750}.main-content{min-width:0;max-width:62rem}.shell-layout:not(.shell-layout--with-context) .main-content{max-width:var(--content-readable)}.page-heading{margin-bottom:clamp(var(--space-7), 7vw, var(--space-8))}.eyebrow{margin:0 0 var(--space-4);color:var(--color-accent-strong);letter-spacing:.12em;text-transform:uppercase;font-size:.75rem;font-weight:800}.page-heading h1,.not-found h1{max-width:13ch;margin:0 0 var(--space-5);font-family:var(--font-display);letter-spacing:-.052em;font-size:clamp(2.75rem,7vw,5.5rem);font-weight:500;line-height:.98}.page-heading__summary,.not-found p{max-width:var(--content-readable);color:var(--color-text-soft);margin:0;font-size:clamp(1.05rem,2vw,1.22rem);line-height:1.7}.placeholder-section{max-width:var(--content-readable);padding-top:var(--space-6);border-top:1px solid var(--color-border-strong)}.placeholder-section h2{margin:0 0 var(--space-3);letter-spacing:-.02em;font-size:clamp(1.3rem,2.5vw,1.7rem)}.placeholder-section p{color:var(--color-text-soft);margin:0;line-height:1.7}.article-library{max-width:60rem;padding-top:var(--space-6);border-top:1px solid var(--color-border-strong)}.article-library>h2{margin:0 0 var(--space-5);font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem)}.article-library__empty{color:var(--color-text-soft);line-height:1.7}.article-grid{gap:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.article-card{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);overflow:hidden}.article-card__image{aspect-ratio:16/9;object-fit:cover;width:100%;height:auto;display:block}.article-card__body{padding:var(--space-5)}.article-card time,.article-header__meta,.article-figure figcaption,.article-hero figcaption{color:var(--color-text-soft);font-size:.82rem}.article-card h2,.recommendation-card h2,.recommendation-card h3{margin:var(--space-2) 0 var(--space-3);font-family:var(--font-display);font-size:1.55rem;line-height:1.2}.article-card h2 a,.recommendation-card h2 a,.recommendation-card h3 a{text-underline-offset:.16em;text-decoration-thickness:.08em}.article-card h2 a:hover,.recommendation-card h2 a:hover,.recommendation-card h3 a:hover{color:var(--color-accent-strong)}.article-card p{color:var(--color-text-soft);margin:0;line-height:1.6}.article-page{max-width:60rem}.article-header{max-width:var(--content-readable);margin-bottom:var(--space-7)}.article-header h1{margin:0 0 var(--space-5);font-family:var(--font-display);letter-spacing:-.045em;font-size:clamp(2.6rem,7vw,5rem);font-weight:500;line-height:1}.article-header__summary{color:var(--color-text-soft);margin:0;font-size:clamp(1.1rem,2vw,1.3rem);line-height:1.65}.article-header__meta{margin:var(--space-4) 0 0;font-weight:700}.article-preview-banner{padding:var(--space-3) var(--space-4);border:2px solid var(--color-accent);background:var(--color-accent-soft);font-weight:800}.article-hero{margin:0 0 var(--space-7)}.article-hero img,.article-figure img{border-radius:var(--radius-medium);width:100%;height:auto;display:block}.article-hero figcaption,.article-figure figcaption{margin-top:var(--space-2)}.article-prose{max-width:var(--content-readable);color:var(--color-text);font-size:1.06rem;line-height:1.75}.article-prose h2,.article-prose h3,.article-prose h4{font-family:var(--font-display);margin:2em 0 .6em;line-height:1.2}.article-prose h2{font-size:clamp(1.7rem,4vw,2.25rem)}.article-prose h3{font-size:1.45rem}.article-prose p,.article-prose ul,.article-prose ol{margin:0 0 1.25em}.article-prose a,.article-calculator a,.article-recommendation a{color:var(--color-accent-strong);text-underline-offset:.18em;font-weight:700;text-decoration-thickness:.09em}.article-sidebar,.article-calculator,.article-recommendation,.article-disclosure{margin:var(--space-6) 0;padding:var(--space-5);border-left:4px solid var(--color-accent);background:var(--color-accent-soft)}.article-sidebar--important,.article-disclosure{border-color:var(--color-text);background:var(--color-surface-subtle)}.article-sidebar h2,.article-calculator h2,.article-recommendation h2{margin-top:0;font-size:1.35rem}.article-disclosure p{margin-bottom:0}.article-quotation{margin:var(--space-7) 0;padding-left:var(--space-5);border-left:4px solid var(--color-border-strong)}.article-quotation blockquote{font-family:var(--font-display);margin:0;font-size:clamp(1.35rem,3vw,1.8rem);line-height:1.45}.article-quotation figcaption{margin-top:var(--space-3);color:var(--color-text-soft);font-size:.9rem}.article-figure{margin:var(--space-7) 0}.article-advice-note{max-width:var(--content-readable);margin-top:var(--space-8);padding-top:var(--space-5);border-top:1px solid var(--color-border);color:var(--color-text-soft);font-size:.86rem;line-height:1.55}.recommendation-disclosure{max-width:var(--content-readable);margin-bottom:var(--space-7);padding:var(--space-4) var(--space-5);border-left:4px solid var(--color-text);background:var(--color-surface-subtle);color:var(--color-text-soft);font-size:.9rem;line-height:1.6}.recommendation-library{max-width:60rem;padding-top:var(--space-6);border-top:1px solid var(--color-border-strong)}.recommendation-library>h2,.article-related-recommendations>h2{margin:0 0 var(--space-5);font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem)}.recommendation-library__empty{color:var(--color-text-soft);line-height:1.7}.recommendation-grid{gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(17rem,20rem));align-items:start;display:grid}.recommendation-card{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface);overflow:hidden}.recommendation-card__image{width:100%;height:15rem;padding:var(--space-4);object-fit:contain;background:var(--color-background);display:block}.recommendation-card__body{padding:var(--space-5)}.recommendation-card__body .eyebrow{margin-bottom:var(--space-2)}.recommendation-card__body>p:not(.eyebrow){color:var(--color-text-soft);margin:0;line-height:1.6}.recommendation-card__status{font-size:.82rem;font-weight:800;margin-top:var(--space-3)!important}.recommendation-page{max-width:60rem}.recommendation-header{max-width:var(--content-readable);margin-bottom:var(--space-7)}.recommendation-header h1{margin:0 0 var(--space-5);font-family:var(--font-display);letter-spacing:-.045em;font-size:clamp(2.6rem,7vw,5rem);font-weight:500;line-height:1}.recommendation-header__summary{color:var(--color-text-soft);margin:0;font-size:clamp(1.1rem,2vw,1.3rem);line-height:1.65}.recommendation-hero{margin:0 0 var(--space-7)}.recommendation-hero--book{width:min(100%,22rem)}.recommendation-hero img,.recommendation-gallery img{border-radius:var(--radius-medium);width:100%;height:auto;display:block}.recommendation-hero figcaption,.recommendation-gallery figcaption{margin-top:var(--space-2);color:var(--color-text-soft);font-size:.82rem}.recommendation-best-for,.recommendation-status{max-width:var(--content-readable);margin:0 0 var(--space-7);padding:var(--space-5);border-left:4px solid var(--color-accent);background:var(--color-accent-soft)}.recommendation-status{border-color:var(--color-text);background:var(--color-surface-subtle)}.recommendation-best-for h2,.recommendation-editorial>h2,.recommendation-caveats>h2,.recommendation-destinations>h2,.recommendation-gallery>h2{margin:0 0 var(--space-3);font-family:var(--font-display);font-size:clamp(1.55rem,3vw,2rem)}.recommendation-best-for p,.recommendation-status p{margin:var(--space-2) 0 0;line-height:1.65}.recommendation-editorial,.recommendation-caveats,.recommendation-destinations,.recommendation-gallery{max-width:var(--content-readable);margin-top:var(--space-7)}.recommendation-prose{font-size:1.06rem;line-height:1.75}.recommendation-prose p,.recommendation-prose ul,.recommendation-prose ol{margin:0 0 1.25em}.recommendation-prose a{color:var(--color-accent-strong);text-underline-offset:.18em;font-weight:700;text-decoration-thickness:.09em}.recommendation-destinations ul{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.recommendation-destinations li{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface)}.recommendation-action{min-height:2.75rem;padding:var(--space-2) var(--space-4);border:1px solid var(--color-accent);border-radius:var(--radius-small);color:var(--color-accent-strong);align-items:center;font-weight:800;text-decoration:none;display:inline-flex}.recommendation-action:hover{background:var(--color-accent-soft)}.recommendation-action--primary{background:var(--color-accent);color:var(--color-text-inverse)}.recommendation-action--primary:hover{background:var(--color-accent-strong)}.recommendation-destination__merchant{margin:var(--space-3) 0 0;color:var(--color-text-soft);font-size:.86rem;font-weight:700}.recommendation-destination__disclosure{margin:var(--space-2) 0 0;color:var(--color-text-soft);font-size:.82rem;line-height:1.55}.recommendation-gallery>div{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.recommendation-gallery figure{margin:0}.recommendation-review-date{max-width:var(--content-readable);margin-top:var(--space-8);padding-top:var(--space-5);border-top:1px solid var(--color-border);color:var(--color-text-soft);font-size:.86rem;line-height:1.55}.article-related-recommendations{max-width:60rem;margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-border)}.calculator-library-entry{max-width:38rem;margin-top:var(--space-5);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface)}.calculator-library-entry+.calculator-library-entry{margin-top:var(--space-4)}.calculator-library-entry .eyebrow{margin-bottom:var(--space-2)}.calculator-library-entry h3{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:1.45rem}.calculator-library-entry a{text-underline-offset:.16em;text-decoration-thickness:.08em}.calculator-library-entry a:hover{color:var(--color-accent-strong)}.calculator-page .page-heading{margin-bottom:var(--space-6)}.calculator-page .page-heading h1{max-width:15ch}.calculator-explainer{gap:var(--space-2);max-width:52rem;margin-bottom:clamp(var(--space-7), 7vw, var(--space-8));padding:var(--space-4) var(--space-5);border-left:4px solid var(--color-accent);background:var(--color-accent-soft);color:var(--color-text-soft);line-height:1.6;display:grid}.calculator-explainer p{margin:0}.calculator-workspace{gap:var(--space-7);display:grid}.calculator-workspace>*,.calculator-results-stack>*{min-width:0}.calculator-form,.calculator-results,.projection,.calculator-details{border:1px solid var(--color-border);border-radius:var(--radius-medium);background:var(--color-surface)}.calculator-form{padding:clamp(var(--space-4), 3vw, var(--space-6))}.calculator-form__heading,.calculator-section-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.calculator-form__heading h2,.calculator-section-heading h2,.calculator-results--invalid h2{font-family:var(--font-display);letter-spacing:-.025em;margin:0;font-size:clamp(1.55rem,3vw,2rem);font-weight:600}.calculator-kicker{margin:0 0 var(--space-2);color:var(--color-accent-strong);letter-spacing:.11em;text-transform:uppercase;font-size:.72rem;font-weight:800}.calculator-reset{min-height:2.75rem;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-small);color:var(--color-accent-strong);cursor:pointer;background:0 0;flex:none;font-weight:750}.calculator-reset:hover{background:var(--color-surface-subtle)}.calculator-example-buttons{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;flex:none;display:flex}.calculator-form__intro{max-width:42rem;margin:var(--space-3) 0 var(--space-6);color:var(--color-text-soft);line-height:1.6}.calculator-fieldset,.income-stream{border:0;min-width:0;padding:0}.calculator-fieldset>legend,.income-stream>legend{width:100%;padding:0 0 var(--space-3);border-bottom:1px solid var(--color-border);font-weight:800}.calculator-field-grid{gap:var(--space-5);margin-top:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.calculator-field{min-width:0}.calculator-field>label{margin-bottom:var(--space-2);font-size:.9rem;font-weight:750;display:block}.calculator-field-grid>.calculator-field>label{min-height:2.7em;line-height:1.35}.calculator-field__control{border:1px solid var(--color-border-strong);border-radius:var(--radius-small);background:#fff;align-items:center;min-height:3rem;display:flex;overflow:hidden}.calculator-field__control:focus-within{border-color:var(--color-focus);outline:3px solid var(--color-focus);outline-offset:2px}.calculator-field__control>span{padding-inline:var(--space-3);color:var(--color-text-soft);flex:none;font-weight:750}.calculator-field__control input{width:100%;min-width:0;min-height:2.9rem;padding:var(--space-2) var(--space-3);color:var(--color-text);font:inherit;font-variant-numeric:tabular-nums;background:0 0;border:0;outline:0}.calculator-field__control select{width:100%;min-width:0;min-height:2.9rem;padding:var(--space-2) var(--space-3);color:var(--color-text);font:inherit;background:0 0;border:0;outline:0}.calculator-field__control:has(input[aria-invalid=true]){border-color:var(--color-negative);box-shadow:inset 4px 0 0 var(--color-negative)}.calculator-field__control:has(select[aria-invalid=true]){border-color:var(--color-negative);box-shadow:inset 4px 0 0 var(--color-negative)}.calculator-fieldset--spaced{margin-top:var(--space-6)}.calculator-field__help,.calculator-field__error{margin:var(--space-2) 0 0;font-size:.78rem;line-height:1.45}.calculator-field__help{color:var(--color-text-soft)}.calculator-field__error{color:var(--color-negative);font-weight:700}.calculator-field__error span{border:1px solid;border-radius:50%;place-items:center;width:1.15rem;height:1.15rem;font-size:.72rem;display:inline-grid}.calculator-input-details,.calculator-details{margin-top:var(--space-5)}.calculator-input-details{padding-top:var(--space-4);border-top:1px solid var(--color-border)}.calculator-input-details>summary,.calculator-details>summary{align-items:center;gap:var(--space-3);cursor:pointer;min-height:2.75rem;font-weight:800;display:flex}.calculator-input-details>summary:before,.calculator-details>summary:before{content:"+";width:1.5rem;font-size:1.35rem;line-height:1}.calculator-input-details[open]>summary:before,.calculator-details[open]>summary:before{content:"−"}.calculator-input-details>summary::marker{content:""}.calculator-details>summary::marker{content:""}.calculator-input-details>p{margin:var(--space-2) 0 var(--space-5);color:var(--color-text-soft);line-height:1.55}.income-streams{gap:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.income-stream{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surface-subtle);grid-template-columns:minmax(0,1fr) minmax(7rem,.55fr);display:grid}.income-stream>legend{grid-column:1/-1}.calculator-results-stack{gap:var(--space-6);min-width:0;display:grid}.calculator-snapshot{padding:clamp(var(--space-5), 4vw, var(--space-7));border-radius:var(--radius-medium);background:var(--color-accent-soft)}.calculator-snapshot h2{max-width:35ch;font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:clamp(1.55rem,3.5vw,2.35rem);font-weight:600;line-height:1.25}.calculator-snapshot>p:last-child{margin:var(--space-3) 0 0;color:var(--color-text-soft)}.calculator-results,.projection{padding:clamp(var(--space-4), 3vw, var(--space-6))}.calculator-results--invalid{align-content:center;min-height:14rem;display:grid}.calculator-results--invalid>p:last-child{max-width:38rem;color:var(--color-text-soft);line-height:1.6}.calculator-metrics{margin:var(--space-5) 0 0;border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-border);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.calculator-metric{min-width:0;padding:var(--space-4);background:var(--color-surface)}.calculator-metric--emphasis{background:var(--color-positive-soft)}.calculator-metric--negative{box-shadow:inset 4px 0 0 var(--color-negative)}.calculator-metric--positive{box-shadow:inset 4px 0 0 var(--color-positive)}.calculator-metric dt{color:var(--color-text-soft);font-size:.78rem;font-weight:750;line-height:1.35}.calculator-metric dd{margin:var(--space-2) 0 0}.calculator-metric__value{font-family:var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.025em;font-size:clamp(1.45rem,3vw,2rem);font-weight:700;display:block}.calculator-metric__note{margin-top:var(--space-2);color:var(--color-text-soft);font-size:.78rem;line-height:1.45;display:block}.projection__legend{justify-content:flex-end;gap:var(--space-3);color:var(--color-text-soft);flex-wrap:wrap;font-size:.78rem;font-weight:700;display:flex}.projection__legend span{align-items:center;gap:var(--space-2);display:flex}.projection__swatch{border-top:3px solid var(--color-accent);width:1.75rem}.projection__swatch--target{border-top-color:var(--color-chart-target);border-top-style:dashed}.projection__chart-frame{min-width:0;max-width:100%;margin-top:var(--space-5);overflow-x:auto}.projection__chart{width:100%;min-width:36rem;height:auto;color:var(--color-text-soft);display:block}.projection__grid{stroke:var(--color-border);stroke-width:1px}.projection__axis-label,.projection__axis-title,.projection__marker-label{fill:currentColor;font-family:var(--font-sans);font-size:12px}.projection__axis-label--y{text-anchor:end}.projection__axis-title,.projection__marker-label{font-weight:750}.projection__goal-marker{stroke:var(--color-border-strong);stroke-dasharray:3 5;stroke-width:2px}.projection__target{stroke:var(--color-chart-target);stroke-dasharray:9 6;stroke-width:3px}.projection__portfolio{fill:none;stroke:var(--color-accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:5px}.compound-chart__expected,.compound-chart__comparison{fill:none;stroke-linecap:round;stroke-linejoin:round}.compound-chart__expected{stroke:var(--color-accent);stroke-width:5px}.compound-chart__comparison{stroke:var(--color-chart-target);stroke-dasharray:8 7;stroke-width:2.5px}.compound-chart__comparison--lower{opacity:.7}.compound-chart__swatch--expected{border-top-color:var(--color-accent)}.compound-chart__swatch--range{border-top-color:var(--color-chart-target);border-top-style:dashed}.loan-chart__principal{fill:var(--color-accent)}.loan-chart{min-width:0}.loan-chart__interest{fill:var(--color-chart-target)}.loan-chart__swatch{border:1px solid var(--color-border-strong);border-radius:2px;width:.85rem;height:.85rem}.loan-chart__swatch--principal{background:var(--color-accent)}.loan-chart__swatch--interest{background:var(--color-chart-target)}.start-early-scenarios{gap:var(--space-5);display:grid}.start-early-scenario{min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surface-subtle);margin:0}.start-early-scenario>legend{padding-inline:var(--space-2);color:var(--color-accent-strong);font-weight:800}.start-early-scenario__fields{gap:var(--space-4);display:grid}.start-early-chart__early,.start-early-chart__later{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:5px}.start-early-chart__early{stroke:var(--color-accent)}.start-early-chart__later{stroke:var(--color-chart-target)}.start-early-chart__swatch--early{border-top-color:var(--color-accent)}.start-early-chart__swatch--later{border-top-color:var(--color-chart-target)}.compound-calculator__metrics,.start-early-calculator__metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.loan-calculator__metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.calculator-snapshot.loan-calculator__snapshot h2,.calculator-snapshot.compound-calculator__snapshot h2{letter-spacing:-.02em;font-size:clamp(1.25rem,2.4vw,1.65rem);font-weight:500;line-height:1.3}.projection__full-fi-point{fill:var(--color-surface);stroke:var(--color-accent-strong);stroke-width:4px}.projection__marker-label--full{fill:var(--color-accent-strong)}.projection__summary{margin:var(--space-3) 0 0;color:var(--color-text-soft);line-height:1.6}.calculator-details{padding:var(--space-3) var(--space-4)}.projection__data{border:0;border-top:1px solid var(--color-border);border-radius:0}.projection__table-wrap{max-height:24rem;margin-top:var(--space-3);overflow:auto}.projection table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.projection caption{padding:0 0 var(--space-3);color:var(--color-text-soft);text-align:left}.projection th,.projection td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);text-align:right}.projection th:first-child,.projection td:first-child{text-align:left}.projection thead th{background:var(--color-surface-subtle);position:sticky;top:0}.calculator-breakdown{margin-top:0}.calculator-breakdown__content{gap:var(--space-6);padding:var(--space-3) 0 var(--space-2);display:grid}.calculator-breakdown dl{margin:0}.calculator-breakdown dl>div,.calculator-breakdown__income li{justify-content:space-between;gap:var(--space-4);padding-block:var(--space-3);border-bottom:1px solid var(--color-border);display:flex}.calculator-breakdown dt,.calculator-breakdown__income span{color:var(--color-text-soft)}.calculator-breakdown dd{font-variant-numeric:tabular-nums;margin:0;font-weight:750}.calculator-breakdown h3{margin:0;font-size:1rem}.calculator-formula{gap:var(--space-4);display:grid}.calculator-formula>p,.calculator-formula__explanation p{color:var(--color-text-soft);margin:0;line-height:1.6}.calculator-formula__equation{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-small);background:var(--color-surface-subtle);font-variant-numeric:lining-nums tabular-nums;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.05rem,2.5vw,1.3rem);color:var(--color-text)!important}.calculator-formula__equation-display{gap:var(--space-1);display:grid}.calculator-formula__equation-display>span{white-space:nowrap}.calculator-formula__variables>div{align-items:baseline}.calculator-formula__variables dt{color:var(--color-text);flex:0 0 2rem;font-family:Georgia,Times New Roman,serif;font-size:1.1rem;font-weight:700}.calculator-formula__variables dd{flex:1;font-weight:400;line-height:1.55}.calculator-formula__explanation{gap:var(--space-3);display:grid}.calculator-breakdown__income{margin:var(--space-2) 0 0;padding:0;list-style:none}.calculator-note{padding:var(--space-4);border-radius:var(--radius-small);background:var(--color-surface-subtle);color:var(--color-text-soft);margin:0;font-size:.84rem;line-height:1.6}@media (min-width:80rem){.calculator-workspace{align-items:start;gap:var(--space-5);grid-template-columns:minmax(20rem,.78fr) minmax(0,1.22fr)}.start-early-scenarios{grid-template-columns:repeat(2,minmax(0,1fr))}.calculator-form{padding:var(--space-5)}.calculator-form__heading{gap:var(--space-3)}.calculator-form__heading h2{font-size:1.65rem}.calculator-form__intro{margin-bottom:var(--space-4)}.calculator-field-grid{gap:var(--space-4);margin-top:var(--space-4)}.calculator-input-details,.calculator-details{margin-top:var(--space-4)}.income-streams,.income-stream{gap:var(--space-4);grid-template-columns:1fr}.calculator-results-stack{gap:var(--space-4)}.calculator-snapshot,.calculator-results,.projection{padding:var(--space-5)}.calculator-snapshot h2{font-size:1.8rem}.calculator-metrics{margin-top:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr))}.calculator-metric{padding:var(--space-3)}.calculator-metric__value{font-size:1.45rem}.projection__chart{min-width:0}}.not-found a{margin-top:var(--space-5);color:var(--color-accent-strong);font-weight:750;display:inline-block}.site-footer{background:var(--color-footer);color:var(--color-text-inverse)}.site-footer__inner{width:min(100% - 2rem, var(--content-wide));padding-block:var(--space-7);margin-inline:auto}.site-footer__brand{margin:0 0 var(--space-4);font-family:var(--font-display);font-size:1.2rem;font-weight:700}.site-footer__legal{gap:var(--space-3);color:#d6e1dc;max-width:58rem;font-size:.84rem;line-height:1.65;display:grid}.site-footer__legal p{margin:0}.mobile-nav{border-radius:var(--radius-medium) 0 0 var(--radius-medium);background:var(--color-surface);width:min(26rem,100% - 2rem);max-height:calc(100dvh - 2rem);color:var(--color-text);box-shadow:var(--shadow-dialog);border:0;margin:auto 0 auto auto;padding:0}.mobile-nav::backdrop{background:#091f1a8c}.mobile-nav__inner{min-height:min(38rem,100dvh - 2rem);padding:var(--space-5);overflow-y:auto}.mobile-nav__header{justify-content:space-between;align-items:center;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border);display:flex}.mobile-nav__header h2{font-family:var(--font-display);margin:0;font-size:1.45rem}.mobile-nav__close{border:1px solid var(--color-border-strong);min-width:2.75rem;min-height:2.75rem;color:var(--color-text);cursor:pointer;background:0 0;border-radius:50%;font-size:1.35rem}.mobile-nav__section{margin-top:var(--space-6)}.mobile-nav__list--primary a{font-size:1.08rem}@media (max-width:54rem){.primary-nav,.account-placeholder,.context-panel{display:none}.site-header__inner{justify-content:space-between}.menu-trigger{align-items:center;display:inline-flex}.shell-layout--with-context{display:block}.article-grid,.recommendation-grid{grid-template-columns:1fr}.recommendation-card__image{height:18rem}}@media (max-width:32rem){.site-header__inner,.shell-layout,.site-footer__inner{width:min(100% - 1.5rem, var(--content-wide))}.page-heading h1,.not-found h1{font-size:clamp(2.5rem,14vw,4rem)}.calculator-form__heading,.calculator-section-heading{display:grid}.calculator-reset{justify-self:start}.calculator-example-buttons{justify-content:flex-start}.calculator-field-grid,.calculator-metrics,.income-streams,.income-stream{grid-template-columns:1fr}.calculator-field-grid>.calculator-field>label{min-height:0}.calculator-metric--negative,.calculator-metric--positive{box-shadow:inset 0 4px 0 var(--color-negative)}.calculator-metric--positive{box-shadow:inset 0 4px 0 var(--color-positive)}.projection__legend{justify-content:flex-start}.recommendation-gallery>div{grid-template-columns:1fr}}@media (forced-colors:active){.calculator-explainer,.calculator-snapshot,.calculator-metric--emphasis{border:1px solid canvastext}.projection__portfolio,.compound-chart__expected,.compound-chart__comparison,.loan-chart__principal,.loan-chart__interest,.projection__target,.projection__goal-marker,.projection__full-fi-point,.projection__grid{stroke:canvastext}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
