/* ============================================================
   The Future of Our Kids — matched to the live Wix design
   Olive / lime / brown palette, rounded display type
   Type: Poppins (clean sans, all weights)
   ============================================================ */

:root{
  --olive:      #404a1a;   /* dark olive: header, dark panels, footer bar */
  --olive-2:    #363f15;   /* slightly darker olive */
  --lime:       #a3c238;   /* lime green: mission block, quote band */
  --lime-txt:   #8db324;   /* green accent text / headings */
  --brown:      #8a6b2e;   /* impact block */
  --yellow:     #f3e734;   /* donate button */
  --yellow-2:   #e4d81f;   /* donate hover */
  --maroon:     #8e2043;   /* sign up button */
  --green-btn:  #7cb342;   /* donate now button */
  --green-btn2: #6aa036;
  --ink:        #2b2b2b;
  --ink-soft:   #555;
  --paper:      #ffffff;
  --line:       #e6e6e0;
  --maxw: 1180px;
}

*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
@media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto;} *{animation:none!important;transition:none!important;} }

body{
  margin:0;
  font-family:"Poppins", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.65;
  font-size:17px;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3,h4{
  font-family:"Poppins", system-ui, sans-serif;
  color:var(--olive);
  line-height:1.1;
  margin:0 0 .5em;
  font-weight:700;
}
h1{ font-size:clamp(2.4rem,5.5vw,4.1rem); font-weight:800; letter-spacing:-0.02em; }
h2{ font-size:clamp(1.9rem,4vw,3rem); }
h3{ font-size:1.35rem; }

p{ margin:0 0 1.1em; }
a{ color:var(--lime-txt); }

.wrap{ max-width:var(--maxw); margin:0 auto; padding:0 24px; }
.center{ text-align:center; }

/* ---------- Buttons ---------- */
.btn{
  display:inline-block; font-family:"Poppins",sans-serif; font-weight:600;
  font-size:1rem; text-decoration:none; padding:.7rem 1.7rem; border-radius:999px;
  border:0; cursor:pointer; transition:transform .15s ease, background .15s ease;
}
.btn:focus-visible{ outline:3px solid var(--olive); outline-offset:3px; }
.btn-donate{ background:var(--yellow); color:var(--olive); }
.btn-donate:hover{ background:var(--yellow-2); transform:translateY(-2px); }
.btn-green{ background:var(--green-btn); color:#fff; }
.btn-green:hover{ background:var(--green-btn2); transform:translateY(-2px); }
.btn-olive{ background:var(--olive); color:#fff; }
.btn-olive:hover{ background:var(--olive-2); transform:translateY(-2px); }
.btn-maroon{ background:var(--maroon); color:#fff; border-radius:6px; }
.btn-maroon:hover{ background:#761a37; }

/* ---------- Header ---------- */
.site-header{ position:sticky; top:0; z-index:60; background:var(--olive); }
.nav{ display:flex; align-items:center; justify-content:space-between; gap:18px;
  max-width:var(--maxw); margin:0 auto; padding:12px 24px; }
.brand{ display:flex; align-items:center; gap:10px; text-decoration:none; }
.brand img{ height:46px; width:auto; display:block; }
.brand-fallback{ font-family:"Poppins",sans-serif; font-weight:700; color:#fff; font-size:1.05rem; line-height:1; }
.brand-fallback span{ display:block; font-size:.62rem; letter-spacing:.18em; color:var(--lime); }

.nav-links{ display:flex; align-items:center; gap:26px; list-style:none; margin:0; padding:0; }
.nav-links a{ text-decoration:none; color:#f2f2ea; font-weight:500; font-size:.98rem; }
.nav-links a:hover, .nav-links a.active{ color:var(--lime); }

.nav-toggle{ display:none; background:none; border:0; cursor:pointer; padding:8px; }
.nav-toggle span{ display:block; width:24px; height:2px; background:#fff; margin:5px 0; }

@media (max-width:900px){
  .nav-toggle{ display:block; }
  .nav-links{ position:absolute; top:100%; left:0; right:0; background:var(--olive);
    flex-direction:column; align-items:flex-start; gap:0; padding:8px 24px 18px; display:none; }
  .nav-links.open{ display:flex; }
  .nav-links li{ width:100%; }
  .nav-links a{ display:block; padding:12px 0; width:100%; border-bottom:1px solid rgba(255,255,255,.12); }
}

/* ---------- Hero (home) ---------- */
.hero{
  position:relative; min-height:560px; display:grid; place-items:center;
  text-align:center; color:#fff; overflow:hidden;
  background:#1c1c1c;
}
.hero-bg{ position:absolute; inset:0; background-size:cover; background-position:center; z-index:0; }
.hero-bg::after{ content:""; position:absolute; inset:0; background:rgba(0,0,0,.34); }
.hero .hero-inner{ position:relative; z-index:2; padding:80px 24px; }
.hero h1{ color:#fff; max-width:16ch; margin:0 auto; text-shadow:0 2px 18px rgba(0,0,0,.45); }

/* ---------- Tri-band ---------- */
.triband{ display:grid; grid-template-columns:repeat(3,1fr); }
.triband a{ text-decoration:none; padding:34px 30px; color:#fff; transition:filter .15s ease; }
.triband a:hover{ filter:brightness(1.06); }
.triband .b1{ background:var(--lime); }
.triband .b2{ background:var(--brown); }
.triband .b3{ background:var(--olive); }
.triband h3{ color:#fff; font-size:1.7rem; margin:0 0 4px; }
.triband p{ margin:0; color:rgba(255,255,255,.92); font-size:.98rem; }
@media (max-width:820px){ .triband{ grid-template-columns:1fr; } }

/* ---------- Intro two-column ---------- */
.intro{ display:grid; grid-template-columns:1fr 1fr; }
.intro .box{ padding:56px 48px; display:flex; gap:22px; align-items:flex-start; }
.intro .box.dark{ background:var(--olive); color:#fff; justify-content:flex-end; }
.intro .box.light{ background:#fff; }
.intro .box img{ height:70px; width:auto; flex:0 0 auto; }
.intro .box p{ margin:0; font-size:.98rem; max-width:34ch; }
.intro .box.dark p{ color:rgba(255,255,255,.9); }
@media (max-width:820px){ .intro{ grid-template-columns:1fr; } .intro .box{ padding:34px 24px; } .intro .box.dark{ justify-content:flex-start; } }

/* ---------- Sections ---------- */
.section{ padding:76px 0; }
.section h2.center{ margin-bottom:36px; }

/* ---------- News cards ---------- */
.news-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; max-width:1000px; margin:0 auto; }
@media (max-width:820px){ .news-grid{ grid-template-columns:1fr; max-width:420px; } }
.news-card{ border:1px solid var(--line); border-radius:4px; overflow:hidden; background:#fff; display:flex; flex-direction:column; }
.news-card img{ width:100%; height:170px; object-fit:cover; display:block; }
.news-card .body{ padding:18px 18px 22px; }
.news-card h3{ font-family:"Poppins",sans-serif; font-weight:600; font-size:1.02rem; color:var(--olive); line-height:1.35; margin:0 0 14px; }
.news-card .meta{ height:8px; background:#eee; border-radius:4px; width:70%; }
.news-more{ text-align:center; margin-top:36px; }

/* ---------- Quote band ---------- */
.quote-band{ background:var(--lime); padding:60px 24px; text-align:center; }
.quote-band blockquote{ font-family:"Poppins",sans-serif; font-style:italic; font-size:clamp(1.2rem,2.4vw,1.7rem);
  color:var(--olive); max-width:60ch; margin:0 auto 10px; line-height:1.4; }
.quote-band cite{ font-style:normal; font-size:.95rem; color:#4c5a1e; }

/* ---------- Join Us ---------- */
.join{ display:grid; grid-template-columns:1fr 1fr; }
.join .left{ background:var(--olive); color:#fff; padding:70px 56px; display:flex; flex-direction:column; justify-content:center; }
.join .left h2{ color:#fff; font-size:clamp(2rem,4vw,3.2rem); margin-bottom:8px; }
.join .left p{ color:rgba(255,255,255,.92); max-width:28ch; margin-bottom:26px; }
.join .right{ position:relative; min-height:360px; background:#2a3012 center/cover; display:grid; place-items:center; text-align:center; }
.join .right .overlay-txt{ position:relative; z-index:2; color:#fff; padding:30px; max-width:44ch; font-size:.98rem; text-shadow:0 1px 10px rgba(0,0,0,.5); }
@media (max-width:820px){ .join{ grid-template-columns:1fr; } .join .left{ padding:44px 24px; } }

/* ---------- Footer ---------- */
.site-footer{ background:#fff; padding:60px 0 0; }
.footer-grid{ display:grid; grid-template-columns:1.3fr 1.1fr .8fr; gap:48px; }
@media (max-width:820px){ .footer-grid{ grid-template-columns:1fr; gap:32px; } }
.footer-grid img.flogo{ height:56px; margin-bottom:14px; }
.footer-grid p, .footer-grid .fcontact{ font-size:.92rem; color:var(--ink-soft); line-height:1.7; }
.footer-grid .fcontact div{ margin-bottom:2px; }
.footer-grid .ein{ color:var(--lime-txt); font-weight:600; }
.footer-grid h4{ color:var(--lime-txt); font-size:1.9rem; font-weight:700; margin:0 0 16px; }
.footer-grid h4.small{ font-size:1.15rem; color:var(--olive); }
.quick a{ display:block; color:var(--ink); text-decoration:none; padding:5px 0; font-size:.98rem; }
.quick a:hover{ color:var(--lime-txt); }
.footer-social{ display:inline-flex; width:34px; height:34px; border-radius:50%; background:var(--olive); color:#fff; align-items:center; justify-content:center; text-decoration:none; margin-top:8px; }
.footer-bar{ background:var(--olive); color:#fff; text-align:center; padding:16px; margin-top:50px; font-size:.85rem; }
.footer-bar a{ color:#fff; }

/* ---------- Forms ---------- */
.nl-form .field{ margin-bottom:14px; }
.nl-form label.inline{ display:flex; gap:8px; align-items:flex-start; font-size:.88rem; color:var(--ink-soft); }
.nl-form input[type=email]{ width:100%; font:inherit; padding:10px 0; border:0; border-bottom:1px solid #bbb; background:transparent; }
.nl-form input[type=email]:focus{ outline:0; border-bottom-color:var(--lime); }
.nl-form input[type=checkbox]{ margin-top:5px; }

.form-card{ background:#fff; border:1px solid var(--line); border-radius:10px; padding:32px; box-shadow:0 12px 34px rgba(64,74,26,.08); }
.field{ margin-bottom:18px; }
.field label{ display:block; font-weight:600; font-size:.95rem; margin-bottom:6px; color:var(--olive); }
.field input, .field textarea, .field select{ width:100%; font:inherit; font-size:1rem; padding:12px 14px; border:1px solid var(--line); border-radius:8px; background:#faf9f4; color:var(--ink); }
.field textarea{ min-height:130px; resize:vertical; }
.field input:focus,.field textarea:focus,.field select:focus{ outline:3px solid rgba(163,194,56,.3); border-color:var(--lime); }
.hp{ position:absolute; left:-9999px; }

.info-list{ list-style:none; padding:0; margin:0; }
.info-list li{ display:flex; gap:12px; padding:13px 0; border-bottom:1px solid var(--line); }
.info-list li:last-child{ border-bottom:0; }
.info-list .k{ font-weight:600; color:var(--olive); min-width:130px; }
.info-list a{ color:var(--lime-txt); text-decoration:none; }

/* ---------- Sub-page hero (about/donate/contact) ---------- */
.subhero{ background:var(--olive); color:#fff; padding:70px 0; text-align:center; }
.subhero h1{ color:#fff; margin:0 auto; max-width:18ch; }
.subhero p{ color:rgba(255,255,255,.9); max-width:52ch; margin:10px auto 0; }

/* ---------- Utility ---------- */
.eyebrow{ text-transform:uppercase; letter-spacing:.14em; font-size:.78rem; font-weight:700; color:var(--lime-txt); display:block; margin-bottom:.8rem; }
.section-tint{ background:#f7f7f1; }
.grid-2{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.grid-3{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
@media (max-width:820px){ .grid-2,.grid-3{ grid-template-columns:1fr; } }
.card{ background:#fff; border:1px solid var(--line); border-radius:10px; padding:28px; }
.card h3{ margin-bottom:.3em; }
.card p{ color:var(--ink-soft); margin:0; }
.note{ font-size:.85rem; color:var(--ink-soft); }
.imgph{ border:2px dashed var(--lime); background:repeating-linear-gradient(45deg,rgba(163,194,56,.08),rgba(163,194,56,.08) 12px,transparent 12px,transparent 24px);
  border-radius:8px; min-height:220px; display:grid; place-items:center; text-align:center; color:#6f7d3a; padding:20px; font-size:.9rem; }
.imgph strong{ display:block; font-family:"Poppins",sans-serif; margin-bottom:4px; color:var(--olive); }
.skip-link{ position:absolute; left:-9999px; }
.skip-link:focus{ left:16px; top:16px; background:var(--yellow); color:var(--olive); padding:10px 16px; border-radius:8px; z-index:100; }

/* ---------- About: photo mosaic ---------- */
.about-gallery{ display:grid; grid-template-columns:repeat(4,1fr); grid-auto-rows:190px; grid-auto-flow:dense; gap:8px; }
.about-gallery .tile{ overflow:hidden; background:#e9e9df; }
.about-gallery .tile img{ width:100%; height:100%; object-fit:cover; display:block; }
.about-gallery .t-wide{ grid-column:span 2; }
.about-gallery .t-tall{ grid-row:span 2; }
.about-gallery .ph{ border:2px dashed var(--lime); background:repeating-linear-gradient(45deg,rgba(163,194,56,.10),rgba(163,194,56,.10) 12px,transparent 12px,transparent 24px);
  display:grid; place-items:center; text-align:center; color:#6f7d3a; font-size:.8rem; padding:12px; }
.about-gallery .ph strong{ display:block; font-family:"Poppins",sans-serif; color:var(--olive); font-size:.85rem; }
@media (max-width:820px){ .about-gallery{ grid-template-columns:repeat(2,1fr); grid-auto-rows:150px; } .about-gallery .t-wide{ grid-column:span 2; } .about-gallery .t-tall{ grid-row:span 1; } }

/* ---------- Feature split (mission / vision) ---------- */
.feature{ display:grid; grid-template-columns:1fr 1fr; }
.feature .txt{ padding:64px 56px; display:flex; flex-direction:column; justify-content:center; text-align:center; }
.feature .txt h2{ margin-bottom:18px; }
.feature .txt p{ color:var(--ink-soft); max-width:42ch; margin:0 auto; }
.feature .pic{ min-height:440px; background-size:cover; background-position:center; background-color:#dfe3d0; }
.feature .pic.ph{ display:grid; place-items:center; text-align:center; color:#6f7d3a; border:2px dashed var(--lime);
  background:repeating-linear-gradient(45deg,rgba(163,194,56,.10),rgba(163,194,56,.10) 14px,transparent 14px,transparent 28px); }
.feature .pic.ph strong{ display:block; font-family:"Poppins",sans-serif; color:var(--olive); }
@media (max-width:820px){ .feature{ grid-template-columns:1fr; } .feature .txt{ padding:40px 24px; } .feature .pic{ min-height:300px; } .feature.rev .pic{ order:-1; } }

/* ---------- Support band ---------- */
.support-band{ background:var(--olive); color:#fff; text-align:center; padding:52px 24px; }
.support-band h2{ color:#fff; font-family:"Poppins",sans-serif; font-weight:500; font-size:clamp(1.4rem,3vw,2rem); margin-bottom:20px; }
.support-band .btn-white{ background:#fff; color:var(--olive); }
.support-band .btn-white:hover{ background:#f0f0e6; }

/* ---------- Who we are ---------- */
.whowe{ max-width:800px; margin:0 auto; text-align:center; }
.whowe p{ color:var(--ink-soft); }

/* ---------- Board members ---------- */
.board-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:34px; }
@media (max-width:900px){ .board-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:600px){ .board-grid{ grid-template-columns:1fr; max-width:340px; margin:0 auto; } }
.bcard{ text-align:center; }
.bcard .photo{ width:100%; aspect-ratio:1/1; overflow:hidden; border-radius:10px; background:#e9e9df; margin-bottom:16px; box-shadow:0 10px 26px rgba(64,74,26,.12); }
.bcard .photo img{ width:100%; height:100%; object-fit:cover; display:block; }
.bcard h3{ margin:0 0 2px; font-size:1.25rem; }
.bcard .role{ color:var(--lime-txt); font-weight:600; font-size:.95rem; margin:0 0 10px; }
.bcard .bio{ color:var(--ink-soft); font-size:.92rem; margin:0; text-align:left; }
.bcard .bio.center{ text-align:center; }
.needname{ color:#b25; font-weight:600; }

/* ---------- Board page (list layout) ---------- */
.subhero.lime{ background:var(--lime); text-align:left; }
.subhero.lime .wrap{ display:flex; align-items:baseline; gap:40px; flex-wrap:wrap; }
.subhero.lime h1{ color:#fff; margin:0; }
.subhero.lime p{ color:rgba(255,255,255,.95); margin:0; max-width:34ch; }
.board-label{ display:inline-block; background:var(--olive); color:#fff; font-family:"Poppins",sans-serif; font-weight:600; padding:11px 24px; margin-bottom:36px; font-size:1.05rem; border-top:3px solid var(--lime); }
.board-list{ max-width:1000px; margin:0 auto; }
.bmember{ display:grid; grid-template-columns:300px 1fr; gap:36px; margin-bottom:54px; align-items:start; }
@media (max-width:760px){ .bmember{ grid-template-columns:1fr; gap:16px; } .bmember .photo{ max-width:300px; } }
.bmember .photo img{ width:100%; display:block; border-radius:4px; box-shadow:0 8px 22px rgba(64,74,26,.14); }
.bmember .name{ font-family:"Poppins",sans-serif; font-size:1.5rem; font-weight:700; margin:0 0 2px; color:var(--lime-txt); letter-spacing:-0.01em; }
.bmember .title{ font-weight:700; color:var(--olive); margin:0 0 10px; }
.bmember .subtitle{ font-weight:700; color:var(--ink); margin:0 0 10px; }
.bmember .bio{ color:var(--ink-soft); font-size:.95rem; margin:0 0 12px; }
.bmember.lead .name{ color:var(--olive); font-size:1.95rem; }
.bmember.lead .title{ color:var(--lime-txt); }

/* ---------- Full-width image band ---------- */
.fullband{ width:100%; min-height:460px; background-size:cover; background-position:center; }
.fullband.ph{ display:grid; place-items:center; text-align:center; color:#6f7d3a; border-top:2px dashed var(--lime); border-bottom:2px dashed var(--lime);
  background:repeating-linear-gradient(45deg,rgba(163,194,56,.10),rgba(163,194,56,.10) 16px,transparent 16px,transparent 32px); }
.fullband.ph strong{ display:block; font-family:"Poppins",sans-serif; color:var(--olive); font-size:1.05rem; }

/* ---------- Our Work pages ---------- */
.work-intro{ text-align:center; max-width:720px; margin:0 auto; padding:56px 24px; }
.work-intro p{ color:var(--ink-soft); margin-bottom:1.1em; }

.work-content h2{ font-size:2.1rem; margin:0 0 2px; }
.work-content .sub{ font-family:"Poppins",sans-serif; font-style:italic; color:#6a6a6a; font-size:1.15rem; margin:0 0 14px; }
.work-content .divider{ width:60px; height:2px; background:#b7b7b7; border:0; margin:0 0 22px; }
.work-content .lead{ color:var(--ink-soft); margin-bottom:18px; }
.work-content h4{ font-family:"Poppins",sans-serif; color:var(--lime-txt); font-size:1.12rem; margin:0 0 8px; }
.work-content ul{ margin:0 0 18px; padding-left:20px; color:var(--ink-soft); }
.work-content ul li{ margin-bottom:8px; }
.work-content .why{ color:var(--ink-soft); margin:0; }

/* variant: photo split (Water Access) */
.worksec.split{ display:grid; grid-template-columns:1fr 1fr; align-items:center; }
.worksec.split .pic{ min-height:660px; background-size:cover; background-position:center; background-color:#d9d5c8; }
.worksec.split .pic.ph{ display:grid; place-items:center; text-align:center; color:#6f7d3a; border-right:2px dashed var(--lime);
  background:repeating-linear-gradient(45deg,rgba(163,194,56,.10),rgba(163,194,56,.10) 16px,transparent 16px,transparent 32px); }
.worksec.split .pic.ph strong{ display:block; font-family:"Poppins",sans-serif; color:var(--olive); }
.worksec.split .work-content{ padding:60px 56px; max-width:560px; }

/* variant: plain colored panel (Water for Life, Water for Learning) */
.worksec.plain{ padding:70px 24px; }
.worksec.plain .work-content{ max-width:640px; margin:0 auto; }
.worksec.gray{ background:#d9d9d9; }
.worksec.lime{ background:var(--lime); }
.worksec.lime .work-content h4{ color:var(--olive); }
.worksec.lime .work-content .sub{ color:#4c5a1e; }

/* variant: photo background with white card (Water for Energy) */
.worksec.overlay{ position:relative; min-height:700px; background-size:cover; background-position:center; display:flex; align-items:center; }
.worksec.overlay .work-content{ background:#fff; padding:44px 48px; margin-left:7%; max-width:520px; box-shadow:0 18px 50px rgba(0,0,0,.25); }
@media (max-width:820px){
  .worksec.split{ grid-template-columns:1fr; }
  .worksec.split .pic{ min-height:320px; border-right:0; }
  .worksec.split .work-content{ padding:40px 24px; }
  .worksec.overlay{ min-height:auto; }
  .worksec.overlay .work-content{ margin:40px 16px; max-width:none; }
}

/* closing "mother program" band */
.mother-band{ padding:56px 24px; text-align:center; }
.mother-band p{ max-width:760px; margin:0 auto; color:#3f3f3f; font-size:1.08rem; }
.mother-band.gray{ background:#d9d9d9; }
.mother-band.lime{ background:var(--lime); }

/* ---------- Our Impact list ---------- */
.impact-list{ max-width:720px; margin:0 auto; }
.impact-list > p{ color:var(--ink-soft); margin-bottom:14px; }
.impact-list ul{ padding-left:20px; margin:0; }
.impact-list li{ color:var(--ink-soft); margin-bottom:12px; }
.impact-list li strong{ color:var(--olive); }

/* ---------- Get Involved / Give Today ---------- */
.take-action{ max-width:720px; margin:0 auto; }
.take-action h2{ text-align:center; }
.take-action > p{ color:var(--ink-soft); }
.take-action ul{ padding-left:20px; color:var(--ink-soft); }
.take-action li{ margin-bottom:8px; }

.gi-change{ text-align:center; padding:56px 24px 10px; }
.gi-change p{ color:var(--ink-soft); margin:0; }

.gi-cols{ display:grid; grid-template-columns:1fr 1fr; }
@media (max-width:820px){ .gi-cols{ grid-template-columns:1fr; } }
.gi-offices{ background:var(--olive); color:#fff; padding:70px 48px; }
.gi-offices .office{ text-align:center; margin-bottom:44px; }
.gi-offices .ico{ display:inline-grid; place-items:center; width:48px; height:48px; border:2px solid rgba(255,255,255,.6); border-radius:50%; margin-bottom:12px; }
.gi-offices h3{ color:#fff; margin:0 0 8px; }
.gi-offices p{ color:rgba(255,255,255,.9); margin:2px 0; font-size:.95rem; }

.gi-give{ background:#cfe0f5; padding:56px 46px; }
.gi-give h2{ color:#1f3a2a; margin-bottom:10px; }
.gi-give .desc{ font-size:.9rem; color:#3a4a55; margin-bottom:20px; }
.gi-give .lbl{ font-size:.82rem; color:#556; text-transform:none; margin:16px 0 7px; font-weight:600; }
.freq{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.amts{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:4px; }
.opt{ padding:12px; border:1px solid #a9b6c4; background:#fff; border-radius:6px; cursor:pointer; font:inherit; font-size:.95rem; color:#233; }
.opt:hover{ border-color:#5a7; }
.freq .opt.active{ background:#c7d6ea; border-color:#7d93ad; }
.amts .opt.active{ background:#c9c3e6; border-color:#8a86bd; }
.give-note{ font-size:.82rem; color:#4a5a63; margin:12px 0; }
.fee-row{ display:flex; gap:8px; align-items:flex-start; font-size:.9rem; color:#233; margin:12px 0 16px; }
.btn-give{ width:100%; background:var(--green-btn); color:#fff; padding:15px; border:0; border-radius:6px; font:inherit; font-weight:700; font-family:"Poppins",sans-serif; font-size:1.05rem; cursor:pointer; }
.btn-give:hover{ background:var(--green-btn2); }
.currency-row{ display:flex; gap:12px; align-items:center; margin-top:14px; font-size:.85rem; color:#233; }
.currency-row select{ padding:8px 10px; border:1px solid #a9b6c4; border-radius:6px; background:#fff; font:inherit; }

.gi-closing{ text-align:center; padding:46px 24px; }
.gi-closing p{ color:var(--lime-txt); max-width:780px; margin:0 auto; font-size:1.05rem; }

/* ---------- Contact page ---------- */
.contact-cols{ display:grid; grid-template-columns:1fr 1fr; }
@media (max-width:900px){ .contact-cols{ grid-template-columns:1fr; } }
.contact-left{ padding:56px 52px; }
.contact-left h2{ text-align:center; margin-bottom:24px; }
.contact-info{ text-align:center; color:#333; font-size:.95rem; margin-bottom:34px; line-height:1.8; }
.contact-info a{ color:var(--lime-txt); text-decoration:none; }
.contact-info .gap{ display:block; height:14px; }
.contact-photo{ min-height:520px; background-size:cover; background-position:center; background-color:#d9d5c8; }
.contact-photo.ph{ display:grid; place-items:center; text-align:center; color:#6f7d3a; border-left:2px dashed var(--lime);
  background:repeating-linear-gradient(45deg,rgba(163,194,56,.10),rgba(163,194,56,.10) 16px,transparent 16px,transparent 32px); }
.contact-photo.ph strong{ display:block; font-family:"Poppins",sans-serif; color:var(--olive); }

.cform .row2{ display:grid; grid-template-columns:1fr 1fr; gap:22px; }
@media (max-width:520px){ .cform .row2{ grid-template-columns:1fr; } }
.cform .fld{ margin-bottom:24px; }
.cform label{ display:block; font-size:.9rem; color:#333; margin-bottom:6px; }
.cform input, .cform textarea{ width:100%; border:0; border-bottom:1px solid #9a9a9a; background:transparent; padding:8px 0; font:inherit; color:var(--ink); }
.cform input:focus, .cform textarea:focus{ outline:0; border-bottom-color:var(--lime); }
.cform textarea{ min-height:90px; resize:vertical; }
.cform .send-wrap{ text-align:center; margin-top:10px; }
.cform .send{ background:transparent; border:0; font:inherit; font-size:1rem; color:var(--ink); cursor:pointer; padding:8px 26px; }
.cform .send:hover{ color:var(--lime-txt); }

.map-band iframe{ width:100%; height:430px; border:0; display:block; }

/* ---------- Dropdown navigation ---------- */
.nav-links .has-drop{ position:relative; }
.nav-links .has-drop > a::after{ content:" \25BE"; font-size:.7em; opacity:.8; }
.nav-links .dropdown{ list-style:none; margin:0; padding:6px 0; position:absolute; top:100%; left:0;
  min-width:230px; background:var(--olive); border-top:3px solid var(--lime); box-shadow:0 14px 34px rgba(0,0,0,.25);
  display:none; flex-direction:column; z-index:70; }
.nav-links .has-drop:hover > .dropdown, .nav-links .has-drop:focus-within > .dropdown{ display:flex; }
.nav-links .dropdown li{ width:100%; }
.nav-links .dropdown a{ display:block; padding:10px 18px; white-space:nowrap; color:#f2f2ea; font-weight:500; font-size:.94rem; border:0; }
.nav-links .dropdown a:hover{ color:var(--lime); background:rgba(255,255,255,.06); }
@media (max-width:900px){
  .nav-links .has-drop{ width:100%; }
  .nav-links .dropdown{ position:static; display:flex; background:transparent; border-top:0; box-shadow:none; padding:0 0 6px 16px; }
  .nav-links .dropdown a{ padding:9px 0; border-bottom:1px solid rgba(255,255,255,.08); }
}

/* ---------- Real logo ---------- */
.brand-logo{ height:48px; width:auto; display:block; }
.site-footer .flogo{ border-radius:6px; }
.intro .box.light img{ border-radius:6px; }
