/* Case Studies dynamic aggregate grid. */
.mangrove-case-studies-grid {
	display: grid;
	gap: 48px 28px;
	margin: 0 auto;
	max-width: 1150px;
	width: 100%;
}

.mangrove-case-studies-grid--columns-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mangrove-case-studies-grid--columns-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mangrove-case-studies-grid--columns-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.mangrove-case-study-card {
	margin: 0;
	min-width: 0;
	text-align: center;
}

.mangrove-case-study-card__link,
.mangrove-case-study-card__link:hover,
.mangrove-case-study-card__link:focus {
	color: inherit;
	text-decoration: none;
}

.mangrove-case-study-card__media {
	aspect-ratio: 1 / 1;
	margin: 0 0 18px;
	overflow: hidden;
}

.mangrove-case-study-card__image {
	display: block;
	height: 100%;
	object-fit: cover;
	transition: transform 250ms ease;
	width: 100%;
}

.mangrove-case-study-card__link:hover .mangrove-case-study-card__image,
.mangrove-case-study-card__link:focus-visible .mangrove-case-study-card__image {
	transform: scale(1.02);
}

.mangrove-case-study-card__title {
	font: inherit;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.2;
	margin: 0 0 16px;
	text-transform: uppercase;
}

.mangrove-case-study-card__services {
	color: #777;
	font: inherit;
	line-height: 1.35;
	margin: 0;
}

@media (max-width: 900px) {
	.mangrove-case-studies-grid--columns-3,
	.mangrove-case-studies-grid--columns-4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px) {
	.mangrove-case-studies-grid,
	.mangrove-case-studies-grid--columns-2,
	.mangrove-case-studies-grid--columns-3,
	.mangrove-case-studies-grid--columns-4 {
		grid-template-columns: minmax(0, 1fr);
	}
}
