/* Tunable hero height */
#home-hero { --hero-h: clamp(260px, 46vw, 560px); }

/* Full-width card */
#home-hero .card {
  border-radius: 0;
  background: #000;
}

/* Stable carousel height */
#homeHeroCarousel .carousel-inner {
  height: var(--hero-h);
  background: #000;
}

/* IMPORTANT: do NOT override Bootstrap display for slides */
#homeHeroCarousel .carousel-item {
  height: var(--hero-h);
  background: #000;
}

/* Media: image letterboxed, video fills */
#homeHeroCarousel .hero-image {
  height: var(--hero-h);
  width: 100%;
  object-fit: contain;     /* black bars, no crop */
  object-position: center;
  background: #000;
  display: block;
}

#homeHeroCarousel .hero-video {
  object-fit: cover;       /* cinematic fill for video */
}

/* Controls/indicators visible above media */
#homeHeroCarousel .carousel-control-prev,
#homeHeroCarousel .carousel-control-next,
#homeHeroCarousel .carousel-indicators {
  z-index: 5;
}
#homeHeroCarousel .carousel-indicators { margin-bottom: 0.75rem; }

/* Fullscreen behavior */
#homeHeroCarousel:-webkit-full-screen,
#homeHeroCarousel:fullscreen {
  width: 100vw;
  height: 100vh;
}
#homeHeroCarousel:-webkit-full-screen .carousel-inner,
#homeHeroCarousel:fullscreen .carousel-inner,
#homeHeroCarousel:-webkit-full-screen .carousel-item,
#homeHeroCarousel:fullscreen .carousel-item {
  height: 100vh;
}
#homeHeroCarousel:-webkit-full-screen .hero-image,
#homeHeroCarousel:fullscreen .hero-image {
  height: 100vh;
  width: 100vw;
  object-fit: contain;
  background: #000;
}
#homeHeroCarousel:-webkit-full-screen .hero-video,
#homeHeroCarousel:fullscreen .hero-video {
  object-fit: cover;
}

/* body {
  overflow-x: hidden;
} */