/* ═══════════════════════════════════════════════════════════════════════════
   TEDUCAS Marquee Widget — Elementor
   ═══════════════════════════════════════════════════════════════════════════ */

.teducas-marquee-world,
.nh-marquee-world {
	perspective: 1000px;
	overflow: hidden;
	display: block;
	width: 100%;
}

.teducas-marquee-stage,
.nh-marquee-stage {
	transform-style: preserve-3d;
	transform: rotateX(var(--rotate-x, 0deg)) rotateY(var(--rotate-y, 0deg));
	transition: transform 0.3s ease;
}

.teducas-marquee-container,
.nh-marquee-container {
	overflow: hidden;
	white-space: nowrap;
	width: 100%;
	display: block;
}

.teducas-marquee-track,
.nh-marquee-track {
	display: flex;
	width: max-content;
	animation: teducas-marquee-scroll var(--teducas-marquee-duration, var(--nh-marquee-duration, 25s)) linear infinite;
	will-change: transform;
}

.teducas-marquee-group,
.nh-marquee-group {
	display: flex;
	align-items: center;
	flex-shrink: 0;
}

.teducas-marquee-item,
.nh-marquee-item {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	letter-spacing: inherit;
	text-decoration: none;
	color: inherit;
}

.teducas-marquee-icon,
.nh-marquee-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	flex-shrink: 0;
}

.teducas-marquee-icon i,
.nh-marquee-icon i,
.teducas-marquee-icon svg,
.nh-marquee-icon svg {
	display: inline-block;
	vertical-align: middle;
}

.teducas-marquee-icon svg,
.nh-marquee-icon svg {
	width: 1em;
	height: 1em;
}

.teducas-marquee-text,
.nh-marquee-text {
	display: inline;
	white-space: nowrap;
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	letter-spacing: inherit;
}

.teducas-marquee-separator,
.nh-marquee-separator {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0 24px;
	flex-shrink: 0;
	line-height: 1;
}

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

/* Pausar animación al hacer hover */
.teducas-marquee-container:hover .teducas-marquee-track,
.nh-marquee-container:hover .nh-marquee-track {
	animation-play-state: paused;
}

/* Accesibilidad: usuarios con `prefers-reduced-motion` no reciben la
   animación. La copia decorativa (aria-hidden) se oculta para no duplicar
   el contenido y el track deja de forzar una sola línea. */
@media (prefers-reduced-motion: reduce) {
	.teducas-marquee-container,
	.nh-marquee-container {
		white-space: normal;
	}

	.teducas-marquee-track,
	.nh-marquee-track {
		animation: none;
		flex-wrap: wrap;
		width: 100%;
		will-change: auto;
	}

	.teducas-marquee-group[aria-hidden="true"],
	.nh-marquee-group[aria-hidden="true"] {
		display: none;
	}
}
