@keyframes slide {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(calc(-1 * var(--scroll-width)));
    }
}

.carousel__logos {
    overflow: hidden;
    position: relative;
    width: 100%;
    background: #fff;
}

.carousel__logos::before,
.carousel__logos::after {
  content: "";
  position: absolute;
  top: 0;
  width: 150px;
  height: 100%;
  pointer-events: none;
  z-index: 2;
}

.carousel__logos::before {
  left: 0;
  background: linear-gradient(to left, rgba(255,255,255,0), white);
}

.carousel__logos::after {
  right: 0;
  background: linear-gradient(to right, rgba(255,255,255,0), white);
}

.carousel__logos-track {
    display: flex;
    width: max-content;
    gap: 40px;

    animation-name: slide;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

.carousel__logos:hover .carousel__logos-track {
  animation-play-state: paused;
  cursor: none;
}

.carousel__logo img {
    display: block;
    height: 100px;
    width: auto;
    max-width: 100%;
    flex-shrink: 0;
}

@media (max-width: 768px) {
    .carousel {
        display: none;
    }
}
