/* =========================================
   LOGO LOOP — Vanilla CSS
   ========================================= */

.logoloop {
  position: relative;
  overflow: hidden;
  --logoloop-gap: 60px;
  --logoloop-logoHeight: 52px;
  --logoloop-fadeColorAuto: #0a0a0a; /* matches dark site background */
}

/* Fade overlays */
.logoloop--fade::before,
.logoloop--fade::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: clamp(40px, 10%, 140px);
  pointer-events: none;
  z-index: 10;
}

.logoloop--fade::before {
  left: 0;
  background: linear-gradient(
    to right,
    var(--logoloop-fadeColor, var(--logoloop-fadeColorAuto)) 0%,
    rgba(0, 0, 0, 0) 100%
  );
}

.logoloop--fade::after {
  right: 0;
  background: linear-gradient(
    to left,
    var(--logoloop-fadeColor, var(--logoloop-fadeColorAuto)) 0%,
    rgba(0, 0, 0, 0) 100%
  );
}

/* Track (the moving strip) */
.logoloop__track {
  display: flex;
  width: max-content;
  will-change: transform;
  user-select: none;
  position: relative;
  z-index: 0;
  align-items: center;
}

/* Each cloned sequence list */
.logoloop__list {
  display: flex;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Individual logo item — fixed-size box so all logos look equal */
.logoloop__item {
  flex: 0 0 auto;
  width: 220px;
  height: 110px;
  padding: 14px 20px;
  margin-right: var(--logoloop-gap);
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}

.logoloop__item:last-child {
  margin-right: var(--logoloop-gap);
}

/* Logo image — fills the padded inner area, ratio preserved */
.logoloop__item img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  -webkit-user-drag: none;
  pointer-events: none;
  filter: grayscale(100%) brightness(2);
  opacity: 0.55;
  transition: filter 0.35s ease, opacity 0.35s ease, transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Hover — reveal color & lift */
.logoloop--scale-hover .logoloop__item:hover img {
  filter: grayscale(0%) brightness(1);
  opacity: 1;
  transform: scale(1.08);
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .logoloop__track {
    transform: translate3d(0, 0, 0) !important;
  }
  .logoloop__item img {
    transition: none !important;
  }
}
