/* Wanless aggregate service grids ------------------------------------------------ */

/*
 * WP Spinnr's page-builder grid currently uses Bootstrap card-columns, which
 * behaves like masonry and produces uneven vertical columns. On normal Pages,
 * switch those card collections to a true responsive grid so each row aligns.
 */
body.page .card-columns {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
	column-count: initial !important;
	column-gap: initial !important;
}

body.page .card-columns .card {
	display: flex !important;
	flex-direction: column;
	width: 100% !important;
	height: 100%;
	min-width: 0;
	margin: 0 !important;
	break-inside: auto;
}

body.page .card-columns .card-img-top {
	display: block;
	width: 100%;
	aspect-ratio: 11 / 4;
	object-fit: cover;
}

body.page .card-columns .card-body {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
}

body.page .card-columns .card-body .stretched-link {
	margin-top: auto;
	align-self: center;
}

@media (max-width: 991.98px) {
	body.page .card-columns {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575.98px) {
	body.page .card-columns {
		grid-template-columns: 1fr;
	}
}

/* Footer newsletter Turnstile --------------------------------------------------- */

/*
 * Form 3 / field 5 is configured by the MU plugin to use interaction-only
 * Turnstile with flexible sizing. These rules keep its fallback challenge
 * centred and remove the oversized gap from the normal 300x65 widget.
 */
#gform_wrapper_3 #field_3_5 {
	margin: 0 !important;
	padding: 0 !important;
}

#gform_wrapper_3 #field_3_5 .ginput_container_turnstile {
	display: flex;
	justify-content: center;
	width: 100%;
	margin: 0 auto;
}

#gform_wrapper_3 #field_3_5 .cf-turnstile {
	width: 100%;
	max-width: 450px;
	margin: 0 auto;
}

#gform_wrapper_3 .gform_footer {
	margin-top: 0;
}
