h2 {
	font-size: clamp(1rem, 1.92vw, 1.5rem);
	margin: 0;
	padding: 0;
}
p {
	font-size: clamp(1rem, 1.6vw, 1.25rem);
	margin: 0.5vh 0;
	padding: 0;
}
li { font-size: clamp(1rem, 1.6vw, 1.25rem); }
.std-spacing, .std-spacing h2, .std-spacing p, .service-details { margin: 2vh 0; }
.services-block {
	background: var(--mg);
	border: 2px solid var(--fg);
	border-radius: 32px;
	container-type: inline-size;
	justify-content: center;
	padding: max(12px, 2vh);
	transition: transform 0.2s ease;
}
.services-block:hover { transform: scale(1.03); }
.services-block h2, .services-block a {
	font-size: clamp(1rem, 8.4cqw, 2rem);
	margin: 0;
}
.services-block h3 {
	font-size: clamp(1rem, 5.6cqw, 1.5rem);
	margin: max(12px, 1vh) 0 max(12px, 2vh) 0;
}
.services-block br { height: max(12px, 2vh); }
.service-details h2 { line-height: 1.5; }
.services-grid {
	display: grid;
	gap: 2vh;
	grid-template-columns: repeat(auto-fit, minmax(min(calc(96vw - 8px), 360px), 1fr));
	margin: 2vh 0;
}
@media (min-width: 117rem) { .services-grid { grid-template-columns: repeat(4, 1fr); }}
@media (min-width: 50rem) AND (max-width: 116.9999rem) { .services-grid { grid-template-columns: repeat(2, 1fr); }}
@media (max-width: 49.9999rem) { .services-grid { grid-template-columns: repeat(1, 1fr); }}