.ngo-impact-section {
        width: 100%;
        padding: 30px 6%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 60px;
        flex-wrap: wrap;
        overflow: hidden;
        position: relative;

        background: linear-gradient(135deg, #f8fcff, #ffffff, #eef7ff);
      }

      /* =========================================
            LEFT CONTENT
========================================= */

      .ngo-impact-content {
        flex: 1 1 520px;
        position: relative;
        z-index: 2;
      }

      .ngo-badge {
        display: inline-block;
        padding: 10px 18px;
        border-radius: 40px;

        background: rgba(14, 165, 233, 0.12);

        color: #0284c7;
        font-size: 13px;
        font-weight: 700;
        margin-bottom: 18px;
      }

      .ngo-impact-content h2 {
        font-size: clamp(2rem, 3vw, 3rem);
        line-height: 1.2;
        color: #0f172a;
        margin-bottom: 18px;
        font-weight: 800;
      }

      .ngo-impact-content p {
        max-width: 620px;
        color: #64748b;
        font-size: 1rem;
        line-height: 1.8;
      }

      /* =========================================
            COUNTER WRAPPER
========================================= */

      .ngo-counter-wrapper {
        width: 100%;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
        margin-top: 35px;
      }

      /* =========================================
            COUNTER BOX
========================================= */

      .ngo-counter-box {
        padding: 28px 18px;
        border-radius: 24px;
        text-align: center;

        background: rgba(255, 255, 255, 0.9);

        backdrop-filter: blur(12px);

        border: 1px solid rgba(14, 165, 233, 0.08);

        box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);

        transition: 0.35s ease;
      }

      .ngo-counter-box:hover {
        transform: translateY(-6px);
      }

      .ngo-counter-box h3 {
        font-size: 2.3rem;
        color: #0284c7;
        font-weight: 800;
        margin-bottom: 10px;
      }

      .ngo-counter-box h3::after {
        content: "+";
      }

      .ngo-counter-box p {
        margin: 0;
        font-size: 15px;
        font-weight: 600;
        color: #475569;
        line-height: 1.5;
      }

      /* =========================================
                MAP
========================================= */

      .ngo-map-area {
        flex: 1 1 420px;
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
      }

      .ngo-map-area img {
        width: 100%;
        max-width: 500px;
        object-fit: contain;
        position: relative;
        z-index: 2;

        animation: mapFloat 5s ease-in-out infinite;
      }

      /* =========================================
            BACKGROUND SHAPES
========================================= */

      .shape {
        position: absolute;
        border-radius: 50%;
        filter: blur(60px);
        opacity: 0.4;
      }

      .shape1 {
        width: 180px;
        height: 180px;
        background: #38bdf8;
        top: 5%;
        left: 5%;
      }

      .shape2 {
        width: 140px;
        height: 140px;
        background: #0ea5e9;
        bottom: 5%;
        right: 10%;
      }

      /* =========================================
                ANIMATION
========================================= */

      @keyframes mapFloat {
        0% {
          transform: translateY(0px);
        }

        50% {
          transform: translateY(-12px);
        }

        100% {
          transform: translateY(0px);
        }
      }

      /* =========================================
                TABLET
========================================= */

      @media (max-width: 950px) {
        .ngo-impact-section {
          padding: 60px 5%;
          gap: 10px;
        }

        .ngo-impact-content {
          text-align: center;
          order: 2;
        }

        .ngo-map-area {
          order: 1;
        }

        .ngo-badge {
          margin: auto auto 18px;
        }
      }

      /* =========================================
                MOBILE
========================================= */

      @media (max-width: 650px) {
        .ngo-impact-section {
          padding: 20px 18px;
        }

        .ngo-impact-content h2 {
          font-size: 2rem;
        }

        .ngo-impact-content p {
          font-size: 15px;
        }

        /* IMPORTANT FIX */
        .ngo-counter-wrapper {
          grid-template-columns: repeat(3, 1fr);
          gap: 12px;
        }

        .ngo-counter-box {
          padding: 18px 10px;
          border-radius: 18px;
        }

        .ngo-counter-box h3 {
          font-size: 1.5rem;
          margin-bottom: 6px;
        }

        .ngo-counter-box p {
          font-size: 12px;
          line-height: 1.4;
        }
      }
      /*  */

/* DONATION SUPPORT SECTION */
.support-section{
  width:100%;
  padding:25px 6%;
  display:grid;
  grid-template-columns:
  repeat(auto-fit,minmax(320px,1fr));
  gap:35px;
  background:
  linear-gradient(
    135deg,
    #f4fbff,
    #ffffff,
    #e0f7ff
  );
  position:relative;
  overflow:hidden;
}
/* =========================================
        SUPPORT CARD
========================================= */
.support-card{
  position:relative;
  overflow:hidden;
  border-radius:32px;
  min-height:420px;
  display:flex;
  align-items:flex-end;
  box-shadow:
  0 20px 40px rgba(15,23,42,0.08);
  transition:0.4s ease;
}
.support-card:hover{
  transform:
  translateY(-8px);
}
/* =========================================
            IMAGE
========================================= */
.support-card img{
  position:absolute;
  width:100%;
  height:100%;
  object-fit:cover;
  inset:0;
  transition:0.5s ease;
}
.support-card:hover img{
  transform:scale(1.06);
}
/* =========================================
            OVERLAY
========================================= */
.support-overlay{
  position:absolute;
  inset:0;
  background:
  linear-gradient(
    to top,
    rgba(2,132,199,0.75),
    rgba(255,255,255,0.05)
  );
  z-index:1;
}
/* =========================================
            CONTENT
========================================= */
.support-content{
  position:relative;
  z-index:2;
  width:100%;
  padding:35px;
}
.support-content h3{
  color:#ffffff;
  font-size:clamp(1.7rem,2.5vw,2.5rem);
  line-height:1.3;
  margin-bottom:20px;
  font-weight:800;
  max-width:320px;
}
/* =========================================
            BUTTON
========================================= */
.support-btn{
  display:inline-flex;
  align-items:center;
  gap:14px;
  padding:15px 28px;
  border-radius:60px;
  text-decoration:none;
  background:
  linear-gradient(
    135deg,
    #0ea5e9,
    #0284c7
  );
  color:#ffffff;
  font-size:16px;
  font-weight:700;
  transition:0.35s ease;
  box-shadow:
  0 10px 25px rgba(14,165,233,0.35);
}
.support-btn span{
  font-size:24px;
  line-height:1;
}
.support-btn:hover{
  transform:
  translateY(-3px)
  scale(1.03);
  background:
  linear-gradient(
    135deg,
    #38bdf8,
    #0284c7
  );
}
/* =========================================
            MOBILE
========================================= */
@media(max-width:768px){
  .support-section{
    padding:15px 20px;
    gap:25px;
  }
  .support-card{
    min-height:340px;
    border-radius:26px;
  }
  .support-content{
    padding:25px;
  }
  .support-content h3{
    font-size:1.8rem;
    margin-bottom:16px;
  }
  .support-btn{
    width:100%;
    justify-content:center;
    padding:14px 20px;
    font-size:15px;
  }
}

/* DYNAMIC IMPACT MAP SECTION */
.impact-map-section{
  width:100%;
  min-height:100vh;
  padding:10px 6%;
  display:grid;
  grid-template-columns:
  0.9fr 1.1fr;
  gap:1px;
  align-items:center;
  overflow:hidden;
  position:relative;
  background:
  linear-gradient(
    135deg,
    #f5fbff,
    #ffffff,
    #e3f7ff
  );
}
/* =========================================
            LEFT CONTENT
========================================= */
.impact-map-content{
  position:relative;
  z-index:2;
}
.impact-badge{
  display:inline-block;
  padding:10px 18px;
  border-radius:40px;
  background:
  rgba(14,165,233,0.12);
  color:#0284c7;
  font-size:13px;
  font-weight:700;
  margin-bottom:20px;
}
.impact-title{
  font-size:clamp(2.3rem,3vw,4rem);
  line-height:1.2;
  color:#0f172a;
  margin-bottom:25px;
  font-weight:800;
}
.impact-description{
  color:#64748b;
  font-size:1rem;
  line-height:2;
  max-width:580px;
}
/* =========================================
            NETWORK AREA
========================================= */
.impact-network-wrapper{
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
}
.network-map{
  width:650px;
  height:650px;
  position:relative;
}
/* =========================================
            CENTER NODE
========================================= */
.network-center{
  position:absolute;
  top:50%;
  left:50%;
  transform:
  translate(-50%,-50%)
  scale(0);
  width:130px;
  height:130px;
  border-radius:50%;
  background:
  linear-gradient(
    135deg,
    #0ea5e9,
    #0284c7
  );
  display:flex;
  align-items:center;
  justify-content:center;
  color:#ffffff;
  font-size:1.8rem;
  font-weight:800;
  text-align:center;
  padding:10px;
  box-shadow:
  0 20px 50px rgba(14,165,233,0.35);
  z-index:5;
  transition:1s ease;
}
.network-map.active .network-center{
  transform:
  translate(-50%,-50%)
  scale(1);
}
/* =========================================
            PULSE RING
========================================= */
.pulse-ring{
  position:absolute;
  top:50%;
  left:50%;
  width:170px;
  height:170px;
  border-radius:50%;
  border:
  2px solid rgba(14,165,233,0.25);
  transform:
  translate(-50%,-50%);
  animation:pulseRing 2.5s infinite;
  z-index:1;
}
@keyframes pulseRing{
  0%{
    transform:
    translate(-50%,-50%)
    scale(0.9);
    opacity:1;
  }
  100%{
    transform:
    translate(-50%,-50%)
    scale(1.3);
    opacity:0;
  }

}
/* =========================================
                LINES
========================================= */
.line{
  position:absolute;
  background:
  linear-gradient(
    90deg,
    #38bdf8,
    #0ea5e9
  );
  height:4px;
  border-radius:20px;
  transform-origin:left;
  transform:scaleX(0);
  transition:1s ease;
}
/* LINE POSITIONS */
.line1{
  width:180px;
  top:50%;
  left:50%;
  transform:rotate(-35deg) scaleX(0);
}
.line2{
  width:180px;
  top:50%;
  left:50%;
  transform:rotate(35deg) scaleX(0);
}
.line3{
  width:190px;
  top:50%;
  left:50%;
  transform:rotate(145deg) scaleX(0);
}
.line4{
  width:190px;
  top:50%;
  left:50%;
  transform:rotate(-145deg) scaleX(0);
}
.line5{
  width:170px;
  top:50%;
  left:50%;
  transform:rotate(90deg) scaleX(0);
}
.line6{
  width:170px;
  top:50%;
  left:50%;
  transform:rotate(-90deg) scaleX(0);
}
/* ACTIVE LINES */
.network-map.active .line1{
  transform:rotate(-35deg) scaleX(1);
}
.network-map.active .line2{
  transform:rotate(35deg) scaleX(1);
}
.network-map.active .line3{
  transform:rotate(145deg) scaleX(1);
}
.network-map.active .line4{
  transform:rotate(-145deg) scaleX(1);
}
.network-map.active .line5{
  transform:rotate(90deg) scaleX(1);
}
.network-map.active .line6{
  transform:rotate(-90deg) scaleX(1);
}
/* =========================================
                NODES
========================================= */
.network-node{
  position:absolute;
  width:170px;
  padding:18px 16px;
  border-radius:22px;
  text-align:center;
  background:
  rgba(255,255,255,0.92);
  backdrop-filter:blur(12px);
  border:
  1px solid rgba(14,165,233,0.08);
  box-shadow:
  0 12px 35px rgba(15,23,42,0.06);
  opacity:0;
  transform:scale(0.7);
  transition:
  0.8s ease,
  box-shadow 0.4s ease,
  border-color 0.4s ease;
}
.network-map.active .network-node{
  opacity:1;
  transform:scale(1);
}
.network-node span{
  color:#0f172a;
  font-size:15px;
  font-weight:700;
  line-height:1.5;
}
/* =========================================
            ACTIVE DYNAMIC NODE
========================================= */
.network-node.dynamic-active{
  border-color:
  rgba(14,165,233,0.5);
  box-shadow:
  0 0 35px rgba(14,165,233,0.35);
  animation:nodeFloat 2s ease infinite;
}
@keyframes nodeFloat{
  0%{
    transform:translateY(0px) scale(1);
  }
  50%{
    transform:translateY(-8px) scale(1.04);
  }
  100%{
    transform:translateY(0px) scale(1);
  }
}
/* NODE POSITIONS */
.node1{
  top:2%;
  left:50%;
  transform:translateX(-50%) scale(0.7);
}
.node2{
  top:20%;
  right:0;
}
.node3{
  bottom:20%;
  right:0;
}
.node4{
  bottom:2%;
  left:50%;
  transform:translateX(-50%) scale(0.7);
}
.node5{
  bottom:20%;
  left:0;
}
.node6{
  top:20%;
  left:0;
}
/* =========================================
            LEFT REVEAL
========================================= */
.reveal-left{
  opacity:0;
  transform:translateY(40px);
  transition:0.8s ease;
}
.reveal-left.active{
  opacity:1;
  transform:translateY(0);
}
/* =========================================
                TABLET
========================================= */
@media(max-width:1000px){
  .impact-map-section{
    grid-template-columns:1fr;
    gap:1px;
    padding:80px 5%;
  }
  .impact-map-content{
    text-align:center;
  }
  .network-map{
    width:100%;
    max-width:600px;
    height:600px;
  }
}
/* =========================================
                MOBILE
========================================= */
@media(max-width:700px){
  .impact-map-section{
    padding:30px 20px;
  }
  .impact-title{
    font-size:2rem;
  }
  .impact-description{
    font-size:15px;
    line-height:1.9;
  }
  .network-map{
    height:520px;
  }
  .network-center{
    width:95px;
    height:95px;
    font-size:1rem;
  }
  .pulse-ring{
    width:120px;
    height:120px;
  }
  .network-node{
    width:130px;
    padding:14px 10px;
    border-radius:18px;
  }
  .network-node span{
    font-size:12px;
  }
  .line1,.line2,.line3,.line4{
    width:140px;
  }
  .line5,.line6{
    width:120px;
  }
}