/* VTV clients / partners — slideshow ngang liên tục */
.clients-section.vtv-clients-section {
	position: relative;
	overflow: hidden;
	padding: 56px 0 72px;
	background: #ffffff;
}

.clients-section.vtv-clients-section::before,
.clients-section.vtv-clients-section::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	width: 72px;
	z-index: 2;
	pointer-events: none;
}

.clients-section.vtv-clients-section::before {
	left: 0;
	background: linear-gradient(90deg, #ffffff 0%, transparent 100%);
}

.clients-section.vtv-clients-section::after {
	right: 0;
	background: linear-gradient(270deg, #ffffff 0%, transparent 100%);
}

.vtv-clients-marquee {
	display: flex;
	flex-wrap: nowrap;
	width: max-content;
	will-change: transform;
	animation: vtv-clients-scroll var(--vtv-clients-duration, 40s) linear infinite;
}

.vtv-clients-marquee:hover {
	animation-play-state: paused;
}

.vtv-clients-group {
	display: flex;
	flex-shrink: 0;
	align-items: center;
	gap: clamp(32px, 4vw, 52px);
	padding: 0 20px;
}

.vtv-client-item {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 120px;
	height: 120px;
	padding: 0;
	background: transparent;
	border: none;
}

.vtv-client-item img {
	display: block;
	width: 120px;
	height: 120px;
	border-radius: 50%;
	object-fit: contain;
	object-position: center center;
	background: #ffffff;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
	font-size: 0;
	color: transparent;
}

.vtv-client-item img[src=""],
.vtv-client-item img:not([src]) {
	visibility: hidden;
}

@keyframes vtv-clients-scroll {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(var(--vtv-clients-scroll-end, -50%));
	}
}

@media (max-width: 991px) {
	.vtv-client-item,
	.vtv-client-item img {
		width: 90px;
		height: 90px;
	}
}

@media (max-width: 575px) {
	.clients-section.vtv-clients-section {
		padding: 40px 0 52px;
	}

	.vtv-clients-group {
		gap: 20px;
	}

	.vtv-client-item,
	.vtv-client-item img {
		width: 60px;
		height: 60px;
	}
}
