
:root{
  --ink:#2f2f3c;
  --text:#5f606a;
  --bg:#f7f7f7;
  --white:#fff;
  --sage:#9db998;
  --mint:#c7dfca;
  --red:#dc332a;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);font-family:Arial,Helvetica,sans-serif;color:var(--ink)}
img{display:block;width:100%;height:100%;object-fit:cover}
a{text-decoration:none;color:inherit}
button,input,textarea{font:inherit}
h1,h2,h3,p{margin-top:0}
.site-header{
  height:74px;background:#fff;border-radius:0 0 30px 30px;
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
  padding:0 30px;position:sticky;top:0;z-index:50
}
.brand{display:flex;align-items:center;gap:18px;font-size:12px;font-weight:700;letter-spacing:2.8px}
.brand img{width:45px;height:45px;object-fit:contain}
.nav{display:flex;gap:28px;font-size:12px;font-weight:800;letter-spacing:2.5px}
.nav a.active{color:var(--sage)}
.header-cta{justify-self:end}
.pill{
  min-width:184px;height:42px;border-radius:999px;padding:0 9px 0 20px;
  display:inline-flex;align-items:center;justify-content:space-between;
  background:var(--mint);font-size:12px;font-weight:800;letter-spacing:2px;color:#111
}
.pill b{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#fff;font-size:18px}
.menu-toggle{display:none;border:0;background:transparent;font-size:24px}
.rounded-img{overflow:hidden}
.shape{position:absolute}

.home-hero{height:780px;position:relative;overflow:hidden;background:var(--bg)}
.hero-airport{position:absolute;left:14.2%;top:0;width:43%;height:488px;border-radius:0 160px 160px 0}
.hero-globe{position:absolute;right:0;top:232px;width:43%;height:505px;border-radius:160px 0 0 160px}
.hero-text{position:absolute;left:15.1%;top:573px}
.hero-text h1{font-size:60px;line-height:1.12;letter-spacing:-2px;color:#000;margin-bottom:40px}
.hero-text p{font-size:14px;color:#666}
.hero-left-dark{left:-13.5%;top:0;width:27.5%;height:487px;background:var(--sage);border-radius:0 0 100% 0}
.hero-left-light{left:-1.5%;top:491px;width:15.5%;height:245px;background:var(--mint);border-radius:0 100% 0 0}
.hero-top-light{right:14%;top:0;width:28.8%;height:228px;background:var(--mint);border-radius:0 0 0 100%}
.hero-top-dark{right:0;top:0;width:14%;height:228px;background:var(--sage);border-radius:0 0 100% 0}

.home-intro{height:750px;position:relative;overflow:hidden;border-bottom:14px solid var(--mint)}
.intro-copy{margin-left:15.1%;padding-top:20px;width:41%;font-size:15px;line-height:1.55;color:var(--text)}
.intro-copy p{margin-bottom:24px}
.intro-crosswalk{position:absolute;left:0;bottom:0;width:43%;height:513px;border-radius:0 170px 0 0}
.intro-leaf-light{left:43%;bottom:256px;width:29%;height:255px;background:var(--mint);border-radius:0 0 100% 0}
.intro-leaf-dark{left:43%;bottom:0;width:14%;height:255px;background:var(--sage);border-radius:100% 0 0 0}



.about-block{
  position:relative;
  overflow:hidden;
  background:var(--mint);
  padding:18px 0 0;
  min-height:780px;
}
.about-block h2{
  margin:0 6% 20px 0;
  text-align:right;
  font-size:62px;
  line-height:1;
  color:#000;
}
.about-three{
  display:grid;
  grid-template-columns:30% 30% 30%;
  justify-content:space-between;
  align-items:start;
  width:100%;
  min-height:690px;
}
.about-panel{
  background:#f8f8f8;
  color:var(--text);
  min-height:620px;
  padding:210px 76px 72px;
  font-size:15px;
  line-height:1.55;
}
.about-panel-left{
  border-radius:0 180px 0 0;
  margin-top:70px;
}
.about-panel-middle{
  border-radius:180px 180px 0 0;
  margin-top:110px;
}
.about-panel-right{
  border-radius:180px 0 0 180px;
  margin-top:0;
}
.about-panel h3{
  margin:14px 0 18px;
  color:var(--ink);
  font-size:20px;
}
.about-panel p{
  margin:0;
  text-align:justify;
}
.about-panel .dot{
  display:block;
  width:8px;
  height:8px;
  background:var(--red);
  border-radius:50%;
}

.mission-block{display:grid;grid-template-columns:1fr 1fr;height:650px;background:#fff}
.mission-photo{overflow:hidden}
.mission-copy{position:relative;padding:80px 8% 0 7%}
.mission-copy h2{font-size:48px;color:#000;margin-bottom:18px}
.mission-copy p{font-size:16px;line-height:1.55;color:#303039;margin-bottom:24px}
.mission-gallery{position:absolute;left:6%;right:2%;bottom:0;height:145px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;overflow:hidden}

.involved-block{min-height:910px;padding:30px 4% 80px;position:relative}
.involved-block h2{text-align:center;font-size:62px;margin-bottom:28px}
.join-pill{display:flex;margin:0 auto 180px;background:var(--sage)}
.involved-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8%}
.involved-grid article{display:grid;grid-template-columns:170px 1fr;align-items:end}
.leaf-icon{width:250px;height:250px;border-radius:0 100% 0 100%;transform:translateX(-80px)}
.leaf-icon.dark{background:var(--sage)} .leaf-icon.light{background:var(--mint)}
.card-copy{margin-left:-35px;padding-bottom:0}
.card-copy h3{font-size:22px;margin-bottom:12px}
.card-copy p{font-size:15px;line-height:1.55;color:var(--text);text-align:justify}

.team-block{min-height:760px;padding:35px 4% 0}
.team-block h2{text-align:right;font-size:62px;margin:0 2% 70px 0}
.team-grid{display:grid;grid-template-columns:repeat(2,520px);justify-content:center;gap:8%}
.team-card{background:var(--mint);height:560px;border-radius:210px 210px 0 0;text-align:center;padding-top:120px}
.team-circle{width:300px;height:300px;border-radius:50%;overflow:hidden;margin:0 auto 38px}
.team-card h3{font-size:27px;margin-bottom:20px}
.team-card p{font-size:14px;color:var(--text)}

.partners-block{height:760px;padding:10px 4%;position:relative;overflow:hidden}
.partners-block h2{font-size:62px;margin:0 0 145px}
.partner-row{display:grid;grid-template-columns:repeat(4,1fr);gap:4%;width:72%}
.partner-logo{height:112px;border-radius:18px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:27px}
.partner-logo.serif{font-family:Georgia,serif;font-size:34px}
.partner-logo.bold{font-weight:900;font-size:32px}
.partner-logo.stacked{font-weight:700;line-height:.8;text-align:center}
.triangle{margin-right:12px}
.partner-cta{position:absolute;right:1%;top:300px;background:var(--sage)}
.partner-left{left:-8%;bottom:0;width:24%;height:288px;background:var(--mint);border-radius:0 100% 0 0}
.partner-mid{left:14%;bottom:0;width:28%;height:253px;background:var(--sage);border-radius:0 100% 0 100%}
.partner-small{left:43%;bottom:0;width:14%;height:248px;background:var(--mint);border-radius:0 100% 0 100%}




.brand-footer{
  position:relative;
  height:760px;
  overflow:hidden;
  background:var(--bg);
}

/* target composition from provided screenshot */
.footer-lockup{
  position:absolute;
  z-index:5;
  left:18.5%;
  top:39%;
  display:grid;
  grid-template-columns:175px 390px;
  column-gap:32px;
  align-items:center;
  margin:0;
  width:auto;
}
.footer-lockup img{
  width:175px;
  height:175px;
  object-fit:contain;
}
.footer-lockup h2{
  margin:0;
  font-size:58px;
  line-height:1.16;
  letter-spacing:-1px;
}
.footer-lockup .pill{
  grid-column:2;
  width:185px;
  margin-top:42px;
  background:var(--sage);
}

/* left vertical two-leaf motif */
.footer-left-light{
  left:-5.5%;
  top:0;
  width:20%;
  height:50%;
  background:var(--mint);
  border-radius:0 100% 0 0;
}
.footer-left-dark{
  left:-5.5%;
  top:50.5%;
  width:20%;
  height:49.5%;
  background:var(--sage);
  border-radius:0 0 100% 0;
}

/* top horizontal pair */
.footer-top-dark{
  left:14.7%;
  top:0;
  width:29%;
  height:29%;
  background:var(--sage);
  border-radius:0 0 100% 0;
}
.footer-top-light{
  left:44%;
  top:0;
  width:14.7%;
  height:29%;
  background:var(--mint);
  border-radius:0 0 0 100%;
}

/* right single motif */
.footer-right{
  right:-5%;
  top:29%;
  width:16.5%;
  height:29%;
  background:var(--sage);
  border-radius:0 0 0 100%;
}

/* bottom horizontal pair */
.brand-footer::before,
.brand-footer::after{
  content:"";
  position:absolute;
  bottom:0;
  height:22%;
}
.brand-footer::before{
  left:14.7%;
  width:29%;
  background:var(--mint);
  border-radius:0 100% 0 0;
}
.brand-footer::after{
  left:44%;
  width:14.7%;
  background:var(--sage);
  border-radius:100% 0 0 0;
}

/* practical info sits outside visual footer */
.footer-details{
  background:var(--bg);
  padding:34px 4% 42px;
  display:grid;
  grid-template-columns:220px minmax(360px,620px);
  gap:70px;
  font-size:14px;
  color:var(--text);
}
.footer-details strong{
  display:block;
  font-size:12px;
  letter-spacing:2px;
  color:var(--ink);
  margin-bottom:14px;
}
.footer-details a{
  display:block;
  margin-bottom:9px;
}
.footer-details p{
  line-height:1.55;
  margin:0 0 12px;
}




.contact-hero{height:780px;position:relative;overflow:hidden}
.contact-left-light{left:0;top:0;width:28.5%;height:200px;background:var(--mint);border-radius:0 0 100% 0}
.contact-left-dark{left:0;top:202px;width:14%;height:200px;background:var(--sage);border-radius:0 100% 0 0}
.contact-flags{position:absolute;right:0;top:0;width:42.5%;height:398px;border-radius:180px 0 0 180px;overflow:hidden}
.contact-title{position:absolute;left:15.7%;top:510px}
.contact-title h1{font-size:58px}
.contact-bodycopy{position:absolute;left:28.5%;top:750px;width:52%;font-size:16px;line-height:1.55;color:var(--text)}

.donation-block{min-height:540px;padding:30px 0 80px}
.donation-inner{width:57%;margin-left:28.5%}
.donation-inner h2{font-size:17px;margin-bottom:32px}
.donation-inner>label{display:block;font-size:16px;color:#555661;margin-bottom:12px}
.frequency-group{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:28px}
.amount-group{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:30px}
.donation-choice{height:52px;border:0;border-radius:999px;background:#fff;color:#45454e;cursor:pointer}
.donation-choice.active{background:var(--mint)}
.donate-submit{width:100%;height:48px;border:0;border-radius:999px;background:var(--sage);color:#fff;font-size:14px;font-weight:800;letter-spacing:3px}
.custom-amount{width:100%;height:48px;border:1px solid #888;border-radius:999px;padding:0 18px;margin:-12px 0 24px}
.setup-note{font-size:12px;color:#8b8b92;margin-top:10px}

.contact-block{min-height:820px;padding:30px 0 80px}
.contact-block>h2{font-size:58px;margin:0 0 190px 15.7%}
.contact-grid{width:70%;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:8%}
.contact-copy{font-size:16px;line-height:1.6;color:var(--text)}
.contact-copy p{margin-bottom:28px}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:28px 24px}
.field{display:flex;flex-direction:column;gap:10px}
.field.full{grid-column:1/-1}
.field label{font-size:13px;font-weight:800}
.field input,.field textarea{border:1px solid #777;border-radius:22px;background:#fff;padding:13px 16px;color:var(--ink)}
.field input{height:48px}.field textarea{height:98px;resize:vertical}
.form-submit{width:170px;height:42px;border:0;border-radius:999px;background:var(--sage);color:white;font-weight:800}
.contact-footer-section{padding-top:70px}


}

@media(max-width:980px){
  .about-block{
    min-height:0;
    padding:48px 7% 64px;
  }
  .about-block h2{
    margin:0 0 34px;
    text-align:left;
    font-size:44px;
  }
  .about-three{
    grid-template-columns:1fr;
    min-height:0;
    gap:24px;
  }
  .about-panel,
  .about-panel-left,
  .about-panel-middle,
  .about-panel-right{
    min-height:0;
    margin:0;
    padding:48px 34px;
    border-radius:70px;
  }

.site-header{grid-template-columns:1fr auto;padding:0 16px;height:68px}
  .brand{font-size:10px;letter-spacing:1.6px}.brand img{width:40px;height:40px}
  .nav{position:absolute;left:0;right:0;top:68px;display:none;flex-direction:column;background:#fff;padding:24px;border-radius:0 0 24px 24px}
  .nav.open{display:flex}.header-cta{display:none}.menu-toggle{display:block}

  .home-hero{height:780px}
  .hero-airport{left:0;top:0;width:88%;height:350px;border-radius:0 110px 110px 0}
  .hero-globe{right:0;top:320px;width:86%;height:330px;border-radius:110px 0 0 110px}
  .hero-text{left:8%;top:665px}
  .hero-text h1{font-size:38px}.hero-text p{margin-top:10px}
  .hero-left-dark{width:18%;height:350px}.hero-left-light,.hero-top-light,.hero-top-dark{display:none}

  .home-intro{height:auto;padding:50px 7% 360px}
  .intro-copy{margin:0;width:100%;padding:0;font-size:14px}
  .intro-crosswalk{width:82%;height:330px}.intro-leaf-light,.intro-leaf-dark{display:none}
.about-block h2{position:relative;right:auto;top:auto;font-size:44px;margin-bottom:35px}
  .about-card{position:relative;width:100%;height:auto;left:auto;right:auto;top:auto;bottom:auto;border-radius:70px;padding:50px 34px;margin-bottom:25px}

  .mission-block{height:auto;grid-template-columns:1fr}
  .mission-photo{height:440px}
  .mission-copy{padding:50px 7% 190px}
  .mission-copy h2{font-size:42px}
  .mission-gallery{left:7%;right:7%;height:130px}

  .involved-block{padding:55px 7% 80px}
  .involved-block h2{font-size:44px}
  .join-pill{margin-bottom:80px}
  .involved-grid{grid-template-columns:1fr;gap:60px}
  .involved-grid article{grid-template-columns:120px 1fr}
  .leaf-icon{width:170px;height:170px;transform:translateX(-65px)}
  .card-copy{margin-left:-15px}

  .team-block{padding:55px 7%}
  .team-block h2{text-align:left;font-size:44px;margin-bottom:40px}
  .team-grid{grid-template-columns:1fr;gap:28px}
  .team-card{height:470px;padding-top:75px}
  .team-circle{width:240px;height:240px}

  .partners-block{height:auto;min-height:700px;padding:55px 7% 300px}
  .partners-block h2{font-size:44px;margin-bottom:55px}
  .partner-row{width:100%;grid-template-columns:1fr 1fr;gap:16px}
  .partner-cta{position:relative;top:auto;right:auto;margin-top:36px}
  .partner-left,.partner-mid,.partner-small{opacity:.5}

  .brand-footer{height:650px}
  .footer-lockup{
    left:16%;top:37%;
    grid-template-columns:120px 260px;column-gap:20px
  }
  .footer-lockup img{width:120px;height:120px}
  .footer-lockup h2{font-size:38px}
  .footer-lockup .pill{grid-column:2;margin-top:28px}
  .footer-details{grid-template-columns:1fr;gap:28px;padding:30px 7% 40px}

  .contact-hero{height:790px}
  .contact-flags{width:88%;height:330px;border-radius:120px 0 0 120px}
  .contact-left-light{width:35%;height:160px}.contact-left-dark{top:162px;width:18%;height:160px}
  .contact-title{left:7%;top:385px}.contact-title h1{font-size:44px}
  .contact-bodycopy{left:7%;top:500px;width:86%;font-size:14px}

  .donation-block{padding:30px 7% 70px}
  .donation-inner{width:100%;margin:0}
  .amount-group{grid-template-columns:repeat(3,1fr)}
  .contact-block{padding:45px 7% 80px}
  .contact-block>h2{font-size:44px;margin:0 0 70px}
  .contact-grid{width:100%;grid-template-columns:1fr;gap:50px}
}
@media(max-width:560px){
  .brand span{max-width:180px}
  .hero-text h1,.contact-title h1{font-size:34px}
  .involved-grid article{grid-template-columns:75px 1fr}
  .leaf-icon{width:135px;height:135px;transform:translateX(-60px)}
  .partner-row{grid-template-columns:1fr}
  .contact-form{grid-template-columns:1fr}.field.full{grid-column:auto}
  .frequency-group{grid-template-columns:1fr}.amount-group{grid-template-columns:1fr 1fr}
  .footer-lockup{grid-template-columns:90px auto}.footer-lockup img{width:90px;height:90px}.footer-lockup h2{font-size:29px}
}




/* === FINAL Get Involved overlap fix: actual live selectors === */
.involved-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:56px !important;
  align-items:start !important;
}

.involved-grid article{
  display:grid !important;
  grid-template-columns:150px minmax(0,1fr) !important;
  column-gap:28px !important;
  align-items:start !important;
  padding-left:0 !important;
  min-width:0 !important;
  overflow:visible !important;
}

.involved-grid .leaf-icon{
  position:relative !important;
  width:150px !important;
  height:150px !important;
  margin:0 !important;
  transform:none !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  bottom:auto !important;
  align-self:start !important;
}

.involved-grid .card-copy{
  position:relative !important;
  z-index:2 !important;
  margin:0 !important;
  padding:14px 0 0 !important;
  min-width:0 !important;
}

.involved-grid .card-copy h3{
  margin:0 0 12px !important;
}

.involved-grid .card-copy p{
  margin:0 !important;
  max-width:none !important;
  text-align:left !important;
}

@media(max-width:1200px){
  .involved-grid{
    gap:32px !important;
  }
  .involved-grid article{
    grid-template-columns:120px minmax(0,1fr) !important;
    column-gap:22px !important;
  }
  .involved-grid .leaf-icon{
    width:120px !important;
    height:120px !important;
  }
}

@media(max-width:980px){
  .involved-grid{
    grid-template-columns:1fr !important;
    gap:38px !important;
  }
  .involved-grid article{
    grid-template-columns:120px minmax(0,1fr) !important;
  }
}


/* === Uniform About Us panels === */
.about-block{
  padding:70px 0 90px !important;
}

.about-block h2{
  margin:0 6% 50px 0 !important;
}

.about-three{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:40px !important;
  width:92% !important;
  margin:0 auto !important;
  align-items:stretch !important;
}

.about-panel,
.about-panel-left,
.about-panel-middle,
.about-panel-right{
  min-height:620px !important;
  height:100% !important;
  margin:0 !important;
  padding:150px 64px 64px !important;
  border-radius:180px 180px 0 0 !important;
  background:#f8f8f8 !important;
}

.about-panel h3{
  margin:14px 0 18px !important;
}

.about-panel p{
  margin:0 !important;
}

@media(max-width:980px){
  .about-three{
    grid-template-columns:1fr !important;
    width:100% !important;
    gap:24px !important;
  }
  .about-panel,
  .about-panel-left,
  .about-panel-middle,
  .about-panel-right{
    min-height:0 !important;
    padding:48px 34px !important;
    border-radius:70px !important;
  }
}


/* === Get Involved spacing + Join Us button fix === */
.get-involved{
  padding-top:32px !important;
  padding-bottom:70px !important;
  min-height:0 !important;
}

.get-involved h2{
  margin-bottom:24px !important;
}

.get-involved .section-cta,
.get-involved .join-us,
.get-involved a[href*="contact"]{
  width:260px !important;
  max-width:260px !important;
  display:flex !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.involved-grid{
  margin-top:70px !important;
  margin-bottom:0 !important;
  min-height:0 !important;
}

.involved-grid article{
  min-height:0 !important;
  height:auto !important;
}

.team-section,
.meet-team{
  margin-top:0 !important;
  padding-top:70px !important;
}

@media(max-width:700px){
  .get-involved .section-cta,
  .get-involved .join-us,
  .get-involved a[href*="contact"]{
    width:220px !important;
    max-width:calc(100% - 40px) !important;
  }

  .involved-grid{
    margin-top:45px !important;
  }
}


/* === v14 exact Get Involved correction === */
.involved-block{
  min-height:0 !important;
  height:auto !important;
  padding:34px 4% 54px !important;
  margin:0 !important;
  box-sizing:border-box !important;
}
.involved-block h2{
  margin:0 0 24px !important;
  text-align:center !important;
}
.involved-block .join-pill{
  width:220px !important;
  max-width:220px !important;
  min-width:0 !important;
  height:44px !important;
  margin:0 auto 48px !important;
  padding:0 8px 0 22px !important;
  display:flex !important;
  box-sizing:border-box !important;
}
.involved-block .involved-grid{
  width:100% !important;
  margin:0 auto !important;
  padding:0 !important;
  min-height:0 !important;
  height:auto !important;
  gap:48px !important;
  align-items:start !important;
}
.involved-block .involved-grid article{
  min-height:0 !important;
  height:auto !important;
  margin:0 !important;
  padding-top:0 !important;
  padding-bottom:0 !important;
}
.involved-block + .team-block{
  margin-top:0 !important;
  padding-top:54px !important;
}
@media(max-width:980px){
  .involved-block{padding:30px 24px 44px !important;}
  .involved-block .join-pill{margin-bottom:36px !important;}
  .involved-block .involved-grid{gap:30px !important;}
}


/* === v15 Contact/Donate page centered alignment === */
.donate-hero,
.donate-section,
.contact-intro,
.contact-section{
  text-align:center !important;
}

.donate-hero h1,
.donate-hero h2,
.donate-section h1,
.donate-section h2,
.contact-intro h1,
.contact-intro h2,
.contact-section h1,
.contact-section h2{
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.donate-hero p,
.donate-section > p,
.contact-intro p,
.contact-section > p{
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

.donation-box,
.donation-form,
.donate-form,
#donate form{
  margin-left:auto !important;
  margin-right:auto !important;
}

.donation-box label,
.donation-form label,
.donate-form label,
#donate label{
  text-align:center !important;
  display:block !important;
}

.donation-note,
.donate-note,
#donate small{
  text-align:center !important;
  display:block !important;
  margin-left:auto !important;
  margin-right:auto !important;
}


/* === v17 Contact page without donations === */
.contact-hero{
  height:680px !important;
}
.contact-title{
  top:430px !important;
}
.contact-bodycopy{
  top:525px !important;
}
.contact-block{
  padding-top:70px !important;
}
@media(max-width:980px){
  .contact-hero{
    height:700px !important;
  }
  .contact-title{
    top:385px !important;
  }
  .contact-bodycopy{
    top:485px !important;
  }
}


/* === v18 Contact page: intro/mission section removed === */
.contact-block{
  padding-top:120px !important;
}
@media(max-width:980px){
  .contact-block{
    padding-top:80px !important;
  }
}
