.morina-brand-slider {
  --logo-gap: 40px;
  --logo-width: 220px;
  --logo-height: 90px;
  --logo-max-height: 60px;
  --scroll-duration: 38s;

  width: 100%;
  overflow: hidden;
  background: #fff;
  padding: 20px 0;
  position: relative;
}

.morina-brand-track {
  display: flex;
  align-items: center;
  width: max-content;
  gap: var(--logo-gap);
  will-change: transform;
  animation: morinaBrandMarquee var(--scroll-duration) linear infinite;
}

.morina-brand-slider:hover .morina-brand-track {
  animation-play-state: paused;
}

.morina-brand-item {
  flex: 0 0 auto;
  width: var(--logo-width);
  height: var(--logo-height);
  display: flex;
  align-items: center;
  justify-content: center;
}

.morina-brand-item img {
  display: block;
  max-width: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.morina-brand-item:hover img {
  transform: scale(1.03);
  opacity: 0.92;
}

@keyframes morinaBrandMarquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(calc(-1 * var(--loop-width, 50%)));
  }
}

/* RTL */
html[dir="rtl"] .morina-brand-track,
body.rtl .morina-brand-track,
.morina-brand-slider[dir="rtl"] .morina-brand-track {
  animation-name: morinaBrandMarqueeRTL;
}

@keyframes morinaBrandMarqueeRTL {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(var(--loop-width, 50%));
  }
}

@media (max-width: 991px) {
  .morina-brand-slider {
    --logo-gap: 28px;
    --logo-width: 180px;
    --logo-height: 80px;
    --logo-max-height: 52px;
  }
}

@media (max-width: 575px) {
  .morina-brand-slider {
    --logo-gap: 20px;
    --logo-width: 140px;
    --logo-height: 70px;
    --logo-max-height: 44px;
    padding: 16px 0;
  }
}