/* ==========================================================================
   SECTION PARTNERS (port từ home.model.css + RightToLeftSlider)
   Sử dụng CSS marquee thay cho framer-motion useAnimationFrame
   ========================================================================== */

.home-partners {
  padding: 2.5rem 0;
  display: flex;
  flex-direction: column;
  gap: 3.44rem;
  align-items: center;
  overflow: hidden;
}

.home-partners__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  text-align: center;

  /* Entrance animation */
  opacity: 0;
  transform: translateY(20px);
  transition:
    opacity 0.5s ease,
    transform 0.5s ease;
}

.home-partners__head.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.home-partners__title {
  color: #000;
  text-align: center;
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 130%;
  text-transform: uppercase;
  margin: 0;
}

/* ===== Marquee container ===== */
.slider-container {
  overflow: hidden;
  width: 100%;
  position: relative;
}

.slider-track {
  display: flex;
  gap: 5rem;
  width: fit-content;
  --partners-speed: 30s;
  --partners-speed-hover: 60s;
  animation: partnersMarquee var(--partners-speed) linear infinite;
}

/* Hover speed handled by JS to avoid animation jump */

.slider-track .slide {
  flex-shrink: 0;
  width: 11.97981rem;
  height: 3.9215rem;
  display: flex;
  justify-content: center;
  align-items: center;
}

.slider-track .slide img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  filter: grayscale(0.05);
  transition: filter 0.3s ease;
}

.slider-track .slide:hover img {
  filter: grayscale(0);
}

/* Translate 50% vì track đã duplicate data 2 lần — loop liên tục mà không "nhảy" */
@keyframes partnersMarquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

/* ========================================================================
   MOBILE
   ======================================================================== */
@media (max-width: 768px) {
  .home-partners {
    padding: 2.31rem 0 2.31rem !important;
    gap: 1.25rem;
  }

  .home-partners__title {
    font-size: 1.25rem;
    padding: 0 1rem;
  }

  .slider-track {
    gap: 1.32rem;
    --partners-speed: 20s;
    --partners-speed-hover: 40s;
  }

  .slider-track .slide {
    width: 8rem;
    height: 3rem;
  }
}
