/* ============================================================
   Footer

   Centred brand (wordmark + MIDTOWN), address + phone, then the
   action row: VIEW MAP + CONTACT (gold-outline) centred with
   BOOK A TOUR (gold) pinned to the far right. A Boundary / credit
   row and a fine-print disclaimer close it out.
   ============================================================ */

.footer--section {
	background-color: var(--color-footer-green);
	color: var(--color-text-white);
	padding: 56px 0 26px;
}

/* ---- Brand ---- */
.footer--brand {
	text-align: center;
	margin: 0 0 22px;
}

.footer--brand-logo {
	width: 250px;
	height: auto;
	display: inline-block;
}

/* ---- Address + phone (sans, per design) ---- */
.footer--address,
.footer--phone {
	font-family: 'ABC Whyte Inktrap', sans-serif;
	font-size: 1.02rem;
	letter-spacing: 0.02em;
	text-align: center;
}

.footer--address {
	font-style: normal;
	line-height: 1.55;
	margin: 0 0 4px;
}

.footer--phone {
	display: block;
	color: var(--color-text-white);
	text-decoration: none;
	margin: 0 0 30px;
}

.footer--phone:hover,
.footer--phone:focus { color: var(--color-gold); }

/* ---- Action row: centred buttons + far-right Book a Tour ---- */
.footer--actions {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 16px;
	margin: 0 0 42px;
}

.footer--actions-center {
	grid-column: 2;
	display: flex;
	justify-content: center;
	gap: 14px;
}

.footer--cta-booktour {
	grid-column: 3;
	justify-self: end;
}

.footer--cta {
	min-width: 150px;
	text-align: center;
}

/* ---- Bottom row ---- */
.footer--bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}

.footer--bottom-left {
	display: flex;
	align-items: center;
	gap: 18px;
}

.footer--boundary {
	display: inline-flex;
	line-height: 0;
	text-decoration: none;
}

.footer--boundary-logo {
	height: 16px;
	width: auto;
}

.footer--icons {
	display: flex;
	align-items: center;
	gap: 8px;
}

.footer--icons img {
	width: 18px;
	height: 18px;
	opacity: 0.85;
}

.footer--bottom-right {
	text-align: right;
}

.footer--credits,
.footer--legal-links {
	font-family: 'ABC Whyte Inktrap', sans-serif;
	font-size: 0.78rem;
	letter-spacing: 0.03em;
	margin: 0;
}

.footer--credits { margin-bottom: 4px; }

.footer--credits a,
.footer--legal-links a {
	color: var(--color-text-white);
	text-decoration: none;
}

.footer--credits a:hover,
.footer--credits a:focus,
.footer--legal-links a:hover,
.footer--legal-links a:focus { color: var(--color-gold); }

.footer--separator {
	margin: 0 6px;
	opacity: 0.5;
}

/* ---- Fine print ---- */
.footer--disclaimer {
	font-family: 'ABC Whyte Inktrap', sans-serif;
	font-size: 0.66rem;
	line-height: 1.65;
	letter-spacing: 0.01em;
	text-align: center;
	max-width: 1040px;
	margin: 36px auto 0;
	opacity: 0.75;
}

/* ============================================================
   Mobile
   ============================================================ */
@media (max-width: 991px) {
	.footer--actions {
		grid-template-columns: 1fr;
		justify-items: center;
		gap: 12px;
	}

	.footer--actions-center {
		grid-column: 1;
		flex-wrap: wrap;
	}

	.footer--cta-booktour {
		grid-column: 1;
		justify-self: center;
	}

	.footer--bottom {
		flex-direction: column;
		gap: 18px;
		text-align: center;
	}

	.footer--bottom-left {
		flex-direction: column;
		gap: 12px;
	}

	.footer--bottom-right {
		text-align: center;
	}
}
