.pyrotech-trusted {
	background: #ffffff;
	padding: 78px 0 80px;
}

.pyrotech-trusted__layout {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: 48px;
}

.pyrotech-trusted__copy {
	flex: 0 0 40%;
	width: 40%;
	max-width: 40%;
	min-width: 0;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.pyrotech-trusted .heading-common {
	font-size: 40px;
	line-height: 120%;
	color: #111;
	margin: 0 0 24px;
	max-width: none;
}

.pyrotech-trusted .heading-common-light {
	display: block;
	font-weight: 400;
}

.pyrotech-trusted .heading-common-line--heavy {
	display: block;
	font-weight: 900;
	margin-top: 0.15em;
}

.pyrotech-trusted .heading-common-desc {
	line-height: 160%;
	color: #333;
	margin: 0;
}

/* Marquee column: ~60% remainder after 40% text + gap */
.pyrotech-trusted__marquee {
	position: relative;
	flex: 1 1 0;
	min-width: 0;
}

.pyrotech-trusted__fade {
	position: absolute;
	top: 0;
	bottom: 0;
	width: 100px;
	z-index: 2;
	pointer-events: none;
}

.pyrotech-trusted__fade--left {
	left: 0;
	background: linear-gradient(90deg, #ffffff 0%, rgba(255, 255, 255, 0) 100%);
}

/* Mirror: white on the right edge, fade to transparent toward center */
.pyrotech-trusted__fade--right {
	right: 0;
	background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
}

.pyrotech-trusted__rows {
	display: flex;
	flex-direction: column;
	gap: 16px;
	overflow: hidden;
}

.pyrotech-trusted__row {
	overflow: hidden;
	width: 100%;
}

/* Two identical groups side by side; -50% transform = one seamless loop */
.pyrotech-trusted__track {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	width: max-content;
	will-change: transform;
}

.pyrotech-trusted__track--ltr {
	animation: pyrotech-trusted-marquee-ltr 45s linear infinite;
}

.pyrotech-trusted__track--rtl {
	animation: pyrotech-trusted-marquee-rtl 45s linear infinite;
}

/* Row 1: motion left → right (track shifts rightward) */
@keyframes pyrotech-trusted-marquee-ltr {
	0% {
		transform: translateX(-50%);
	}
	100% {
		transform: translateX(0);
	}
}

/* Row 2: motion right → left (classic) */
@keyframes pyrotech-trusted-marquee-rtl {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-50%);
	}
}

.pyrotech-trusted__group {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	gap: 16px;
	flex-shrink: 0;
}

.pyrotech-trusted__card {
	width: 128px;
	height: 128px;
	flex-shrink: 0;
	border-radius: 10px;
	background-color: #f1f1f1;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
}

.pyrotech-trusted__card img {
	max-width: 85%;
	max-height: 85%;
	width: auto;
	height: auto;
	object-fit: contain;
	display: block;
}

@media (prefers-reduced-motion: reduce) {
	.pyrotech-trusted__track--ltr,
	.pyrotech-trusted__track--rtl {
		animation: none;
		transform: translateX(0);
	}
}

@media (max-width: 1024px) {
	.pyrotech-trusted__layout {
		flex-direction: column;
		align-items: flex-start;
		gap: 40px;
	}

	.pyrotech-trusted__copy {
		flex: 1 1 auto;
		width: 100%;
		max-width: none;
	}

	.pyrotech-trusted__marquee {
		width: 100%;
	}
}

@media (max-width: 640px) {
	.pyrotech-trusted {
		padding: 56px 0 60px;
	}

	.pyrotech-trusted .heading-common {
		font-size: 28px;
	}

	.pyrotech-trusted__fade {
		width: 48px;
	}
}
