/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.block{display:block}.hidden{display:none}.table{display:table}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ink:#17322b;--muted:#607069;--cream:#f7f4eb;--paper:#fffdf8;--green:#195c49;--green-dark:#0d4032;--mint:#dcebe2;--gold:#d78b3d;--line:#d9ded8;--shadow:0 18px 50px #19382e1a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #f0a65c}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;box-shadow:var(--shadow);background:#fff;border-radius:.5rem;padding:.8rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.site-header{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf8f2;border-bottom:1px solid #17322b1c;justify-content:space-between;align-items:center;min-height:82px;padding:0 clamp(1rem,5vw,5rem);display:flex;position:sticky;top:0}.brand{align-items:center;gap:.7rem;text-decoration:none;display:inline-flex}.brand-mark{background:var(--green);color:#fff;letter-spacing:.05em;border-radius:50% 50% 50% 10%;place-items:center;width:42px;height:42px;font-size:.72rem;font-weight:800;display:grid}.brand>span:last-child{flex-direction:column;line-height:1;display:flex}.brand strong{letter-spacing:-.02em;font-size:1.05rem}.brand small{letter-spacing:.2em;text-transform:uppercase;color:var(--green);margin-top:.28rem;font-size:.7rem}.site-header nav{align-items:center;gap:clamp(1rem,2.5vw,2.5rem);display:flex}.site-header nav a{font-size:.9rem;font-weight:700;text-decoration:none}.site-header nav a:hover{color:var(--green);text-underline-offset:.35rem;text-decoration:underline}.menu-button{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:999px;min-width:64px;min-height:44px;display:none}.hero{background:radial-gradient(circle at 86% 13%,#e2eee6 0 15%,#0000 16%),linear-gradient(135deg,#fffdf8 0%,#f8f4e9 55%,#f0eadb 100%);grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);align-items:center;gap:clamp(3rem,7vw,7rem);min-height:650px;padding:clamp(4rem,8vw,7rem) clamp(1.25rem,7vw,7rem);display:grid;overflow:hidden}.eyebrow{color:var(--green);letter-spacing:.18em;text-transform:uppercase;margin:0 0 1rem;font-size:.74rem;font-weight:850}.hero h1,.section h2{letter-spacing:-.045em;font-family:Georgia,Times New Roman,serif;font-weight:500}.hero h1{max-width:720px;margin:0;font-size:clamp(3rem,6vw,6rem);line-height:.98}.lede{max-width:650px;color:var(--muted);margin:1.7rem 0 0;font-size:clamp(1.05rem,1.5vw,1.24rem);line-height:1.7}.hero-actions{flex-wrap:wrap;gap:.8rem;margin-top:2rem;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:.45rem;justify-content:center;align-items:center;min-height:48px;padding:.85rem 1.25rem;font-weight:800;text-decoration:none;transition:transform .15s,background .15s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button-primary{background:var(--green);color:#fff}.button-primary:hover{background:var(--green-dark)}.button-secondary{color:var(--green-dark);border-color:var(--green);background:0 0}.button-secondary:hover{background:var(--mint)}.button:disabled{opacity:.5;cursor:not-allowed;transform:none}.button-complete{color:var(--green-dark);background:#e1eee7;border-color:#93b9a8}.trust-note{color:var(--muted);margin:1.35rem 0 0;font-size:.82rem}.trust-note span{color:var(--green);margin-right:.45rem}.hero-lab{box-shadow:var(--shadow);background:#ffffffd1;border:1px solid #195c492e;border-radius:1rem;padding:1.25rem;position:relative}.hero-lab:before{content:"";border:1px solid #d78b3d59;border-radius:50%;width:140px;height:140px;position:absolute;top:-72px;right:-72px}.lab-topline{color:var(--muted);letter-spacing:.13em;justify-content:space-between;padding-bottom:1rem;font-size:.64rem;font-weight:800;display:flex}.path-step{border:1px solid #0000;border-radius:.75rem;grid-template-columns:42px 1fr auto;align-items:center;gap:1rem;padding:1.15rem;display:grid}.active-step{background:#f1f7f3;border-color:#bfdbcd}.step-number{width:38px;height:38px;color:var(--green);background:#e4ece8;border-radius:50%;place-items:center;font-weight:800;display:grid}.active-step .step-number{background:var(--green);color:#fff}.path-step div{flex-direction:column;gap:.32rem;display:flex}.path-step strong{font-size:.94rem}.path-step small{color:var(--muted);line-height:1.35}.step-status{color:var(--green);text-transform:uppercase;font-size:.7rem;font-weight:800}.path-line{background:var(--line);width:1px;height:14px;margin-left:31px}.principles{background:var(--green-dark);color:#fff;grid-template-columns:repeat(3,1fr);padding:1.4rem clamp(1.25rem,7vw,7rem);display:grid}.principles p{border-right:1px solid #ffffff2e;grid-template-columns:auto 1fr;gap:.1rem .8rem;margin:0;padding:.9rem 1.4rem;display:grid}.principles p:last-child{border-right:0}.principles span{color:#90b9a7;grid-row:1/3;font-size:.7rem;font-weight:800}.principles strong{font-size:.92rem}.principles small{color:#c4d8cf}.section{padding:clamp(4.5rem,8vw,8rem) clamp(1.25rem,7vw,7rem)}.section-heading{max-width:760px}.section h2{max-width:880px;margin:0;font-size:clamp(2.4rem,4vw,4.2rem);line-height:1.04}.section-heading>p:last-child,.lab-heading>p{max-width:650px;color:var(--muted);font-size:1.05rem;line-height:1.7}.module-grid{grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:3rem;display:grid}.module-card{border:1px solid #17322b1f;border-radius:.8rem;flex-direction:column;min-height:430px;padding:clamp(1.7rem,4vw,3rem);display:flex;position:relative;overflow:hidden}.saver-card{background:#edf5ef}.investor-card{background:#f8efe3}.module-icon{width:64px;height:64px;color:var(--green);border:1px solid;border-radius:50%;place-items:center;font-family:Georgia,serif;font-size:1.7rem;display:grid;position:absolute;top:2rem;right:2.2rem}.card-kicker{color:var(--green);letter-spacing:.14em;margin:0 0 1.4rem;font-size:.68rem;font-weight:900}.module-card h3{max-width:75%;margin:0;font-family:Georgia,serif;font-size:clamp(1.8rem,3vw,2.8rem);font-weight:500}.module-card>p:not(.card-kicker){max-width:560px;color:var(--muted);margin-top:1.2rem;line-height:1.65}.module-card ul{color:var(--ink);margin:1.2rem 0 2rem;padding-left:1.2rem;line-height:1.9}.module-card a{width:fit-content;color:var(--green-dark);text-underline-offset:.3rem;margin-top:auto;font-weight:850}.lab-section{background:var(--cream);border-top:1px solid var(--line)}.lab-heading{grid-template-columns:1fr minmax(320px,.55fr);align-items:end;gap:2rem;display:grid}.lab-heading h2{font-size:clamp(2.5rem,4vw,4.6rem)}.saver-layout{grid-template-columns:1.1fr .9fr;align-items:start;gap:2rem;margin-top:3rem;display:grid}.accordion{border-top:1px solid #bfc9c3}.accordion-item{border-bottom:1px solid #bfc9c3}.accordion-item>button{text-align:left;width:100%;min-height:92px;color:var(--ink);cursor:pointer;background:0 0;border:0;grid-template-columns:48px 1fr auto;align-items:center;gap:1rem;padding:1.2rem .4rem;display:grid}.accordion-number{width:38px;height:38px;color:var(--green);border:1px solid #a3b6ac;border-radius:50%;place-items:center;font-weight:800;display:grid}.accordion-item.open .accordion-number{background:var(--green);color:#fff;border-color:var(--green)}.accordion-item button span:nth-child(2){flex-direction:column;gap:.25rem;display:flex}.accordion-item button small{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:.67rem}.accordion-item button strong{font-family:Georgia,serif;font-size:1.35rem;font-weight:500}.accordion-panel{color:var(--muted);padding:0 2rem 1.8rem 4.4rem;line-height:1.65}.text-button{color:var(--green);text-underline-offset:.3rem;cursor:pointer;background:0 0;border:0;padding:0;font-weight:800;text-decoration:underline}.planner,.allocation-summary{border:1px solid var(--line);background:#fff;border-radius:.8rem;padding:clamp(1.5rem,3vw,2.3rem);box-shadow:0 10px 32px #17322b12}.planner h3,.allocation-summary h3{margin:-.7rem 0 1.7rem;font-family:Georgia,serif;font-size:1.8rem;font-weight:500}.planner label{color:var(--muted);margin:1.1rem 0 .5rem;font-size:.82rem;font-weight:700;display:block}.money-input{background:#fff;border:1px solid #aebbb4;border-radius:.4rem;align-items:center;min-height:52px;display:flex}.money-input span{color:var(--green);padding-left:1rem;font-weight:800}.money-input input{width:100%;color:var(--ink);background:0 0;border:0;outline:0;padding:.8rem;font-weight:800}.estimate{border-left:4px solid var(--green);background:#edf5ef;margin:1.5rem 0;padding:1.2rem}.estimate small{color:var(--green);letter-spacing:.1em;font-size:.62rem;font-weight:900;display:block}.estimate strong{margin-top:.35rem;font-family:Georgia,serif;font-size:2rem;display:block}.estimate p{color:var(--muted);margin:.35rem 0 0;font-size:.8rem;line-height:1.5}.full-button{width:100%}.investor-section{background:#fffdf8}.simulation-banner{background:#eef5f1;border:1px solid #c7dcd1;border-radius:.5rem;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;min-height:58px;margin-top:2.5rem;padding:.8rem 1rem;display:grid}.simulation-banner strong{color:var(--green)}.simulation-banner span{color:var(--muted);font-size:.84rem}.simulation-banner b{background:#fff;border-radius:.3rem;padding:.45rem .7rem;font-size:.82rem}.investor-layout{grid-template-columns:1.25fr .75fr;align-items:start;gap:1.5rem;margin-top:1.4rem;display:grid}.fund-list{border-top:1px solid var(--line)}.fund-row{border-bottom:1px solid var(--line);grid-template-columns:14px 1fr 52px minmax(120px,180px) 68px;align-items:center;gap:1rem;min-height:114px;padding:1.2rem 0;display:grid}.fund-swatch{border-radius:999px;width:10px;height:54px}.fund-name{flex-direction:column;gap:.4rem;display:flex}.fund-name strong{font-family:Georgia,serif;font-size:1.2rem;font-weight:500}.fund-name small{color:var(--muted)}.fund-row label{color:var(--green);font-weight:850}.fund-row input{accent-color:var(--green);min-height:44px}.fund-row b{text-align:right}.allocation-bar{background:#e8ece9;border-radius:999px;height:24px;margin:1rem 0;display:flex;overflow:hidden}.allocation-bar span{min-width:0;transition:width .2s;display:block}.allocation-total{border-bottom:1px solid var(--line);justify-content:space-between;padding:1rem 0;display:flex}.allocation-total strong{font-size:1.4rem}.allocation-total.valid strong{color:var(--green)}.allocation-total.invalid strong{color:#a84732}.lesson-note{min-height:74px;color:var(--muted);font-size:.86rem;line-height:1.55}.review-result{background:#edf5ef;border-radius:.4rem;margin-top:1rem;padding:1rem}.review-result p{color:var(--muted);font-size:.82rem;line-height:1.5}.review-result .done{color:var(--green-dark)}.progress-section{background:var(--green-dark);color:#fff;grid-template-columns:.85fr 1.15fr;align-items:center;gap:3rem;display:grid}.progress-copy .eyebrow{color:#a9cdbc}.progress-copy p:last-child{color:#c4d8cf;max-width:520px;line-height:1.7}.progress-card{background:#ffffff17;border:1px solid #ffffff2e;border-radius:.8rem;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem;padding:1.8rem;display:grid}.progress-ring{--progress:0%;text-align:center;background:radial-gradient(circle, var(--green-dark) 59%, transparent 60%), conic-gradient(#e8b06d var(--progress), #ffffff21 0);border-radius:50%;place-content:center;width:98px;height:98px;display:grid}.progress-ring span{font-family:Georgia,serif;font-size:1.5rem}.progress-ring small,.progress-card>div:nth-child(2) p{color:#c4d8cf}.progress-card>div:nth-child(2) .complete{color:#fff;font-weight:800}.progress-card .button-primary{color:#17322b;background:#f1b46b}.about-section{background:#f2eee3}.about-section h2{max-width:1000px}.about-grid{color:var(--muted);grid-template-columns:1fr 1fr;gap:3rem;margin-top:2.5rem;line-height:1.75;display:grid}.about-grid strong{color:var(--ink)}footer{color:#fff;background:#102b24;grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem 3rem;padding:3rem clamp(1.25rem,7vw,7rem);display:grid}.footer-brand .brand-mark{color:#17322b;background:#f1b46b}.footer-brand small{color:#a9cdbc}footer>p{color:#c4d8cf}footer nav{flex-wrap:wrap;gap:1.2rem;display:flex}footer nav a{font-size:.85rem}footer>small{color:#8eaaa0;border-top:1px solid #ffffff24;grid-column:1/-1;padding-top:1.5rem}@media (width<=920px){.hero{grid-template-columns:1fr;min-height:auto}.hero-lab{max-width:620px}.lab-heading,.saver-layout,.investor-layout,.progress-section{grid-template-columns:1fr}.progress-card{grid-template-columns:auto 1fr}.progress-card .button{grid-column:1/-1}footer{grid-template-columns:1fr}}@media (width<=700px){.site-header{min-height:70px}.menu-button{justify-content:center;align-items:center;display:inline-flex}.site-header nav{background:var(--paper);border-bottom:1px solid var(--line);box-shadow:var(--shadow);flex-direction:column;align-items:stretch;padding:1rem;display:none;position:absolute;top:69px;left:0;right:0}.site-header nav.nav-open{display:flex}.site-header nav a{border-radius:.35rem;align-items:center;min-height:48px;padding:0 1rem;display:flex}.hero{gap:2.5rem;padding-top:4rem}.hero h1{font-size:clamp(2.8rem,14vw,4.4rem)}.hero-actions{flex-direction:column}.hero-actions .button{width:100%}.principles{grid-template-columns:1fr;padding-top:.7rem;padding-bottom:.7rem}.principles p,.principles p:last-child{border-bottom:1px solid #ffffff29;border-right:0}.principles p:last-child{border-bottom:0}.module-grid,.about-grid{grid-template-columns:1fr}.module-card{min-height:390px}.module-icon{width:50px;height:50px;right:1.4rem}.lab-heading{gap:.5rem}.accordion-panel{padding-left:.5rem}.simulation-banner{grid-template-columns:1fr}.fund-row{grid-template-columns:10px 1fr 52px;gap:.7rem}.fund-row input{grid-column:2/-1;width:100%}.fund-row b{grid-area:1/3}.progress-card{grid-template-columns:1fr}.progress-ring{margin:auto}.progress-card .button{grid-column:auto}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
