.hero{position:relative;isolation:isolate}
.hero::before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;background:url("home-community.jpg") center 46%/cover no-repeat;opacity:.2;transform:translateX(-50%)}
.hero .actions .button{min-height:58px;padding:0 31px;border:0;color:#fff;font-size:1.03rem;box-shadow:0 10px 24px rgba(17,19,15,.16)}
.hero .actions .hero-involved{background:#f5c400}.hero .actions .hero-donate{background:#006b3f}
.hero .actions .button:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(17,19,15,.22)}
.education-impact{margin-top:80px;padding-top:56px;border-top:1px solid #3a3b35}
.impact-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:30px}
.impact-heading h3{margin:0;font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.5rem);font-weight:400;line-height:1.08;letter-spacing:-.035em}
.impact-heading p{max-width:310px;margin:0;color:#c7c7bf}
.education-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:start}
.education-stat{border:1px solid #484a40;border-radius:16px;background:#191c15;overflow:hidden}
.education-stat summary{list-style:none;padding:26px 22px 20px;cursor:pointer}
.education-stat summary::-webkit-details-marker{display:none}
.education-stat summary:hover{background:#22271b}
.education-stat summary:focus-visible{outline:3px solid #f5c400;outline-offset:-4px}
.stat-number{display:block;font-size:clamp(2.7rem,4.5vw,4.1rem);font-weight:650;letter-spacing:-.06em;line-height:1.1;color:#f5c400}
.stat-number>span{font-size:.55em;letter-spacing:-.03em}
.stat-title{display:block;min-height:3.2em;margin-top:22px;font-weight:650;line-height:1.4}
.stat-prompt{display:flex;justify-content:space-between;align-items:center;margin-top:22px;color:#c7c7bf;font-size:.875rem}
.stat-prompt>span{font-size:1.5rem;transition:transform .2s}
.education-stat[open] .stat-prompt>span{transform:rotate(45deg)}
.education-stat[open]{border-color:#f5c400}
.stat-detail{padding:0 22px 24px;font-size:.95rem;color:#d5d7ce}
.stat-detail p{margin:0 0 18px}.stat-detail a{text-underline-offset:4px;line-height:1.7}
.founder-story{display:grid;grid-template-columns:.75fr 1.25fr;gap:56px;margin-top:78px;padding:54px 0 10px;border-top:1px solid #3a3b35}
.founder-heading h3{margin:0;font-family:Georgia,serif;font-size:clamp(2.4rem,4.5vw,4.2rem);font-weight:400;line-height:1;letter-spacing:-.045em}
.founder-heading{text-align:center}
.founder-heading .founder-title{margin:0 0 26px;color:#fff;font-family:Georgia,serif;font-size:2rem;font-weight:500;line-height:1.2;letter-spacing:normal}
.founder-portrait-block{width:280px;margin:0 auto;text-align:center}
.founder-portrait-frame{position:relative;width:280px;aspect-ratio:1;overflow:hidden;border-radius:50%}
.founder-portrait-frame::before{content:"";position:absolute;inset:-14px;background:url("founder-benjamin.jpg?v=2") center 34%/cover no-repeat;filter:blur(13px);transform:scale(1.04)}
.founder-portrait{position:relative;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 34%;mask-image:radial-gradient(circle,#000 0 62%,rgba(0,0,0,.82) 70%,transparent 89%);-webkit-mask-image:radial-gradient(circle,#000 0 62%,rgba(0,0,0,.82) 70%,transparent 89%)}
.founder-portrait-block p{margin:14px 0 0;color:#fff;line-height:1.35}.founder-portrait-block strong,.founder-portrait-block span{display:block}.founder-portrait-block strong{font-size:1rem}.founder-portrait-block span{margin-top:3px;color:#aeb0a7;font-size:.86rem}
.founder-copy{max-width:710px}.founder-copy p{margin:0 0 20px;color:#c7c7bf;font-size:1.08rem;line-height:1.7}.founder-copy p:first-child{color:#fff;font-size:1.22rem}
.founder-copy blockquote{margin:36px 0 0;padding:22px 0 0;border-top:2px solid #f5c400;color:#fff;font-family:Georgia,serif;font-size:1.65rem;line-height:1.35}
.team-section{margin-top:96px;padding-top:58px;border-top:1px solid #3a3b35;overflow:hidden}
.team-heading{margin-bottom:34px;text-align:left}
.team-heading h3{margin:0;font-family:Georgia,serif;font-size:clamp(2.6rem,5vw,4.8rem);font-weight:400;line-height:1;letter-spacing:-.045em}
.team-rail{overflow:hidden;outline:none;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.team-rail:focus-visible{outline:3px solid #f5c400;outline-offset:6px}
.team-track{display:flex;width:max-content;animation:team-float 64s linear infinite;will-change:transform}
.team-rail:active .team-track{animation-play-state:paused}
.team-group{display:flex;gap:18px;padding-right:18px}
.team-card{flex:0 0 270px;overflow:hidden;border:1px solid #3a3b35;border-radius:18px;background:#181a16}
.team-card img{display:block;width:100%;height:330px;object-fit:cover;object-position:center top;filter:saturate(.92);transition:filter .3s ease,transform .5s cubic-bezier(.16,1,.3,1)}
.team-card:hover img{filter:saturate(1.08);transform:scale(1.025)}
.team-card>div{min-height:132px;padding:20px}
.team-card h4{margin:0 0 8px;color:#fff;font-size:1.06rem;line-height:1.25}
.team-card p{margin:0;color:#aeb0a7;font-size:.9rem;line-height:1.55}
@keyframes team-float{to{transform:translateX(-50%)}}
.partner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start;margin-top:48px}
.partner-card{position:relative;display:block;overflow:hidden;border:1px solid #d8d8cf;border-radius:20px;background:#f7f5eb;transition:transform .3s cubic-bezier(.16,1,.3,1),border-color .3s ease,box-shadow .3s ease}
.partner-card:hover{transform:translateY(-6px);border-color:#006b3f;box-shadow:0 18px 38px rgba(17,19,15,.08)}
.partner-card summary{list-style:none;cursor:pointer}.partner-card summary::-webkit-details-marker{display:none}
.partner-card summary>img{display:block;width:100%;height:300px;object-fit:cover;object-position:center;transition:transform .5s cubic-bezier(.16,1,.3,1)}
.partner-card:hover summary>img{transform:scale(1.025)}
.partner-card-copy{display:flex;min-height:190px;padding:28px 32px 32px;flex:1;flex-direction:column}
.partner-card span{display:block;color:#006b3f;font-size:.75rem;font-weight:850;letter-spacing:.15em}
.partner-card h3{min-height:3.25em;max-width:18ch;margin:18px 0 10px;font-family:Georgia,serif;font-size:clamp(1.65rem,3vw,2.35rem);font-weight:400;line-height:1.08;letter-spacing:-.025em}
.partner-card .partner-type{margin:0;color:#66675f;font-size:.9rem;font-weight:750;text-transform:uppercase;letter-spacing:.08em}
.partner-card-story{margin:0 32px;padding:24px 0 32px;border-top:1px solid #d8d8cf}
.partner-card-story p{margin:0;color:#5e6159;font-size:1rem;font-weight:400;line-height:1.7;letter-spacing:0;text-transform:none}.partner-card-story p+p{margin-top:14px}
.partner-card-story a{color:#006b3f;font-weight:750;text-underline-offset:4px}
.partner-expand{display:flex;align-items:center;justify-content:space-between;margin-top:18px;padding-top:8px;color:#006b3f;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.partner-expand b{font-size:1.45rem;line-height:1;transition:transform .2s}.partner-card[open] .partner-expand b{transform:rotate(45deg)}
.partner-card .when-open{display:none}.partner-card[open] .when-closed{display:none}.partner-card[open] .when-open{display:inline}
.check:has(.admin-help){position:relative;align-items:center;flex-wrap:wrap}
.check .admin-help{position:relative;display:inline-grid;width:20px;height:20px;margin-left:3px;border:1px solid #006b3f;border-radius:50%;place-items:center;color:#006b3f;background:#fff;font-size:.75rem;font-weight:850;line-height:1;cursor:help}
.check .admin-help:focus-visible{outline:3px solid rgba(0,107,63,.25);outline-offset:2px}
.admin-tooltip{position:absolute;z-index:20;left:50%;bottom:calc(100% + 12px);width:250px;padding:13px 15px;border-radius:10px;background:#11130f;color:#fff;font-size:.86rem;font-weight:550;line-height:1.4;letter-spacing:0;text-align:left;transform:translate(-50%,6px);opacity:0;visibility:hidden;pointer-events:none;box-shadow:0 14px 32px rgba(17,19,15,.2);transition:opacity .18s ease,transform .18s ease,visibility .18s}
.admin-tooltip::after{content:"";position:absolute;top:100%;left:50%;border:7px solid transparent;border-top-color:#11130f;transform:translateX(-50%)}
.admin-help:hover .admin-tooltip,.admin-help:focus .admin-tooltip{opacity:1;visibility:visible;transform:translate(-50%,0)}
.button.volunteer-toggle{min-height:56px;padding:0 30px;border:0;background:#f5c400;color:#fff;font-size:1rem;box-shadow:0 8px 22px rgba(17,19,15,.12)}
.button.volunteer-toggle:hover{transform:translateY(-3px);box-shadow:0 13px 28px rgba(17,19,15,.18)}
.button.volunteer-submit{min-height:56px;padding:0 30px;font-size:1rem}
.contact-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:34px}
.contact-card{min-width:0;padding:22px;border:1px solid rgba(255,255,255,.34);border-radius:16px;background:rgba(255,255,255,.08);color:#fff;text-decoration:none;transition:transform .25s ease,background .25s ease,border-color .25s ease}
.contact-card:hover{transform:translateY(-4px);border-color:#f5c400;background:rgba(255,255,255,.13)}
.contact-icon{width:25px;height:25px;margin-bottom:22px;fill:none;stroke:#f5c400;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.contact-icon .icon-fill{fill:#f5c400;stroke:none}.facebook-icon{fill:#f5c400;stroke:none}
.contact-card>span{display:block;margin-bottom:9px;color:#f5c400;font-size:.75rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.contact-links strong{display:block;overflow-wrap:anywhere;font-size:.98rem;line-height:1.4}
.email-row{display:flex;align-items:center;gap:10px}.email-row>a{min-width:0;color:#fff;text-decoration:none}.email-copy{position:relative;display:grid;flex:0 0 34px;width:34px;height:34px;padding:0;border:0;border-radius:9px;place-items:center;background:transparent;color:#fff;cursor:pointer}.email-copy:hover{background:rgba(255,255,255,.1)}.email-copy>svg{width:17px;fill:none;stroke:currentColor;stroke-width:1.8}.copy-status{position:absolute;right:0;bottom:calc(100% + 9px);padding:6px 9px;border-radius:7px;background:#11130f;color:#fff;font-size:.74rem;font-weight:750;letter-spacing:0;text-transform:none;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .16s,transform .16s,visibility .16s}.copy-status.show{opacity:1;visibility:visible;transform:translateY(0)}
.newsletter-form .button{min-height:56px;padding:0 30px;font-size:1rem}
.donate-intro{display:flex;align-items:end;justify-content:space-between;gap:42px}
.donate-intro h2{white-space:nowrap;font-size:clamp(1rem,4.2vw,3.6rem)}
.wire-transfer{max-width:760px;margin-top:24px}.wire-transfer>summary{display:inline-flex;align-items:center;gap:20px;min-height:56px;padding:0 30px;background:#11130f;color:#fff;font-size:1rem;cursor:pointer;list-style:none}.wire-transfer>summary::-webkit-details-marker{display:none}.wire-transfer>summary span{font-size:1.4rem;transition:transform .2s}.wire-transfer[open]>summary span{transform:rotate(45deg)}.wire-details{margin:18px 0 0;padding:12px 24px;border-radius:20px;background:#fffdf3}.wire-row{display:grid;grid-template-columns:minmax(110px,1fr) minmax(0,2fr);align-items:center;gap:16px;padding:14px 0}.wire-row+.wire-row{border-top:1px solid #dedbd0}.wire-row dt{font-size:.9rem;color:#56594f}.wire-row dd{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;margin:0;font-weight:700}.wire-row dd>span{overflow-wrap:anywhere}.wire-row .email-copy{color:#11130f}.wire-row .email-copy:hover{background:rgba(17,19,15,.08)}@media(max-width:500px){.wire-details{padding:8px 18px}.wire-row{grid-template-columns:1fr;gap:5px}.wire-transfer>summary{padding:0 22px}}
.donate-intro>div{max-width:760px}.donate-intro .button{flex:0 0 auto;background:#11130f;color:#fff}
.donation-options a{color:inherit;font-weight:700;overflow-wrap:anywhere;text-underline-offset:3px}.donation-options .email-copy{display:inline-grid;vertical-align:middle;color:#11130f}.donation-options .email-copy:hover{background:rgba(17,19,15,.1)}
@media(max-width:700px){.contact-section .contact-links{display:flex;flex-direction:column;gap:0;margin-top:24px}.contact-section .contact-card{display:flex;align-items:center;gap:10px;min-height:52px;padding:8px 0;border:0;border-radius:0;background:transparent;transform:none}.contact-section .contact-card+.contact-card{border-top:1px solid rgba(255,255,255,.2)}.contact-section .contact-card>span{display:none}.contact-section .contact-icon{flex:0 0 20px;width:20px;height:20px;margin:0}.contact-section .contact-card strong{font-size:clamp(.66rem,2.8vw,.95rem);line-height:1.35;white-space:nowrap}.contact-section .email-row{flex:1;min-width:0;gap:4px;justify-content:space-between}.contact-section .email-copy{flex-basis:36px;width:36px;height:40px}}
.needs-rail{margin-top:58px;overflow:hidden;outline:none;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
.needs-rail:focus-visible{outline:3px solid #11130f;outline-offset:6px}
.needs-track{display:flex;width:max-content;animation:needs-float 88s linear infinite;will-change:transform}
.needs-rail:active .needs-track{animation-play-state:paused}
.needs-group{display:flex;gap:16px;padding-right:16px}
.need-card{display:flex;flex:0 0 260px;overflow:hidden;border-radius:18px;background:#11130f;color:#fff;flex-direction:column}
.need-card img{display:block;width:100%;height:330px;object-fit:cover;object-position:center;transition:transform .5s cubic-bezier(.16,1,.3,1)}
.need-card:hover img{transform:scale(1.025)}
.donate-section .need-card p{display:flex;min-height:64px;max-width:none;margin:0;padding:12px 16px;align-items:center;color:#fff;font-size:.88rem;font-weight:680;line-height:1.3}
@keyframes needs-float{to{transform:translateX(-50%)}}
@media(max-width:1000px){.education-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.founder-story{grid-template-columns:1fr;gap:28px}}
@media(max-width:600px){.education-impact{margin-top:56px;padding-top:36px}.impact-heading{display:block}.impact-heading p{margin-top:20px;max-width:none}.education-stats{grid-template-columns:1fr;gap:10px}.education-stat summary{padding:20px 14px 16px}.stat-number{font-size:2.65rem}.stat-title{min-height:0;font-size:.95rem}.stat-prompt{font-size:.8rem;margin-top:15px}.stat-detail{padding:0 14px 20px}.founder-story{margin-top:58px;padding-top:38px}.founder-portrait-block,.founder-portrait-frame{width:210px}.founder-copy p{font-size:1rem}.founder-copy p:first-child{font-size:1.08rem}.founder-copy blockquote{font-size:1.35rem}}
@media(max-width:600px){.team-section{margin-top:66px;padding-top:40px}.team-heading{margin-bottom:26px}.team-card{flex-basis:230px}.team-card img{height:280px}.team-card>div{min-height:124px;padding:17px}.team-track{animation-duration:54s}}
@media(max-width:700px){.partner-grid{grid-template-columns:1fr;margin-top:34px}.partner-card:hover{transform:none;box-shadow:none}.partner-card summary{cursor:pointer}.partner-card summary>img{height:190px}.partner-card-copy{min-height:0;padding:20px 22px}.partner-card h3{min-height:0;margin-top:12px}.partner-card-story{margin:0 22px;padding:20px 0 24px}.contact-links{grid-template-columns:1fr}.donate-intro{align-items:stretch;flex-direction:column}.needs-rail{margin-top:42px}.need-card{flex-basis:220px}.need-card img{height:280px}.donate-section .need-card p{min-height:58px;padding:10px 14px;font-size:.82rem}.needs-track{animation-duration:72s}}
@media(prefers-reduced-motion:reduce){.team-track,.needs-track{animation:none}.stat-prompt>span,.team-card img,.need-card img{transition:none}.team-rail,.needs-rail{overflow-x:auto;mask-image:none;-webkit-mask-image:none}}
.donate-intro .donation-options{max-width:760px}
.draggable-gallery{cursor:grab;touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none;overflow:hidden!important}.draggable-gallery.is-dragging{cursor:grabbing}.draggable-gallery img{-webkit-user-drag:none}
.scroll-reveal{opacity:0;translate:0 30px;transition:opacity .8s ease,translate .8s cubic-bezier(.22,1,.36,1)}.scroll-reveal.is-revealed{opacity:1;translate:0 0}
@media(max-width:700px){.donate-intro h2{white-space:normal;font-size:clamp(2.4rem,9vw,3.6rem);line-height:1.08;text-wrap:balance}.scroll-reveal{translate:0 20px}.scroll-reveal.is-revealed{translate:0 0}}
@media(prefers-reduced-motion:reduce){.scroll-reveal{opacity:1;translate:none;transition:none}}
.team-group,.needs-group{flex:none;width:max-content}.team-card{width:270px;flex:0 0 auto}.need-card{width:260px;flex:0 0 auto}
@media(max-width:700px){.need-card{width:220px;flex-basis:auto}}
@media(max-width:600px){.team-card{width:230px;flex-basis:auto}}
.contact-email{cursor:pointer}
.hero{min-height:calc(100svh - 280px);padding-top:36px;padding-bottom:36px}.hero-logo{width:min(100%,330px)}#about>.section-inner{padding-top:40px}
@media(max-width:900px){.hero{min-height:calc(100svh - 245px);padding:32px 22px;gap:0}.hero-logo{position:absolute;top:18px;right:20px;width:68px;border-radius:12px}.hero .eyebrow{max-width:calc(100% - 76px);font-size:.65rem}.hero h1{font-size:clamp(2.8rem,11vw,4.3rem);margin:22px 0}.hero .actions{margin-top:24px}#about>.section-inner{padding-top:32px}}
.button,button{transition:color .22s ease,background-color .22s ease,transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s ease}
.button:hover,button:hover,.hero .actions .button:hover,.button.volunteer-toggle:hover{transform:translateY(-2px);box-shadow:0 7px 16px rgba(17,19,15,.16)}
@media(max-width:900px){.navlinks .involved,.navlinks .donate{align-self:flex-start;width:fit-content;flex:none;border-radius:999px;padding:10px 17px}}
@media(prefers-reduced-motion:reduce){.button,button{transition:none}.button:hover,button:hover,.hero .actions .button:hover,.button.volunteer-toggle:hover{transform:none}}
#about>.section-inner>h2{position:relative;isolation:isolate}
#about>.section-inner>h2::after{content:"";position:absolute;inset:-10px;pointer-events:none;backdrop-filter:blur(var(--peek-blur,8px));-webkit-backdrop-filter:blur(var(--peek-blur,8px));mask-image:linear-gradient(to bottom,transparent 25%,#000 100%);-webkit-mask-image:linear-gradient(to bottom,transparent 25%,#000 100%)}
@media(max-width:900px){
  .hero{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto auto auto auto;align-content:center;gap:18px;padding:24px 22px}
  .hero>div{display:contents}
  .hero .eyebrow{grid-row:1;max-width:none;font-size:.65rem}
  .hero h1{grid-row:2;margin:0;font-size:clamp(2.7rem,10.5vw,4.3rem)}
  .hero .hero-logo{grid-row:3;position:static;justify-self:center;width:clamp(90px,16svh,150px);height:auto;border-radius:0}
  .hero p{grid-row:4;font-size:1rem;line-height:1.5}
  .hero .actions{grid-row:5;margin:0;display:flex;flex-wrap:nowrap;gap:12px}
  .hero .actions .button{flex:1;min-width:0;padding:0 14px;min-height:52px;font-size:.95rem}
}
#home.hero{grid-template-columns:1fr}
#home .hero-logo{display:block;width:min(100%,270px);height:auto;margin:20px 0 24px;border-radius:0;justify-self:start;mix-blend-mode:multiply}
@media(max-width:900px){#home .hero-logo{grid-row:2;justify-self:center;width:clamp(110px,19svh,170px);margin:0;border-radius:0}#home.hero{grid-template-rows:auto auto auto auto;gap:18px}}
