@font-face{font-family:Century;src:url(/fonts/Century.ttf)format("truetype");font-weight:400;font-style:normal}:root{--color-bg:#181818;--color-text:#54bc9b;--color-primary:#359879;--color-secondary:#6ad2a5;--color-bg-light:#fff;--color-text-on-light:#359879;--font-heading:"Outfit", sans-serif;--font-body:"Outfit", sans-serif;--font-accent:"Chakra Petch", sans-serif;--font-serif:"Century", serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--color-text);background:var(--color-bg);font:18px/145% var(--font-body);font-weight:300}body{background-image:radial-gradient(#54bc9b0f 1px,#0000 1.5px),radial-gradient(70% 45% at 50% 0,#3598791f,#0000);background-size:30px 30px,100% 100%;background-attachment:fixed,fixed;margin:0}::selection{background-color:var(--color-primary);color:var(--color-bg)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:#54bc9b40;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#54bc9b73}#root{flex-direction:column;min-height:100svh;display:flex}h1,h2{font-family:var(--font-heading);color:var(--color-text)}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px;font-weight:600;line-height:1.15}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;font-weight:500;line-height:118%}p{margin:0}#root section{border-image:linear-gradient(90deg,#0000 5%,#54bc9b66 50%,#0000 95%) 1}[class*=-kicker]:before{content:"< ";opacity:.55}[class*=-kicker]:after{content:" />";opacity:.55}.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(24px)}.reveal-visible{opacity:1;transform:translateY(0)}.page-fade{animation:.4s pageFadeIn}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}.page-fade{animation:none}}.hero-visual{filter:drop-shadow(0 0 45px #54bc9b40);width:100%;max-width:550px}.node-line{fill:none;stroke:var(--color-secondary);stroke-width:1.5px;opacity:.7}.node-dot{animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}.globe3d-wrapper{will-change:transform;width:100%;max-width:min(620px, calc(100svh - var(--nav-h,200px) - 8rem));aspect-ratio:1.2;animation:1.2s ease-out globeFadeIn;position:relative}@keyframes globeFadeIn{0%{opacity:0}to{opacity:1}}.hero-scroll{position:relative}.hero-globe-col{width:100%;max-width:min(620px, calc(100svh - var(--nav-h,200px) - 8rem));flex-direction:column;align-items:center;display:flex}.hero{box-sizing:border-box;flex-wrap:wrap;justify-content:center;align-items:center;gap:4rem;width:100%;max-width:1400px;min-height:100svh;margin:0 auto;padding:2rem;display:flex;position:relative}.hero-text{opacity:0;max-width:500px;line-height:1;transition:opacity .3s,transform .6s;transform:translateY(16px)}.hero-text.is-visible{opacity:1;animation:1.5s ease-in-out flicker;transform:translateY(0)}@keyframes flicker{0%{opacity:0}7%{opacity:.75}9%{opacity:.15}13%{opacity:.9}16%{opacity:.3}21%{opacity:1}27%{opacity:.45}32%{opacity:1}54%{opacity:.95}57%{opacity:.35}60%{opacity:1}76%{opacity:.8}79%{opacity:1}to{opacity:1}}.hero-text h1{background:linear-gradient(120deg, var(--color-text), var(--color-secondary));-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 24px #6ad2a566);-webkit-background-clip:text;background-clip:text;font-size:72px}.hero-ctas{gap:1rem;margin-top:1.5rem;display:flex}.btn{font-family:var(--font-accent);border-radius:4px;padding:.75rem 1.5rem;font-weight:500;text-decoration:none;transition:background-color .3s,color .3s,transform .15s,box-shadow .3s;display:inline-block}.btn:active{transform:scale(.96)}.btn-primary{background-color:var(--color-primary);color:var(--color-bg)}.btn-primary:hover{background-color:var(--color-secondary);box-shadow:0 0 24px #6ad2a559}.btn-secondary{color:var(--color-primary);border:1px solid var(--color-primary);background-color:#0000}.btn-secondary:hover{background-color:var(--color-primary);color:var(--color-bg);box-shadow:0 0 24px #3598794d}.mission{box-sizing:border-box;border-top:1px solid #54bc9b26;flex-wrap:wrap;justify-content:center;align-items:center;gap:3rem;width:100%;max-width:1400px;margin:0 auto;padding:4rem 2rem 6rem;display:flex}.mission-text{max-width:600px;line-height:1.5}.mission-cta{gap:1rem;margin-top:1.5rem;display:flex}.TeamTeaser{box-sizing:border-box;border-top:1px solid #54bc9b26;flex-direction:column;align-items:center;gap:2rem;width:100%;max-width:1400px;margin:0 auto;padding:4rem 2rem 6rem;display:flex}.TeamTeaser-text{text-align:center;max-width:600px;line-height:1.5}.Team-card,.Events-card{text-align:center;background-color:#54bc9b08;border:1px solid #54bc9b1f;border-radius:8px;flex:220px;max-width:250px;padding:1.5rem;transition:transform .3s,background-color .3s,border-color .3s,box-shadow .3s}.Team-card:hover,.Events-card:hover{background-color:#54bc9b12;border-color:#54bc9b59;transform:translateY(-6px);box-shadow:0 12px 32px #00000059,0 0 24px #54bc9b1f}.Team-card:active,.Events-card:active{transform:translateY(-2px)scale(.98)}.EventsTeaser{box-sizing:border-box;border-top:1px solid #54bc9b26;flex-direction:column;align-items:center;gap:2rem;width:100%;max-width:1400px;margin:0 auto;padding:4rem 2rem 6rem;display:flex}.EventsTeaser-text{text-align:center;max-width:600px;line-height:1.5}.volunteer-cta{box-sizing:border-box;border-top:1px solid #54bc9b26;width:100%;max-width:1400px;margin:0 auto;padding:4rem 2rem 6rem}.volunteer-banner{text-align:center;background:linear-gradient(135deg, var(--color-primary), var(--color-secondary));border-radius:16px;flex-direction:column;align-items:center;gap:1rem;padding:4rem 2rem;display:flex;box-shadow:0 20px 60px #35987940}.volunteer-banner h2{color:var(--color-bg);font-size:36px}.volunteer-banner p{max-width:500px;color:var(--color-bg)}.volunteer-banner .btn-primary{background-color:var(--color-bg);color:var(--color-primary)}.volunteer-banner .btn-primary:hover{background-color:var(--color-secondary);color:var(--color-bg)}.scroll-hint{top:calc(100svh - var(--nav-h,200px) - 3.5rem);animation:1.8s ease-in-out infinite scrollBounce;position:absolute;left:50%;transform:translate(-50%)}.scroll-hint.is-hidden{opacity:0;transition:opacity .3s;animation:none}@keyframes scrollBounce{0%,to{opacity:.5;transform:translate(-50%)}50%{opacity:1;transform:translate(-50%,8px)}}.about-hero{box-sizing:border-box;text-align:center;width:100%;max-width:900px;margin:0 auto;padding:6rem 2rem 3rem}.about-kicker{font-family:var(--font-accent);text-transform:uppercase;letter-spacing:2px;color:var(--color-secondary);margin-bottom:1rem;font-size:14px}.about-heading{margin:0;line-height:1.2}.about-lead{max-width:700px;margin:1.5rem auto 0;font-size:20px;line-height:1.6}.story{box-sizing:border-box;border-top:1px solid #54bc9b26;flex-wrap:wrap;gap:3rem;width:100%;max-width:1400px;margin:0 auto;padding:4rem 2rem 6rem;display:flex}.story-quote{font-family:var(--font-heading);border-left:3px solid var(--color-primary);color:var(--color-secondary);flex:300px;margin:0;padding-left:1.5rem;font-size:28px;font-weight:500;line-height:1.4}.story-body{flex-direction:column;flex:2 400px;gap:1.25rem;line-height:1.6;display:flex}.vision{box-sizing:border-box;border-top:1px solid #54bc9b26;width:100%;max-width:1400px;margin:0 auto;padding:4rem 2rem 6rem}.vision-card{text-align:center;border-top:2px solid var(--color-primary);background:linear-gradient(#54bc9b12,#0000);border-radius:0 0 12px 12px;max-width:700px;margin:0 auto;padding:1.5rem 2rem 2rem}.approach{box-sizing:border-box;text-align:center;border-top:1px solid #54bc9b26;width:100%;max-width:1400px;margin:0 auto;padding:4rem 2rem 6rem}.approach-steps{flex-wrap:wrap;justify-content:center;gap:2rem;margin-top:2.5rem;display:flex}.approach-step{text-align:left;border-top:2px solid var(--color-primary);background:linear-gradient(#54bc9b12,#0000);border-radius:0 0 12px 12px;flex:200px;max-width:260px;padding:1rem 1.25rem 1.25rem}.approach-number{font-family:var(--font-accent);color:var(--color-secondary);margin-bottom:.5rem;font-size:14px;display:block}.values{box-sizing:border-box;border-top:1px solid #54bc9b26;width:100%;max-width:900px;margin:0 auto;padding:4rem 2rem 6rem}.values h2{text-align:center;margin-bottom:2.5rem}.values-intro{text-align:center;margin-bottom:2.5rem;font-size:18px;line-height:1.6}.values-list{flex-direction:column;gap:2rem;display:flex}.value-row{align-items:baseline;gap:1.5rem;display:flex}.value-number{font-family:var(--font-serif);color:#54bc9b4d;flex-shrink:0;width:3rem;font-size:32px}.value-copy h3{font-family:var(--font-heading);color:var(--color-secondary);margin:0 0 .35rem}.value-copy p{line-height:1.5}.about-cta{box-sizing:border-box;border-top:1px solid #54bc9b26;width:100%;max-width:1400px;margin:0 auto;padding:4rem 2rem 6rem}.about-cta-banner{text-align:center;border:1px solid var(--color-primary);background-color:#54bc9b0a;border-radius:16px;flex-direction:column;align-items:center;gap:1rem;padding:4rem 2rem;display:flex;box-shadow:inset 0 0 60px #3598791f}.about-cta-banner p{max-width:500px}.about-cta-buttons{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:.5rem;display:flex}.team-hero{box-sizing:border-box;text-align:center;width:100%;max-width:900px;margin:0 auto;padding:6rem 2rem 3rem}.team-kicker{font-family:var(--font-accent);text-transform:uppercase;letter-spacing:2px;color:var(--color-secondary);margin-bottom:1rem;font-size:14px}.team-lead{max-width:700px;margin:1.5rem auto 0;font-size:20px;line-height:1.6}.team-roster{box-sizing:border-box;border-top:1px solid #54bc9b26;width:100%;max-width:1400px;margin:0 auto;padding:3rem 2rem 4rem}.team-dept-title{text-align:center;margin-bottom:2rem}.Team-grid{flex-wrap:wrap;justify-content:center;gap:2rem;width:100%;display:flex}.Team-card{text-align:center;background-color:#54bc9b08;border:1px solid #54bc9b1f;border-radius:8px;flex:220px;max-width:250px;padding:1.5rem;transition:transform .3s,background-color .3s,border-color .3s,box-shadow .3s}.Team-card:hover{background-color:#54bc9b12;border-color:#54bc9b59;transform:translateY(-6px);box-shadow:0 12px 32px #00000059,0 0 24px #54bc9b1f}.Team-card:active{transform:translateY(-2px)scale(.98)}.Team-photo{background-color:var(--color-secondary);border-radius:50%;width:100px;height:100px;margin:0 auto 1rem;overflow:hidden}.Team-photo img{object-fit:cover;object-position:center 20%;width:100%;height:100%;display:block}.team-cta{box-sizing:border-box;border-top:1px solid #54bc9b26;width:100%;max-width:1400px;margin:0 auto;padding:4rem 2rem 6rem}.team-cta-banner{text-align:center;background:linear-gradient(135deg, var(--color-primary), var(--color-secondary));border-radius:16px;flex-direction:column;align-items:center;gap:1rem;padding:4rem 2rem;display:flex;box-shadow:0 20px 60px #35987940}.team-cta-banner h2{color:var(--color-bg);font-size:36px}.team-cta-banner p{max-width:500px;color:var(--color-bg)}.team-cta-banner .btn-primary{background-color:var(--color-bg);color:var(--color-primary)}.team-cta-banner .btn-primary:hover{background-color:var(--color-secondary);color:var(--color-bg)}.events-hero{box-sizing:border-box;text-align:center;width:100%;max-width:900px;margin:0 auto;padding:6rem 2rem 3rem}.events-kicker{font-family:var(--font-accent);text-transform:uppercase;letter-spacing:2px;color:var(--color-secondary);margin-bottom:1rem;font-size:14px}.events-lead{max-width:700px;margin:1.5rem auto 0;font-size:20px;line-height:1.6}.upcoming-events{box-sizing:border-box;border-top:1px solid #54bc9b26;width:100%;max-width:1400px;margin:0 auto;padding:3rem 2rem 6rem}.upcoming-events h2{text-align:center;margin-bottom:2.5rem}.Events-grid{flex-wrap:wrap;justify-content:center;gap:2rem;width:100%;display:flex}.Events-card{text-align:center;background-color:#54bc9b08;border:1px solid #54bc9b1f;border-radius:8px;flex:220px;max-width:250px;padding:1.5rem;transition:transform .3s,background-color .3s,border-color .3s,box-shadow .3s}.Events-card h3{justify-content:center;align-items:center;min-height:2.4em;display:flex}.Events-card:hover{background-color:#54bc9b12;border-color:#54bc9b59;transform:translateY(-6px);box-shadow:0 12px 32px #00000059,0 0 24px #54bc9b1f}.Events-card:active{transform:translateY(-2px)scale(.98)}.Events-photo{background-color:var(--color-primary);border-radius:12px;width:100px;height:100px;margin:0 auto 1rem}.past-events{box-sizing:border-box;border-top:1px solid #54bc9b26;width:100%;max-width:900px;margin:0 auto;padding:3rem 2rem 6rem}.past-events h2{text-align:center;margin-bottom:2rem}.past-events-list{flex-direction:column;display:flex}.past-event-row{color:#54bc9bb3;border-bottom:1px solid #54bc9b26;gap:1.5rem;padding:1rem .75rem;transition:background-color .2s,color .2s;display:flex}.past-event-row:hover{color:var(--color-text);background-color:#54bc9b0d}.past-event-date{font-family:var(--font-accent);flex-shrink:0;width:80px}.events-cta{box-sizing:border-box;border-top:1px solid #54bc9b26;width:100%;max-width:1400px;margin:0 auto;padding:4rem 2rem 6rem}.events-cta-banner{text-align:center;background:linear-gradient(135deg, var(--color-primary), var(--color-secondary));border-radius:16px;flex-direction:column;align-items:center;gap:1rem;padding:4rem 2rem;display:flex;box-shadow:0 20px 60px #35987940}.events-cta-banner h2{color:var(--color-bg);font-size:36px}.events-cta-banner p{max-width:500px;color:var(--color-bg)}.events-cta-banner .btn-primary{background-color:var(--color-bg);color:var(--color-primary)}.events-cta-banner .btn-primary:hover{background-color:var(--color-secondary);color:var(--color-bg)}.volunteer-soon{box-sizing:border-box;text-align:center;width:100%;max-width:700px;margin:0 auto;padding:8rem 2rem}.volunteer-soon h1{background:linear-gradient(120deg, var(--color-text), var(--color-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.volunteer-kicker{font-family:var(--font-accent);text-transform:uppercase;letter-spacing:2px;color:var(--color-secondary);margin-bottom:1rem;font-size:14px}.contact-hero{box-sizing:border-box;text-align:center;width:100%;max-width:900px;margin:0 auto;padding:6rem 2rem 3rem}.contact-kicker{font-family:var(--font-accent);text-transform:uppercase;letter-spacing:2px;color:var(--color-secondary);margin-bottom:1rem;font-size:14px}.contact-lead{max-width:700px;margin:1.5rem auto 0;font-size:20px;line-height:1.6}.contact-form-section{box-sizing:border-box;border-top:1px solid #54bc9b26;width:100%;max-width:1400px;margin:0 auto;padding:3rem 2rem 6rem}.contact-columns{flex-wrap:wrap;gap:3rem;max-width:900px;margin:0 auto;display:flex}.contact-form-wrap{flex:320px}.contact-form{flex-direction:column;gap:1.25rem;display:flex}.contact-form label{color:var(--color-secondary);flex-direction:column;gap:.5rem;font-size:14px;display:flex}.contact-form input,.contact-form textarea{font:inherit;color:var(--color-text);background-color:#54bc9b0a;border:1px solid #54bc9b4d;border-radius:4px;padding:.6rem .75rem;transition:border-color .2s,box-shadow .2s}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #54bc9b26}.contact-form button:disabled{opacity:.6;cursor:not-allowed}.contact-form textarea{resize:vertical;min-height:120px}.contact-form button{cursor:pointer;border:none;align-self:flex-start}.contact-thanks{font-size:20px}.contact-info{border-left:1px solid #54bc9b26;flex-direction:column;flex:220px;gap:1.5rem;padding-left:1.5rem;display:flex}.contact-info-label{font-family:var(--font-accent);text-transform:uppercase;letter-spacing:1px;color:var(--color-secondary);margin-bottom:.25rem;font-size:12px}.btn-small{margin-top:.5rem;padding:.4rem .9rem;font-size:13px}.links{box-sizing:border-box;flex-direction:column;gap:1rem;width:100%;max-width:500px;margin:0 auto;padding:6rem 2rem 4rem;display:flex}.links-header{text-align:center;margin-bottom:1rem}.links-kicker{font-family:var(--font-accent);text-transform:uppercase;letter-spacing:2px;color:var(--color-secondary);margin-bottom:.5rem;font-size:14px}.links-link{color:var(--color-text);background-color:#54bc9b0a;border:1px solid #54bc9b26;border-radius:8px;justify-content:center;align-items:center;gap:1rem;padding:1rem 2rem;text-decoration:none;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out,background-color .2s ease-in-out,border-color .2s ease-in-out;display:flex;box-shadow:0 4px 6px #0000001a}.links-link:hover{background-color:#54bc9b1a;border-color:#54bc9b66;transform:translateY(-6px);box-shadow:0 12px 32px #00000059,0 0 24px #54bc9b26}.links-link:active{transform:translateY(-2px)scale(.98)}.links-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.links-link svg{flex-shrink:0;font-size:22px}.navbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:100;opacity:1;background-color:#181818b3;border-bottom:1px solid #54bc9b1f;width:100%;transition:opacity .5s;position:sticky;top:0}body.hero-intro-active .navbar{opacity:0;pointer-events:none}.navbar-inner{box-sizing:border-box;justify-content:space-between;align-items:center;width:100%;max-width:1400px;margin:0 auto;padding:1rem 2rem;display:flex}.navbar-logo img{width:auto;height:150px}.navbar-links{gap:1rem;list-style:none;display:flex}.navbar-links a{color:var(--color-text);font-family:var(--font-accent);text-decoration:none;transition:color .3s;position:relative}.navbar-links a:after{content:"";background-color:var(--color-primary);transform-origin:0;width:100%;height:2px;transition:transform .25s;position:absolute;bottom:-4px;left:0;transform:scaleX(0)}.navbar-links a:hover:after,.navbar-links a.active:after{transform:scaleX(1)}.navbar-links a.active{color:var(--color-primary)}.navbar-toggle{color:var(--color-text);cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:24px;line-height:0;display:none}@media (width<=700px){.navbar-inner{padding:.75rem 1rem;position:relative}.navbar-logo img{height:56px}.navbar-toggle{display:block}.navbar-links{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background-color:#181818f2;border-bottom:1px solid #54bc9b1f;flex-direction:column;align-items:center;gap:1.25rem;width:100%;margin:0;padding:1.5rem 0 2rem;display:none;position:absolute;top:100%;left:0}.navbar-links-open{display:flex}.navbar-links a{font-size:16px}}.footer{box-sizing:border-box;width:100%;max-width:1400px;color:var(--color-text);border-top:1px solid #54bc9b1f;justify-content:space-between;align-items:center;margin:0 auto;padding:1rem 2rem;display:flex}.footer-logo{width:auto;height:50px}
