/**
 * Sponsor Logo Carousel — styles front-end
 */

.slc-carousel {
	position: relative;
	width: 100%;
	max-width: 100%;
	margin: 0 auto;
	overflow: hidden;
}

/* Fenêtre visible : masque ce qui dépasse à gauche/droite */
.slc-viewport {
	overflow: hidden;
	width: 100%;
}

/* Piste défilante : une simple ligne flex, dupliquée par le JS
   pour créer un défilement continu et sans coupure. */
.slc-track {
	display: flex;
	align-items: center;
	list-style: none;
	margin: 0;
	padding: 0;
	width: max-content;
	will-change: transform;
}

.slc-item {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
}

.slc-track a {
	display: block;
	line-height: 0;
}

.slc-track img {
	display: block;
	max-width: none; /* la hauteur pilote la taille, la largeur suit le ratio */
	height: 80px;    /* valeur de secours ; écrasée par le contrôle Elementor */
	width: auto;
	object-fit: contain;
	transition: opacity 0.25s ease, filter 0.25s ease, transform 0.2s ease;
}

.slc-track a:hover img,
.slc-track a:focus-visible img {
	filter: none;
}

/* Accessibilité clavier : contour visible au focus */
.slc-track a:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
	border-radius: 2px;
}

/* Les copies dupliquées par le JS ne doivent pas être lues deux fois
   par les lecteurs d'écran ni être atteignables au clavier. */
.slc-item[aria-hidden="true"] a {
	pointer-events: none;
}

/* Respecte les préférences système "réduire les animations" */
@media (prefers-reduced-motion: reduce) {
	.slc-track {
		transform: none !important;
		flex-wrap: wrap;
		justify-content: center;
		width: 100%;
	}
}

/* État "en pause" appliqué par le JS (survol / clic tactile) :
   purement informatif, l'arrêt réel est géré en JS via requestAnimationFrame. */
.slc-carousel.slc-is-paused .slc-track {
	cursor: pointer;
}
