/* A clearer, more expressive public homepage. */
.landing{--green:#075d4b;--ink:#103d34;--gold:#ffbc35;background:#fffdf7;color:#103d34}.landingNav{position:sticky;top:0;z-index:80;max-width:none;width:100%;height:auto;min-height:104px;padding:16px max(28px,calc((100vw - 1280px)/2));gap:24px;background:#fffdf8f5;backdrop-filter:blur(16px);border-bottom:1px solid #cbdace;box-shadow:0 6px 25px #123e3010;flex-wrap:wrap}.landingNav .brand{font-size:42px;font-weight:700;letter-spacing:-1.5px;gap:12px;text-shadow:none;transform:none!important;white-space:nowrap}.brand3dSpark{display:none}.landingNav .brand3dPop{animation:none!important}.landingLinks{font-size:15px;font-weight:700;gap:4px;flex:1;min-width:0}.landingLinks>a{position:relative;white-space:nowrap;padding:13px 12px;border-radius:12px;transition:background .2s,color .2s,transform .2s;color:#194f40}.landingLinks>a:hover{color:#064e3c;background:#e1f2df;transform:translateY(-2px)}.landingLinks>a.isCurrent{background:#e0efdf;color:#084d3b;box-shadow:inset 0 -3px 0 #248467}.landingLinks>a:focus-visible,.landing button:focus-visible,.landing a:focus-visible{outline:3px solid #dc8b17;outline-offset:4px}.navActions{font-size:14px;font-weight:700;gap:10px}.navActions>button:not(.menuToggle){padding:13px 16px;border:1.5px solid #b4cdb9;border-radius:12px;color:#124d3a;background:#fff;white-space:nowrap;min-height:48px}.navActions>button.darkBtn{background:#075d4b;border-color:#075d4b;color:white;box-shadow:0 4px 0 #034231;font-weight:700;font-size:14px}.navActions>button.darkBtn:hover{background:#0b755c;transform:translateY(-2px);box-shadow:0 6px 0 #034231}.landing button,.landing .goldBtn,.landing .softBtn{transition:transform .18s,box-shadow .18s,background .18s}.landing button:active,.landing .goldBtn:active{transform:translateY(2px)!important;box-shadow:none!important}.landing .goldBtn{background:#ffbc35;color:#183f30;font-size:15px;font-weight:800;padding:18px 25px;border-radius:13px;border:1px solid #eda524;box-shadow:0 5px 0 #d9911d,0 12px 25px #d58e1720}.landing .goldBtn:hover{background:#ffd06a;transform:translateY(-3px);box-shadow:0 8px 0 #d9911d,0 16px 25px #d58e1725}.landing .softBtn{color:#19523e;border:1.5px solid #b7cdbb;background:#fffdf8;font-size:14px;border-radius:12px}.landing .softBtn:hover{background:#e4f2e1;border-color:#76a186;transform:translateY(-2px)}.landingHero{max-width:1440px;padding:80px 6% 75px;background:radial-gradient(ellipse at 90% 20%,#dcefcf 0,transparent 48%),radial-gradient(ellipse at 5% 70%,#fff0c8 0,transparent 50%)}.landingHero h1{color:#0b493b;font-size:clamp(48px,5vw,76px);line-height:1.08}.landingHero h1 em{color:#137553}.landingHero .heroDescription{font-size:18px;color:#466253;line-height:1.85;max-width:490px}.heroChecks{font-size:12px;color:#466b51;font-weight:600;gap:17px}.overline{font-size:11px;color:#3c694c;letter-spacing:1.8px}.benefitRibbon{background:#e8f2dd;border-top:1px solid #bfd4b1;border-bottom:1px solid #bfd4b1;color:#234f35;font-size:14px;font-weight:700}.benefitRibbon>div{padding-top:12px;padding-bottom:12px}.homeSection{padding-top:85px;padding-bottom:85px}.sectionIntro>p,.sectionSplit>div>p,.faqSection>div>p{font-size:16px;color:#4d6657;line-height:1.8}.sectionIntro h2,.sectionSplit h2,.faqSection h2{color:#104b3b;font-size:clamp(30px,3.2vw,46px);line-height:1.15}.goalComposer{background:#fff;box-shadow:0 12px 40px #294e3910;border:1.5px solid #cbdcc8;border-radius:20px}.goalInput input{font-size:17px;color:#234f38}.goalChips button{font-size:12px;color:#3d5d42;background:#edf4e8;border:1px solid #c7d8bf;padding:12px 15px;border-radius:10px}.goalChips button.chosen{background:#165e47;color:#fff;border-color:#165e47}.sagePanel{background:#eaf3e4}.coachCard{background:#fffefa;border:1.5px solid #cadcc7;border-radius:20px;transition:transform .2s,box-shadow .2s,border-color .2s;overflow:hidden}.coachCard:hover{transform:translateY(-7px);border-color:#719f75;box-shadow:0 17px 35px #23573618}.coachInfo h3{font-size:22px;color:#154c37}.coachInfo p{font-size:14px;color:#547058}.coachTags span{font-size:11px;color:#315c3c;background:#e8f2e3}.coachBottom button{font-size:12px;font-weight:700;background:#fbc253;color:#284c30;padding:11px 13px;border-radius:9px}.step{background:#fff;padding:25px;border:1px solid #d5dfcf;border-radius:18px;transition:transform .2s}.step:hover{transform:translateY(-5px);box-shadow:0 13px 25px #204d3210}.step h3{font-size:21px;color:#18503a}.step p{font-size:14px;color:#536b56}.coursePanel{background:#15573f;box-shadow:0 20px 50px #1d55331a}.pathCard{background:#fff9e9;border:1px solid #e9ce86;box-shadow:0 10px 20px #052f2920}.pathCard h3{color:#175239;font-size:28px}.pathCard p,.pathCard ul{color:#4e6650;font-size:14px}.resourceCard{border:1px solid #dad1bd;border-radius:20px;transition:transform .2s,box-shadow .2s;text-align:left}.resourceCard:nth-child(1){background:#fff0cf}.resourceCard:nth-child(2){background:#eae5fa}.resourceCard:nth-child(3){background:#e0f1e7}.resourceCard:hover{transform:translateY(-7px);box-shadow:0 15px 30px #354c3818}.resourceCard h3{font-size:23px;color:#214c3a}.resourceCard p{color:#4b6254;font-size:14px}.resourceCard .resourceLink{font-weight:700;font-size:13px}.faqList summary{font-size:16px;font-weight:700;color:#214e39;padding:22px 0}.faqList details[open]{background:#edf4e7;border-radius:12px;padding:0 18px}.faqList p{font-size:14px;color:#4c6553}.homeCta{background:#0d523e;color:#fff8e4;border-radius:25px;margin-left:5%;margin-right:5%;box-shadow:0 12px 35px #164e3520}.homeCta h2{color:#fff8e4;font-size:clamp(35px,4vw,56px)}.homeCta p{color:#d7e9ce;font-size:16px}.homeFooter{font-size:13px;color:#47644f}.homeFooter button{font-size:13px;font-weight:700;color:#12513d}.siteScrollProgress{position:fixed;top:0;left:0;right:0;z-index:100;height:3px;pointer-events:none;transform-origin:left;background:#f4b434;transform:scaleX(0)}
@media(min-width:761px) and (max-width:1180px){.landingNav{padding:15px 30px;gap:14px 22px}.landingNav .brand{font-size:39px}.landingNav .landingLinks{order:3;flex-basis:100%;justify-content:center;display:flex!important}.landingNav .navActions{margin-left:auto}.menuToggle{display:none!important}.landingNav .landingLinks .mobileAccountLinks{display:none}.landingNav .brandMark{width:60px;height:60px}}
@media(max-width:760px){.landingNav{padding:14px 20px 9px;min-height:120px;gap:12px;align-content:center}.landingNav .brand{font-size:32px;gap:9px;letter-spacing:-1.2px}.landingNav .brandMark{width:48px;height:48px}.navActions{margin-left:auto;gap:8px}.navActions>button:not(.menuToggle){font-size:12px;padding:10px 12px;min-height:43px}.landingNav .navActions>button:not(.darkBtn):not(.menuToggle){display:none}.landingNav .menuToggle{display:none!important}.landingNav .landingLinks,.landingNav .landingLinks.open{display:flex!important;position:static!important;order:3;flex:0 0 100%;width:100%;overflow-x:auto;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:5px;padding:2px 0 7px;background:transparent;box-shadow:none;border:0;scrollbar-width:thin;scrollbar-color:#9dbb96 transparent}.landingLinks>a{font-size:13px;padding:11px 13px;background:#edf3e6;border:1px solid #d8e1cd;flex-shrink:0}.landingNav .mobileAccountLinks{display:contents}.landingNav .mobileAccountLinks button{font-size:13px;font-weight:700;white-space:nowrap;padding:11px 13px;color:#1d563e;border:1px solid #c3d3bc;border-radius:12px;background:#fff}.landingHero{padding:45px 24px 45px;gap:30px}.landingHero h1{font-size:clamp(43px,9.2vw,62px);letter-spacing:-2.2px}.landingHero .heroDescription{font-size:16px;line-height:1.8}.landing .goldBtn{font-size:13px;padding:15px 18px;gap:14px}.landing .softBtn{font-size:12px;padding:15px}.heroButtons{gap:10px}.heroChecks{font-size:10px;gap:12px;flex-wrap:wrap}.benefitRibbon{font-size:12px}.homeSection{padding-top:55px;padding-bottom:55px}.sectionIntro>p,.sectionSplit>div>p{font-size:15px}.coachInfo h3{font-size:19px}.coachInfo p{font-size:12px}.coachBottom button{font-size:10px;padding:9px}.step{padding:20px}.homeCta{padding:45px 22px}.homeCta p{font-size:14px}.homeFooter{font-size:12px}.goalInput input{font-size:14px}}
@media(prefers-reduced-motion:reduce){.landing *{transition:none!important;animation:none!important}.landing button:hover,.coachCard:hover,.resourceCard:hover,.step:hover{transform:none!important}}
@media(min-width:1181px){.landingLinks{font-size:16px}.navActions>button:not(.menuToggle){font-size:15px}.navActions>button.darkBtn{font-size:15px}}@media(max-width:760px){.landingNav .landingLinks,.landingNav .landingLinks.open{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;overflow:visible}.landingLinks>a{font-size:12px;text-align:center;padding:11px 5px}.landingNav .mobileAccountLinks{display:block;grid-column:1/-1;justify-self:end;border:0;padding:0}.landingNav .mobileAccountLinks button{padding:7px 10px;font-size:12px;background:transparent;border:0}.villageIntro h2 em:before{content:' ';white-space:pre}}
/* Keep the original logo and wordmark centred on one baseline. */
.landingNav .brand{display:inline-flex!important;align-items:center!important;justify-content:flex-start;line-height:1!important;gap:12px!important;padding:0!important;flex-shrink:0}.landingNav .brandWord{display:block;line-height:1.05;font-size:42px;font-weight:700;letter-spacing:-1.5px;color:#103f34;text-shadow:none}.landingNav .brandMark{display:block;position:relative;flex:0 0 64px;width:64px!important;height:64px!important;border-radius:12px;background:#fffdf8;box-shadow:none!important;transform:none;overflow:hidden}.landingNav .brandMark img{position:absolute!important;width:198px!important;height:198px!important;left:-68px!important;top:-46px!important;object-fit:fill!important;transform:none!important;mix-blend-mode:multiply}.landingNav .brand:hover .brandMark{box-shadow:none!important}@media(max-width:760px){.landingNav .brand{gap:9px!important}.landingNav .brandWord{font-size:31px;letter-spacing:-1px}.landingNav .brandMark{flex-basis:47px;width:47px!important;height:47px!important;border-radius:9px}.landingNav .brandMark img{width:145px!important;height:145px!important;left:-50px!important;top:-34px!important}}
