/*
 * Homepage Why QEHS Vault
 *
 * Reuses the same visual grammar as Browse by Standards (white card,
 * 1px border, circular icon badge, centered text) and its existing
 * accent color tokens — no new colors introduced.
 */

.qehs-why-qehs-vault {
	padding-block: var(--qehs-space-2xl);
	background-color: var(--qehs-background);
}

.qehs-why-qehs-vault__header {
	text-align: center;
	margin-bottom: var(--qehs-space-2xl);
}

.qehs-why-qehs-vault__title {
	margin: 0 0 var(--qehs-space-sm);
	font-size: 2.25rem;
	font-weight: 700;
	color: var(--qehs-text);
}

.qehs-why-qehs-vault__subtitle {
	margin: 0;
	font-size: 1.1rem;
	color: var(--qehs-text-muted);
}

.qehs-why-qehs-vault__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--qehs-space-lg);
}

.qehs-benefit-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: var(--qehs-space-xl) var(--qehs-space-lg);
	background-color: var(--qehs-background);
	border: 1px solid var(--qehs-border);
	border-radius: var(--qehs-radius-lg);
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.qehs-benefit-card:hover,
.qehs-benefit-card:focus-within {
	border-color: var(--qehs-secondary);
	box-shadow: var(--qehs-shadow-md);
	transform: translateY(-2px);
}

.qehs-benefit-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 80px;
	height: 80px;
	border-radius: 999px;
	margin-bottom: var(--qehs-space-lg);
}

.qehs-benefit-card__icon img {
	width: 80px;
	height: 80px;
	object-fit: contain;
}

/* Decorative color set, reusing existing accent tokens
   (base/variables.css) — no new colors introduced. */
.qehs-benefit-card__icon--success {
	background-color: var(--qehs-success-tint);
	color: var(--qehs-success);
}

.qehs-benefit-card__icon--orange {
	background-color: var(--qehs-accent-orange-tint);
	color: var(--qehs-accent-orange);
}

.qehs-benefit-card__icon--blue {
	background-color: var(--qehs-accent-blue-tint);
	color: var(--qehs-accent-blue);
}

.qehs-benefit-card__icon--purple {
	background-color: var(--qehs-accent-purple-tint);
	color: var(--qehs-accent-purple);
}

.qehs-benefit-card__title {
	margin: 0 0 var(--qehs-space-xs);
	font-size: 1.15rem;
	font-weight: 700;
	color: var(--qehs-text);
}

.qehs-benefit-card__desc {
	margin: 0;
	font-size: 0.9rem;
	line-height: 1.5;
	color: var(--qehs-text-muted);
}

/* --- Tablet: 2×2, matching the site's existing 1024px breakpoint. --- */
@media (max-width: 1024px) {
	.qehs-why-qehs-vault__title {
		font-size: 1.875rem;
	}

	.qehs-why-qehs-vault__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: var(--qehs-space-md);
	}
}

/* --- Mobile: single column. --- */
@media (max-width: 480px) {
	.qehs-why-qehs-vault {
		padding-block: var(--qehs-space-xl);
	}

	.qehs-why-qehs-vault__header {
		margin-bottom: var(--qehs-space-xl);
	}

	.qehs-why-qehs-vault__title {
		font-size: 1.5rem;
	}

	.qehs-why-qehs-vault__subtitle {
		font-size: 1rem;
	}

	.qehs-why-qehs-vault__grid {
		grid-template-columns: 1fr;
	}
}
