
    .bh-hero {
      position: relative;
      width: 100%;
      height: 80vh;
      max-height: 700px;
      min-height: 480px;
      overflow: hidden;
      display: flex;
      align-items: center;
      justify-content: center;
    }
.multimedia-banner{
  position: relative;
  top: 38px;
  margin-bottom: 40px;
}
    /* Background layer */
    .bh-hero__bg {
      position: absolute;
      inset: 0;
      z-index: 0;
    }

    /* Sizing for img and video media — display controlled by -desktop/-mobile classes */
    .bh-hero__bg img,
    .bh-hero__bg video {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      /* display intentionally omitted — controlled by .bh-hero__bg-desktop / .bh-hero__bg-mobile */
    }

    /* Desktop media shown by default, mobile hidden */
    .bh-hero__bg-desktop { display: block; }
    .bh-hero__bg-mobile  { display: none; }

    /* ── Carousel ─────────────────────────────────────────────────────────── */

    /* Carousel wrapper also carries .bh-hero__bg-desktop or .bh-hero__bg-mobile */
    .bh-carousel {
      width: 100%;
      height: 100%;
      position: relative;
      overflow: hidden;
    }

    .bh-carousel__slide {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      display: block;
      opacity: 0;
      transition: opacity 0.8s ease-in-out;
    }

    .bh-carousel__slide--active {
      opacity: 1;
    }

    /* Indicator dots — outside .bh-hero__bg so they sit above the overlay */
    .bh-hero__indicators {
      position: absolute;
      bottom: 24px;
      left: 50%;
      transform: translateX(-50%);
      z-index: 3;
      display: flex;
      align-items: center;
      gap: 0;
    }

    .bh-hero__indicator-group {
      display: flex;
      gap: 8px;
    }

    /* Mobile group hidden on desktop, desktop group hidden on mobile */
    .bh-hero__indicator-group[data-for="mobile"] { display: none; }

    .bh-carousel__dot {
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: rgba(255, 255, 255, 0.45);
      border: 1.5px solid rgba(255, 255, 255, 0.7);
      cursor: pointer;
      padding: 0;
      transition: background 0.3s ease, transform 0.2s ease;
      flex-shrink: 0;
    }

    .bh-carousel__dot--active {
      background: #ffffff;
      transform: scale(1.25);
    }

    /* Subtle gradient overlay */
    .bh-hero__overlay {
      position: absolute;
      inset: 0;
      z-index: 1;
      background: linear-gradient(
        to top,
        rgba(0, 0, 0, 0.45) 0%,
        rgba(0, 0, 0, 0.15) 40%,
        rgba(0, 0, 0, 0.05) 100%
      );
    }

    /* Text content */
    .bh-hero__content {
      position: relative;
      z-index: 2;
      text-align: center;
      max-width: 780px;
      padding: 0 24px;
      transform: translateY(10%);
    }

    .bh-hero__heading {
      font-family: "Playfair Display", serif;
      font-style: italic;
      font-weight: 400;
     font-size: 38px;
     line-height: 101%;
      color: #fff;
      letter-spacing: -3%;
      max-width: 730px;
      margin-bottom: 16px;
      text-shadow: 0 2px 20px rgba(0, 0, 0, 0.3);
    }

    .bh-hero__subtitle {
      font-family: Archivo;
      font-weight: 300;
      font-size: 26px;
      line-height: 101%;
      color: #fff;
      letter-spacing: 0.02em;
      text-shadow: 0 1px 12px rgba(0, 0, 0, 0.25);
    }

    /* ─── Mobile ─── */
    @media (max-width: 768px) {
      .bh-hero {
        height: 90svh;
        min-height: 560px;
        align-items: center;
      }

      .bh-hero__bg-desktop { display: none; }
      .bh-hero__bg-mobile  { display: block; }

      /* Swap indicator groups on mobile */
      .bh-hero__indicator-group[data-for="desktop"] { display: none; }
      .bh-hero__indicator-group[data-for="mobile"]  { display: flex; }

      .bh-hero__indicators {
        bottom: 100px;
      }

      .bh-hero__overlay {
        background: linear-gradient(
          to top,
          rgba(0, 0, 0, 0.50) 0%,
          rgba(0, 0, 0, 0.10) 50%,
          rgba(0, 0, 0, 0.0) 100%
        );
      }

      .bh-hero__content {
        transform: translateY(65px);
        padding: 0 28px 80px;
        text-align: center;
      }

      .bh-hero__heading {
        font-size: 28px;
        margin-bottom: 12px;
      }

      .bh-hero__subtitle {
        font-size: 16px;
      }
    }

    /* ─── Large screens ─── */
    /* @media (min-width: 1400px) {
      .bh-hero {
        height: 70vh;
      }
      .bh-hero__content {
        max-width: 900px;
      }
    } */
