/*
 * MHG site footer.
 * Dark four-column layout (logo / quick links / brands / contact),
 * collapsing to two columns at narrow widths and one on very small screens.
 */

.mhg-footer {
	background-color: var(--mhg-color-footer-bg);
	color: var(--mhg-color-white-55);
	font-size: var(--mhg-font-size-footer-link);
	line-height: 1.7;
}

.mhg-footer__inner {
	width: 100%;
	max-width: var(--mhg-container-max);
	margin: 0 auto;
	padding: var(--mhg-space-xl) var(--mhg-space-sm) var(--mhg-space-md);
}

.mhg-footer__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--mhg-space-lg);
}

/* Brand block — MHG logo served as a cacheable <img> */
.mhg-site-footer__logo-img {
	display: block;
	height: 44px;
	width: auto;
	max-width: 100%;
	margin: 0 0 var(--mhg-space-sm);
	object-fit: contain;
	background: transparent;
}

.mhg-footer__description {
	margin: 0;
	font-size: 0.8rem;
	color: var(--mhg-color-white-45);
	line-height: 1.7;
}

/* Column heading */
.mhg-footer__heading {
	margin: 0 0 var(--mhg-space-sm);
	font-family: var(--mhg-font-body);
	font-size: var(--mhg-font-size-eyebrow);
	font-weight: 600;
	color: var(--mhg-color-white);
	text-transform: uppercase;
	letter-spacing: var(--mhg-letter-spacing-footer-heading);
}

/* Link lists */
.mhg-footer__list,
.mhg-footer__contact {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
}

.mhg-footer__link {
	color: var(--mhg-color-white-55);
	text-decoration: none;
	transition: color var(--mhg-transition-fast);
}

.mhg-footer__link:hover,
.mhg-footer__link:focus {
	color: var(--mhg-color-white);
}

/* Contact rows — gold icon + label */
.mhg-footer__contact-item {
	display: flex;
	align-items: center;
	gap: 0.65rem;
}

.mhg-footer__contact-icon {
	display: inline-flex;
	flex-shrink: 0;
	color: var(--mhg-color-gold);
}

.mhg-footer__contact-icon svg {
	width: 16px;
	height: 16px;
	display: block;
}

.mhg-footer__contact-link {
	color: var(--mhg-color-white-55);
	text-decoration: none;
	transition: color var(--mhg-transition-fast);
}

.mhg-footer__contact-link:hover,
.mhg-footer__contact-link:focus {
	color: var(--mhg-color-white);
}

.mhg-footer__contact-text {
	color: var(--mhg-color-white-55);
}

/* Meta strip — copyright row */
.mhg-footer__meta {
	margin-top: var(--mhg-space-lg);
	padding-top: var(--mhg-space-md);
	border-top: 1px solid var(--mhg-color-white-07);
	text-align: center;
}

.mhg-footer__copyright {
	margin: 0;
	font-size: var(--mhg-font-size-footer-meta);
	color: var(--mhg-color-white-45);
}

.mhg-footer__legal {
	margin: var(--mhg-space-xs) 0 0;
	font-size: var(--mhg-font-size-footer-meta);
	color: var(--mhg-color-white-45);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.5rem;
}

.mhg-footer__legal span {
	color: var(--mhg-color-white-45);
}

/* Tablet — two-column grid */
@media (min-width: 540px) {
	.mhg-footer__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: var(--mhg-space-lg) var(--mhg-space-md);
	}
}

@media (min-width: 768px) {
	.mhg-footer__inner {
		padding: var(--mhg-space-xl) var(--mhg-space-md) var(--mhg-space-md);
	}
}

/* Desktop — four-column grid, brand column slightly wider */
@media (min-width: 1024px) {
	.mhg-footer__grid {
		grid-template-columns: 1.4fr 1fr 1fr 1.3fr;
		gap: var(--mhg-space-lg);
	}
}
