:root{--ink:#2c2927;--muted:#73695e;--paper:#f2f1e5;--purple:#987333;--lime:#f3d97a;--border:#2c29272e;--gold:#f3d97a}
body{background:var(--paper)}.hero-track{background:radial-gradient(ellipse at 82% 17%,#f3d97a88,transparent 39%),radial-gradient(ellipse at 12% 74%,#fbe8a6,transparent 43%),linear-gradient(145deg,#faf8ed,#ece6d2 55%,#faf6e6)}.hero-track:before{content:'';position:absolute;inset:0;background:linear-gradient(125deg,transparent 20%,#fff9 42%,transparent 60%);pointer-events:none}.hero-intro h1 span{color:#876127;background:linear-gradient(110deg,#76521f 5%,#b28a3d 38%,#edce7c 49%,#8a6026 67%,#a77b32);background-clip:text;-webkit-background-clip:text}.hero-intro h1{filter:drop-shadow(0 2px 0 #fff8)}.pill{position:relative;overflow:hidden;box-shadow:inset 0 1px 0 #ffffff40,0 8px 24px #2c292710;isolation:isolate}.pill:before{content:'';position:absolute;inset:-100% -50%;background:linear-gradient(110deg,transparent 40%,#fff7 50%,transparent 60%);transform:translateX(-100%) rotate(-15deg);transition:transform .8s;pointer-events:none;z-index:-1}.pill:hover:before,.pill:focus-visible:before{transform:translateX(100%) rotate(-15deg)}.pill:hover{background:#4b402e;box-shadow:inset 0 1px 0 #ffffff50,0 14px 30px #2c292724}#menu{background:radial-gradient(ellipse at 90% 30%,#fff8 0,transparent 55%),#f3d97a}nav a{position:relative}nav a:after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:#2c2927;transform:scaleX(0);transform-origin:left;transition:transform .5s}nav a:hover:after{transform:scaleX(1)}#menuToggle{box-shadow:inset 0 1px 0 #fff,0 5px 20px #2c29270a;transition:background .3s,box-shadow .3s}#menuToggle:hover{background:#fbe8a6;box-shadow:0 5px 20px #2c29271c}.section-top{position:relative}.section-top:before{content:'';position:absolute;left:0;top:-1px;height:2px;width:100%;background:#ac823d;transform:scaleX(0);transform-origin:left;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}.section.is-visible .section-top:before{transform:scaleX(1)}.section h2{transition:clip-path 1.1s cubic-bezier(.2,.7,.2,1),transform 1.1s;clip-path:inset(0 0 0);transform:none}.motion-ready .section:not(.is-visible) h2{clip-path:inset(0 0 100%);transform:translateY(35px)}.community-photo{isolation:isolate;transition:box-shadow .6s;cursor:zoom-in}.community-photo:after,.community-strip .gallery-image:after{content:'';position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,#fff4 48%,transparent 65%);transform:translateX(-120%);transition:transform 1s;pointer-events:none}.community-photo:hover:after,.community-strip .gallery-image:hover:after{transform:translateX(120%)}.community-photo:hover{box-shadow:0 25px 55px #2c29272a}.community-photo img{transition:filter .6s;filter:saturate(.85)}.community-photo:hover img{filter:saturate(1.15)}.view-photo{position:absolute;top:20px;right:20px;width:44px;height:44px;border:1px solid #ffffff80;background:#2c292770;backdrop-filter:blur(12px);color:white;border-radius:50%;font-size:23px;z-index:2;transition:background .3s,transform .3s}.view-photo:hover{background:#f3d97a;color:#2c2927;transform:rotate(90deg)}.story-note{position:relative}.story-note:before{content:'';position:absolute;inset:-35px;background:radial-gradient(ellipse at 30% 40%,#f3d97a35,transparent 65%);z-index:-1}.learning{background:radial-gradient(ellipse at 90% 5%,#fff8,transparent 50%),linear-gradient(145deg,#fbe8a6,#e8d5a2)}.learning-lead em{color:#8b6c39}.accordions details{position:relative;padding-left:0;transition:padding .4s,background .4s}.accordions details:before{content:'';width:2px;position:absolute;left:-15px;top:20px;bottom:20px;background:#a47b35;transform:scaleY(0);transition:transform .4s}.accordions details[open]:before{transform:scaleY(1)}summary{transition:color .3s,padding-left .3s}summary:hover{color:#987333;padding-left:7px}.accordions details[open]{background:#fff2}.accordions details p{padding-bottom:12px}.accordions summary b{border-radius:50%;border:1px solid #2c29272e;font-size:21px;transition:transform .4s,background .4s}.accordions details[open] summary b{background:#2c2927;color:#f3d97a}.object-space{border-radius:50%;background:radial-gradient(ellipse at center,#f3d97a38,transparent 66%);transition:filter .4s;cursor:grab}.object-space:hover{filter:drop-shadow(0 5px 12px #c79a4d45)}.object-caption{font-size:8px;letter-spacing:1.2px;text-transform:uppercase;position:absolute;bottom:0;left:0;right:0;text-align:center;pointer-events:none;opacity:.6}.impact-number{position:relative}.impact-number strong{background:linear-gradient(110deg,#2c2927 20%,#8d692e 50%,#2c2927 80%);background-size:200% 100%;background-clip:text;color:transparent;transition:background-position .8s}.impact-number:hover strong{background-position:100% 0}.beneficiaries>div{position:relative;transition:padding .35s,color .35s,background .35s;overflow:hidden}.beneficiaries>div:before{content:'';position:absolute;left:0;bottom:0;height:2px;width:100%;background:linear-gradient(90deg,#a67e35,#f3d97a);transform:scaleX(0);transform-origin:left;transition:transform .5s}.beneficiaries>div:hover{padding-left:14px;color:#8b6425;background:#f3d97a20}.beneficiaries>div:hover:before{transform:scaleX(1)}.community-strip{gap:8%}.gallery-image{position:relative;overflow:hidden;border-radius:5px}.community-strip img{display:block;transition:opacity .25s,transform .9s;cursor:zoom-in}.gallery-image:hover img{transform:scale(1.035)}.gallery-controls{display:flex;align-items:center;justify-content:space-between;margin-top:24px;gap:12px;border-top:1px solid var(--border);padding-top:18px}.gallery-controls button{width:42px;height:42px;border:1px solid var(--border);background:transparent;border-radius:50%;font-size:20px;color:var(--ink);transition:background .3s,transform .3s}.gallery-controls button:hover{background:#f3d97a;transform:scale(1.06)}.gallery-caption{flex:1;font-size:10px;color:var(--muted)}.gallery-counter{font-size:10px;margin-right:10px}.contact{position:relative;background:radial-gradient(ellipse at var(--mx,70%) var(--my,50%),#62502c66,transparent 60%),#24211e;overflow:hidden}.contact h2 span{color:#f3d97a}.contact .eyebrow{color:#e0cb9d}.contact-grid>div>p{color:#d2c8b4}.contact .object-space{background:radial-gradient(ellipse at center,#c39d4a35,transparent 66%)}.contact form{position:relative;background:linear-gradient(140deg,#ffffff0b,#ffffff02);box-shadow:inset 0 1px 0 #f3d97a33,0 30px 80px #0002;transition:box-shadow .5s,border-color .5s}.contact form:focus-within{border-color:#f3d97a70;box-shadow:inset 0 1px 0 #f3d97a66,0 30px 80px #0003,0 0 30px #f3d97a0a}label{color:#e3d7bf}input::placeholder,textarea::placeholder{color:#b4aa99}input,select,textarea{transition:border-color .3s,background .3s}input:focus,select:focus,textarea:focus{border-color:#f3d97a;background:#f3d97a08;outline:none}label:focus-within{color:#f3d97a}.contact .pill{background:linear-gradient(115deg,#dfba63,#fbe8a6 55%,#e7c36f);box-shadow:inset 0 1px 0 #ffffffe0,0 8px 22px #0003}.contact .pill:hover{box-shadow:inset 0 1px 0 white,0 10px 30px #f3d97a20}.form-note{color:#bbb09d}.intent-choices{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 26px}.intent-choices button{font-size:10px;padding:7px 13px;border:1px solid #ffffff30;color:#e3d7bf;border-radius:30px;background:transparent;transition:.3s}.intent-choices button:hover,.intent-choices button[aria-pressed=true]{background:#f3d97a;color:#2c2927;border-color:#f3d97a}.char-count{display:block;text-align:right;font-size:9px;color:#bbb09d;margin-top:6px}.faq details{transition:background .3s}.faq details[open]{background:#f3d97a12}.faq summary:hover{padding-left:7px}.text-link{position:relative;overflow:hidden}.text-link:after{content:'';position:absolute;bottom:0;left:0;height:2px;width:100%;transform:translateX(-101%);background:#b18b43;transition:transform .5s}.text-link:hover:after{transform:translateX(0)}footer{background:radial-gradient(ellipse at var(--mx,50%) var(--my,50%),#fff8,transparent 60%),linear-gradient(130deg,#f3d97a,#e5c77b)}.footer-word{background:linear-gradient(115deg,#2c2927 20%,#8a6b35 45%,#2c2927 60%);background-clip:text;color:transparent;background-size:200% 100%;transition:background-position 1s,letter-spacing .8s}footer:hover .footer-word{background-position:100% 0;letter-spacing:.005em}.footer-top>a:last-child{transition:transform .3s}.footer-top>a:last-child:hover{transform:translateY(-5px)}.footer-bottom a:hover{text-decoration:underline;text-underline-offset:5px}#accessToggle{background:#2c2927;color:#f3d97a}.high-contrast{--muted:#332b22;--purple:#755017;--border:#2c292770}#accessPanel button[aria-pressed=true]{background:#f3d97a}#pageProgress{position:fixed;top:0;left:0;height:3px;width:100%;z-index:60;background:linear-gradient(90deg,#be9651,#f3d97a,#fbe8a6);transform-origin:left;transform:scaleX(0);pointer-events:none}.photo-dialog{border:1px solid #ffffff40;background:#24211e;color:#f2f1e5;padding:16px;border-radius:10px;max-width:min(1000px,94vw);max-height:94svh;box-shadow:0 30px 100px #0005}.photo-dialog::backdrop{background:#171510c9;backdrop-filter:blur(9px)}.photo-dialog img{display:block;max-width:100%;max-height:76svh;object-fit:contain}.photo-dialog .dialog-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;margin-top:14px}.photo-dialog button{width:36px;height:36px;border:1px solid #ffffff40;background:transparent;border-radius:50%;color:#f3d97a;font-size:22px}.photo-dialog button:hover{background:#f3d97a;color:#2c2927}.no-motion .section h2{clip-path:none!important;transform:none!important}.no-motion .section-top:before{transform:scaleX(1)}
@media(max-width:700px){.community-strip img{height:310px}.gallery-caption{font-size:9px}.gallery-controls{margin-top:15px}.object-caption{display:none}.hero-intro h1 span{background-size:130% 100%}.contact form{padding:23px}.intent-choices{gap:6px}.intro .community-photo{height:350px}}
@media(prefers-reduced-motion:reduce){.section h2{clip-path:none!important;transform:none!important}.section-top:before{transform:scaleX(1)}}
.community-strip>.gallery-image{max-width:none;width:100%}
@media(hover:none){.view-photo{background:#2c2927b0}.beneficiaries>div:hover{padding-left:0}}
.story-note:before{inset:-18px}
.hero-bottom .scroll-hint{margin-right:60px}
