:root{--ink:#173b2a;--green:#00a85a;--deep:#006a3c;--mint:#e7f7ec;--cream:#fbfaf5;--line:#dce9df;--muted:#597063}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.6}.wrap{max-width:1150px;margin:auto;padding-left:28px;padding-right:28px}.nav{height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font:800 25px/1 'Plus Jakarta Sans',sans-serif;letter-spacing:-1.5px}.brand small{display:block;font:500 8px/1.2 'DM Sans',sans-serif;letter-spacing:.2px;margin-top:4px;color:#50705d}.sprout{display:grid;place-items:center;width:36px;height:36px;border-radius:13px;color:#fff;background:var(--green);font-size:19px}nav{display:flex;align-items:center;gap:27px}nav a{color:#476052;text-decoration:none;font-weight:600;font-size:14px}.button{display:inline-flex;align-items:center;gap:20px;padding:14px 20px;border-radius:100px;background:var(--green);color:#fff!important;text-decoration:none;font-weight:700;font-size:14px;box-shadow:0 8px 20px #00a85a25}.button span{font-size:20px;line-height:1}.button-small{padding:10px 17px}.menu-toggle{display:none;border:0;background:none;font-size:24px;color:var(--ink)}.hero{overflow:hidden;background:linear-gradient(180deg,#f5fbf5 0%,var(--cream) 100%);padding:74px 0 95px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:65px}.eyebrow{text-transform:uppercase;letter-spacing:1.8px;color:var(--deep);font-size:11px;font-weight:700;margin:0 0 15px}.hero h1,.curriculum-hero h1{font:800 clamp(48px,6vw,78px)/.98 'Plus Jakarta Sans',sans-serif;letter-spacing:-4px;margin:0 0 25px}.hero h1 em,.curriculum-hero em{font-style:normal;color:var(--green)}.lead{font-size:18px;color:#4a6254;max-width:570px;margin:0}.actions{display:flex;align-items:center;gap:26px;margin-top:33px}.text-link{color:var(--deep);font-weight:700;text-decoration:none;font-size:14px}.text-link span{font-size:19px;margin-left:4px}.hero-art{height:405px;position:relative;border-radius:42% 42% 18% 18%;background:#c9efd8;overflow:hidden;isolation:isolate}.sun{position:absolute;top:48px;right:73px;width:92px;height:92px;border-radius:50%;background:#ffdc74}.arch{position:absolute;border:25px solid #8ad7a3;border-bottom:0;border-radius:100% 100% 0 0}.arch-one{width:300px;height:270px;bottom:0;left:67px}.arch-two{width:225px;height:200px;bottom:0;left:105px;border-color:#55c57c}.people{position:absolute;bottom:48px;left:50%;transform:translateX(-50%);display:flex;align-items:end;gap:17px}.people i{display:block;width:38px;height:109px;border-radius:30px 30px 10px 10px;background:#167949;position:relative}.people i:before{content:'';position:absolute;width:36px;height:36px;border-radius:50%;background:#f6c59e;top:-31px;left:1px}.people i:nth-child(2),.people i:nth-child(4){height:83px;background:#f2a75d}.people i:nth-child(3){height:131px;background:#0a633e}.hero-art p{position:absolute;right:28px;bottom:15px;color:#125638;text-align:right;font:700 13px/1.35 'Plus Jakarta Sans',sans-serif}.section{padding-top:110px;padding-bottom:110px}.problem{display:grid;grid-template-columns:1.18fr .82fr;gap:80px;border-bottom:1px solid var(--line)}h2{font:800 clamp(31px,3.7vw,48px)/1.1 'Plus Jakarta Sans',sans-serif;letter-spacing:-2px;margin:0}.problem h2{max-width:650px}.problem-copy{padding-top:38px;color:#496253}.problem-copy p{margin-top:0}.programs{background:var(--ink);color:#fff}.programs .eyebrow{color:#89d9a5}.programs h2{color:#fff}.section-lead{color:#bed4c6;max-width:500px;margin:15px 0 43px}.program-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.program-card{padding:35px;border-radius:22px;position:relative}.weekly{background:#f0fbf2;color:var(--ink)}.monthly{background:#117749;color:#fff}.number{position:absolute;right:28px;top:26px;font:700 13px 'Plus Jakarta Sans';opacity:.45}.icon{font-size:37px;line-height:1;margin-bottom:48px}.program-card h3{font:800 30px 'Plus Jakarta Sans';letter-spacing:-1.4px;margin:0 0 10px}.program-card p{font-size:15px;margin:0;color:#537061}.monthly p{color:#d5efdf}.program-card ul{padding:19px 0 0;margin:22px 0 0;list-style:none;border-top:1px solid #c9e3d0;font-size:13px;font-weight:600}.monthly ul{border-color:#69b98e}.program-card li{margin:8px 0}.program-card li:before{content:'✓';margin-right:8px;color:var(--green)}.monthly li:before{color:#a3e5ba}.story{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center}.story-visual{height:445px;border-radius:24px;background:linear-gradient(135deg,#e1f5e4,#b4e5c4);position:relative;overflow:hidden}.story-visual:before,.story-visual:after{content:'';position:absolute;border-radius:50%;background:#fff8}.story-visual:before{width:220px;height:220px;bottom:-65px;left:-45px}.story-visual:after{width:125px;height:125px;right:43px;top:45px}.quote-mark{position:absolute;top:20px;left:38px;color:#159459;font:160px Georgia}.photo-note{position:absolute;z-index:2;left:29px;right:29px;bottom:27px;padding:20px;border-radius:14px;background:#fffffff0;color:var(--ink)}.photo-note span{display:block;text-transform:uppercase;letter-spacing:1px;font-size:10px;font-weight:700;color:var(--deep)}.photo-note strong{display:block;font:700 17px/1.25 'Plus Jakarta Sans';margin-top:6px}.story-copy>p:not(.eyebrow){color:#536a5b;font-size:16px}.note{padding:15px 18px;border-left:3px solid var(--green);background:#f0f8f1;font-size:13px!important}.curriculum-callout{background:var(--green);color:white;padding:74px 0}.callout-content{display:flex;align-items:center;justify-content:space-between;gap:50px}.callout-content h2{color:#fff}.callout-content .eyebrow{color:#c4f4d1}.callout-content p:not(.eyebrow){max-width:570px;color:#e6f9eb}.button-light{color:var(--deep)!important;background:#fff;white-space:nowrap}.join{text-align:center;max-width:760px}.join h2{margin:auto}.join>p:not(.eyebrow){color:#536a5b;margin:15px auto 27px}footer{border-top:1px solid var(--line);padding:32px 0;background:#f7f8f2}.footer-content{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-content p{color:#63796a;font-size:13px;margin:0}.footer-content>a:last-child{font-size:13px;color:var(--deep);font-weight:700}.curriculum-hero{padding:84px 0 95px;background:#edf9ef}.curriculum-hero h1{font-size:clamp(45px,6vw,71px)}.curriculum{max-width:980px}.tabs{border-bottom:1px solid var(--line);display:flex;gap:25px;margin-bottom:43px}.tab{font:700 15px 'DM Sans';padding:10px 4px 15px;border:0;border-bottom:3px solid transparent;background:none;color:#678070;cursor:pointer}.tab.active{color:var(--deep);border-color:var(--green)}.curriculum-panel{display:none}.curriculum-panel.active{display:block}.panel-intro{max-width:690px;margin-bottom:36px}.panel-intro h2{font-size:38px}.panel-intro p:not(.eyebrow){color:#577060}.topic-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.topic-grid article{min-height:175px;border:1px solid var(--line);border-radius:15px;background:#fff;padding:24px}.topic-grid span{font-size:11px;text-transform:uppercase;letter-spacing:1.2px;font-weight:700;color:var(--deep)}.topic-grid h3{font:700 18px/1.35 'Plus Jakarta Sans';letter-spacing:-.6px;margin:10px 0 0}.source-note{margin-top:45px;padding:18px 20px;border-radius:10px;background:#f0f6f0;font-size:13px;color:#55705d}.source-note a{color:var(--deep)}@media(max-width:720px){.wrap{padding-left:21px;padding-right:21px}.nav{height:74px}.menu-toggle{display:block}nav{display:none;position:absolute;z-index:5;top:67px;left:20px;right:20px;padding:18px;background:#fff;border-radius:14px;box-shadow:0 15px 30px #163b2a20;flex-direction:column;align-items:stretch;gap:15px}nav.open{display:flex}.hero{padding:45px 0 60px}.hero-grid,.problem,.story{grid-template-columns:1fr;gap:38px}.hero h1,.curriculum-hero h1{letter-spacing:-2.5px}.hero-art{height:315px;order:-1}.arch-one{left:30px}.arch-two{left:65px}.section{padding-top:72px;padding-bottom:72px}.problem-copy{padding-top:0}.program-grid,.topic-grid{grid-template-columns:1fr}.program-card{padding:28px}.story{gap:38px}.story-visual{height:330px}.callout-content,.footer-content{display:block}.callout-content .button{margin-top:22px}.footer-content p{margin:16px 0}.curriculum-hero{padding:55px 0 65px}.actions{gap:16px}.panel-intro h2{font-size:31px}}
:root .brand{font:inherit;letter-spacing:normal}.brand-logo{display:block;width:172px;height:auto}@media(max-width:720px){.brand-logo{width:142px}}
/* Tablet and phone: prevent the desktop navigation and two-column hero from crowding. */
@media(max-width:920px){.nav{position:relative}.menu-toggle{display:block;order:2}.nav nav{display:none;position:absolute;z-index:10;top:68px;left:20px;right:20px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 15px 30px #163b2a20;flex-direction:column;align-items:stretch;gap:15px}.nav nav.open{display:flex}.nav nav a{padding:4px 2px}.nav nav .button{justify-content:center}.hero-grid{grid-template-columns:1fr;gap:42px}.hero-art{max-width:520px;width:100%;margin:auto}.problem{gap:45px}.story{gap:55px}}
@media(max-width:720px){.nav nav{top:62px;left:12px;right:12px}.hero-art{height:315px}.hero-copy{order:2}.hero-art{order:1}.actions{flex-wrap:wrap}.button{padding:13px 18px}.story-visual{width:100%}.topic-grid article{min-height:0}.curriculum{padding-left:21px;padding-right:21px}}
/* Phone-first finishing rules: comfortable reading and thumb-friendly controls. */
@media(max-width:520px){body{overflow-x:hidden;-webkit-text-size-adjust:100%}.wrap{padding-left:20px;padding-right:20px}.nav{height:66px}.brand-logo{width:132px}.menu-toggle{width:44px;height:44px;border-radius:12px;background:#edf8f0;line-height:1}.hero{padding:32px 0 58px}.hero-grid{gap:30px}.hero-art{height:270px;border-radius:38% 38% 17% 17%}.sun{top:34px;right:48px;width:72px;height:72px}.arch{border-width:21px}.arch-one{width:230px;height:214px;left:35px}.arch-two{width:178px;height:165px;left:58px}.people{bottom:39px;gap:11px}.people i{width:29px;height:84px}.people i:before{width:28px;height:28px;top:-24px}.people i:nth-child(2),.people i:nth-child(4){height:66px}.people i:nth-child(3){height:103px}.hero-art p{right:18px;bottom:11px;font-size:11px}.hero h1,.curriculum-hero h1{font-size:46px;letter-spacing:-2.7px}.lead{font-size:16px;line-height:1.65}.actions{gap:13px;margin-top:25px}.button{min-height:46px;gap:14px}.text-link{min-height:44px;display:inline-flex;align-items:center}.section{padding-top:64px;padding-bottom:64px}h2{letter-spacing:-1.4px}.problem,.story{gap:30px}.program-card{padding:25px}.program-card h3{font-size:27px}.icon{margin-bottom:35px}.story-visual{height:275px}.quote-mark{top:8px;left:28px;font-size:125px}.photo-note{left:18px;right:18px;bottom:18px;padding:15px}.photo-note strong{font-size:15px}.curriculum-callout{padding:60px 0}.callout-content{gap:0}.tabs{gap:20px;margin-bottom:28px}.tab{min-height:48px;padding:11px 3px}.panel-intro{margin-bottom:26px}.panel-intro h2{font-size:29px}.topic-grid{gap:12px}.topic-grid article{padding:20px}.topic-grid h3{font-size:16px}.source-note{margin-top:30px}.footer-content{padding-top:4px}.footer-content>a:last-child{display:inline-block;min-height:44px;padding-top:10px}}
/* Editorial photographs and narrative sections. */
.photo-frame{margin:0}.photo-frame img,.story-visual img,.journey-card img,.belonging figure img{width:100%;height:100%;object-fit:cover;display:block}.hero-art.photo-frame{background:#143f2b}.hero-art.photo-frame:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,#093c27b8 100%);pointer-events:none}.hero-art.photo-frame figcaption{position:absolute;z-index:1;right:28px;bottom:20px;color:#fff;text-align:right;font:700 14px/1.35 'Plus Jakarta Sans',sans-serif}.story-visual{margin:0;background:#d5efdc}.story-visual:before,.story-visual:after{display:none}.story-visual img{position:absolute;inset:0}.story-visual:after{display:block;content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0a3c29a8,transparent 58%)}.photo-note{background:#fffffff2}.journey{background:#f1f8f1}.dark-lead{color:#536a5b}.journey-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;margin-top:40px}.journey-card{overflow:hidden;border-radius:20px;background:#fff;box-shadow:0 12px 30px #143b2a0c}.journey-card img{height:230px}.journey-card>div:last-child,.highlight-card{padding:25px}.journey-card span{display:block;color:var(--deep);font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.journey-card h3{font:800 23px/1.18 'Plus Jakarta Sans';letter-spacing:-1px;margin:10px 0}.journey-card p{margin:0;color:#5b7163;font-size:14px}.highlight-card{display:flex;flex-direction:column;justify-content:center;background:var(--ink);color:#fff}.highlight-card span{color:#a4e3b7}.highlight-card p{color:#d0e5d7}.highlight-card .text-link{margin-top:18px;color:#9be9b5}.small-symbol{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:#1a8251;color:#fff;margin-bottom:35px}.belonging{padding:110px 0;background:var(--cream)}.belonging-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:88px}.belonging figure{height:450px;border-radius:22px;overflow:hidden;margin:0}.belonging p:not(.eyebrow){color:#536a5b}.belonging ul{list-style:none;padding:9px 0 0;margin:25px 0 0;color:#426353;font-size:14px;font-weight:700}.belonging li{margin:13px 0}.belonging li:before{content:'✓';display:inline-grid;place-items:center;width:20px;height:20px;margin-right:10px;border-radius:50%;background:#dff4e6;color:var(--deep)}.footer-content small{font-size:11px;color:#708879}@media(max-width:920px){.journey-grid{grid-template-columns:1fr 1fr}.highlight-card{min-height:265px}.belonging-grid{gap:45px}}@media(max-width:720px){.story-visual{order:-1}.journey-grid,.belonging-grid{grid-template-columns:1fr}.belonging{padding:72px 0}.belonging figure{height:355px}.journey-card img{height:210px}}@media(max-width:520px){.hero-art.photo-frame{height:280px}.hero-art.photo-frame figcaption{right:18px;bottom:15px;font-size:12px}.story-visual{height:300px}.journey-grid{margin-top:28px}.journey-card>div:last-child,.highlight-card{padding:23px}.journey-card h3{font-size:22px}.belonging figure{height:285px}.belonging-grid{gap:30px}}
.amazing-race{padding:110px 0;background:#e0f4e5}.race-grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:80px}.race-photo{height:455px;margin:0;border-radius:22px;overflow:hidden;background:#94d4ac}.race-photo img{width:100%;height:100%;object-fit:cover;display:block}.race-copy h2{max-width:620px}.race-copy>p:not(.eyebrow){color:#466353;max-width:620px}.race-copy strong{color:var(--deep)}.race-points{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.race-points span{padding:8px 12px;border-radius:99px;background:#fff;color:#16633f;font-size:12px;font-weight:700}.race-note{font-size:12px!important;line-height:1.55;color:#668272!important}@media(max-width:920px){.race-grid{gap:45px}}@media(max-width:720px){.amazing-race{padding:72px 0}.race-grid{grid-template-columns:1fr;gap:30px}.race-photo{height:350px}}@media(max-width:520px){.race-photo{height:265px}.race-points{gap:8px}.race-points span{font-size:11px;padding:7px 10px}.race-copy h2{font-size:31px}}
.support-callout{display:grid;grid-template-columns:1fr 1.25fr auto;align-items:center;gap:25px;margin-top:-42px;margin-bottom:42px;padding:22px 28px;border:1px solid #cde8d5;border-radius:18px;background:#eff9f1}.support-callout>div{display:flex;align-items:center;gap:13px}.support-icon{display:grid;place-items:center;flex:0 0 auto;width:39px;height:39px;border-radius:50%;background:#d9f3e0;color:var(--deep);font-size:22px}.support-callout .eyebrow{margin-bottom:2px}.support-callout h3{font:700 17px/1.2 'Plus Jakarta Sans';letter-spacing:-.5px;margin:0}.support-callout>p{margin:0;color:#56705e;font-size:13px;line-height:1.55}.support-callout .text-link{white-space:nowrap}@media(max-width:920px){.support-callout{grid-template-columns:1fr 1.1fr;margin-top:-25px}}@media(max-width:720px){.support-callout{grid-template-columns:1fr;margin:0 21px 45px;padding:20px;gap:13px}.support-callout .text-link{min-height:auto}}@media(max-width:520px){.support-callout{margin:0 20px 36px}.support-callout h3{font-size:16px}}
/* Compact, persistent navigation and a visually transparent logo background. */
.nav{position:sticky;top:0;z-index:100;height:76px;background:#fffefa;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:border-color .2s ease,box-shadow .2s ease}.nav:has(+ main){box-shadow:0 2px 16px #173b2a08}.brand-logo{width:126px}.footer-content .brand-logo{width:120px}footer{background:#fff}@media(max-width:920px){.nav{height:70px}.nav nav{top:62px}}@media(max-width:520px){.nav{height:64px}.brand-logo,.footer-content .brand-logo{width:104px}.nav nav{top:59px}.menu-toggle{width:40px;height:40px}}
