/* Đối tác (B3) – trust/logo-strip: dải logo xám (hiện màu khi rê chuột/focus) và một trích dẫn ban tổ chức.
 * Chỉ dùng biến --vh-*. Mobile trước. */

.vh-trust {
	display: grid;
	gap: clamp(24px, 4vw, 40px);
}

.vh-trust > .vh-section-head {
	margin-bottom: 0;
}

.vh-trust__demo {
	margin: 0;
}

.vh-trust__logos {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.vh-trust__logo {
	min-width: 0;
}

.vh-trust__in {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	height: 100%;
	min-height: 88px;
	padding: 12px 16px;
	border: 1px solid var(--vh-color-border);
	border-radius: var(--vh-radius-card);
	background: var(--vh-color-card);
	color: var(--vh-color-text);
	text-align: center;
	text-decoration: none;
}

a.vh-trust__in:hover {
	border-color: var(--vh-color-border-strong);
	color: var(--vh-color-text);
}

/* Ô logo là link: vòng focus đôi (tối trong, sáng ngoài) để nổi trên mọi màu logo và nền. */
a.vh-trust__in:focus-visible {
	outline: 2px solid var(--vh-color-focus);
	outline-offset: 2px;
	box-shadow: 0 0 0 6px var(--vh-color-focus-on-deep);
}

.vh-trust__img {
	display: block;
	width: auto;
	max-width: 100%;
	max-height: 48px;
	border-radius: 0;
	object-fit: contain;
}

.vh-trust__mark {
	flex: none;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.75;
	stroke-linecap: round;
	stroke-linejoin: round;
	color: var(--vh-color-muted);
}

.vh-trust__name {
	color: var(--vh-color-muted);
	font-family: var(--vh-font-heading);
	font-size: var(--vh-fs-small);
	font-weight: var(--vh-fw-bold);
	line-height: 1.3;
	letter-spacing: 0.02em;
}

.vh-trust__logos--gray .vh-trust__img {
	filter: grayscale(1);
	opacity: 0.8;
	transition: filter 0.2s, opacity 0.2s;
}

.vh-trust__logos--gray .vh-trust__in:hover .vh-trust__img,
.vh-trust__logos--gray .vh-trust__in:focus-visible .vh-trust__img {
	filter: none;
	opacity: 1;
}

.vh-trust__quote {
	display: grid;
	gap: 12px;
	max-width: 760px;
	margin: 0 auto;
	text-align: center;
}

.vh-trust__q {
	margin: 0;
	font-family: var(--vh-font-heading);
	font-size: var(--vh-fs-lead);
	font-weight: var(--vh-fw-medium);
	line-height: var(--vh-lh-heading);
	color: var(--vh-color-text);
}

.vh-trust__q p {
	margin: 0;
}

.vh-trust__q p::before {
	content: "“";
}

.vh-trust__q p::after {
	content: "”";
}

.vh-trust__cite {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px;
	color: var(--vh-color-muted);
	font-size: var(--vh-fs-small);
}

.vh-deep .vh-trust__q,
.vh-deep .vh-trust__cite {
	color: inherit;
}

@media (min-width: 640px) {
	.vh-trust__logos {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.vh-trust__logos {
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}
}

@media (prefers-reduced-motion: reduce) {
	.vh-trust__logos--gray .vh-trust__img {
		transition: none;
	}
}
