.destinations-carousel-section {
  background-color: var(--bs-light);
  padding: 60px 0;
}

.destinations-carousel-container {
  margin: 0 auto;
  padding: 0 15px;
}

.destinations-carousel-title {
  text-align: center;
  color: var(--bs-primary);
  font-size: 2.5rem;
  font-weight: 700;
  margin-bottom: 30px;
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
}

.destinations-carousel {
  position: relative;
  margin: 40px auto;
  max-width: 1200px;
}

.carousel-inner {
  border-radius: 15px;
  overflow: hidden;
}

.carousel-item {
  height: 400px;
}

.carousel-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.destination-label {
  position: absolute;
  bottom: 30px;
  left: 30px;
  background-color: var(--bs-primary);
  color: white;
  padding: 10px 20px;
  border-radius: 5px;
  font-size: 1.5rem;
  font-weight: 600;
  text-transform: uppercase;
  z-index: 2;
}

.carousel-control-prev,
.carousel-control-next {
  width: 50px;
  height: 50px;
  background-color: rgba(255, 255, 255, 0.9);
  border-radius: 50%;
  top: 50%;
  transform: translateY(-50%);
  opacity: 1;
}

.carousel-control-prev {
  left: 20px;
}

.carousel-control-next {
  right: 20px;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  width: 24px;
  height: 24px;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 16 16'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23000' viewBox='0 0 16 16'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.carousel-indicators {
  bottom: -50px;
}

.carousel-indicators [data-bs-target] {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: var(--bs-primary);
  opacity: 0.5;
  border: none;
  margin: 0 6px;
}

.carousel-indicators .active {
  opacity: 1;
  background-color: var(--bs-success);
}

/* Responsive styles */
@media (max-width: 768px) {
  .carousel-item {
    height: 300px;
  }

  .destination-label {
    font-size: 1.2rem;
    bottom: 20px;
    left: 20px;
  }

  .carousel-control-prev,
  .carousel-control-next {
    width: 40px;
    height: 40px;
  }
}

@media (max-width: 576px) {
  .carousel-item {
    height: 250px;
  }

  .carousel-control-prev,
  .carousel-control-next {
    width: 35px;
    height: 35px;
  }
}
