/* Continuous Scroll Container Styles */
.continuous-scroll-wrapper {
  overflow: hidden;
  position: relative;
  width: 100%;
  display: flex;
  margin: 32px 0 0 0;
}

.continuous-scroll-wrapper > div {
  gap: 32px;
}

.continuous-scroll-wrapper .slider-nav {
  display: flex;
  align-items: center;
  gap: 30px;
  flex-shrink: 0;
}

.continuous-scroll-wrapper .brand-card {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.continuous-scroll-wrapper .brand-card img {
  max-height: 100px;
  width: auto;
  object-fit: contain;
  display: block;
}

/* Legacy support for old structure */
.continuous-scroll-container {
  overflow: hidden;
  position: relative;
  width: 100%;
}

.continuous-scroll-track {
  display: flex;
  align-items: center;
  gap: 30px;
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
}

.continuous-scroll-track .brand-card {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.continuous-scroll-track .brand-card img {
  max-height: 100px;
  width: auto;
  object-fit: contain;
  display: block;
}

/* ── Continuous marquee (CSS-driven, no Slick) ───────────────────────────── */
.brand-slider {
  overflow: hidden;
}

/* The animated track: just a flex row of two groups */
.continuous-marquee-track {
  display: flex !important;
  flex-wrap: nowrap;
  width: max-content !important;
  animation: continuous-marquee-ltr var(--marquee-duration, 20s) linear infinite;
}

.continuous-marquee-track.rtl {
  animation-name: continuous-marquee-rtl;
}

/* Each group carries its own gap — padding-right adds trailing space so the
   seam between group 1 and group 2 matches the inter-item spacing exactly. */
.marquee-group {
  display: flex;
  align-items: center;
  gap: 30px;
  flex-shrink: 0;
  padding-right: 30px; /* trailing gap = inter-item gap → seamless loop */
}

.marquee-group .brand-card {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.marquee-group .brand-card img {
  max-height: 100px;
  width: auto;
  object-fit: contain;
  display: block;
}

@keyframes continuous-marquee-ltr {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

@keyframes continuous-marquee-rtl {
  from {
    transform: translateX(-50%);
  }
  to {
    transform: translateX(0);
  }
}
