.hbg-head {
	text-align: center;
	max-width: 720px;
	margin: 0 auto 2.4rem;
}
.hbg-eyebrow { display: block; margin-bottom: 1rem; }
.hbg-description { margin-top: 1rem; }

.hbg-grid {
	display: grid;
	grid-template-columns: repeat(var(--hbg-cols, 3), 1fr);
	gap: 2.4rem;
}

.hbg-item {
	display: flex;
	flex-direction: column;
	color: inherit;
	text-decoration: none;
}
.hbg-item:hover .hbg-media img { transform: scale(1.06); }
.hbg-item:hover .hbg-cta { color: var(--teal); border-color: var(--teal); }

.hbg-media { aspect-ratio: 4 / 3; overflow: hidden; }
.hbg-media img { transition: transform .5s ease; }

.hbg-content {
	margin-top: 1.4rem;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}
.hbg-content h3 { font-size: 1.3rem; font-weight: 400; }

.hbg-excerpt {
	margin-top: 0.7rem;
	font-size: 0.9rem;
}

.hbg-cta { margin-top: 1.2rem; align-self: flex-start; }

/* ===== Theme ===== */
.hotboxes-grid.theme-dark { background: var(--bark); color: var(--stone); }
.hotboxes-grid.theme-dark .hbg-excerpt { color: rgba(237, 230, 216, 0.78); }

@media (max-width: 980px) {
	.hbg-grid { grid-template-columns: repeat(2, 1fr); gap: 2rem; }
}
@media (max-width: 640px) {
	.hbg-grid { grid-template-columns: 1fr; }
}
