/**
 * MH Apartment cards (mh-apartments).
 * Figma: Home "V4 Apartments", apartment page "Other apartments", Gallery page.
 * Desktop: 3 × 384 (photo 384 × 480) or 2 × 588 (photo 588 × 480), gap 24.
 * Tablet: same columns, 4:5 photos. Phone: scroll row, 300 wide cards, photo 300 × 420.
 */

.mh-apartments .mh-heading {
	margin-bottom: 48px;
}

.mh-apartment-card {
	position: relative;
	min-width: 0;
}

.mh-apartment-card__media {
	display: block;
	overflow: hidden;
	aspect-ratio: 4 / 5;
	border-radius: var(--mh-radius);
	background: var(--mh-c-line);
}

.mh-apartments--cols-2 .mh-apartment-card__media {
	aspect-ratio: 588 / 480;
}

.mh .mh-apartment-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	transition: transform 0.4s ease;
}

.mh-apartment-card__media:hover img {
	transform: scale(1.02);
}

.mh-apartment-card__name {
	margin-top: 22px;
}

.mh .mh-apartment-card__meta {
	margin-top: 6px;
	color: var(--mh-muted);
	font-size: 16px;
	line-height: 24px;
}

.mh .mh-apartment-card__link {
	display: flex;
	width: fit-content;
	margin-top: 6px;
}

/* Desktop and tablet: a grid instead of the phone scroll row. */
@media (min-width: 768px) {
	.mh-apartments__list.mh-scroll {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 24px;
		margin-inline: 0;
		padding-inline: 0;
		overflow: visible;
		scroll-snap-type: none;
	}

	.mh-apartments--cols-2 .mh-apartments__list.mh-scroll {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 1024px) {
	.mh-apartments .mh-heading {
		margin-bottom: 40px;
	}

	.mh-apartments--cols-2 .mh-apartment-card__media {
		aspect-ratio: 4 / 5;
	}
}

@media (max-width: 767px) {
	.mh-apartments .mh-heading {
		margin-bottom: 32px;
	}

	.mh-apartments__list.mh-scroll {
		gap: 16px;
	}

	.mh-apartment-card {
		width: 300px;
		max-width: calc(100vw - 2 * var(--mh-gutter) - 24px);
	}

	.mh-apartment-card__media,
	.mh-apartments--cols-2 .mh-apartment-card__media {
		aspect-ratio: 300 / 420;
	}

	.mh-apartment-card__name {
		margin-top: 20px;
	}
}
