.numbered-card-grid { background: #fff; }
.numbered-card-grid .ncg-heading { margin-top: 1rem; font-size: clamp(2.1rem, 4vw, 3.4rem); font-weight: 300; }
.numbered-card-grid .ncg-heading em { color: var(--teal); font-style: italic; }
.numbered-card-grid .rte { max-width: 640px; }

.numbered-card-grid .ncg-grid {
	display: grid; grid-template-columns: repeat(var(--ncg-cols, 4), 1fr); gap: 1px;
	background: var(--line);
	margin-top: 3rem;
}
.numbered-card-grid .ncg-item {
	background: #fff;
	padding: 2.4rem 2rem;
	min-height: 230px;
	display: flex; flex-direction: column;
	transition: .35s;
	position: relative;
	text-decoration: none;
	color: inherit;
}
.numbered-card-grid .ncg-item:hover { background: var(--bark); color: var(--stone); }
.numbered-card-grid .ncg-item:hover .ncg-num { color: var(--gold); }
.numbered-card-grid .ncg-item:hover .rte { color: var(--white); }
.numbered-card-grid .ncg-num {
	font-family: var(--font-heading); font-style: italic; color: var(--teal); font-size: 0.95rem;
	transition: .35s;
}
.numbered-card-grid .ncg-item h4 { font-size: 1.25rem; font-weight: 400; margin-top: 1.6rem; }
.numbered-card-grid .ncg-item .rte { font-size: 0.85rem; opacity: 0.75; margin-top: 0.6rem; max-width: none; }

@media (max-width: 980px) {
	.numbered-card-grid .ncg-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
	.numbered-card-grid .ncg-grid { grid-template-columns: 1fr; }
}
