.wp-block-tpx-marquee-gallery {
	--tpx-marquee-gap: clamp(24px, 4vw, 72px);
	--tpx-marquee-height: 160px;
	--tpx-marquee-width: none;
	--tpx-marquee-mask-width: min(12%, 160px);
	box-sizing: border-box;
	width: 100%;
}

.wp-block-tpx-marquee-gallery .tpx-marquee-gallery__viewport {
	-webkit-mask-image: linear-gradient(
		to right,
		transparent 0,
		#000 var(--tpx-marquee-mask-width),
		#000 calc(100% - var(--tpx-marquee-mask-width)),
		transparent 100%
	);
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: 100% 100%;
	mask-image: linear-gradient(
		to right,
		transparent 0,
		#000 var(--tpx-marquee-mask-width),
		#000 calc(100% - var(--tpx-marquee-mask-width)),
		transparent 100%
	);
	mask-repeat: no-repeat;
	mask-size: 100% 100%;
	overflow: hidden;
	width: 100%;
}

.wp-block-tpx-marquee-gallery .tpx-marquee-gallery__track {
	display: flex;
	flex-wrap: nowrap;
	width: max-content;
	will-change: transform;
}

.wp-block-tpx-marquee-gallery .tpx-marquee-gallery__group {
	align-items: center;
	display: flex;
	flex: 0 0 auto;
	gap: var(--tpx-marquee-gap);
	padding-inline-end: var(--tpx-marquee-gap);
}

.wp-block-tpx-marquee-gallery .tpx-marquee-gallery__item {
	flex: 0 0 auto;
	height: var(--tpx-marquee-height);
	margin: 0;
}

.wp-block-tpx-marquee-gallery .tpx-marquee-gallery__image {
	display: block;
	height: 100%;
	max-height: var(--tpx-marquee-height);
	max-width: var(--tpx-marquee-width);
	object-fit: contain;
	width: auto;
}

@media (prefers-reduced-motion: reduce) {
	.wp-block-tpx-marquee-gallery .tpx-marquee-gallery__track {
		transform: none !important;
		will-change: auto;
	}
}
