/* Location page — reuses visit-hero + contact info tokens; keep spacing identical. */

.location-page {
	background-color: var(--color-white);
}

.location-page .visit-hero__illustration {
	mix-blend-mode: normal;
	object-fit: cover;
	object-position: center;
	width: 100%;
	max-width: 22.5rem; /* 360px */
	height: 14rem; /* 224px */
}

.location-body {
	background-color: var(--color-white);
}

.location-body__inner {
	box-sizing: border-box;
	width: 100%;
	max-width: var(--container-width);
	margin: 0 auto;
	padding: 5rem var(--space-inline); /* 80px — match contact */
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 3.75rem; /* 60px */
}

.location-body__intro {
	margin: 0;
	max-width: 46.875rem; /* 750px */
	font-family: var(--font-sans);
	font-size: var(--text-body);
	font-weight: 500;
	line-height: var(--line-height-body);
	color: rgba(39, 43, 52, 0.72);
}

.location-body__info {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1.875rem; /* 30px — contact-page__info */
	width: 100%;
	max-width: 46.875rem;
}

.location-body__block {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.5rem;
}

.location-body__label {
	margin: 0;
	font-family: var(--font-sans);
	font-size: var(--text-link);
	font-weight: 500;
	line-height: var(--line-height-ui);
	letter-spacing: var(--letter-spacing-link);
	color: var(--color-dark);
	text-transform: uppercase;
}

.location-body__value {
	margin: 0;
	font-style: normal;
	font-family: var(--font-sans);
	font-size: var(--text-body);
	font-weight: 500;
	line-height: var(--line-height-body);
	color: rgba(39, 43, 52, 0.72);
}

.location-body__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1rem;
}

@media (min-width: 75.0625rem) {
	.location-page .visit-hero__inner {
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		padding-top: 5rem;
		padding-bottom: 5rem;
	}

	.location-page .visit-hero__illustration {
		max-width: 28.75rem; /* 460px */
		height: 18rem; /* 288px */
		order: 2;
	}

	.location-page .visit-hero__text {
		align-items: flex-start;
		text-align: left;
		max-width: 36rem;
	}
}
