.apple-carousel-section {
  background: #f5f5f7;
  padding: 80px 0;
}

.carousel-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 40px;
}

.carousel-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 40px;
}

.carousel-viewport {
  overflow-x: auto;
  scroll-behavior: smooth;
  scrollbar-width: none; /* Firefox */
}

.carousel-viewport::-webkit-scrollbar {
  display: none; /* Chrome */
}

.carousel-track {
  display: flex;
  gap: 30px;
  scroll-snap-type: x mandatory;
}

/* DESKTOP: 3.5 cards */
.carousel-card {
  flex: 0 0 calc((100% - 90px) / 3.5);
  scroll-snap-align: start;
  background: #fff;
  border-radius: 28px;
  padding: 30px;
}

/* NAV */
.carousel-nav {
  display: flex;
  justify-content: flex-end;
  gap: 15px;
  margin-top: 40px;
}

.carousel-nav button {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: none;
  background: #e5e5ea;
  font-size: 20px;
  cursor: pointer;
}

/* MOBILE */
@media (max-width: 768px) {

  .carousel-inner {
    padding: 0 20px;
  }

  .carousel-card {
    flex: 0 0 90%;
  }

}


/*  OLD OLD OLD
/* Customize carousel control icons 
.carousel-control-prev-icon,
.carousel-control-next-icon {
  background-size: 100% 100%;
  background-color: #1953A0; /* yellow background 
  border-radius: 50%;
  padding: 20px; /* make them larger 
}

/* Change the arrow (SVG) color to white 
.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23ffffff' 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;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23ffffff' 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 layout 
#servicesCarousel {
  position: relative;
  padding: 1.25rem 0;
}

.carousel-item .row {
  display: flex;
  justify-content: center;
  gap: 20px;
  align-items: stretch; /* cards same height 
}

/* Ensure each column doesn't shrink 
.carousel-item .col-md-4 {
  flex: 0 0 auto;
  max-width: 360px; /* ajusta si quieres más ancho 
}

/* Card styling - keep existing .service-card rules but ensure full width in column 
.service-card {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  box-shadow: 0 4px 10px rgba(0,0,0,0.08);
  border-radius: 10px;
  background-color: #EDEDED;
}

/* Make images consistent 
.service-card img {
  height: 160px;
  object-fit: cover;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

/* Card button 
.card-btn {
  border-radius: 20px !important;
  color: #fff;
  background-color: #1953A0;
}
  */


