 @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap');


    * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }

    html, body {
      min-height: 100vh;
      height: 100%;
      font-family: 'Poppins', sans-serif;
      overflow-x: hidden;
    }

    /* Navbar Styles - Matching Home Page */
    .navbar {
      width: 100%;
      background-color: #0c3e3c;
      color: white;
      padding: 12px 20px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      z-index: 1000;
      position: relative;
      min-height: 70px;
    }

    .navbar .logo {
      flex-shrink: 0;
      z-index: 1001;
    }

    .navbar .logo img {
      height: 50px;
      width: auto;
      display: block;
      transition: height 0.3s ease;
    }

    /* Hamburger Menu with Outline Box */
    .navbar .hamburger {
      display: none;
      flex-direction: column;
      cursor: pointer;
      padding: 8px;
      border: 2px solid #64c5ba;
      border-radius: 8px;
      background: rgba(100, 197, 186, 0.1);
      transition: all 0.3s ease;
      z-index: 1001;
      width: 45px;
      height: 40px;
      justify-content: center;
      align-items: center;
      gap: 4px;
    }

    .navbar .hamburger:hover {
      background: rgba(100, 197, 186, 0.2);
      border-color: #7dd3d8;
      transform: scale(1.05);
    }

    .navbar .hamburger span {
      display: block;
      width: 22px;
      height: 3px;
      background-color: white;
      transition: all 0.3s ease;
      border-radius: 2px;
    }

    .navbar .hamburger:hover span {
      background-color: #64c5ba;
    }

    /* Navigation Links */
    .navbar .nav-links {
      list-style: none;
      display: flex;
      gap: 15px;
      flex-wrap: wrap;
      margin: 0;
      padding: 0;
      align-items: center;
    }

    .navbar .nav-links li {
      position: relative;
    }

    .navbar .nav-links li a {
      text-decoration: none;
      color: white;
      font-weight: 500;
      transition: all 0.3s ease;
      padding: 10px 15px;
      border-radius: 8px;
      display: block;
      white-space: nowrap;
      font-size: 14px;
    }

    .navbar .nav-links li a:hover {
      color: #64c5ba;
      background-color: rgba(100, 197, 186, 0.15);
      transform: translateY(-2px);
    }

    #user-info {
      display: flex;
      align-items: center;
      gap: 10px;
      color: white;
      font-size: 14px;
    }

    #username-display {
      font-weight: 500;
      color: #64c5ba;
    }

    #logout-btn {
      color: white !important;
      font-size: 13px;
      padding: 8px 12px !important;
      background: rgba(255, 255, 255, 0.1);
      border-radius: 6px;
      transition: all 0.3s ease;
    }

    #logout-btn:hover {
      background: rgba(255, 255, 255, 0.2);
      color: #64c5ba !important;
    }

   /* Sidebar Overlay */
.sidebar-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1500;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
}

.sidebar-overlay.show {
  opacity: 1;
  visibility: visible;
}

/* Mobile Sidebar */
.sidebar {
  position: fixed;
  top: 0;
  left: -280px;
  width: 280px;
  height: 100vh;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.98) 0%, rgba(248, 251, 251, 0.98) 100%);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  box-shadow: 4px 0 25px rgba(0, 0, 0, 0.15);
  transition: left 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 2000;
  display: flex;
  flex-direction: column;
  border-right: 1px solid rgba(34, 94, 90, 0.1);
}

/* Show sidebar */
.sidebar.show {
  left: 0;
}

/* Sidebar Header */
.sidebar-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px 25px;
  background: linear-gradient(135deg, #225e5a, #2d8f88);
  color: white;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.sidebar-heading {
  font-size: 18px;
  font-weight: 600;
  letter-spacing: 1.5px;
  margin: 0;
  order: 1; /* Menu text appears first (left) */
}

/* Close icon (×) */
.sidebar-close {
  font-size: 28px;
  cursor: pointer;
  color: white;
  transition: all 0.3s ease;
  width: 35px;
  height: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  order: 2; /* Close icon appears second (right) */
}

.sidebar-close:hover {
  background: rgba(255, 255, 255, 0.2);
  transform: rotate(90deg);
}

/* Sidebar Content */
.sidebar-content {
  flex: 1;
  overflow-y: auto;
  padding: 20px 0;
}

/* Sidebar Links */
.sidebar a {
  display: flex;
  align-items: center;
  padding: 15px 25px;
  color: #225e5a;
  text-decoration: none;
  font-size: 16px;
  font-weight: 500;
  transition: all 0.3s ease;
  position: relative;
  margin: 0;
}

.sidebar a::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: #64c5ba;
  transform: scaleY(0);
  transition: transform 0.3s ease;
}

.sidebar a:hover, .sidebar a.active {
  background: linear-gradient(90deg, rgba(100, 197, 186, 0.1), transparent);
  color: #0c3e3c;
  transform: translateX(8px);
}

.sidebar a:hover::before, .sidebar a.active::before {
  transform: scaleY(1);
}

/* Divider */
.sidebar-divider {
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(34, 94, 90, 0.15), transparent);
  margin: 5px 20px;
}

    /* Page Wrapper */
    .page-wrapper {
      min-height: 100vh;
      display: flex;
      flex-direction: column;
      background: #e6f4f3;
      position: relative;
      overflow-x: hidden;
    }

    .page-wrapper::before {
      content: '';
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
     background-image: url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23225e5a' fill-opacity='0.03'%3E%3Cg transform='translate(20,20)'%3E%3Cpath d='M8 2h24c1.1 0 2 .9 2 2v32c0 1.1-.9 2-2 2H8c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2zm2 4v28h20V6H10zm4 6h12v2H14v-2zm0 4h12v2H14v-2zm0 4h8v2h-8v-2z'/%3E%3C/g%3E%3Cg transform='translate(60,60)'%3E%3Cpath d='M8 2h24c1.1 0 2 .9 2 2v32c0 1.1-.9 2-2 2H8c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2zm2 4v28h20V6H10zm4 6h12v2H14v-2zm0 4h12v2H14v-2zm0 4h8v2h-8v-2z'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
      background-size: 120px 120px;
      background-position: 0 0;
      z-index: 0;
      pointer-events: none;
    }

    /* Hero Section */
    .hero-section {
      background: linear-gradient(135deg, #225e5a 0%, #2d8f88 100%);
      color: white;
      padding: 60px 20px 40px;
      text-align: center;
      position: relative;
      z-index: 1;
    }

    .hero-content h1 {
      font-size: 2.8rem;
      font-weight: 700;
      margin-bottom: 15px;
      color: white;
    }

    .hero-content .subtitle {
      font-size: 1.2rem;
      opacity: 0.9;
      max-width: 600px;
      margin: 0 auto;
      line-height: 1.6;
    }

    /* Main Content */
    .main-content {
      flex: 1;
      padding: 60px 20px;
      position: relative;
      z-index: 1;
    }

    .container {
      max-width: 1000px;
      margin: 0 auto;
    }

    /* About Cards */
    .about-intro {
      background: white;
      padding: 40px;
      border-radius: 20px;
      box-shadow: 0 10px 30px rgba(34, 94, 90, 0.1);
      margin-bottom: 40px;
      border: 1px solid rgba(34, 94, 90, 0.08);
      transition: transform 0.3s ease, box-shadow 0.3s ease;
    }

    .about-intro:hover {
      transform: translateY(-5px);
      box-shadow: 0 15px 40px rgba(34, 94, 90, 0.15);
    }

    .about-intro p {
      font-size: 1.1rem;
      line-height: 1.7;
      color: #444;
      text-align: center;
    }

    /* Features Section */
    .features-section {
      margin: 40px 0;
    }

    .section-title {
      font-size: 2.2rem;
      color: #0c3e3c;
      margin-bottom: 30px;
      text-align: center;
      font-weight: 600;
    }

    .features-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
      gap: 25px;
      margin-bottom: 40px;
    }

    .feature-card {
      background: white;
      padding: 30px;
      border-radius: 16px;
      box-shadow: 0 8px 25px rgba(34, 94, 90, 0.1);
      border: 1px solid rgba(34, 94, 90, 0.08);
      transition: all 0.3s ease;
      position: relative;
      overflow: hidden;
    }

    .feature-card::before {
      content: '';
      position: absolute;
      top: 0;
      left: -100%;
      width: 100%;
      height: 100%;
      background: linear-gradient(90deg, transparent, rgba(100, 197, 186, 0.05), transparent);
      transition: left 0.5s ease;
    }

    .feature-card:hover::before {
      left: 100%;
    }

    .feature-card:hover {
      transform: translateY(-8px);
      box-shadow: 0 15px 35px rgba(34, 94, 90, 0.15);
    }

    .feature-card h3 {
      font-size: 1.4rem;
      color: #0c3e3c;
      margin-bottom: 20px;
      font-weight: 600;
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .feature-card .emoji {
      font-size: 1.5rem;
    }

    .feature-list {
      list-style: none;
      padding: 0;
    }

    .feature-list li {
      padding: 8px 0;
      color: #555;
      font-size: 0.95rem;
      line-height: 1.5;
      position: relative;
      padding-left: 25px;
      transition: color 0.3s ease;
    }

    .feature-list li::before {
      content: '✓';
      position: absolute;
      left: 0;
      color: #64c5ba;
      font-weight: bold;
      font-size: 1rem;
    }

    .feature-list li:hover {
      color: #0c3e3c;
    }

    /* Vision and Contact Cards */
    .info-cards {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
      gap: 30px;
      margin: 40px 0;
    }

    .info-card {
      background: white;
      padding: 35px;
      border-radius: 20px;
      box-shadow: 0 10px 30px rgba(34, 94, 90, 0.1);
      border: 1px solid rgba(34, 94, 90, 0.08);
      transition: all 0.3s ease;
    }

    .info-card:hover {
      transform: translateY(-5px);
      box-shadow: 0 15px 40px rgba(34, 94, 90, 0.15);
    }

    .info-card h2 {
      font-size: 1.6rem;
      color: #0c3e3c;
      margin-bottom: 15px;
      font-weight: 600;
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .info-card p {
      font-size: 1rem;
      line-height: 1.6;
      color: #555;
    }

    .info-card a {
      color: #225e5a;
      text-decoration: none;
      font-weight: 500;
      transition: color 0.3s ease;
    }

    .info-card a:hover {
      color: #64c5ba;
    }

    /* Target Audience */
    .audience-list {
      background: linear-gradient(135deg, #f8fbfb, white);
      padding: 25px;
      border-radius: 12px;
      border-left: 4px solid #64c5ba;
      margin-top: 15px;
    }

    .audience-list p {
      margin: 0;
      line-height: 2;
      color: #444;
    }

    /* Modern Footer */
    .modern-footer {
      background: #0c3e3c;
      color: white;
      padding: 40px 20px 20px;
      position: relative;
      z-index: 1;
      text-align: center;
    }

    .footer-content {
      max-width: 800px;
      margin: 0 auto;
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
      gap: 30px;
      margin-bottom: 30px;
      text-align: left;
    }

    .footer-section h4 {
      font-size: 1.1rem;
      margin-bottom: 15px;
      color: #64c5ba;
      font-weight: 600;
    }

    .footer-logo {
      height: 50px;
      margin-bottom: 15px;
    }

    .footer-desc {
      color: #ccc;
      line-height: 1.6;
      margin-bottom: 20px;
      font-size: 0.9rem;
    }

    .footer-section ul {
      list-style: none;
      padding: 0;
    }

    .footer-section ul li {
      margin-bottom: 8px;
    }

    .footer-section ul li a {
      color: #ccc;
      text-decoration: none;
      transition: color 0.3s ease;
      font-size: 0.9rem;
    }

    .footer-section ul li a:hover {
      color: #64c5ba;
    }

    .footer-bottom {
      text-align: center;
      padding-top: 20px;
      border-top: 1px solid rgba(100, 197, 186, 0.2);
      color: #ccc;
      font-size: 0.9rem;
    }

    .footer-bottom p {
      margin: 5px 0;
    }

    /* Responsive Design */
    @media (max-width: 767px) {
      .navbar .nav-links,
      #user-info {
        display: none !important;
      }

      .navbar .hamburger {
        display: flex;
      }

      .navbar {
        padding: 10px 20px;
        min-height: 65px;
      }

      .navbar .logo img {
        height: 45px;
      }

      .hero-content h1 {
        font-size: 2.2rem;
      }

      .hero-content .subtitle {
        font-size: 1rem;
      }

      .main-content {
        padding: 40px 15px;
      }

      .about-intro {
        padding: 25px;
      }

      .section-title {
        font-size: 1.8rem;
      }

      .features-grid {
        grid-template-columns: 1fr;
        gap: 20px;
      }

      .feature-card {
        padding: 25px;
      }

      .info-cards {
        grid-template-columns: 1fr;
        gap: 20px;
      }

      .info-card {
        padding: 25px;
      }

      .footer-content {
        grid-template-columns: 1fr;
        text-align: center;
        gap: 20px;
      }
    }

    @media (max-width: 480px) {
      .navbar {
        padding: 8px 15px;
        min-height: 60px;
      }

      .navbar .logo img {
        height: 40px;
      }

      .navbar .hamburger {
        width: 40px;
        height: 36px;
        padding: 6px;
      }

      .navbar .hamburger span {
        width: 20px;
        height: 2.5px;
      }

      .sidebar {
        width: 260px;
        left: -260px;
      }

      .hero-section {
        padding: 40px 15px 30px;
      }

      .hero-content h1 {
        font-size: 1.9rem;
      }

      .hero-content .subtitle {
        font-size: 0.95rem;
      }

      .main-content {
        padding: 30px 15px;
      }

      .about-intro {
        padding: 20px;
      }

      .section-title {
        font-size: 1.6rem;
      }

      .feature-card,
      .info-card {
        padding: 20px;
      }
    }

    /* Sidebar hidden on desktop */
    @media (min-width: 768px) {
      .sidebar {
        display: none;
      }
    }