    .mapcontainer {
      position: relative;
      width: 100%;
      max-width: 1100px;
      display: grid;
      grid-template-columns: 1fr 2fr 1fr;
      align-items: center;
      gap: 20px;
      padding: 20px;
    }

    /* --- MAP SECTION --- */
    .map-container {
      position: relative;
      width: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      grid-column: 2;
      grid-row: 1;
      
      /* Step 1: Map animation */
      opacity: 0;
      transform: scale(0.9);
      animation: fadeInMap 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
      animation-delay: 0.2s;
    }

    .map-image {
      width: 100%;
      height: auto;
      display: block;
      /*filter: drop-shadow(0px 15px 25px rgba(0, 0, 0, 0.15));*/
    }

    /* Location Pins Container Over Map */
    .pins-layer {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      pointer-events: none;
    }

    /* --- MARKERS / LOCATION ANIMATION --- */
    .pin {
      position: absolute;
      display: flex;
      align-items: center;
      gap: 6px;
      
      /* Step 2: Locations animation */
      opacity: 0;
      transform: translateY(-15px) scale(0.7);
      animation: popInPin 0.6s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
      animation-delay: 1.0s;
    }

.pin-nepal {
  top: 32% !important;  /* Adjust vertically: lower % = move UP, higher % = move DOWN */
  left: 26% !important; /* Adjust horizontally: lower % = move LEFT, higher % = move RIGHT */
}

    /* Lao PDR Pin Positioning */
    .pin-laos {
  top: 44% !important;  /* Adjust vertically: lower % = move UP, higher % = move DOWN */
  left: 49% !important; /* Adjust horizontally: lower % = move LEFT, higher % = move RIGHT */
    }

    .pin-icon {
      width: 24px;
      height: 32px;
    }

    .pin-label {
      font-size: 16px;
      font-weight: 500;
      color: #ffffff;
      text-shadow: 0px 1px 3px rgba(0, 0, 0, 0.8);
      white-space: nowrap;
    }

    /* --- LEGENDS SECTION --- */
    .legend-column {
      display: flex;
      flex-direction: column;
      gap: 40px;
      z-index: 2;
    }
	
    .legend-left {
      grid-column: 1;
      grid-row: 1;
      text-align: left;
	  text-align: center;
  align-items: center;
    }

    .legend-right {
      grid-column: 3;
      grid-row: 1;
      text-align: left;
	  text-align: center;
  align-items: center;
    }

    .stat-item {
      opacity: 0;
	  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
    }

    .stat-number {
      font-size: 2.8rem;
      font-weight: 900;
      line-height: 1;
      margin-bottom: 6px;
    }

    .stat-desc {
      font-size: 22px;
      font-weight: 300;
      color: #4a5568;
      line-height: 1.2;
	  text-align: center;
  width: 100%;
    }

    /* Colors derived from image */
    .color-grey { color: #595959; }
    .color-blue { color: #17375E; }
    .color-orange { color: #E46C0A; }
    .color-red { color: #b71c1c; }
    .color-teal { color: #007791; }
    .color-green { color: #008744; }

    /* Step 3: Left side legends animation */
    .legend-left .stat-item {
      transform: translateX(-30px);
      animation: slideIn 0.6s ease-out forwards;
    }
    .legend-left .stat-item:nth-child(1) { animation-delay: 1.5s; }
    .legend-left .stat-item:nth-child(2) { animation-delay: 1.7s; }
    .legend-left .stat-item:nth-child(3) { animation-delay: 1.9s; }

    /* Step 4: Right side legends animation */
    .legend-right .stat-item {
      transform: translateX(30px);
      animation: slideIn 0.6s ease-out forwards;
    }
    .legend-right .stat-item:nth-child(1) { animation-delay: 2.3s; }
    .legend-right .stat-item:nth-child(2) { animation-delay: 2.5s; }
    .legend-right .stat-item:nth-child(3) { animation-delay: 2.7s; }

    /* --- ANIMATION KEYFRAMES --- */
    @keyframes fadeInMap {
      to {
        opacity: 1;
        transform: scale(1);
      }
    }

    @keyframes popInPin {
      to {
        opacity: 1;
        transform: translateY(0) scale(1);
      }
    }

    @keyframes slideIn {
      to {
        opacity: 1;
        transform: translateX(0);
      }
    }

    /* --- RESPONSIVE DESIGN --- */
    @media (max-width: 850px) {
      .container {
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto;
        gap: 30px;
      }

      .map-container {
        grid-column: 1;
        grid-row: 1;
      }

      .legend-left {
        grid-column: 1;
        grid-row: 2;
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
        text-align: center;
      }

      .legend-right {
        grid-column: 1;
        grid-row: 3;
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
        text-align: center;
      }

      .pin-label {
        font-size: 11px;
      }
      
      .pin-icon {
        width: 18px;
        height: 24px;
      }
    }/* CSS Document */

.stat-item.is-visible {
  opacity: 1 !important;
  transition: opacity 0.6s ease-in-out;
}

.mapcontainer .color-grey   { color: #525b62 !important; }
.mapcontainer .color-blue   { color: #0070C0 !important; }
.mapcontainer .color-orange { color: #e65100 !important; }
.mapcontainer .color-red    { color: #b71c1c !important; }
.mapcontainer .color-teal   { color: #007791 !important; }
.mapcontainer .color-green  { color: #008744 !important; }

@media screen and (max-width: 799px) {
.mapcontainer{
	display:table;
}
  /* Scale down the Nepal pin container */
  .pin-nepal {
    gap: 2px !important;
  }
   .pin-laos {
    gap: 2px !important;
  }

  /* Reduce the size of the Nepal pin image */
  .pin-nepal img {
    width: 18px !important; /* Adjust width as needed */
    height: auto !important;
  }
  .pin-laos img {
    width: 18px !important; /* Adjust width as needed */
    height: auto !important;
  }

  /* Scale down the label text next to the pin */
  .pin-nepal .pin-label {
    font-size: 9px !important;
  }
  .pin-laos .pin-label {
    font-size: 9px !important;
  }

  /* Optional: Adjust location slightly for smaller icon anchor point */
  .pin-nepal {
    top: 40% !important;
    left: 30% !important;
  }
  .pin-laos {
    top: 53% !important;
    left: 52% !important;
  }
}
@media screen and (max-width: 499px) {
 .pin-nepal {
    top: 34% !important;
    left: 30% !important;
  }
  .pin-laos {
    top: 47% !important;
    left: 49% !important;
  }

}