.logo-marquee {
  padding: 32px 48px;
  margin: 0 auto;
  display: flex;
  flex-direction:column;
  position: relative;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}

.logo-marquee-wrap {
  position: relative;
  width: 100%;
}

.logo-marquee-inner {
  display: flex;
  gap: 64px;
  width: 100vw;
  top: 50%;
  left: 50%;
  transform: translateY(-50%);
  margin-left: -50vw;
}

.logo-marquee-inner img {
  flex-shrink: 0;
}

.logo-marquee-inner {
  animation-duration: 30s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  align-items: center;
}

.marquee-1 .logo-marquee-inner {
  --slide-end: 0px;
  animation-name: slideLeft;
  animation-duration: 50s;
}

@media screen and (max-width: 768px) {
  .logo-marquee {
    padding-left: 24px;
    padding-right: 24px;
  }
}

@keyframes slideLeft {
  0%   {transform: translateX(0);}
  100% {transform: translateX( var(--slide-end, 0) );}
}