.ivlsv2-container {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: calc( (var(--ivlsv2-height) + var(--ivlsv2-gap)) * var(--ivlsv2-visible) );
}

.ivlsv2-track {
  display: flex;
  flex-direction: column;
  align-items: center;
  animation: ivlsv2-scroll var(--ivlsv2-speed) linear infinite;
  will-change: transform;
}

.ivlsv2-container:hover .ivlsv2-track {
  animation-play-state: paused;
}

.ivlsv2-item {
  padding-top: var(--ivlsv2-gap);
  padding-bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  box-sizing: border-box;
}

.ivlsv2-item img {
  max-height: var(--ivlsv2-height);
  width: auto;
  display: block;
  object-fit: contain;
}

@keyframes ivlsv2-scroll {
  0% { transform: translateY(0); }
  100% { transform: translateY(-50%); }
}

/* Responsive: reduce visible count on small screens */
@media (max-width: 767px) {
  .ivlsv2-container { height: calc( (var(--ivlsv2-height) + var(--ivlsv2-gap)) * max(1, calc(var(--ivlsv2-visible) - 1)) ); }
  .ivlsv2-item img { max-height: calc(var(--ivlsv2-height) / 1.3); }
}
