@font-face{font-family:Manrope;src:url('assets/fonts/Manrope-Variable.ttf') format('truetype');font-weight:200 800;font-display:swap}
@font-face{font-family:Fraunces;src:url('assets/fonts/Fraunces-Variable.ttf') format('truetype');font-weight:300 900;font-display:swap}
body{font-family:Manrope,Inter,ui-sans-serif,system-ui,sans-serif}
h1,h2,h3,.feature-area strong,.family-situation-result h4{font-family:Fraunces,Georgia,serif;font-optical-sizing:auto}
.hero h1{letter-spacing:-.045em}
.feature-strip{position:relative;overflow:hidden;padding:105px 0 116px;background:radial-gradient(circle at 4% 15%,#eff7e9,transparent 34%),linear-gradient(180deg,#fffcf5,#f6f2e9)}
.feature-strip::before{content:"";position:absolute;top:-115px;right:-75px;width:360px;height:360px;border:1px solid rgba(22,88,66,.16);border-radius:50%;box-shadow:0 0 0 48px rgba(28,105,76,.035),0 0 0 100px rgba(28,105,76,.022);pointer-events:none}
.feature-heading h2{max-width:770px}.feature-heading>p{max-width:440px}
.experience-invite{display:flex;align-items:center;gap:10px;margin:2px 0 20px;color:#285f49;font-size:.87rem;font-weight:750}.experience-invite span{color:#ec8240;font-size:1.25rem}
.concept-card-grid.feature-area-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.feature-area.concept-card{isolation:isolate;display:block;min-height:325px;overflow:hidden;padding:0;border:1px solid rgba(5,46,36,.2);border-radius:27px;background:#073d2f;color:#fff;box-shadow:0 16px 34px rgba(7,48,36,.16);transform:translateZ(0);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s}
.feature-area.concept-card:hover,.feature-area.concept-card:focus-visible{transform:translateY(-8px);border-color:#f4b678;box-shadow:0 26px 52px rgba(7,48,36,.25)}
.feature-area.concept-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(1.04);transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .5s}
.feature-area.concept-card:hover>img,.feature-area.concept-card:focus-visible>img{transform:scale(1.055);filter:saturate(1.18)}
.feature-area.concept-card::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(2,35,28,.03) 7%,rgba(2,38,29,.35) 40%,rgba(3,35,28,.93) 100%)}
.feature-area.concept-card.money{background:radial-gradient(circle at 78% 45%,#1c8062,#063d30)}
.feature-area.concept-card.money>img{inset:3% 0 12% auto;width:83%;height:75%;object-fit:contain;object-position:right center}
.feature-area.concept-card.money::after{background:linear-gradient(180deg,rgba(0,40,30,.02) 20%,rgba(1,36,27,.87) 100%)}
.feature-area.concept-card.more{background:#e4efe2;color:#fff}
.feature-grid .feature-area.concept-card span{width:auto;height:auto;min-width:0;margin:0;padding:0;border-radius:0;background:transparent;color:inherit;font-size:inherit;font-weight:inherit}
.concept-card-copy{position:absolute;inset:auto 22px 22px;z-index:1;display:grid;justify-items:start;text-shadow:0 1px 8px rgba(1,24,19,.5)}
.feature-grid .feature-area.concept-card .concept-card-copy{display:grid;justify-items:start;gap:0}
.feature-grid .feature-area.concept-card .concept-card-kicker{display:block;margin:0 0 4px;color:#9ff1d0;font-size:.68rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.feature-area.concept-card strong{font-size:clamp(1.75rem,2.3vw,2.25rem);line-height:1.08;color:#fff}
.feature-area.concept-card small{position:static;max-width:34ch;margin:7px 0 0;color:#ecf4e9;font-size:.83rem;line-height:1.4}
.feature-area.concept-card b{display:inline-flex;align-items:center;gap:10px;margin-top:12px;padding:0;color:#ffd19b;font-size:.71rem;letter-spacing:.08em;text-transform:uppercase}
.feature-grid .feature-area.concept-card b span{display:inline-grid;place-items:center;width:23px;height:23px;border:1px solid rgba(255,209,155,.65);border-radius:50%;font-size:.9rem;transition:transform .25s,background .25s}
.feature-area.concept-card:hover b span{transform:translate(3px,-3px);background:rgba(255,209,155,.16)}
.experience-dialog{width:min(1090px,calc(100% - 26px));max-height:min(91vh,900px);padding:0;border:0;border-radius:30px;background:#fffaf2;color:#0a3329;box-shadow:0 35px 95px rgba(0,24,20,.36)}
.experience-dialog::backdrop{background:rgba(2,32,26,.75);backdrop-filter:blur(9px)}
.experience-dialog[open]{animation:experience-enter .35s cubic-bezier(.2,.8,.2,1)}
@keyframes experience-enter{from{opacity:0;transform:translateY(26px) scale(.97)}to{opacity:1;transform:none}}
.experience-dialog-shell{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);min-height:610px;max-height:91vh;overflow:auto}
.experience-close{position:sticky;top:18px;grid-column:2;grid-row:1;justify-self:end;z-index:5;width:43px;height:43px;margin:18px 18px -60px 0;border:1px solid rgba(5,65,48,.2);border-radius:50%;background:#fffdf6;color:#153d31;font-size:1.75rem;line-height:1;box-shadow:0 6px 22px rgba(0,35,26,.12)}
.experience-close:hover{background:#e9f5e9}
.experience-art{grid-column:1;grid-row:1;min-height:610px;background:#104e3a}.experience-art img{position:sticky;top:0;width:100%;height:100%;min-height:610px;max-height:91vh;object-fit:cover}
.experience-content{grid-column:2;grid-row:1;align-self:center;padding:70px clamp(24px,4vw,57px) 50px}.experience-content h2{margin:8px 0 11px;font-size:clamp(2.6rem,4.5vw,4.5rem);line-height:1}.experience-lead{max-width:48ch;margin:0 0 20px;color:#36594d;font-size:1.04rem}.experience-content h3{margin:25px 0 13px;font-size:1.3rem}
.experience-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.experience-tools span{display:flex;align-items:center;min-height:58px;padding:11px 13px;border:1px solid #d2e2d5;border-radius:15px;background:#f0f7ed;font-size:.79rem;font-weight:750}.experience-tools span::before{content:"✦";margin-right:9px;color:#e77c3b}
.experience-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:23px}.experience-actions .button{min-height:44px;padding:.65rem 1rem;font-size:.82rem}.experience-footnote{margin:22px 0 0;color:#60756a;font-size:.7rem}
.experience-special{border-left:3px solid #e78a46;padding:10px 14px;background:#f1eee2;color:#315a48;font-size:.87rem;line-height:1.5}.experience-special strong{display:block;color:#153d31}
.concept-interface-frame.direction-frame{padding:10px;background:#fffdf7}.concept-interface-frame::before{display:none}.concept-interface-window{overflow:hidden;border:1px solid #d3dfd3;border-radius:23px;background:#fffdf8}.concept-interface-top{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:74px;padding:14px 27px;border-bottom:1px solid #dfebdc}.concept-interface-top img{width:190px;max-width:40%;height:auto;border-radius:0}.concept-interface-top span:nth-child(2){color:#4e745f;font-size:.72rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.concept-interface-top span:last-child{color:#f57642;font-size:1.4rem}
.concept-interface-body{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:18px;padding:22px;background:linear-gradient(125deg,#e9f3e9,#fffaf0)}.concept-interface-today{display:flex;flex-direction:column;justify-content:center;min-height:485px;padding:clamp(24px,4vw,55px);border-radius:27px;background:radial-gradient(circle at 81% 15%,rgba(134,215,168,.31),transparent 28%),linear-gradient(145deg,#0b4a38,#052f25);color:#fff}.concept-interface-today .eyebrow{color:#9ee4c1}.concept-interface-today h3{margin:20px 0 8px;font-size:clamp(3rem,5vw,5.7rem);line-height:.94}.concept-interface-today>p:not(.eyebrow){color:#e7f4e8}.concept-interface-path{display:flex;align-items:center;justify-content:space-between;gap:7px;margin:42px 0 30px}.concept-interface-path span{display:grid;justify-items:center;gap:6px;color:#e9f3e9;font-size:.75rem;font-weight:800}.concept-interface-path b{display:grid;place-items:center;width:57px;height:57px;border:1px solid rgba(255,255,255,.38);border-radius:50%;background:#daedce;color:#0b4d36;font-size:1.5rem}.concept-interface-path span:first-child b{background:#ffc577;color:#70451e}.concept-interface-path span:last-child b{background:#bce3f1;color:#24566a}.concept-interface-path i{flex:1;height:2px;background:linear-gradient(90deg,#fbc271,#b5ecd0)}.concept-interface-today button{min-height:50px;border:0;border-radius:99px;background:#eff8e9;color:#0e563d;font-weight:850}.concept-interface-today button:hover{background:#d5f0da}.concept-interface-today button span{margin-left:12px}
.concept-interface-explore{display:flex;flex-direction:column;justify-content:center;padding:13px}.concept-interface-explore h3{margin:4px 0 1px;font-size:clamp(2rem,3vw,3.2rem);line-height:1}.concept-interface-explore>div:first-child>p:last-child{margin:4px 0 20px;color:#517061;font-size:.88rem}.concept-interface-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.concept-interface-tiles button{position:relative;min-height:170px;overflow:hidden;padding:0;border:1px solid rgba(10,74,52,.22);border-radius:20px;background:#e4efe2;color:#fff;text-align:left;transition:transform .28s,box-shadow .28s}.concept-interface-tiles button:hover{transform:translateY(-5px);box-shadow:0 16px 26px rgba(10,55,41,.2)}.concept-interface-tiles img{position:absolute;inset:0;width:100%;height:100%;border-radius:0;object-fit:cover}.concept-interface-tiles button:nth-child(2) img{object-fit:contain;background:#1a7054}.concept-interface-tiles button::after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(0deg,rgba(0,35,26,.87),transparent)}.concept-interface-tiles strong{position:absolute;inset:auto 12px 12px;z-index:1;font-family:Fraunces,Georgia,serif;font-size:1.2rem;line-height:1;text-shadow:0 2px 6px rgba(0,0,0,.35)}.concept-interface-bottom{display:flex;align-items:center;justify-content:space-around;min-height:64px;padding:7px;border-top:1px solid #deeadb;color:#2c5f47;font-size:.75rem;font-weight:850}.concept-interface-add{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:#ff7245;color:#fff;font-size:1.7rem;line-height:1}
.concept-story{position:relative;overflow:hidden;padding:112px 0;background:linear-gradient(145deg,#073d30,#0c5a43 65%,#155d4c);color:#fff}.concept-story::before{content:"";position:absolute;inset:auto -8% -280px auto;width:680px;height:680px;border:1px solid rgba(222,244,213,.16);border-radius:50%;box-shadow:0 0 0 60px rgba(222,244,213,.035),0 0 0 130px rgba(222,244,213,.025)}
.concept-story-grid{position:relative;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(32px,7vw,100px)}.concept-story-copy h2{margin:15px 0 22px;font-size:clamp(2.8rem,5vw,5.6rem);line-height:1.03;letter-spacing:-.04em}.concept-story-copy h2 em{color:#f7bd78;font-style:normal}.concept-story-copy .lead{color:#f0f7ed;font-size:1.15rem}.concept-story-copy>p:not(.eyebrow):not(.lead){color:#c8ddd0}.concept-story-copy .button{margin-top:20px;background:#ff7247;border-color:#ff7247}.concept-story-copy .button:hover{background:#e85e34}
.money-demo{padding:23px;border:1px solid rgba(246,255,247,.5);border-radius:30px;background:#fffcf5;color:#10392e;box-shadow:0 30px 65px rgba(0,31,25,.29);transform:rotate(1deg);transition:transform .35s}.money-demo:hover{transform:rotate(0)}.money-demo-head{display:flex;justify-content:space-between;gap:12px;font-size:.75rem;font-weight:850;letter-spacing:.04em}.money-demo-head strong{color:#618177;font-size:.68rem;text-transform:uppercase}.money-demo-hero{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:170px;margin:17px 0;padding:17px 20px;border-radius:23px;background:linear-gradient(110deg,#e4f3e6,#f9f0d9)}.money-demo-hero div{display:grid;gap:4px}.money-demo-hero small{color:#4a6b5d;font-size:.78rem}.money-demo-hero strong{font-family:Fraunces,Georgia,serif;font-size:clamp(2rem,4vw,3.5rem);line-height:1}.money-demo-hero span{font-size:.74rem;color:#557164}.money-demo-hero img{width:38%;max-height:145px;object-fit:contain}.money-periods{display:flex;flex-wrap:wrap;gap:5px}.money-periods button{flex:1;min-width:85px;min-height:39px;border:1px solid #c9ded0;border-radius:999px;background:#f2f8ee;color:#2d604b;font-size:.72rem;font-weight:850}.money-periods button[aria-pressed=true]{background:#14563f;color:#fff}.money-bars{display:flex;align-items:end;justify-content:space-between;gap:9px;height:140px;padding:18px 4px 0;border-bottom:2px solid #c8dccc}.money-bars span{flex:1;height:calc(var(--bar)*100%);border-radius:8px 8px 0 0;background:linear-gradient(180deg,#93d0ac,#2f9b70);transition:height .55s cubic-bezier(.2,.8,.2,1)}.money-demo>p{margin:17px 0 4px;font-size:.79rem;font-weight:700}.money-demo>small{color:#60766a;font-size:.67rem}
.family-situations{margin-top:56px;padding:clamp(22px,4vw,48px);border:1px solid #d3ded0;border-radius:30px;background:#fffdf7;box-shadow:0 20px 46px rgba(20,57,43,.07)}.family-situations-intro{max-width:660px}.family-situations-intro h3{margin:4px 0;font-size:clamp(1.8rem,3vw,2.8rem)}.family-situations-intro p:last-child{color:#526c5d}.family-situation-options{display:flex;flex-wrap:wrap;gap:9px;margin:23px 0}.family-situation-options button{min-height:45px;padding:10px 16px;border:1px solid #bcd1c0;border-radius:99px;background:#ecf4ec;color:#285c42;font-size:.82rem;font-weight:800;transition:transform .2s,background .2s}.family-situation-options button:hover{transform:translateY(-2px)}.family-situation-options button[aria-pressed=true]{background:#155840;border-color:#155840;color:#fff}.family-situation-result{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);overflow:hidden;border-radius:22px;background:#eaf3e9}.family-situation-result img{width:100%;height:100%;min-height:260px;object-fit:cover}.family-situation-result>div{align-self:center;padding:clamp(20px,3vw,38px)}.family-situation-result span{color:#327659;font-size:.7rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.family-situation-result h4{margin:7px 0 10px;font-size:clamp(1.5rem,2.6vw,2.3rem);line-height:1.1}.family-situation-result p{margin:0 0 20px;color:#365e4c;font-size:.9rem}.family-situation-result button{border:0;background:transparent;color:#0d6646;font-weight:850;text-decoration:underline;text-underline-offset:5px}
.sidequest-showcase{position:relative;min-height:395px;overflow:hidden;margin:40px 0 20px;border:1px solid rgba(207,242,215,.32);border-radius:30px;background:#123e34;box-shadow:0 24px 48px rgba(0,18,13,.23)}
.sidequest-showcase::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,37,28,.92),rgba(0,37,28,.56) 50%,transparent 100%)}
.sidequest-showcase>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.sidequest-showcase:hover>img{transform:scale(1.04)}
.sidequest-showcase>div{position:relative;z-index:1;max-width:570px;padding:clamp(28px,5vw,60px);color:#fff}.sidequest-showcase h3{margin:8px 0 14px;font-size:clamp(2.2rem,3.7vw,4.2rem);line-height:1.04}.sidequest-showcase p:not(.eyebrow){color:#e5f1e8}.sidequest-showcase a{display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-top:14px;padding:10px 17px;border-radius:99px;background:#ff7247;color:#fff;text-decoration:none;font-size:.85rem;font-weight:850;transition:transform .2s,background .2s}.sidequest-showcase a:hover{transform:translateY(-3px);background:#e95f37}
.sidequest-ideas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:0 0 32px}.sidequest-ideas button{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:flex-start;justify-content:end;min-height:215px;overflow:hidden;padding:22px;border:1px solid rgba(255,255,255,.25);border-radius:22px;background:#124b3c;color:#fff;text-align:left;box-shadow:0 12px 30px rgba(0,20,14,.15);transition:transform .3s,box-shadow .3s}.sidequest-ideas button:hover{transform:translateY(-6px);box-shadow:0 22px 40px rgba(0,20,14,.26)}.sidequest-ideas button img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform .6s}.sidequest-ideas button:hover img{transform:scale(1.06)}.sidequest-ideas button::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(0,25,20,.92),rgba(0,25,20,.05) 80%)}.sidequest-ideas button span{color:#a7efce;font-size:.68rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.sidequest-ideas button strong{margin-top:3px;font-family:Fraunces,Georgia,serif;font-size:1.4rem;line-height:1.1}.sidequest-ideas button b{margin-top:9px;color:#ffd09b;font-size:.7rem;text-transform:uppercase}
.sidequest-board.sidequest-board-concept{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-height:620px;overflow:hidden;padding:30px;border:1px solid rgba(255,255,255,.3);border-radius:30px;background:#103e32;color:#fff}
.sidequest-board-concept::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(0,30,24,.76),rgba(0,30,24,.08) 48%,rgba(0,30,24,.92))}
.sidequest-board.sidequest-board-concept img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;border-radius:0;object-fit:cover}
.sidequest-board-intro{display:grid;justify-items:start;gap:6px}.sidequest-board-intro span{color:#b5f2cf;font-size:.68rem;font-weight:850;letter-spacing:.14em}.sidequest-board-intro strong{max-width:12ch;font-family:Fraunces,Georgia,serif;font-size:clamp(2.4rem,4vw,4.7rem);line-height:1}.sidequest-board-intro small{color:#f4f3e8;font-size:.9rem}
.sidequest-board-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sidequest-board-steps span{display:flex;align-items:center;gap:9px;min-height:53px;padding:10px 12px;border:1px solid rgba(225,248,225,.33);border-radius:14px;background:rgba(4,57,43,.65);backdrop-filter:blur(10px);font-size:.73rem;font-weight:800}.sidequest-board-steps b{display:grid;place-items:center;flex:none;width:25px;height:25px;border-radius:50%;background:#ff7548;color:#fff;font-size:.65rem}
@media(max-width:1050px){.concept-card-grid.feature-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.concept-story-grid{gap:30px}.concept-interface-body{grid-template-columns:1fr}.concept-interface-today{min-height:390px}.concept-interface-tiles button{min-height:190px}}
@media(max-width:750px){.concept-card-grid.feature-area-grid{grid-template-columns:1fr 1fr}.feature-area.concept-card{min-height:285px}.experience-dialog-shell{display:block}.experience-art{min-height:230px;height:230px}.experience-art img{min-height:230px;height:230px}.experience-content{padding:25px}.experience-close{position:sticky;float:right;margin:12px 12px -55px 0}.concept-story-grid{grid-template-columns:1fr}.money-demo{transform:none}.family-situation-result{grid-template-columns:1fr}.family-situation-result img{height:210px;min-height:0}.sidequest-ideas{grid-template-columns:1fr}.sidequest-ideas button{min-height:185px}}
@media(max-width:600px){.feature-strip{padding:70px 0}.concept-card-grid.feature-area-grid{grid-template-columns:1fr;gap:12px}.feature-area.concept-card{min-height:270px}.feature-area.concept-card>img{object-position:center 40%}.concept-card-copy{inset:auto 18px 17px}.concept-card-kicker{font-size:.64rem}.feature-area.concept-card strong{font-size:1.8rem}.feature-area.concept-card small{font-size:.81rem}.experience-tools{grid-template-columns:1fr}.experience-dialog{max-height:94vh}.experience-dialog-shell{max-height:94vh}.experience-actions .button{width:100%}.concept-story{padding:76px 0}.money-demo{padding:15px}.family-situations{margin-top:35px}.family-situation-options button{flex:1 1 45%}.sidequest-showcase{min-height:445px}.sidequest-showcase::after{background:linear-gradient(0deg,rgba(0,37,28,.94),rgba(0,37,28,.22) 88%)}.sidequest-showcase>div{position:absolute;inset:auto 0 0}.sidequest-showcase h3{font-size:2.1rem}.sidequest-board.sidequest-board-concept{min-height:470px;padding:18px}.sidequest-board-intro strong{font-size:2.5rem}.sidequest-board-steps{grid-template-columns:1fr 1fr;gap:6px}.sidequest-board-steps span{min-height:60px;padding:7px;font-size:.72rem}.sidequest-board-steps b{width:20px;height:20px;font-size:.55rem}.concept-interface-top{min-height:58px;padding:10px}.concept-interface-top img{width:128px;max-width:48%}.concept-interface-top span:nth-child(2){font-size:.57rem;text-align:right}.concept-interface-top span:last-child{display:none}.concept-interface-body{gap:10px;padding:9px}.concept-interface-today{min-height:325px;padding:22px}.concept-interface-today h3{font-size:3.1rem}.concept-interface-path{margin:27px 0 22px}.concept-interface-path b{width:42px;height:42px;font-size:1.1rem}.concept-interface-explore{padding:13px 5px}.concept-interface-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.concept-interface-tiles button{min-height:132px}.concept-interface-tiles strong{font-size:1rem}.concept-interface-bottom{font-size:.62rem}}
@media(prefers-reduced-motion:reduce){.feature-area.concept-card,.feature-area.concept-card>img,.money-bars span,.money-demo{transition:none!important}.experience-dialog[open]{animation:none!important}}
