@charset "UTF-8";
/* CSS Document */
body {
      font-family: 'Montserrat', sans-serif;
      background-color: white;
      color: black;
      padding: 60px 20px;
      text-align: center;
      margin: 0;
    }

    /* Hamburger icon */
    .hamburger {
      font-size: 32px;
      position: fixed;
      top: 20px;
      right: 25px;
      z-index: 1001;
      cursor: pointer;
      color: black;
      transition: color 0.3s ease;
    }

    /* Slide-out menu */
    .side-menu {
      height: 100%;
      width: 0;
      position: fixed;
      top: 0;
      right: 0;
	  height: 100vh;
      background-color: #000;
      overflow-y: auto;
      transition: 0.4s;
      padding-top: 60px;
      z-index: 1000;
    }

    .side-menu a {
      padding: 12px 30px;
      text-decoration: none;
      font-size: 22px;
      color: white;
      display: block;
      transition: 0.3s;
    }

    .side-menu a:hover {
      background-color: #333;
    }

    .content-section {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      align-items: center;
      margin-top: 50px;
      gap: 40px;
    }

    footer {
      width: 100%;
      background-color: #f5f5f5;
      padding: 20px 0;
      border-top: 1px solid #ddd;
      text-align: center;
    }

    .about-image {
      max-width: 100%;
      width: 400px;
      border-radius: 12px;
    }

    .about-text-box {
      max-width: 500px;
      text-align: left;
    }

    @media (max-width: 768px) {
      .about-text-box {
        text-align: center;
      }

      #carouselExampleFade {
        max-width: 50%;
        margin: auto;
      }

      .carousel-control-prev,
      .carousel-control-next {
        width: 10%;
      }
    }

    /* Accordion purple glow */
    .accordion-button:focus {
      box-shadow: none;
    }

    .accordion-button {
      transition: box-shadow 0.3s ease, border-color 0.3s ease;
    }

    .accordion-button[aria-expanded="true"] {
      box-shadow: 0 0 15px 3px cyan;
      border-color: cyan;
    }

    /* Accordion on black background */
    .accordion-container {
      background-color: black;
      color: white;
      padding: 50px 20px;
    }

    .accordion-button {
      background-color: white; /* default button background */
      color: black;
    }

    .accordion-button.collapsed {
      background-color: #fff;
      color: black;
    }

    .accordion-body {
      color: black;
    }
	  
  .card {
    position: relative;
    overflow: hidden;
    transition: transform 0.3s ease;
  }

  /* Dark shadow overlay */
  .card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5); /* dark shadow */
    transition: opacity 0.3s ease;
    z-index: 1;
  }

  /* Ensure text is above overlay */
  .card-body {
    position: relative;
    z-index: 2;
  }

  /* Hover reveal effect */
  .card:hover::before {
    opacity: 0;
  }

  /* Slight lift on hover */
  .card:hover {
    transform: translateY(-8px);
    border: 2px solid cyan;
    animation: pulse-glow 1.5s infinite alternate ease-in-out;
  }

  /* Purple pulsing glow animation */
  @keyframes pulse-glow {
    0% {
      box-shadow: 0 0 15px rgba(0, 255, 255, 1);
    }
    100% {
      box-shadow: 0 0 30px rgba(0, 255, 255, 1);
    }
  }
