/* Clients Carousel Block — Self-contained styles */
:root {
	--color-bg-white: #ffffff;
	--color-primary: #2B6CB7;
	--font-heading: 'Poppins', sans-serif;
	--space-xl: 2rem;
	--space-2xl: 2.5rem;
	--space-3xl: 3rem;
	--max-width: 1280px;
	--transition-base: 0.3s ease;
}

.clients-carousel {
	background-color: var(--color-bg-white);
	padding: var(--space-3xl) 0 var(--space-2xl);
	overflow: hidden;
}

.clients-carousel__container {
	max-width: var(--max-width);
	margin: 0 auto;
	padding: 0 var(--space-xl);
}

.clients-carousel__heading {
	color: var(--color-primary);
	font-family: var(--font-heading);
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	text-align: left;
	margin: 0 0 var(--space-xl);
}

.clients-carousel__wrapper {
	overflow: hidden;
	position: relative;
}

.clients-carousel__track {
	display: flex;
	gap: 5rem;
	animation: clients-scroll-logos 30s linear infinite;
	will-change: transform;
}

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

.clients-carousel__item {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 150px;
}

.clients-carousel__item img {
	min-height: 80px;
	max-height: 80px;
	width: auto;
	max-width: 200px;
	object-fit: contain;
	transition: all var(--transition-base);
}

.clients-carousel__item img:hover {
	transform: scale(1.05);
}

@keyframes clients-scroll-logos {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-50%);
	}
}

/* Responsive */
@media screen and (max-width: 768px) {
	.clients-carousel {
		padding: var(--space-3xl) 0;
	}

	.clients-carousel__heading {
		margin: 0 0 var(--space-2xl);
	}

	.clients-carousel__track {
		gap: var(--space-2xl);
	}

	.clients-carousel__item {
		min-width: 120px;
	}

	.clients-carousel__item img {
		max-height: 40px;
		max-width: 120px;
	}
}
