.flex-layout.swiper_locations {
	--bg-color: var(--neutral-50);
	--text-color: var(--primary-100);
	--layout-spacing: max(4rem, calc(4 * var(--su)));
	overflow: hidden;
}

.flex-layout.swiper_locations .header-row {
	margin-bottom: max(2rem, calc(2.5 * var(--su)));
}

.flex-layout.swiper_locations .locations-swiper {
	overflow: visible;
}

.flex-layout.swiper_locations .swiper-slide {
	height: auto;
}

.flex-layout.swiper_locations .swiper-slide .location-card {
	height: 100%;
}

.flex-layout.swiper_locations .footer-row {
	margin-top: max(1.5rem, calc(2 * var(--su)));
}

.flex-layout.swiper_locations .controls-col {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: max(1rem, calc(1.5 * var(--su)));
}

.flex-layout.swiper_locations .controls-col .nova-pagination {
	grid-column: 2;
}

.flex-layout.swiper_locations .controls-col .pk-button-group {
	grid-column: 3;
	justify-self: end;
	margin: 0;
}

@media screen and (min-width: 993px) {
	.flex-layout.swiper_locations .header-row .pk-text {
		max-width: max(50rem, calc(50 * var(--su)));
	}
}

@media screen and (max-width: 992px) {
	.flex-layout.swiper_locations {
		--layout-spacing: max(3rem, calc(3 * var(--su)));
	}
}

@media screen and (max-width: 767px) {
	.flex-layout.swiper_locations .controls-col {
		grid-template-columns: 1fr;
		justify-items: center;
	}

	.flex-layout.swiper_locations .controls-col .nova-pagination,
	.flex-layout.swiper_locations .controls-col .pk-button-group {
		grid-column: 1;
		justify-self: center;
	}
}
