 /* Custom CSS for a hero slideshow */
    .hero-slideshow-container {
      position: relative;
      width: 100%;
      height: 92vh; /* Reduced hero section height */
      overflow: hidden;
    }
    .hero-slideshow-item {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      opacity: 0;
      transition: opacity 1.5s ease-in-out; /* Smooth transition between slides */
    }
    
    .hero-slideshow-item.active {
      opacity: 1;
    }
    .hero-slideshow-item img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    /* New CSS for Testimonial Carousel */
    .testimonial-carousel-container {
        position: relative;
    }
    .testimonial-carousel-item {
        display: none;
        opacity:0;
        transition: opacity 1s ease-in-out;
    }
    .testimonial-carousel-item.active {
        display: block;
        opacity:1;
    }
    /* Custom CSS for a hero cover image section */
    .hero-cover {
        height: 88vh;
        background-size: cover;
        background-position: center;
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        color: white;
    }
    .hero-cover::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.4); /* Dark overlay */
        z-index: 1;
    }
    .hero-cover .content {
        position: relative;
        z-index: 2;
        text-align: center;
    }
    /* New CSS for Testimonial Carousel */
    .testimonial-carousel-container {
        position: relative;
    }
    .testimonial-carousel-item {
        display: none;
        opacity:0;
        transition: opacity 1s ease-in-out;
    }
    .testimonial-carousel-item.active {
        display: block;
        opacity:1;
    }
    /* Intro cover for internal pages */
    .page-cover {
      height: 40vh; /* Shorter than the homepage hero */
      background-size: cover;
      background-position: center;
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      color: white;
      text-shadow: 2px 2px 4px rgba(0,0,0,0.5);
    }
    .page-cover::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.4); /* Dark overlay */
        z-index: 1;
    }
    .page-cover .content {
        position: relative;
        z-index: 2;
        text-align: center;
    }
    [data-animate] { transform: translateY(50px); transition: all 1s ease-out; }
    [data-animate].animate { opacity:1; transform: translateY(0); }

    
