:root {
    --marquee-width: 100%;
    --marquee-height: 40vh;
    --marquee-elements: 62; /* defined with JavaScript */
    --marquee-elements-displayed: 2;
    --marquee-element-width: calc(var(--marquee-width) / var(--marquee-elements-displayed));
    --marquee-animation-duration: calc(var(--marquee-elements) * 5s);
}

@media(min-width: 992px) {
  :root {
    --marquee-elements-displayed: 4;
  }
}
  
.marquee-container {
  width: 100%;
  border-top: 3px solid var(--brand-2); 
  border-bottom: 3px solid var(--brand-2);
}

.marquee {
  width: var(--marquee-width);
  max-width: var(--marquee-width);
  height: fit-content;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  position: relative;
}

.marquee:before, .marquee:after {
  position: absolute;
  top: 0;
  width: 10rem;
  height: 100%;
  content: "";
  z-index: 1;
}

.marquee-content {
  list-style: none;
  margin-bottom: 0 !important;
  height: 100%;
  display: flex;
  animation: scrolling var(--marquee-animation-duration) linear infinite;

  .marquee-item {
    width: 100%;
  }
}

.marquee-content:has(img:hover) {
  animation-play-state: paused;
}

@media(min-width: 662px) {
  .marquee-item {
    width: 33% !important;
  }
}

@media(min-width: 992px) {
  .marquee-container {
    width: 80%;
  }

  .marquee-item {
    width: 25% !important;
  }
}

  /* .marquee-content:hover {
    animation-play-state: paused;
  } */
  @keyframes scrolling {
    0% { transform: translateX(0); }
    100% { transform: translateX(calc(-1 * ((var(--marquee-element-width) * var(--marquee-elements)) - (var(--marquee-element-width) * var(--marquee-elements-displayed))))); }
  }
  .marquee-content li {
    display: flex;
    justify-content: center;
    align-items: center;
    /* text-align: center; */
    flex-shrink: 0;
    width: var(--marquee-element-width);
    /* padding: 3%; */
    padding: 25px 8px;
    max-height: 100%;
    font-size: calc(var(--marquee-height)*3/4); /* 5rem; */
    white-space: nowrap;
  }
  
  .marquee-content li img {
    width: 100%;
  }

  @media(min-width: 992px) {
    .marquee:before {
      left: 0;
      background: linear-gradient(to right, var(--bg-1) 10%, transparent 100%);
      pointer-events: none;
    }
    .marquee:after {
      right: 0;
      background: linear-gradient(to left, var(--bg-1) 10%, transparent 100%);
      pointer-events: none;
    }
  }
 
  @media (max-width: 1200px) {
    html { font-size: 12px; }
    :root {
      --marquee-elements-displayed: 2;
    }
  }

@media (max-width: 600px) {
  html { font-size: 12px; }
  :root {
    --marquee-width: 100vw;
    --marquee-height: 75vh;
    --marquee-elements-displayed: 1;
  }
}