:root{
  --bg:#f4f7fb;
  --accent:#2b6cb0;
  --text:#243142;
}
*{box-sizing:border-box}
body{font-family:system-ui,Segoe UI,Roboto,'Helvetica Neue',Arial; margin:0;color:var(--text);background:var(--bg)}
.hero{background-color:#0f1a13;height:25vh;min-height:220px;text-align:center;color:#fff;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;background:url('/images/take_action.png') center/cover no-repeat;opacity:.85;}
.hero .inner{position:relative;z-index:1;max-width:900px;margin:0 auto}
h1{margin:0;font-size:2.25rem}
.tag{color:rgba(255,255,255,.85);margin-top:.5rem}
.cta{display:inline-block;margin-top:1rem;padding:.8rem 1.2rem;background:rgba(255,255,255,.95);color:#1f2937;border-radius:8px;text-decoration:none;font-weight:600}
.container{max-width:900px;margin:2rem auto;padding:0 1rem}
.impact-section{margin-top:2.5rem}
.impact-section h3{margin-bottom:1rem;font-size:1.5rem}
.image-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}
.image-grid figure{margin:0;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 16px 35px rgba(15,23,42,.08);}
.image-grid img{display:block;width:100%;height:auto}
.image-grid figcaption{padding:1rem;font-size:.95rem;color:#475569;line-height:1.5}
.footer{text-align:center;min-height:40vh;display:flex;align-items:center;justify-content:center;padding:0 1rem;color:#fff;background:url('/images/trees_mountains.png') center/cover no-repeat;position:relative}
.footer::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,26,19,.75),rgba(15,26,19,.9));}
.footer > *{position:relative;z-index:1}

/* Contact Form Styles */
.contact-section{margin-top:2.5rem;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 15px rgba(43,108,176,.08)}
.contact-section h3{margin-top:0;font-size:1.5rem;color:var(--text)}
.contact-form{display:grid;gap:1.2rem}
.form-group{display:flex;flex-direction:column}
.form-group label{font-weight:600;margin-bottom:.5rem;color:var(--text)}
.form-group input,.form-group textarea{padding:.8rem;border:2px solid #e0e7ff;border-radius:6px;font-family:inherit;font-size:1rem;color:var(--text);transition:all .3s ease}
.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(43,108,176,.1)}
.submit-btn{padding:.8rem 1.5rem;background:var(--accent);color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:background .3s ease}
.submit-btn:hover{background:#1e4d7b}
.submit-btn:disabled{background:#9ca3af;cursor:not-allowed}
.form-message{margin-top:1rem;padding:1rem;border-radius:6px;text-align:center;font-weight:500;display:none}
.form-message.success{background:#d1fae5;color:#065f46;display:block}
.form-message.error{background:#fee2e2;color:#991b1b;display:block}

@media (max-width: 768px) {
  .hero{padding:4rem 0}
  h1{font-size:2rem}
}

