*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --ink:#0D1F14;--forest:#1A3D2B;--moss:#2D6A4F;--sage:#52B788;--mist:#C8E6D4;--cream:#F4F0E8;--sand:#EDE8DC;--white:#FEFEFE;
  --gold:#B87A1A;--goldlt:#F5E6C0;--rust:#8B3A1A;
  --serif:'Fraunces',Georgia,serif;--sans:'Manrope',sans-serif;
}
html{scroll-behavior:smooth}
body{font-family:var(--sans);background:var(--cream);color:var(--ink);font-size:15px;line-height:1.7;overflow-x:hidden}
a{color:inherit;text-decoration:none}
.w{max-width:1100px;margin:0 auto;padding:0 32px}
.w-wide{max-width:1360px;margin:0 auto;padding:0 32px}

/* NAV */
nav{background:var(--forest);position:sticky;top:0;z-index:999;border-bottom:1px solid rgba(82,183,136,.15)}
.nav-i{display:flex;align-items:center;height:62px;gap:0}
.logo{font-family:var(--serif);font-size:22px;font-weight:700;color:var(--white);letter-spacing:-.5px;margin-right:40px;flex-shrink:0}
.logo sup{font-size:9px;color:var(--sage);font-weight:300;font-family:var(--sans);letter-spacing:2px;text-transform:uppercase;vertical-align:super;margin-left:2px}
.nav-links{display:flex;gap:28px;list-style:none;flex:1}
.nav-links a{font-size:12px;font-weight:500;color:rgba(255,255,255,.55);letter-spacing:.3px;transition:color .16s}
.nav-links a:hover,.nav-links a.on{color:var(--white)}
.nav-end{margin-left:auto;display:flex;gap:10px;align-items:center}
.btn-nav{font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:8px 20px;border-radius:2px;cursor:pointer;transition:all .18s}
.btn-nav.ghost{color:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.2)}
.btn-nav.ghost:hover{color:var(--white);border-color:rgba(255,255,255,.5)}
.btn-nav.solid{background:var(--gold);color:var(--white);border:1px solid var(--gold)}
.btn-nav.solid:hover{background:#9a6514}

/* ── HERO ── */
.hero{min-height:100vh;background:var(--forest);display:grid;grid-template-rows:1fr auto;position:relative;overflow:hidden}
.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse 60% 80% at 80% 40%,rgba(82,183,136,.06) 0%,transparent 70%)}
.hero-bg::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:120px;background:linear-gradient(to bottom,transparent,var(--cream))}
.hero-content{display:grid;grid-template-columns:1fr 1fr;min-height:calc(100vh - 80px);position:relative;z-index:2}
.hero-l{display:flex;flex-direction:column;justify-content:center;padding:80px 60px 80px max(32px,calc((100vw - 1100px)/2 + 32px))}
.hero-kicker{display:flex;align-items:center;gap:10px;margin-bottom:28px}
.kicker-line{width:32px;height:1px;background:var(--sage);opacity:.6}
.kicker-text{font-size:10px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.45)}
.hero h1{font-family:var(--serif);font-size:clamp(44px,5.2vw,78px);font-weight:300;line-height:1.04;color:var(--white);margin-bottom:0}
.hero h1 strong{font-weight:700;display:block}
.hero h1 em{font-style:italic;color:var(--sage)}
.hero-sub{font-size:16px;line-height:1.8;color:rgba(255,255,255,.5);max-width:420px;margin-top:28px;margin-bottom:44px}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap}
.btn-hero-p{background:var(--gold);color:var(--white);font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:14px 28px;border-radius:2px;transition:all .2s}
.btn-hero-p:hover{background:#9a6514;transform:translateY(-1px)}
.btn-hero-s{color:rgba(255,255,255,.6);font-size:12px;font-weight:600;letter-spacing:.5px;padding:14px 24px;border:1px solid rgba(255,255,255,.2);border-radius:2px;transition:all .2s}
.btn-hero-s:hover{color:var(--white);border-color:rgba(255,255,255,.5)}
.hero-r{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:40px 0}
.hero-slider{position:relative;width:82%;max-width:480px;aspect-ratio:3/4;border-radius:6px;overflow:hidden;box-shadow:0 32px 80px rgba(0,0,0,.35),0 0 0 1px rgba(82,183,136,.12)}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity .7s ease;pointer-events:none}
.hero-slide.active{opacity:1;pointer-events:auto}
.hero-slide img{width:100%;height:100%;object-fit:cover;display:block}
.hero-slide-ph{width:100%;height:100%;background:rgba(255,255,255,.03);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:rgba(82,183,136,.3)}
.hero-slide-ph .ph-icon{font-size:36px;opacity:.4}
.hero-slide-ph .ph-txt{font-size:10px;letter-spacing:2px;text-transform:uppercase;text-align:center;line-height:1.8;opacity:.5}
.slide-caption{position:absolute;bottom:0;left:0;right:0;padding:16px 20px 14px;font-size:11px;color:rgba(255,255,255,.75);background:linear-gradient(transparent,rgba(13,31,20,.72));letter-spacing:.3px;line-height:1.4}
.slider-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:10;width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:rgba(13,31,20,.55);color:rgba(255,255,255,.8);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .18s;backdrop-filter:blur(4px)}
.slider-btn:hover{background:rgba(26,61,43,.9);border-color:rgba(82,183,136,.5);color:var(--sage)}
.slider-prev{left:12px}
.slider-next{right:12px}
.slider-dots{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);z-index:10;display:flex;gap:6px}
.slider-dot{width:6px;height:6px;border-radius:50%;border:none;background:rgba(255,255,255,.28);cursor:pointer;transition:all .22s;padding:0}
.slider-dot.active{background:var(--sage);width:18px;border-radius:3px}
.slider-accent-bar{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--sage),rgba(82,183,136,.3));z-index:5}
.hero-trust{display:flex;align-items:center;gap:8px;margin-top:24px;color:rgba(255,255,255,.28);font-size:11px;letter-spacing:.3px}
.trust-dot{width:4px;height:4px;border-radius:50%;background:var(--sage);opacity:.6;flex-shrink:0}
.hero-bottom{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.06);position:relative;z-index:2}
.stat-cell{padding:24px 32px;border-right:1px solid rgba(255,255,255,.06);text-align:center}
.stat-cell:last-child{border-right:none}
.stat-n{font-family:var(--serif);font-size:36px;font-weight:300;color:var(--white);line-height:1;margin-bottom:4px}
.stat-l{font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.35)}

/* ── SDG BAND ── */
.sdg-band{background:var(--ink);padding:20px 0;border-bottom:1px solid rgba(255,255,255,.05)}
.sdg-i{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.sdg-lbl{font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.25);white-space:nowrap}
.sdg-sep{width:1px;height:20px;background:rgba(255,255,255,.1)}
.sdg-pills{display:flex;gap:8px;flex-wrap:wrap}
.sdg-p{font-size:10px;font-weight:700;letter-spacing:.5px;color:var(--white);padding:5px 12px;border-radius:2px}
.sdg-p.s4{background:#A0142A}.sdg-p.s5{background:#C4280F}.sdg-p.s8{background:#6B1030}.sdg-p.s17{background:#113D5C}

/* ── MISSION SECTION ── */
.mission-sec{padding:120px 0;background:var(--cream);position:relative;overflow:hidden}
.mission-sec::before{content:'\201C';position:absolute;top:-60px;left:20px;font-family:var(--serif);font-size:400px;color:rgba(26,61,43,.04);line-height:1;pointer-events:none}
.mission-grid{display:grid;grid-template-columns:5fr 4fr;gap:80px;align-items:center}
.mission-q{font-family:var(--serif);font-size:clamp(18px,2.2vw,30px);font-weight:300;line-height:1.45;color:#184733;font-style:italic;border-left:3px solid var(--sage);padding:6px 0 6px 32px;margin-bottom:30px;max-width:680px;letter-spacing:.1px}
.mission-q strong{font-weight:700;font-style:normal;color:var(--ink)}
.mission-sub{font-size:15px;color:#2c6d50;line-height:1.7;padding-left:35px;margin-bottom:34px;max-width:620px}
.values-list{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid rgba(26,61,43,.14);border-radius:6px;overflow:hidden;background:rgba(255,255,255,.55);box-shadow:0 12px 30px rgba(13,31,20,.06)}
.val-item{padding:20px 22px;border-bottom:1px solid rgba(26,61,43,.1);border-right:1px solid rgba(26,61,43,.1);background:rgba(255,255,255,.25);transition:transform .24s ease,background .2s ease}
.val-item:nth-child(even){border-right:none}
.val-item:nth-last-child(-n+2){border-bottom:none}
.val-item:hover{transform:scale(1.035);background:rgba(255,255,255,.82);position:relative;z-index:3;animation:valBlink 1.05s ease-in-out infinite}
.val-dot{width:7px;height:7px;border-radius:50%;background:var(--sage);margin-bottom:10px;box-shadow:0 0 0 4px rgba(82,183,136,.12)}
.val-name{font-size:18px;font-weight:700;color:var(--forest);margin-bottom:5px;line-height:1.3}
.val-desc{font-size:14px;color:rgba(13,31,20,.62);line-height:1.6}
.section-eyebrow{font-size:10px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--sage);margin-bottom:16px;display:block}
.section-h{font-family:var(--serif);font-size:clamp(28px,3.5vw,48px);font-weight:500;line-height:1.15;color:var(--forest)}
.section-h em{font-style:italic;font-weight:300}
.section-body{font-size:15px;color:rgba(13,31,20,.6);line-height:1.8;margin-top:16px}
.values-eyebrow{color:#1f6f4d;font-size:11px;letter-spacing:3.2px;margin-bottom:18px}

/* ── PROGRAMS ── */
.programs-sec{padding:120px 0;background:var(--sand)}
.prog-header{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:end;margin-bottom:64px}
.prog-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;background:rgba(13,31,20,.08);border-radius:6px;overflow:hidden}
.prog-card{background:var(--white);padding:48px 44px;position:relative;cursor:pointer;transition:background .2s}
.prog-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:transparent;transition:background .2s}
.prog-card:hover{background:var(--forest)}
.prog-card:hover::before{background:var(--sage)}
.prog-card:hover .pc-name{color:var(--white)}
.prog-card:hover .pc-tagline{color:var(--sage)}
.prog-card:hover .pc-desc{color:rgba(255,255,255,.5)}
.prog-card:hover .pc-sdg{color:rgba(255,255,255,.3)}
.prog-card:hover .pc-phase{color:rgba(255,255,255,.25)}
.prog-card:hover .pc-arrow{color:var(--sage)}
.prog-card:hover .pc-icon-wrap{background:rgba(82,183,136,.12)}
.prog-card.hero-card{background:var(--forest)}
.prog-card.hero-card::before{background:var(--sage)}
.prog-card.hero-card .pc-name{color:var(--white)}
.prog-card.hero-card .pc-tagline{color:var(--sage)}
.prog-card.hero-card .pc-desc{color:rgba(255,255,255,.5)}
.prog-card.hero-card .pc-sdg{color:rgba(255,255,255,.3)}
.prog-card.hero-card .pc-phase{color:rgba(255,255,255,.25)}
.prog-card.hero-card .pc-arrow{color:var(--sage)}
.prog-card.hero-card .pc-icon-wrap{background:rgba(82,183,136,.12)}
.pc-phase{font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:rgba(13,31,20,.3);margin-bottom:20px}
.pc-icon-wrap{width:48px;height:48px;border-radius:10px;background:var(--mist);display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:22px;transition:background .2s}
.pc-name{font-family:var(--serif);font-size:24px;font-weight:600;color:var(--forest);line-height:1.2;margin-bottom:8px;transition:color .2s}
.pc-tagline{font-size:13px;font-style:italic;font-family:var(--serif);color:var(--moss);margin-bottom:14px;transition:color .2s}
.pc-desc{font-size:13px;color:rgba(13,31,20,.55);line-height:1.7;transition:color .2s}
.pc-sdg{font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:rgba(13,31,20,.3);margin-top:20px;transition:color .2s}
.pc-arrow{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--moss);margin-top:20px;transition:color .2s,gap .2s}
.pc-arrow:hover{gap:10px}
.prog-ph2{margin-top:24px;background:var(--forest);border-radius:4px;padding:28px 36px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.ph2-label{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.35);flex-shrink:0}
.ph2-items{display:flex;gap:10px;flex-wrap:wrap}
.ph2-chip{font-size:11px;color:rgba(255,255,255,.5);padding:4px 12px;border:1px solid rgba(255,255,255,.12);border-radius:2px}

/* ── YOUTH TALK ── */
.talk-sec{padding:120px 0;background:var(--cream)}
.talk-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.talk-visual{background:var(--forest);border-radius:6px;padding:40px;position:relative;overflow:hidden;aspect-ratio:1}
.talk-visual::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 30% 70%,rgba(82,183,136,.12),transparent 60%)}
.talk-screen{width:100%;height:60%;border:1px solid rgba(82,183,136,.15);border-radius:4px;display:flex;align-items:center;justify-content:center;margin-bottom:24px;position:relative;z-index:2;background:rgba(0,0,0,.2)}
.talk-play{width:52px;height:52px;border-radius:50%;background:var(--sage);display:flex;align-items:center;justify-content:center;color:var(--white);font-size:18px;cursor:pointer;transition:transform .2s}
.talk-play:hover{transform:scale(1.08)}
.episode-pills{display:flex;flex-direction:column;gap:10px;position:relative;z-index:2}
.ep-pill{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:4px;padding:12px 16px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:background .18s}
.ep-pill:hover{background:rgba(255,255,255,.1)}
.ep-num{font-family:var(--serif);font-size:16px;font-weight:700;color:rgba(82,183,136,.3);min-width:28px}
.ep-info{flex:1}
.ep-title{font-size:12px;font-weight:600;color:var(--white)}
.ep-guest{font-size:11px;color:rgba(255,255,255,.3);margin-top:2px}
.talk-content{display:flex;flex-direction:column;gap:0}
.talk-tabs{display:flex;gap:0;margin-bottom:32px;border-bottom:1px solid rgba(13,31,20,.1)}
.tab{font-size:12px;font-weight:600;padding:10px 20px;cursor:pointer;color:rgba(13,31,20,.4);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .18s}
.tab.on{color:var(--forest);border-bottom-color:var(--sage)}

/* ── STORY / IMPACT ── */
.impact-sec{padding:120px 0;background:var(--ink);position:relative;overflow:hidden}
.impact-sec::before{content:'Impact';position:absolute;right:-40px;top:50%;transform:translateY(-50%);font-family:var(--serif);font-size:200px;font-weight:700;color:rgba(255,255,255,.02);line-height:1;pointer-events:none}
.impact-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.story-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:6px;padding:44px;position:relative}
.story-card::before{content:'';position:absolute;top:0;left:0;width:40%;height:2px;background:linear-gradient(90deg,var(--sage),transparent)}
.story-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}
.story-avatar{width:48px;height:48px;border-radius:50%;background:rgba(82,183,136,.15);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:18px;font-weight:700;color:var(--sage)}
.story-controls{display:flex;gap:8px}
.story-btn{width:30px;height:30px;border-radius:2px;border:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.75);background:transparent;cursor:pointer;transition:all .18s}
.story-btn:hover{border-color:var(--sage);color:var(--white);background:rgba(82,183,136,.12)}
.story-q{font-family:var(--serif);font-size:18px;font-style:italic;color:var(--white);line-height:1.6;margin-bottom:20px;min-height:185px;transition:opacity .2s}
.story-attr{font-size:12px;color:rgba(255,255,255,.35)}
.story-attr strong{display:block;color:rgba(255,255,255,.7);font-size:13px;margin-bottom:2px}
.story-progress{height:3px;background:rgba(255,255,255,.08);border-radius:99px;margin-top:18px;overflow:hidden}
.story-progress span{display:block;height:100%;width:33%;background:linear-gradient(90deg,var(--sage),var(--gold));transition:width .25s}
.nums-grid{display:flex;flex-direction:column;gap:2px}
.num-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:4px;padding:28px 32px;display:flex;align-items:flex-end;gap:24px;min-height:132px}
.num-card > div{margin-top:auto;width:100%}
.num-card{transition:transform .2s,border-color .2s,background .2s}
.num-card:hover{transform:translateX(-4px);border-color:rgba(82,183,136,.35);background:rgba(255,255,255,.06)}
.num-card.accent-s{border-left:3px solid var(--sage)}
.num-card.accent-g{border-left:3px solid var(--gold)}
.num-big{font-family:var(--serif);font-size:48px;font-weight:300;color:var(--white);line-height:1}
.num-lbl{font-size:12px;color:rgba(255,255,255,.35);line-height:1.5}

/* ── GET INVOLVED ── */
.involve-sec{padding:120px 0;background:var(--sand)}
.involve-header{text-align:center;margin-bottom:64px}
.involve-header .section-h{color:var(--forest)}
.involve-3{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;background:rgba(13,31,20,.08);border-radius:6px;overflow:hidden;margin-bottom:24px}
.inv-card{background:var(--white);padding:44px 36px;display:flex;flex-direction:column}
.inv-n{font-family:var(--serif);font-size:56px;font-weight:700;color:var(--mist);line-height:1;margin-bottom:16px}
.inv-title{font-family:var(--serif);font-size:26px;font-weight:600;color:var(--forest);margin-bottom:10px}
.inv-body{font-size:13px;color:rgba(13,31,20,.55);line-height:1.7;margin-bottom:20px}
.inv-list{list-style:none;display:flex;flex-direction:column;gap:7px;margin-bottom:32px;flex:1}
.inv-list li{font-size:12px;color:rgba(13,31,20,.5);padding-left:16px;position:relative;line-height:1.5}
.inv-list li::before{content:'—';position:absolute;left:0;color:var(--sage);font-size:10px;top:3px}
.btn-inv{font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:12px 22px;border-radius:2px;cursor:pointer;transition:all .18s;display:inline-block;margin-top:auto}
.btn-inv.p{background:var(--gold);color:var(--white)}
.btn-inv.p:hover{background:#9a6514}
.btn-inv.o{border:1px solid var(--forest);color:var(--forest)}
.btn-inv.o:hover{background:var(--forest);color:var(--white)}

/* ── DONATE BAND ── */
.donate-band{background:var(--gold);padding:72px 0;position:relative;overflow:hidden}
.donate-band::after{content:'';position:absolute;right:-80px;top:-80px;width:320px;height:320px;border-radius:50%;background:rgba(255,255,255,.07);pointer-events:none}
.donate-inner{display:flex;align-items:center;justify-content:space-between;gap:48px;flex-wrap:wrap}
.donate-txt h2{font-family:var(--serif);font-size:38px;font-weight:600;color:var(--white);margin-bottom:8px}
.donate-txt p{font-size:15px;color:rgba(255,255,255,.65)}
.donate-amounts{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.amt{padding:12px 18px;border:1px solid rgba(255,255,255,.35);border-radius:2px;color:var(--white);font-size:13px;font-weight:600;cursor:pointer;transition:all .18s}
.amt:hover,.amt.sel{background:rgba(255,255,255,.2)}
.amt.feat{background:var(--white);color:var(--gold)}
.btn-donate{font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:14px 28px;background:var(--forest);color:var(--white);border-radius:2px;transition:background .18s;cursor:pointer}
.btn-donate:hover{background:var(--ink)}

/* ── ABOUT ── */
.about-sec{padding:120px 0;background:var(--cream)}
.about-grid{display:grid;grid-template-columns:5fr 4fr;gap:80px;align-items:start}
.about-txt .section-body{margin-bottom:28px}
.gov-box{background:var(--forest);border-radius:4px;padding:32px;margin-top:32px}
.gov-row{display:flex;gap:16px;align-items:flex-start;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.07)}
.gov-row:last-child{border-bottom:none}
.gov-row-n{font-family:var(--serif);font-size:20px;font-weight:700;color:rgba(82,183,136,.25);min-width:28px;line-height:1.3}
.gov-row-t{font-size:12px;font-weight:700;color:var(--white);margin-bottom:2px}
.gov-row-s{font-size:11px;color:rgba(255,255,255,.35)}
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.team-c{background:var(--sand);border-radius:4px;padding:24px;border:1px solid rgba(13,31,20,.08);transition:border-color .2s}
.team-c:hover{border-color:var(--sage)}
.team-av{width:44px;height:44px;border-radius:50%;background:var(--mist);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:15px;font-weight:700;color:var(--forest);margin-bottom:12px}
.team-n{font-size:13px;font-weight:700;color:var(--forest);margin-bottom:3px}
.team-r{font-size:11px;color:rgba(13,31,20,.45);line-height:1.5}
.team-c.open{border-style:dashed;background:transparent}
.team-c.open .team-av{background:transparent;border:1px dashed rgba(13,31,20,.2);color:rgba(13,31,20,.3)}
.team-c.open .team-n{color:rgba(13,31,20,.35)}

/* ── ROADMAP ── */
.roadmap-sec{padding:120px 0;background:var(--forest);position:relative;overflow:hidden}
.roadmap-sec::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 50% 60% at 50% 0%,rgba(82,183,136,.06),transparent 70%)}
.roadmap-track{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;margin-top:64px;position:relative;z-index:2}
.rp{padding:28px 22px;border-radius:3px}
.rp.p1{background:rgba(82,183,136,.08);border:1px solid rgba(82,183,136,.2)}
.rp.p2,.rp.p3,.rp.p4,.rp.p5{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07)}
.rp-badge{font-size:8px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:3px 8px;border-radius:2px;display:inline-block;margin-bottom:14px}
.rp.p1 .rp-badge{background:var(--sage);color:var(--forest)}
.rp.p2 .rp-badge,.rp.p3 .rp-badge{background:rgba(200,135,10,.2);color:var(--gold)}
.rp.p4 .rp-badge,.rp.p5 .rp-badge{background:rgba(255,255,255,.08);color:rgba(255,255,255,.5)}
.rp-mo{font-family:var(--serif);font-size:26px;font-weight:300;color:var(--white);line-height:1;margin-bottom:6px}
.rp-name{font-size:12px;font-weight:700;color:var(--white);margin-bottom:16px}
.rp-items{list-style:none;display:flex;flex-direction:column;gap:7px}
.rp-items li{font-size:11px;color:rgba(255,255,255,.35);padding-left:12px;position:relative;line-height:1.5}
.rp-items li::before{content:'·';position:absolute;left:0;color:var(--sage)}

/* ── PARTNERS ── */
.partners-sec{padding:52px 0;background:var(--cream);border-top:1px solid rgba(13,31,20,.08);border-bottom:1px solid rgba(13,31,20,.08)}
.partners-i{display:flex;align-items:center;gap:32px;flex-wrap:wrap}
.partners-lbl{font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:rgba(13,31,20,.3);flex-shrink:0}
.partner-chips{display:flex;gap:8px;flex-wrap:wrap}
.pchip{font-size:12px;font-weight:600;color:rgba(13,31,20,.4);padding:7px 16px;border:1px solid rgba(13,31,20,.12);border-radius:2px;transition:all .18s}
.pchip:hover{border-color:var(--sage);color:var(--forest)}
.pchip-add{font-size:11px;font-weight:700;color:var(--sage);padding:7px 14px;letter-spacing:.5px;cursor:pointer}

/* ── CONTACT ── */
.contact-sec{padding:120px 0;background:var(--sand)}
.contact-grid{display:grid;grid-template-columns:2fr 3fr;gap:80px;align-items:start}
.contact-form{background:var(--white);border-radius:6px;border:1px solid rgba(13,31,20,.08);padding:44px}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.cf-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}
.cf-label{font-size:11px;font-weight:700;color:var(--forest);letter-spacing:.5px}
.cf-input,.cf-select,.cf-textarea{padding:11px 14px;border:1px solid rgba(13,31,20,.12);border-radius:3px;font-family:var(--sans);font-size:13px;color:var(--ink);background:var(--cream);outline:none;transition:border-color .18s;width:100%}
.cf-input:focus,.cf-select:focus,.cf-textarea:focus{border-color:var(--sage)}
.cf-textarea{min-height:110px;resize:vertical}
.btn-submit{width:100%;padding:14px;background:var(--forest);color:var(--white);font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;border:none;border-radius:3px;cursor:pointer;transition:background .18s}
.btn-submit:hover{background:var(--ink)}
.contact-info{display:flex;flex-direction:column;gap:36px}
.ci-block h3{font-family:var(--serif);font-size:20px;font-weight:600;color:var(--forest);margin-bottom:6px}
.ci-block p{font-size:14px;color:rgba(13,31,20,.55)}
.socials{display:flex;gap:8px;flex-wrap:wrap}
.soc-btn{padding:9px 16px;border:1px solid rgba(13,31,20,.15);border-radius:2px;font-size:11px;font-weight:700;letter-spacing:.5px;color:rgba(13,31,20,.5);cursor:pointer;transition:all .18s}
.soc-btn:hover{border-color:var(--sage);color:var(--forest)}

/* ── CONTACT ALERTS ── */
.alert-success{background:rgba(82,183,136,.12);border:1px solid rgba(82,183,136,.3);border-radius:4px;padding:16px 20px;font-size:13px;color:var(--forest);margin-bottom:20px}
.alert-error{background:rgba(139,58,26,.08);border:1px solid rgba(139,58,26,.2);border-radius:4px;padding:16px 20px;font-size:13px;color:var(--rust);margin-bottom:20px}

/* ── FOOTER ── */
footer{background:var(--ink);padding:64px 0 28px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}
.f-brand .f-logo{font-family:var(--serif);font-size:24px;font-weight:700;color:var(--white);margin-bottom:14px}
.f-brand .f-logo span{color:var(--sage)}
.f-brand p{font-size:12px;color:rgba(255,255,255,.3);line-height:1.8;max-width:240px}
.f-col h4{font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:rgba(255,255,255,.25);margin-bottom:16px}
.f-col ul{list-style:none;display:flex;flex-direction:column;gap:9px}
.f-col ul li{font-size:12px;color:rgba(255,255,255,.4);cursor:pointer;transition:color .16s}
.f-col ul li:hover{color:var(--white)}
.footer-bar{border-top:1px solid rgba(255,255,255,.06);padding-top:24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.footer-bar p{font-size:11px;color:rgba(255,255,255,.25)}
.f-langs{display:flex;gap:8px}
.f-lang{font-size:10px;font-weight:700;letter-spacing:1px;padding:4px 10px;border:1px solid rgba(255,255,255,.15);border-radius:2px;color:rgba(255,255,255,.35);cursor:pointer;transition:all .16s}
.f-lang:hover,.f-lang.on{color:var(--white);border-color:rgba(255,255,255,.4)}

/* ── ANIMATIONS ── */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes valBlink{
  0%{box-shadow:0 0 0 1px rgba(82,183,136,.18),0 0 0 rgba(82,183,136,0)}
  50%{box-shadow:0 0 0 1px rgba(82,183,136,.75),0 0 22px rgba(82,183,136,.32)}
  100%{box-shadow:0 0 0 1px rgba(82,183,136,.22),0 0 0 rgba(82,183,136,0)}
}
.fu{opacity:0;animation:fadeUp .7s ease forwards}
.fu-1{animation-delay:.1s}.fu-2{animation-delay:.22s}.fu-3{animation-delay:.36s}.fu-4{animation-delay:.5s}

/* ── RESPONSIVE ── */
@media(max-width:900px){
  .hero-content{grid-template-columns:1fr}
  .hero-r{display:none}
  .hero-l{padding:80px 32px}
  .hero-bottom{grid-template-columns:repeat(2,1fr)}
  .mission-grid,.about-grid,.talk-grid,.contact-grid{grid-template-columns:1fr;gap:48px}
  .prog-grid,.involve-3{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .roadmap-track{grid-template-columns:1fr 1fr}
  .rp.p5{grid-column:span 2}
  .team-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
  .nav-links{display:none}
  .hero-bottom{grid-template-columns:1fr 1fr}
  .prog-header{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .donate-inner{flex-direction:column;align-items:flex-start}
  .cf-row{grid-template-columns:1fr}
  .roadmap-track{grid-template-columns:1fr}
  .rp.p5{grid-column:span 1}
}

/* ── Utility helpers (replaces all inline styles) ── */
.btn-story{display:inline-block;margin-top:8px}
.btn-row{display:flex;gap:12px;flex-wrap:wrap}
.mb-12{margin-bottom:12px}
.mb-16{margin-bottom:16px}
.mb-20{margin-bottom:20px}
.mb-28{margin-bottom:28px}
.mb-36{margin-bottom:36px}
.mt-16{margin-top:16px}
.mt-20{margin-top:20px}
.body-center{max-width:480px;margin:0 auto}
.mw-520{max-width:520px}
.c-white{color:var(--white)}
.c-sage{color:var(--sage)}
.c-moss{color:rgba(82,183,136,.6)}
.eyebrow-moss{color:rgba(82,183,136,.6);margin-bottom:20px;display:block}
.txt-italic{font-style:italic}
.form-h3{font-family:var(--serif);font-size:22px;font-weight:600;color:var(--forest);margin-bottom:28px}

/* ── Real image support ── */
.hero-photo-frame{overflow:hidden}
.hero-photo-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:3px;display:block}
.talk-screen img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.65;border-radius:3px;display:block}
.story-avatar{overflow:hidden;padding:0}
.story-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.about-photo{width:100%;border-radius:4px;margin-bottom:28px;aspect-ratio:16/9;object-fit:cover;display:block}
