.ilc-6524-container {
	overflow: hidden;
	width: 100%;
	position: relative;
    /* Masking for fade effect on edges (optional but nice) */
    mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
    -webkit-mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent);
}

.ilc-6524-track {
	display: flex;
	width: max-content; /* Ensure track is as wide as its content */
    /* Gap is handled by inline style from controls */
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

.ilc-6524-item {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.ilc-6524-item img {
	display: block;
	height: auto;
    max-width: 100%;
    transition: all 0.3s ease;
}

/* Grayscale */
.ilc-grayscale .ilc-6524-item img {
	filter: grayscale(100%);
}

.ilc-grayscale .ilc-6524-item:hover img {
	filter: grayscale(0%);
    opacity: 1 !important; /* Force opacity on hover */
}

/* Animations */
.ilc-dir-left .ilc-6524-track {
    animation-name: ilc-scroll-left-6524;
}

.ilc-dir-right .ilc-6524-track {
    animation-name: ilc-scroll-right-6524;
}

/* Pause on Hover */
.ilc-pause-hover:hover .ilc-6524-track {
	animation-play-state: paused;
}

/* Keyframes - Move by -50% because we doubled the content */
@keyframes ilc-scroll-left-6524 {
	0% {
		transform: translateX(0);
	}
	100% {
		/* We must account for the gap in the translation if we want perfect seam
           However, percentage based translation (-50%) works if the track width is accurate to content.
           Since we used 2 sets, 50% is exactly one set.
           BUT, Flex gap adds extra space. 
           If gap is used, transform: translateX(calc(-50% - (var(--ilc-gap) / 2))) might be needed?
           Actually, with gap, the total width includes gaps.
           So moving -50% of the TOTAL width (which includes 2 sets + gaps) brings us to exactly the start of the second set.
        */
		transform: translateX(-50%);
	}
}

@keyframes ilc-scroll-right-6524 {
	0% {
		transform: translateX(-50%);
	}
	100% {
		transform: translateX(0);
	}
}
