/* MZA Marquee — seamless ticker for text or logos */

.mza-marquee{
	width:100%;
	overflow:hidden;
}
.mza-marquee__inner{
	display:flex;
	align-items:center;
	gap:40px;
}
.mza-marquee__label{
	white-space:nowrap;
	flex:none;
	font-size:11.5px;
	letter-spacing:.14em;
	text-transform:uppercase;
	font-weight:600;
}

/* viewport clips the moving track; flex:1 lets it fill remaining width */
.mza-marquee__viewport{
	position:relative;
	flex:1 1 auto;
	min-width:0;
	overflow:hidden;
}
.mza-marquee--fade .mza-marquee__viewport{
	-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);
	        mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);
}

.mza-marquee__track{
	display:flex;
	align-items:center;
	width:max-content;
	animation:mza-scroll 28s linear infinite;
	will-change:transform;
}
.mza-marquee--right .mza-marquee__track{
	animation-direction:reverse;
}
.mza-marquee--pause:hover .mza-marquee__track{
	animation-play-state:paused;
}

.mza-marquee__item{
	white-space:nowrap;
	display:inline-flex;
	align-items:center;
	margin-right:60px;            /* gap lives on the item so the loop seam is even */
	font-family:'Bricolage Grotesque',sans-serif;
	font-weight:600;
	font-size:20px;
	line-height:1;
}
.mza-marquee__item img{
	height:30px;
	width:auto;
	max-width:none;
	object-fit:contain;
	display:block;
}

@keyframes mza-scroll{
	from{transform:translateX(0)}
	to{transform:translateX(-50%)}
}

/* accessibility: respect reduced motion */
@media (prefers-reduced-motion:reduce){
	.mza-marquee__track{animation:none;}
	.mza-marquee--fade .mza-marquee__viewport{overflow-x:auto;}
}

/* small screens: stack the label above the track */
@media (max-width:767px){
	.mza-marquee__inner{flex-direction:column;align-items:flex-start;gap:16px;}
	.mza-marquee__viewport{width:100%;}
}
