/* Owl Carousel — Kayisaki custom theme */

.k2-owl-wrap,
.owl-wrap {
  position: relative;
  padding: 0 0 3rem;
}

.k2-owl-wrap--reviews,
.owl-wrap--reviews {
  padding-bottom: 2rem;
}

.owl-carousel .owl-stage-outer {
  padding: 1rem 0 2.5rem;
}

.owl-carousel .owl-item {
  opacity: 0.55;
  transform: scale(0.92);
  transition: opacity 0.45s ease, transform 0.45s ease;
}

.owl-carousel .owl-item.active {
  opacity: 1;
  transform: scale(1);
}

.owl-carousel .owl-item.active.center {
  opacity: 1;
  transform: scale(1.02);
}

/* Cards inside carousel */
.owl-card {
  height: 100%;
  margin: 0 auto;
  max-width: 380px;
}

/* V2 fleet card structure */
.k2-fleet-card__img {
  position: relative;
  aspect-ratio: 3/2;
  overflow: hidden;
  border-radius: 16px 16px 0 0;
}
.k2-fleet-card__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.owl-card:hover .k2-fleet-card__img img {
  transform: scale(1.06);
}
.k2-fleet-card__tag {
  position: absolute;
  top: 12px;
  left: 12px;
  padding: 0.35rem 0.75rem;
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  background: linear-gradient(135deg, #7c3aed, #f97316);
  color: #fff;
  border-radius: 999px;
}
.k2-fleet-card__body {
  padding: 1.25rem;
  background: #fff;
  border-radius: 0 0 16px 16px;
  border: 1px solid rgba(26, 34, 52, 0.1);
  border-top: none;
}
.k2-fleet-card__body h3 {
  font-size: 1.1rem;
  margin-bottom: 0.35rem;
  color: #1a2234;
}
.k2-fleet-card__specs {
  font-size: 0.85rem;
  color: #f97316;
  margin-bottom: 0.35rem;
}
.k2-fleet-card__desc,
.k2-fleet-card__rate {
  font-size: 0.82rem;
  color: #556275;
  margin-bottom: 0.35rem;
}
.k2-fleet-card__link {
  font-weight: 600;
  font-size: 0.9rem;
  color: #7c3aed;
}

/* V2 review cards */
.k2-review-card {
  padding: 2rem 1.75rem;
  background: #fff;
  border: 1px solid rgba(26, 34, 52, 0.1);
  border-radius: 20px;
  text-align: center;
  min-height: 220px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.k2-review-card__stars {
  color: #f97316;
  font-size: 1.1rem;
  letter-spacing: 0.15em;
  margin-bottom: 1rem;
}
.k2-review-card p {
  font-style: italic;
  color: #556275;
  margin-bottom: 1rem;
  line-height: 1.7;
}
.k2-review-card cite {
  font-style: normal;
  font-weight: 600;
  color: #7c3aed;
  font-size: 0.9rem;
}

/* V1 extras */
.vehicle-desc,
.vehicle-rate {
  font-size: 0.85rem;
  color: var(--text-muted);
  padding: 0 1rem;
}
.vehicle-rate {
  color: var(--orange-light);
  font-weight: 600;
}
.review p,
.owl-card.review p {
  color: #e2e8f0;
}
.review cite,
.owl-card.review cite {
  color: #7dd3fc;
}
.review-stars {
  color: #38bdf8;
  letter-spacing: 0.12em;
  margin-bottom: 0.75rem;
  font-size: 1rem;
}

/* Nav buttons — unified */
.owl-carousel .owl-nav {
  position: absolute;
  top: 42%;
  width: 100%;
  transform: translateY(-50%);
  pointer-events: none;
}
.owl-carousel .owl-nav button {
  pointer-events: all;
  width: 48px;
  height: 48px;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #0ea5e9, #38bdf8) !important;
  color: #fff !important;
  font-size: 1.75rem !important;
  line-height: 1 !important;
  margin: 0 !important;
  box-shadow: 0 8px 28px rgba(14, 165, 233, 0.35);
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}
.owl-carousel .owl-nav button:hover {
  transform: scale(1.08);
  box-shadow: 0 12px 36px rgba(14, 165, 233, 0.45);
}
.owl-carousel .owl-nav .owl-prev { position: absolute; left: -8px; }
.owl-carousel .owl-nav .owl-next { position: absolute; right: -8px; }

@media (max-width: 768px) {
  .owl-carousel .owl-nav .owl-prev { left: 0; }
  .owl-carousel .owl-nav .owl-next { right: 0; }
  .owl-carousel .owl-nav button {
    width: 40px;
    height: 40px;
    font-size: 1.4rem !important;
  }
}

/* Dots */
.owl-carousel .owl-dots {
  margin-top: 0.5rem;
}
.owl-carousel .owl-dot span {
  width: 10px;
  height: 10px;
  background: rgba(56, 189, 248, 0.35) !important;
  transition: transform 0.3s, background 0.3s;
}
.owl-carousel .owl-dot.active span,
.owl-carousel .owl-dot:hover span {
  background: linear-gradient(90deg, #0ea5e9, #38bdf8) !important;
  transform: scale(1.2);
}

/* Dark sections (V1 fleet/reviews) */
.section-dark .owl-carousel .owl-dot span {
  background: rgba(255, 255, 255, 0.25) !important;
}
.section-dark .k2-review-card,
.section-dark .vehicle-card {
  background: var(--bg);
}

.k2-section--soft .owl-card.k2-fleet-card {
  box-shadow: 0 16px 48px rgba(26, 34, 52, 0.12);
}


/* Fleet carousel — no center zoom; left-aligned cards */
.owl-fleet--v1.owl-carousel .owl-item,
.owl-fleet--v1.owl-carousel .owl-item.active,
.owl-fleet--v1.owl-carousel .owl-item.active.center {
  opacity: 1;
  transform: none;
}
.owl-fleet--v1 .owl-card {
  margin: 0;
  max-width: none;
  text-align: left;
}
.owl-fleet--v1 .vehicle-card h3,
.owl-fleet--v1 .vehicle-card .specs,
.owl-fleet--v1 .vehicle-card a,
.owl-fleet--v1 .vehicle-desc,
.owl-fleet--v1 .vehicle-rate {
  text-align: left;
}
