/* =====================================================================
   Numbered Grid Block
   ===================================================================== */

.numbered-grid-block .numbered-grid-divider {
	border: 0;
	height: 1px;
	margin: 0 0 var(--margin-bottom-xl);
	background-color: color-mix(in srgb, currentColor 20%, transparent);
}

.numbered-grid-block .numbered-grid-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--gutter-xl) var(--gutter-l);
}

.numbered-grid-block .numbered-grid-item {
	display: flex;
	flex-direction: column;
	gap: var(--gutter-xs);
}

.numbered-grid-block .numbered-grid-number-wrap {
	line-height: 1;
}

.numbered-grid-block .numbered-grid-number {
	display: inline-block;
	font-size: clamp(3rem, 6vw, 4rem);
	font-weight: 700;
	letter-spacing: 0.01em;
	color: color-mix(in srgb, currentColor 20%, transparent);
	transition: color 0.3s ease;
}

.numbered-grid-block .numbered-grid-item:hover .numbered-grid-number,
.numbered-grid-block .numbered-grid-item:focus-within .numbered-grid-number {
	color: var(--font-colour-electric-lime);
}

.numbered-grid-block .numbered-grid-item-heading {
	margin-bottom: 0;
	text-transform: uppercase;
}

.numbered-grid-block .numbered-grid-item-text {
	max-width: 34ch;
}

@media all and (max-width: 1024px) {
	.numbered-grid-block .numbered-grid-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--gutter-l);
	}
}

@media all and (max-width: 640px) {
	.numbered-grid-block .numbered-grid-divider {
		margin-bottom: var(--gutter-l);
	}

	.numbered-grid-block .numbered-grid-grid {
		grid-template-columns: 1fr;
		gap: var(--gutter);
	}
}