/* Custom CSS for Hero section rotation */
.hero-line1-wrap {
  position: relative;
  height: clamp(50px, 8.5vw, 110px);
  margin-bottom: 6px;
}

.hero-line1-slide {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  font-size: clamp(40px, 8vw, 130px);
  font-weight: 800;
  line-height: clamp(45px, 8.5vw, 110px);
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #fff;
  opacity: 0;
  transform: translateY(40px);
  transition: opacity .5s ease, transform .3s ease;
  white-space: nowrap;
}

.hero-line1-slide.active {
  opacity: 1;
  transform: translateY(0);
}

.hero-line1-slide.exit-up {
  opacity: 0;
  transform: translateY(-40px);
}

/* Fix for overlapping multi-line headings in service details */
.since-heading {
  line-height: 1 !important;
  word-break: break-word;
}
@media (max-width: 768px) {
  .since-heading {
    font-size: clamp(32px, 8vw, 60px) !important;
    line-height: 1.1 !important;
  }
}

/* Service Carousel Images Uniformity & Responsiveness */
#owl-service .card-img {
  width: 100%;
  height: 250px;
  overflow: hidden;
  position: relative;
}
#owl-service .card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
@media (max-width: 768px) {
  #owl-service .card-img {
    height: 200px;
  }
}
