/*
 * Site footer — three-column layout sitting under the .site-footer divider.
 * Loaded from functions.php; kept out of style.css so the footer can be
 * changed without rewriting the 29 KB stylesheet.
 *
 * Everything here is built from idioms that already exist elsewhere in the
 * theme, so the footer reads as part of the same site:
 *
 *   body copy      sans-serif 14px / 23px / #666   body + .home-text + .widget
 *   section rule   1px solid #ddd                  h1.entry-title
 *   accent blue    #365c90                         .booking-title
 *   links          royalblue                       a
 *   divider rule   #1f60a3                         the blue line in Foot-BG1.png
 *
 * There is no red anywhere on this site, and no #3d82e6 — earlier revisions of
 * this file invented both.
 */

.mch-footer {
	--mch-blue: #365c90;
	--mch-link: royalblue;
	--mch-text: #666;
	--mch-muted: #999;
	--mch-rule: #ddd;

	clear: both;
	width: 100%;

	/* Longhand, not the `background` shorthand: the divider graphic comes from
	   the .site-footer rule in core-1.css and a shorthand here would wipe it. */
	background-color: #fff;

	color: var(--mch-text);
	font-family: sans-serif;
	font-size: 14px;
	line-height: 23px;

	/* Clears the blue rule sitting ~5px down in the divider graphic. */
	padding-top: 40px;
}

/* The legacy `footer { margin: 30px 0 }` rule would double up on the 30px
   margin-top .site-footer already carries. */
footer.mch-footer {
	margin-bottom: 0;
}

/* --- columns ----------------------------------------------------------- */

.mch-footer__inner {
	display: flex;
	flex-wrap: wrap;
	gap: 34px;
	align-items: flex-start;
	padding-bottom: 30px;
}

.mch-footer__col {
	flex: 1 1 220px;
	min-width: 0;
}

.mch-footer__col--brand {
	flex: 1 1 320px;
	padding-right: 20px;
}

/* Block, not inline-block: an inline-block shrink-to-fit box sizes itself from
   the logo's intrinsic width, which overflowed the column on phones. */
.mch-footer__logo {
	display: block;
	max-width: 100%;
	margin-bottom: 18px;
}

.mch-footer__logo img {
	display: block;
	max-width: 100%;
	height: auto;
}

.mch-footer__tagline {
	margin: 0;
	color: var(--mch-text);
}

/* --- headings ---------------------------------------------------------- */

/* h1.entry-title's rule, at .booking-title's size and colour. */
.mch-footer__heading {
	margin: 0 0 16px;
	padding: 0 0 10px;
	border-bottom: 1px solid var(--mch-rule);
	font-size: 16px;
	font-weight: bold;
	line-height: 1.2em;
	color: var(--mch-blue);
}

.mch-footer__heading + .mch-footer__heading,
.mch-footer__contact + .mch-footer__heading,
.mch-footer__menu + .mch-footer__heading {
	margin-top: 28px;
}

/* --- quick links ------------------------------------------------------- */

.mch-footer__menu {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mch-footer__menu li {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mch-footer__menu a {
	display: block;
	padding: 2px 0 2px 14px;
	position: relative;
	color: var(--mch-text);
	text-decoration: none;
}

/* Stands in for the bullet graphic span.booking-title loads from a long-dead
   testlinks.webbmasters.com.au URL — same 15px indent, no external request. */
.mch-footer__menu a::before {
	content: "";
	position: absolute;
	left: 0;
	top: 9px;
	width: 5px;
	height: 5px;
	border-top: 1px solid var(--mch-blue);
	border-right: 1px solid var(--mch-blue);
	transform: rotate(45deg);
}

.mch-footer__menu a:hover,
.mch-footer__menu a:focus {
	color: var(--mch-link);
	text-decoration: underline;
}

/* --- contact ----------------------------------------------------------- */

.mch-footer__contact {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mch-footer__contact li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 0 0 12px;
	padding: 0;
	list-style: none;
}

.mch-footer__contact li:last-child {
	margin-bottom: 0;
}

.mch-footer__icon {
	flex: none;
	width: 18px;
	height: 18px;
	margin-top: 3px;
	fill: var(--mch-blue);
}

.mch-footer__contact a {
	color: var(--mch-text);
	text-decoration: none;
	word-break: break-word;
}

.mch-footer__contact a:hover,
.mch-footer__contact a:focus {
	color: var(--mch-link);
	text-decoration: underline;
}

.mch-footer__phone a {
	font-weight: bold;
	color: var(--mch-blue);
}

/* --- social ------------------------------------------------------------ */

.mch-footer__social {
	display: flex;
	flex-wrap: wrap;
	gap: 22px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mch-footer__social li {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mch-footer__social a {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	color: var(--mch-text);
	text-decoration: none;
}

.mch-footer__social a:hover,
.mch-footer__social a:focus {
	color: var(--mch-link);
	text-decoration: none;
}

.mch-footer__social svg {
	flex: none;
	width: 28px;
	height: 28px;
}

/* --- legal bar --------------------------------------------------------- */

.mch-footer__legal {
	border-top: 1px solid var(--mch-rule);
	padding: 16px 0 20px;
}

/* The old footer set .footer-text p to 11px/#ccc. 12px/#999 keeps it fine
   print without dropping below the contrast floor. */
.mch-footer__legal-inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 6px 16px;
	font-size: 12px;
	line-height: 1.6;
	color: var(--mch-muted);
	text-align: center;
}

.mch-footer__legal-item {
	display: inline-flex;
	align-items: center;
	gap: 16px;
}

.mch-footer__legal-item + .mch-footer__legal-item::before {
	content: "|";
	color: var(--mch-rule);
}

/* --- narrow screens ---------------------------------------------------- */

@media (max-width: 900px) {
	.mch-footer {
		padding-top: 28px;
	}

	.mch-footer__inner {
		gap: 26px;
	}

	.mch-footer__col,
	.mch-footer__col--brand {
		flex: 1 1 100%;
		padding-right: 0;
	}

	.mch-footer__col--links,
	.mch-footer__col--contact {
		padding-top: 4px;
	}
}
