/* --- Image tag based responsive carousel --- */
#carouselExampleIndicators,
#carouselExampleIndicators .carousel-inner,
#carouselExampleIndicators .carousel-item {
  width: 100%;
  height: auto;
  position: relative;
  overflow: hidden;
}

#carouselExampleIndicators .carousel-item img {
  width: 100%;
  height: auto;             /* let image define height */
  max-height: 900px;
  object-fit: contain;      /* avoid cropping */
  object-position: center;
  display: block;
  position: relative;       /* remove absolute positioning to prevent cropping */
}

/* caption (desktop center) */
#carouselExampleIndicators .carousel-caption {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  z-index: 5;
  background: rgba(0,0,0,0.28);
  padding: 20px;
  border-radius: 10px;
}

/* tablet */
@media (max-width:1199.98px) {
  #carouselExampleIndicators .carousel-item { min-height: 280px; }
  #carouselExampleIndicators .carousel-caption { padding: 14px; }
}

/* mobile */
@media (max-width:767.98px) {
  #carouselExampleIndicators .carousel-item { min-height: 220px; }
  #carouselExampleIndicators .carousel-caption {
    position: relative;
    transform: none;
    left: auto;
    top: auto;
    width: calc(100% - 24px);
    margin: 8px auto;
    background: rgba(0,0,0,0.45);
    font-size: 0.95rem;
  }
}

#carouselExampleIndicators .carousel-control-prev,
#carouselExampleIndicators .carousel-control-next {
  z-index: 6;
  width: 6%;
  max-width: 64px;
}

#carouselExampleIndicators .carousel-control-prev {
  left: 2.5%;
}
#carouselExampleIndicators .carousel-control-next {
  right: 2.5%;
}
/* Default logo style */
.logo-wrap img {
  max-height: 60px;
  height: auto;
  width: auto;
  object-fit: contain;
}

/* Tablet adjustments (iPads and similar screens) */
@media (min-width: 768px) and (max-width: 1199.98px) {
  .logo-wrap img {
    max-height: 30px;
  }
}

/* Mobile adjustments */
@media (max-width: 767.98px) {
  .logo-wrap img {
    max-height: 35px;
  }
}

