.vt-wrapper {
	overflow: hidden;
	padding: 40px 0;
	display: flex;
	flex-direction: column;
	gap: 24px;
	mask-image: linear-gradient(
		to right,
		rgba(0, 0, 0, 0) 0%,
		rgb(0, 0, 0) 12.5%,
		rgb(0, 0, 0) 87.5%,
		rgba(0, 0, 0, 0) 100%
	);
	-webkit-mask-image: linear-gradient(
		to right,
		rgba(0, 0, 0, 0) 0%,
		rgb(0, 0, 0) 12.5%,
		rgb(0, 0, 0) 87.5%,
		rgba(0, 0, 0, 0) 100%
	);
}

.vt-marquee-track {
	overflow: hidden;
	width: 100%;
}

.vt-marquee-list {
	display: flex;
	gap: 24px;
	list-style: none;
	margin: 0;
	padding: 10px;
	width: max-content;
	align-items: flex-start;
}

.vt-scroll-left {
	animation: vt-slide-left var(--vt-speed, 40s) linear infinite;
}

.vt-scroll-right {
	animation: vt-slide-right var(--vt-speed, 40s) linear infinite;
}

@keyframes vt-slide-left {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-50%);
	}
}

@keyframes vt-slide-right {
	0% {
		transform: translateX(-50%);
	}
	100% {
		transform: translateX(0);
	}
}

.vt-card {
	flex-shrink: 0;
	width: 423px;
	min-height: 183px;
	background-color: #f4f5f7;
	border-radius: 16px;
	padding: 24px;
	display: flex;
	flex-direction: column;
	gap: 12px;
	box-sizing: border-box;
}

.vt-quote-icon {
	color: #a7dafc;
	flex-shrink: 0;
}

.vt-text {
	font-family: -apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 15px;
	line-height: 150%;
	color: rgb(62, 65, 80);
	margin: 0;
}

/* Pause on hover */
.vt-wrapper:hover .vt-marquee-list {
	animation-play-state: paused;
}

/* Responsive */
@media (max-width: 768px) {
	.vt-card {
		width: 300px;
		min-height: 150px;
		padding: 20px;
	}

	.vt-text {
		font-size: 14px;
	}

	.vt-wrapper {
		gap: 16px;
		padding: 24px 0;
	}
}

/* Accessibility: reduce motion */
@media (prefers-reduced-motion: reduce) {
	.vt-scroll-left,
	.vt-scroll-right {
		animation: none;
	}

	.vt-marquee-track {
		overflow-x: auto;
	}
}
