/* Slider styles (need CSS for transform animation) */
.slider-track {
  display: flex;
  transition: transform 0.4s ease-in-out;
}
.slide {
  min-width: 100%;
  max-width: 100%;
  position: relative;
  flex-shrink: 0;
  overflow: hidden;
}
.slide img {
  width: 100%;
  max-width: 100%;
  height: 350px;
  object-fit: cover;
  object-position: center;
  display: block;
}
@media (max-width: 768px) {
  .slide img {
    height: 280px;
  }
}
@media (max-width: 480px) {
  .slide img {
    height: 220px;
  }
}

/* FAQ accordion */
.faq-body {
  max-height: 0;
  overflow: hidden;
  transition:
    max-height 0.4s ease,
    padding 0.3s ease;
}
.faq-item.active .faq-body {
  max-height: 1000px;
  padding-top: 0;
  padding-bottom: 14px;
}
.faq-item.active .faq-header span {
  transform: rotate(45deg);
}

/* Hamburger animation */
.hamburger span {
  transition:
    transform 0.3s,
    opacity 0.3s;
}
.hamburger.active span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}
.hamburger.active span:nth-child(2) {
  opacity: 0;
}
.hamburger.active span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

/* Nav mobile */
#mainNav {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease;
}
#mainNav.open {
  max-height: 400px;
}
@media (min-width: 768px) {
  #mainNav {
    max-height: none !important;
    overflow: visible !important;
  }
}

/* Slider dots */
.slider-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #ddd;
  cursor: pointer;
  transition:
    background 0.3s,
    transform 0.2s;
}
.slider-dot:hover {
  background: #bbb;
}
.slider-dot.active {
  background: #e63674;
  transform: scale(1.3);
}

/* FAQ active state */
.faq-item.active {
  border-left-color: #e63674;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .slide img {
    height: 280px;
  }
  .slider-dot {
    width: 8px;
    height: 8px;
  }
}
@media (max-width: 480px) {
  .slide img {
    height: 220px;
  }
  .slider-btn {
    width: 30px;
    height: 30px;
    font-size: 14px;
  }
  .slider-btn.prev {
    left: 6px;
  }
  .slider-btn.next {
    right: 6px;
  }
}
