*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family: Arial, sans-serif;
}

body{
    background:#f2f2f2;
}

/* ================= NAVBAR ================= */
.nav-container{
    position:fixed;
    top:20px;
    left:50%;
    transform:translateX(-50%);
    width:90%;
    max-width:1200px;
    z-index:1000;
}

.nav-wrapper{
    background:#ffffff;
    border-radius:50px;
    box-shadow:0 8px 25px rgba(0,0,0,0.08);
    padding:12px 30px;
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.logo{
    display:flex;
    align-items:center;
    gap:10px;
    font-weight:bold;
    font-size:18px;
    color:#178f2e;
}

.logo img{
    width:40px;
    height:40px;
    border-radius:50%;
}

.nav-links{
    display:flex;
    gap:35px;
}

.nav-links a{
    text-decoration:none;
    color:#333;
    font-weight:500;
    position:relative;
    transition:0.3s;
}

.nav-links a:hover{
    color:#178f2e;
}

.nav-links a::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-5px;
    width:0%;
    height:2px;
    background:#178f2e;
    transition:0.3s;
}

.nav-links a:hover::after{
    width:100%;
}

.buttons12{
    background:#fdba00;
    color:#ffaf2e;
    padding:8px 20px;
   
    text-decoration:none;
    font-weight:bold;
    display:flex;
    
    gap:8px;
    transition:0.3s;
}
.buttons1 a{
    padding:0.70rem 1.5rem;
    border-radius:50px;
    border: 2px solid #f39c12 ;
    text-decoration:none;
    font-weight:bold;
    transition:0.3s;
    overflow: hidden;
    display:inline-flex

}

.buttons1 a:hover{
    background:#fdba00;
    transform:translateY(-2px);
    box-shadow:0 6px 15px rgba(0,0,0,0.15);
}

/* ================= HERO ================= */
.hero{
    background:url(../images/bg21.jpeg) center/cover no-repeat;
    height:100vh;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    padding:2rem;
    color:rgb(5, 43, 0);
    margin-top:100px;
}

.hero h1{
    font-size:2.5rem;
    margin-bottom:1rem;
}

.hero p{
    max-width:600px;
    margin-bottom:2rem;
}

.buttons{
    display:flex;
    gap:1rem;
}

.buttons a{
    padding:0.8rem 1.5rem;
    border-radius:5px;
    text-decoration:none;
    font-weight:bold;
    transition:0.3s;
}

.member{
    background:#28a745;
    color:white;
}

.member:hover{
    background:#1e7e34;
}

.donate{
    background:#fdba00;
    color:black;
}

.donate:hover{
    background:#ffd104;
}


/* ================= STATS ================= */
.stats-section{
    background:#178f2e;
    padding:80px 20px;
}

.stats-container{
    max-width:1100px;
    margin:auto;
    display:flex;
    justify-content:space-between;
    text-align:center;
    flex-wrap:wrap;
}

.stat-box{
    flex:5;
    min: width 350px;
    color:rgb(255, 255, 255);
}

.icon{
    font-size:80px;
    margin-bottom:10px;
}

.counter{
    font-size:48px;
    font-weight:bold;
}

/* ================= ABOUT ================= */
.about-section{
    max-width:1200px;
    margin:80px auto;
    padding:40px;
    display:flex;
    align-items:center;
    gap:50px;
}

.about-image{
    flex:1;
}

.about-image img{
    width:100%;
    border-radius:12px;
}

.about-content{
    flex:1;
}

.about-content h1{
    font-size:40px;
    color:#178f2e;
    margin-bottom:20px;
}

.about-content p{
    line-height:1.7;
    margin-bottom:18px;
}

.highlight{
    color:#178f2e;
    font-weight:bold;
}

/* ================= RESPONSIVE ================= */
@media(max-width:900px){
    .about-section{
        flex-direction:column;
        text-align:center;
    }

    .stats-container{
        flex-direction:column;
        gap:40px;
    }

    .nav-links{
        display:none;
    }
}
/* ================= EVENTS ================= */
/* ================= EVENTS ================= */

.events-section{
    max-width:1200px;
    margin:80px auto;
    padding:20px;
}

.events-title{
    text-align:center;
    margin-bottom:50px;
}

.events-title h2{
    font-size:36px;
    color:#178f2e;
}

.events-container{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
    gap:30px;
}

.event-card{
    background:white;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 10px 25px rgba(0,0,0,0.08);
    transition:0.4s;
    cursor:pointer;
}

.event-card:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 40px rgba(0,0,0,0.15);
}

.event-card img{
    width:100%;
    height:320px;
    object-fit:cover;
}

.event-content{
    padding:20px;
}

.event-date{
    color:#178f2e;
    font-weight:bold;
    margin-bottom:5px;
}

.event-content h3{
    margin-bottom:8px;
}

.event-content p{
    font-size:14px;
    color:#555;
}

/* ================= EVENT POPUP ================= */

.event-modal{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.8);
    display:none;
    justify-content:center;
    align-items:center;
    z-index:2000;
}

.event-modal img{
    max-width:90%;
    max-height:90%;
    border-radius:10px;
}

.event-modal span{
    position:absolute;
    top:30px;
    right:40px;
    font-size:40px;
    color:white;
    cursor:pointer;
}

/* ================= RESPONSIVE ================= */

@media(max-width:768px){

.hero h1{
font-size:32px;
}

.about-section{
flex-direction:column;
text-align:center;
}

.about-content h1{
font-size:32px;
}

.event-card img{
height:260px;
}

}

@media(max-width:500px){

.hero h1{
font-size:26px;
}

.buttons{
flex-direction:column;
}

}
/* ================= PROGRAMS ================= */

.programs-section{
    max-width:1200px;
    margin:80px auto;
    padding:20px;
}

.programs-container{
    display:flex;
    gap:40px;
    flex-wrap:wrap;
}

.program-card{
    flex:1;
    min-width:300px;
    background:white;
    padding:30px;
    border-radius:12px;
    box-shadow:0 10px 25px rgba(0,0,0,0.08);
    display:flex;
    align-items:flex-start;
    gap:20px;
    transition:0.3s;
}

.program-card:hover{
    transform:translateY(-5px);
    box-shadow:0 15px 30px rgba(0,0,0,0.12);
}

.program-icon{
    font-size:36px;
    color:#178f2e;
}

.program-card h3{
    margin-bottom:8px;
    color:#000000;
    text-decoration: underline;
    text-decoration-color: #cfe3d3;
    border-bottom: #cfe3d3;

}

.program-card p{
    color:#555;
}
/* ================= JOIN COMMUNITY ================= */

.join-section{
    background:#cfe3d3;
    padding:90px 20px;
    text-align:center;
}

.join-container{
    max-width:700px;
    margin:auto;
}

.join-icon{
    font-size:60px;
    color:#178f2e;
    margin-bottom:15px;
}

.join-section h2{
    font-size:40px;
    margin-bottom:15px;
}

.join-section p{
    font-size:18px;
    margin-bottom:35px;
}

.join-btn{
    display:inline-block;
    padding:14px 35px;
    background:#178f2e;
    color:white;
    text-decoration:none;
    border-radius:8px;
    font-weight:bold;
    transition:0.3s;
}

.join-btn:hover{
    background:#0f6f23;
}


/* ================= TESTIMONIALS ================= */

.testimonials{
    padding:80px 20px;
    background:#f6f6f6;
}

.testimonial-container{
    max-width:1200px;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:30px;
}

.testimonial-card{
    background:white;
    padding:25px;
    border-radius:12px;
    box-shadow:0 5px 20px rgba(0,0,0,0.08);
    transition:0.3s;
}

.testimonial-card:hover{
    transform:translateY(-5px);
}

.testimonial-header{
    display:flex;
    align-items:center;
    gap:15px;
    margin-bottom:15px;
}

.testimonial-header img{
    width:55px;
    height:55px;
    border-radius:50%;
    object-fit:cover;
}

.testimonial-header h4{
    font-size:18px;
}

.testimonial-header span{
    font-size:14px;
    color:#666;
}

.year{
    font-size:13px;
    color:#178f2e;
}

.testimonial-text{
    font-style:italic;
    line-height:1.6;
    color:#333;
}
/* Support Programs Styles */
.support-programs {
  background-color: #005a03; /* green background */
  color: #ffffff;
  text-align: center;
  padding: 40px 20px;
  font-family: Arial, sans-serif;
}

.support-header h2 {
  font-size: 2rem;
  margin-bottom: 10px;
  color: #ffffff;
}

.support-header p {
  font-size: 1rem;
  margin-bottom: 30px;
  color: #cfe3d3;
}

.support-options {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
  color: #f6f6f6;
}

.support-box {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 8px;
  padding: 20px;
  width: 250px;
  transition: transform 0.3s ease;
}

.support-box:hover {
  transform: translateY(-5px);
}

.support-box .icon {
  font-size: 2.5rem;
  margin-bottom: 10px;
}

.support-box h3 {
  font-size: 1.3rem;
  margin-bottom: 8px;
  color: #f6f6f6;
  text-decoration: underline;
  
}

.support-box p {
  font-size: 0.95rem;
  line-height: 1.4;
}
/* General Section Styling */
section {
  padding: 40px 20px;
  font-family: Arial, sans-serif;
  margin-bottom: 40px;
}

/* Resources */
.resources {
  background: #f9f9f9;
  border-radius: 8px;
}
.resource-item {
  display: flex;
  align-items: center;
  background: #fff;
  border: 1px solid #ddd;
  padding: 15px;
  border-radius: 6px;
  margin-top: 15px;
}
.doc-icon {
  font-size: 2rem;
  margin-right: 15px;
}
.download-btn {
  margin-left: auto;
  background: #2f7d32;
  color: #fff;
  padding: 8px 12px;
  border-radius: 4px;
  text-decoration: none;
}

/* Sponsors */
.sponsors {
  background: #eef7ee;
  border-radius: 8px;
  text-align: center;
}
.sponsor-cta .cta-btn {
  display: inline-block;
  margin-top: 20px;
  background: #2f7d32;
  color: #fff;
  padding: 10px 16px;
  border-radius: 4px;
  text-decoration: none;
}

/* FAQ Accordion */
.faq-section {
    background-color: #ffffff;
    border-color: #2f7d32;
}
.faq-item {
  border-bottom: 3px solid #b2ecca;
}
.faq-question {
  width: 100%;
  text-align: left;
  background: none;
  border: style;
  padding: 15px;
  font-size: 1rem;
  cursor: pointer;
}
.faq-answer {
  display: none;
  padding: 0 15px 15px;
  font-size: 0.95rem;
}
.faq-item.active .faq-answer {
  display: block;
}
/* Contact Section */
.contact {
    background-color: #d9f1da;
}

.contact-container {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  justify-content: overflow;
}

.contact-info {
  flex: 1;
  min-width: 250px;
}
.contact-form {
  flex: 1;
  min-width: 300px;
  display: flex;
  flex-direction: column;
}
.contact-form input,
.contact-form textarea {
  margin-bottom: 15px;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 6px;
  font-size: 1rem;
}
.contact-form input:focus,
.contact-form textarea:focus {
  border-color: #2f7d32;
  outline: none;
}
.social-icons a {
  margin-right: 10px;
  font-size: 1.5rem;
  color: #2f7d32;
  transition: transform 0.3s ease;
}
.social-icons a:hover {
  transform: scale(1.2);
}

/* Footer */
.footer {
  background: #006d04;
  color: #fff;
  padding: 40px 20px;
}
.footer-container {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  justify-content: space-between;
}
.footer-col h3 {
  margin-bottom: 10px;
}
.footer-col ul {
  list-style: none;
  padding: 0;
}
.footer-col ul li {
  margin-bottom: 8px;
}
.footer-col ul li a {
  color: #fff;
  text-decoration: none;
  transition: color 0.3s ease;
}
.footer-col ul li a:hover {
  color: #ddd;
}
.footer-bottom {
  text-align: center;
  color: #b2ecca;
  margin-top: 30px;
  font-size: 0.9rem;
}
body {
  opacity: 0;
  animation: fadeIn 1s forwards;
}

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
html {
  scroll-behavior: smooth;
}