/* ── Marquee (infinite scroll) for .is-style-marquee on core/group ── */

.is-style-marquee {
	overflow: hidden;
	-ms-overflow-style: none;
	scrollbar-width: none;
}

.is-style-marquee::-webkit-scrollbar {
	display: none;
}

/* Inner flex container */
.is-style-marquee > .wp-block-group {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 2rem;
}

/* Logo sizing */
.is-style-marquee img {
	height: 1.5rem;
	width: auto;
	flex-shrink: 0;
	object-fit: contain;
}

/* ── Mobile only: animate ── */
@media (max-width: 767px) {
	.is-style-marquee > .wp-block-group {
		width: max-content;
		animation: marquee 20s linear infinite;
		will-change: transform;
		backface-visibility: hidden;
	}

	.is-style-marquee:hover > .wp-block-group {
		animation-play-state: paused;
	}
}

@keyframes marquee {
	from {
		transform: translate3d(0, 0, 0);
	}

	to {
		transform: translate3d(-50%, 0, 0);
	}
}

/* ── Desktop: static layout ── */
@media (min-width: 768px) {
	.is-style-marquee > .wp-block-group {
		flex-wrap: wrap;
		justify-content: center;
		gap: 3rem;
	}

	.is-style-marquee img {
		height: 2rem;
	}
}

/* Accessibility: disable animation for users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
	.is-style-marquee > .wp-block-group {
		animation: none;
	}
}
