.usal-sost-agenda-carousel,
.usal-sost-agenda-carousel * {
	box-sizing: border-box;
}

.usal-sost-agenda-carousel {
	--usal-sost-agenda-carousel-card-width: 310px;
	max-width: 100%;
	overflow: hidden;
}

.usal-sost-agenda-carousel__track {
	width: 100%;
	overflow: hidden;
}

.usal-sost-agenda-carousel__list {
	display: flex;
	align-items: stretch;
	width: max-content;
	margin: 0;
	padding: 0;
}

.usal-sost-agenda-carousel--moving .usal-sost-agenda-carousel__list {
	will-change: transform;
	animation: usal-sost-agenda-carousel-move var(--usal-sost-agenda-carousel-duration, 35s) linear infinite;
}

.usal-sost-agenda-carousel--pause:hover .usal-sost-agenda-carousel__list,
.usal-sost-agenda-carousel--pause:focus-within .usal-sost-agenda-carousel__list {
	animation-play-state: paused;
}

.usal-sost-agenda-carousel--single .usal-sost-agenda-carousel__list {
	justify-content: center;
	width: 100%;
}

.usal-sost-agenda-carousel--manual .usal-sost-agenda-carousel__track {
	overflow-x: auto;
}

.usal-sost-agenda-carousel__slide {
	display: flex;
	flex: 0 0 var(--usal-sost-agenda-carousel-card-width);
	width: var(--usal-sost-agenda-carousel-card-width);
	height: auto;
	margin: 0;
	padding: 8px;
}

.usal-sost-agenda-carousel .usal-sost-agenda-card {
	height: 100%;
}

.usal-sost-agenda-carousel__empty {
	margin: 0;
	padding: 20px;
	color: #66736d;
	text-align: center;
}

@keyframes usal-sost-agenda-carousel-move {
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
}

@media (max-width: 576px) {
	.usal-sost-agenda-carousel {
		--usal-sost-agenda-carousel-card-width: min(290px, calc(100vw - 64px));
		padding-inline: 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	.usal-sost-agenda-carousel--moving .usal-sost-agenda-carousel__list {
		animation: none;
	}
}
