   *,
   *::before,
   *::after {
       margin: 0;
       padding: 0;
       box-sizing: border-box;
       text-decoration: none;
   }

   :root {
       --transition-duration: 0.5s;
   }

   body {
       background: linear-gradient(135deg, #dfffd9, #f1fcf6);
   }

   nav {
       display: flex;
       justify-content: space-between;
       align-items: center;
       background-color: #f7eed7;
       position: fixed;
       width: 100%;
       top: 0;
       z-index: 1000;
       padding: 0 1rem;
   }

   .logo h1 {
       display: flex;
       padding: 1rem 2rem;
       font-family: "Poppins", sans-serif;
       font-style: normal;
       font-size: clamp(1.2rem, 4vw, 2rem);
   }

   .nav-links {
       display: flex;
       align-items: center;
   }

   .nav-links a {
       color: rgb(0, 124, 52);
       font-size: clamp(1rem, 2vw, 1.2rem);
       font-family: "Poppins", sans-serif;
       font-weight: 700;
       font-style: normal;
       list-style: none;
       margin: 0.5rem;
       padding: 0.7rem 1rem;
       position: relative;
       cursor: pointer;
       transition: var(--transition-duration);
       overflow: hidden;
   }

   nav span {
       color: rgb(32, 172, 90);
   }

   .nav-links a:hover {
       color: #efe;
       transition: 0.7s;
   }

   .nav-links a::after {
       position: absolute;
       content: "";
       width: 100%;
       height: 100%;
       background-color: rgb(0, 124, 52);
       top: 0;
       left: -120%;
       z-index: -1;
       border-radius: 5px;
       transition: var(--transition-duration);
   }

   .nav-links a:hover::after {
       transition: var(--transition-duration);
       left: 0;
   }


   .hamburger {
       display: none;
       flex-direction: column;
       cursor: pointer;
       padding: 1rem;
   }

   .hamburger span {
       width: 25px;
       height: 3px;
       background-color: rgb(0, 124, 52);
       margin: 3px 0;
       transition: 0.3s;
       border-radius: 2px;
   }

   .hamburger.active span:nth-child(1) {
       transform: rotate(-45deg) translate(-5px, 6px);
   }

   .hamburger.active span:nth-child(2) {
       opacity: 0;
   }

   .hamburger.active span:nth-child(3) {
       transform: rotate(45deg) translate(-5px, -6px);
   }

   .hero {
       background: linear-gradient(rgba(22, 22, 22, 0.61), rgba(7, 82, 26, 0.774)), url(planting-9001234_1920.png);
       height: 100vh;
       background-size: cover;
       background-position: center;
       display: flex;
       align-items: center;
       justify-content: center;
       position: relative;
   }

   .hero-text {
       /* text-align: center; */
       color: white;
       /* padding: 2rem; */
       max-width: 800px;
   }

   .hero h1 {
       font-size: clamp(1.8rem, 5vw, 3rem);
       font-family: "Poppins", sans-serif;
       font-weight: 700;
       margin-bottom: 1rem;
   }

   .hero-text p {
       font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
       font-size: clamp(1rem, 2.5vw, 1.3rem);
       margin-bottom: 2rem;
       line-height: 1.6;
   }

   .hero-text a {
       color: white;
   }

   .hero-text button {
       padding: 0.8rem 1.5rem;
       border-radius: 10px;
       background: #28a745;
       color: white;
       border: 2px solid #1e7e34;
       font-weight: 600;
       font-size: clamp(0.9rem, 2vw, 1.1rem);
       cursor: pointer;
       transition: all 0.3s ease;
   }

   .hero-text button:hover {
       box-shadow: 0 0 8px rgba(40, 167, 69, 0.4);
       background: #1e7e34;
       border: #145c2a;
       transform: translateY(-2px);
   }

   .arrow-icon i {
       position: absolute;
       bottom: 2rem;
       left: 50%;
       transform: translateX(-50%);
   }

   .about-us {
       min-height: 60vh;
       display: flex;
       justify-content: space-around;
       align-items: center;
       background-color: #e6f5e6;
       padding: 2rem 1rem;
       gap: 2rem;
   }

   .about-us a {
       color: white;
   }

   .about-image {
       border-radius: 20px;
       flex: 1;
       max-width: 500px;
   }

   .about-image img {
       width: 100%;
       height: auto;
       max-height: 300px;
       object-fit: cover;
       border-radius: 15px;
   }

   .about-text {
       flex: 1;
       padding: 1rem;
       font-family: "Poppins", sans-serif;
   }

   .about-text h1 {
       font-size: clamp(1.4rem, 4vw, 1.7rem);
       font-weight: 740;
       color: #145c2a;
       margin-bottom: 1rem;
   }

   .about-text p {
       font-size: clamp(1rem, 2.5vw, 1.2rem);
       font-weight: 300;
       line-height: 1.6;
       margin-bottom: 1rem;
   }

   .about-text span {
       border-bottom: 3px solid;
   }

   .about-text button {
       padding: 0.8rem 1.5rem;
       border-radius: 10px;
       background: #28a745;
       color: white;
       border: 2px solid #1e7e34;
       font-weight: 600;
       cursor: pointer;
       transition: all 0.3s ease;
   }

   .about-text button:hover {
       background: #1e7e34;
       transform: translateY(-2px);
   }

   .join-section {
       min-height: 70vh;
       padding: 2rem;
   }

   .join-section h1 {
       text-align: center;
       font-size: clamp(1.5rem, 4vw, 1.9rem);
       font-family: Verdana, Geneva, Tahoma, sans-serif;
       margin-bottom: 2rem;
   }

   .cards {
       display: grid;
       grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
       justify-content: center;
       align-items: center;
       gap: 2rem;
       max-width: 1200px;
       margin: 0 auto;
   }

   .card {
       padding: 2rem;
       border-radius: 15px;
       box-shadow: 2px 2px 2px 3px rgba(145, 144, 144, 0.15);
       text-align: center;
       background: white;
       transition: all 0.3s ease;
   }

   .card:hover {
       transform: translateY(-10px) scale(1.02);
       box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
   }

   .card img {
       height: 100px;
       width: 100px;
       margin-bottom: 1rem;
   }

   .card h1 {
       font-size: clamp(1.2rem, 3vw, 1.5rem);
       margin-bottom: 1rem;
   }

   .card p {
       font-size: clamp(1rem, 2.5vw, 1.4rem);
       font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
   }

   .impact-section {
       text-align: center;
       margin-top: 3rem;
       padding: 3rem 1rem;
       background: linear-gradient(135deg, #dfffd9, #f1fcf6);
   }

   .impact-section h2 {
       font-size: clamp(1.8rem, 5vw, 2.5rem);
       margin-bottom: 1rem;
       color: #2c3e50;
   }

   .impact-section .subtitle {
       font-size: clamp(1rem, 2.5vw, 1.1rem);
       color: #7f8c8d;
       margin-bottom: 3rem;
   }

   .counters-container {
       display: grid;
       grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
       gap: 2rem;
       max-width: 1000px;
       margin: 0 auto;
   }

   .counter-item {
       background-color: #ffffff;
       padding: 1.5rem;
       border-radius: 10px;
       box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
       text-align: center;
       transition: transform 0.3s ease, box-shadow 0.3s ease;
   }

   .counter-item:hover {
       transform: translateY(-10px);
       box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
   }

   .icon-div-placeholder {
       display: flex;
       flex-direction: column;
       align-items: center;
       justify-content: center;
       width: 60px;
       height: 60px;
       margin: 0 auto 15px auto;
       transition: transform 0.3s ease;
       position: relative;
   }

   .counter-item:hover .icon-div-placeholder {
       transform: scale(1.1);
   }

   .icon-tree .trunk {
       width: 10px;
       height: 25px;
       background-color: #8B4513;
       border-radius: 2px;
   }

   .icon-tree .canopy {
       width: 40px;
       height: 40px;
       background-color: #27ae60;
       border-radius: 50%;
       position: absolute;
       top: 0;
       left: 50%;
       transform: translateX(-50%);
   }

   .icon-tree .trunk {
       position: absolute;
       bottom: 0;
       left: 50%;
       transform: translateX(-50%);
       z-index: 1;
   }

   .icon-school .building-body {
       width: 40px;
       height: 25px;
       background-color: #3498db;
       position: absolute;
       bottom: 0;
       left: 50%;
       transform: translateX(-50%);
   }

   .icon-school .roof {
       width: 0;
       height: 0;
       border-left: 25px solid transparent;
       border-right: 25px solid transparent;
       border-bottom: 20px solid #2980b9;
       position: absolute;
       top: 0;
       left: 50%;
       transform: translateX(-50%);
   }

   .icon-school .door {
       width: 8px;
       height: 12px;
       background-color: #bdc3c7;
       position: absolute;
       bottom: 0;
       left: 50%;
       transform: translateX(-50%);
       z-index: 1;
   }

   .icon-volunteers .person {
       width: 15px;
       height: 15px;
       background-color: #e67e22;
       border-radius: 50%;
       position: relative;
       margin: 0 3px;
   }

   .icon-volunteers .person::after {
       content: '';
       position: absolute;
       width: 15px;
       height: 20px;
       background-color: #e67e22;
       border-radius: 8px 8px 0 0;
       top: 12px;
       left: 0;
   }

   .icon-volunteers {
       display: flex;
       justify-content: center;
       align-items: flex-start;
       padding-top: 5px;
   }

   .icon-plastic .bin-body {
       width: 30px;
       height: 40px;
       background-color: #9b59b6;
       border: 3px solid #8e44ad;
       border-bottom: none;
       box-sizing: border-box;
       position: relative;
       margin-top: 10px;
   }

   .icon-plastic .bin-lid {
       width: 36px;
       height: 8px;
       background-color: #8e44ad;
       border-radius: 3px 3px 0 0;
       position: absolute;
       top: 0;
       left: 50%;
       transform: translateX(-50%);
   }

   .icon-plastic .recycle-symbol {
       position: absolute;
       bottom: 5px;
       left: 50%;
       transform: translateX(-50%);
       font-size: 10px;
       color: #fff;
       font-weight: bold;
   }

   .icon-plastic .recycle-symbol span {
       display: inline-block;
       transform: scaleY(0.8);
   }

   .counter-item .number {
       font-size: clamp(2rem, 5vw, 2.8rem);
       font-weight: bold;
       color: #2c3e50;
       margin-bottom: 5px;
   }

   .counter-item .label {
       font-size: clamp(0.9rem, 2.5vw, 1rem);
       color: #555;
   }

   .video-section {
       min-height: 70vh;
       padding: 2rem 1rem;
   }

   .video-section h1 {
       padding-bottom: 2rem;
       text-align: center;
       font-family: 'Times New Roman', Times, serif;
       font-size: clamp(1.5rem, 4vw, 2rem);
   }

   .video-section span {
       border-bottom: #145c2a;
   }

   .items {
       max-width: 1000px;
       margin: 0 auto;
   }

   .items iframe {
       width: 100%;
       height: clamp(300px, 50vw, 700px);
       border-radius: 10px;
   }

   .footer-container {
       display: grid;
       grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
       gap: 2rem;
       padding: 2rem;
       background-color: #2c3e50;
       color: #ffffff;
       font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
   }

   .footer-items {
       padding: 1rem;
   }

   .footer-items h3 {
       font-family: Arial, Helvetica, sans-serif;
       margin-bottom: 1rem;
   }

   .footer-items a {
       color: #c2c0c0;
   }

   .footer-items li {
       list-style: none;
       margin-bottom: 0.5rem;
   }

   .footer-items input {
       padding: 0.5rem;
       border-radius: 7px;
       border: 2px solid green;
       width: 100%;
       margin-bottom: 0.5rem;
   }

   .footer-items button {
       padding: 0.5rem 1rem;
       border-radius: 7px;
       border: 2px solid green;
       background: green;
       color: white;
       cursor: pointer;
   }

   .copy-right {
       background-color: #1f2c3a;
   }

   .copy-right p {
       padding: 1rem;
       text-align: center;
       color: #c2c0c0;
   }

   form p {
       color: #666;
   }

   .msg {
       display: none;
       color: rgb(255, 255, 255);
       margin-top: 1rem;
   }

   @media (max-width: 768px) {
       nav {
           padding: 0 0.5rem;
       }

       .hamburger {
           display: flex;
       }

       .nav-links {
           display: none;
           position: fixed;
           top: 100%;
           left: 0;
           width: 100%;
           height: 100vh;
           background-color: #f7eed7;
           flex-direction: column;
           justify-content: flex-start;
           align-items: center;
           padding-top: 2rem;
           transform: translateY(-100%);
           transition: transform 0.3s ease-in-out;
           z-index: 999;
       }

       .nav-links.active {
           transform: translateY(-100vh);
       }

       .nav-links a {
           margin: 1rem 0;
           font-size: 1.2rem;
           width: 80%;
           text-align: center;
       }

       .logo h1 {
           padding: 1rem;
       }

       .hero {
           margin-top: 60px;
       }

       .hero-text {
           padding: 1rem;
       }

       .about-us {
           flex-direction: column;
           min-height: auto;
           padding: 2rem 1rem;
       }

       .about-us:nth-child(even) {
           flex-direction: column-reverse;
       }

       .about-text,
       .about-image {
           max-width: 100%;
       }

       .cards {
           grid-template-columns: 1fr;
           gap: 1.5rem;
       }

       .card img {
           height: 80px;
           width: 80px;
       }

       .counters-container {
           grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
           gap: 1rem;
       }

       .footer-container {
           grid-template-columns: 1fr;
           text-align: center;
       }
   }

   @media (min-width: 769px) and (max-width: 1024px) {
       .cards {
           grid-template-columns: repeat(2, 1fr);
       }

       .counters-container {
           grid-template-columns: repeat(2, 1fr);
       }

       .footer-container {
           grid-template-columns: repeat(2, 1fr);
       }
   }

   @media (min-width: 1200px) {

       .about-us,
       .join-section,
       .impact-section,
       .video-section {
           max-width: 1200px;
           margin-left: auto;
           margin-right: auto;
       }
   }