/**
 * Moore Health — Footer
 *
 * @package MooreHealth
 */

.mh-footer {
	background-color: var(--mh-navy);
	color: var(--mh-text-inverse-muted);
}

.mh-footer__inner {
	padding-block: var(--mh-space-7) var(--mh-space-5);
}

@media (min-width: 960px) {
	.mh-footer__inner {
		padding-block: var(--mh-space-8) var(--mh-space-5);
	}
}

/* ---------------------------------------------------------------------
 * Columns — brand block plus three link columns
 * --------------------------------------------------------------------- */

.mh-footer__columns {
	display: grid;
	gap: var(--mh-space-6);
}

@media (min-width: 720px) {
	.mh-footer__columns {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--mh-space-6) var(--mh-space-5);
	}
}

@media (min-width: 960px) {
	.mh-footer__columns {
		grid-template-columns: minmax(0, 1.4fr) repeat(3, minmax(0, 1fr));
		gap: var(--mh-space-7);
	}
}

/* ---------------------------------------------------------------------
 * Brand column
 * --------------------------------------------------------------------- */

.mh-footer__brand {
	display: flex;
	flex-direction: column;
	gap: var(--mh-space-3);
}

.mh-footer__logo {
	display: inline-flex;
	align-items: center;
	gap: var(--mh-space-2);
	text-decoration: none;
	color: var(--mh-pure-white);
}

.mh-footer__logo-mark {
	flex-shrink: 0;
	width: 2.25rem;
	height: 2.25rem;
	color: var(--mh-blue-clear);
}

.mh-footer__logo-name {
	font-family: var(--mh-font-display);
	font-size: 1.5rem;
	font-weight: var(--mh-weight-semibold);
	letter-spacing: -0.02em;
	color: var(--mh-pure-white);
}

.mh-footer__descriptor {
	max-width: 24em;
	font-size: var(--mh-size-small);
	line-height: var(--mh-leading-small);
	color: var(--mh-text-inverse-muted);
}

.mh-footer__group {
	font-size: var(--mh-size-label);
	font-weight: var(--mh-weight-bold);
	letter-spacing: var(--mh-tracking-label);
	text-transform: uppercase;
	color: var(--mh-blue-clear);
}

.mh-footer__contact {
	display: flex;
	flex-direction: column;
	gap: var(--mh-space-1);
	font-size: var(--mh-size-small);
}

.mh-footer__contact a {
	color: var(--mh-pure-white);
	text-decoration: none;
}

.mh-footer__contact a:hover {
	text-decoration: underline;
}

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

.mh-footer__heading {
	margin-bottom: var(--mh-space-3);
	font-family: var(--mh-font-body);
	font-size: var(--mh-size-label);
	font-weight: var(--mh-weight-bold);
	letter-spacing: var(--mh-tracking-label);
	text-transform: uppercase;
	color: var(--mh-pure-white);
}

.mh-footer__list {
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mh-footer__list li {
	margin: 0;
}

.mh-footer__list a {
	display: inline-flex;
	align-items: center;
	gap: var(--mh-space-1);
	min-height: var(--mh-tap-target);
	padding-block: 0.125rem;
	font-size: 0.9375rem;
	color: var(--mh-text-inverse-muted);
	text-decoration: none;
}

.mh-footer__list a:hover {
	color: var(--mh-pure-white);
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.mh-footer__external-icon {
	width: 0.75rem;
	height: 0.75rem;
	opacity: 0.7;
}

/* ---------------------------------------------------------------------
 * Bottom row
 * --------------------------------------------------------------------- */

.mh-footer__bottom {
	display: flex;
	flex-direction: column;
	gap: var(--mh-space-3);
	margin-top: var(--mh-space-7);
	padding-top: var(--mh-space-4);
	border-top: 1px solid rgba(255, 255, 255, 0.14);
	font-size: var(--mh-size-small);
	line-height: var(--mh-leading-small);
}

@media (min-width: 960px) {
	.mh-footer__bottom {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		gap: var(--mh-space-5);
	}
}

.mh-footer__legal {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--mh-space-1) var(--mh-space-4);
	margin: 0;
	padding: 0;
	list-style: none;
}

.mh-footer__legal li {
	margin: 0;
}

.mh-footer__legal a {
	display: inline-flex;
	align-items: center;
	min-height: var(--mh-tap-target);
	color: var(--mh-text-inverse-muted);
	text-decoration: none;
}

.mh-footer__legal a:hover {
	color: var(--mh-pure-white);
	text-decoration: underline;
}

.mh-footer__meta {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	color: var(--mh-text-inverse-muted);
}

@media (min-width: 960px) {
	.mh-footer__meta {
		align-items: flex-end;
		text-align: right;
	}
}

.mh-footer__copyright,
.mh-footer__region {
	margin: 0;
	font-size: var(--mh-size-small);
	color: var(--mh-text-inverse-muted);
}

/* ---------------------------------------------------------------------
 * Emergency / care notice
 * --------------------------------------------------------------------- */

.mh-footer__notice {
	margin-top: var(--mh-space-5);
	padding: var(--mh-space-3) var(--mh-space-4);
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: var(--mh-radius-sm);
	background-color: rgba(255, 255, 255, 0.04);
	font-size: var(--mh-size-small);
	line-height: var(--mh-leading-small);
	color: var(--mh-text-inverse-muted);
}

.mh-footer__notice strong {
	color: var(--mh-pure-white);
}

/* =====================================================================
 * PREMIUM REFIT (v2)
 * ===================================================================== */

.mh-footer {
	background-color: var(--mh-ink);
	background-image:
		radial-gradient(70% 80% at 0% 0%, rgba(22, 93, 255, 0.18) 0%, transparent 55%),
		radial-gradient(60% 70% at 100% 20%, rgba(22, 93, 255, 0.14) 0%, transparent 55%);
}

.mh-footer__logo-mark {
	color: var(--mh-blue-bright);
}

.mh-footer__group {
	color: var(--mh-blue-bright);
}

.mh-footer__heading {
	color: #fff;
}

.mh-footer__notice {
	border-color: rgba(255, 255, 255, 0.14);
	background-color: rgba(255, 255, 255, 0.05);
	border-left: 3px solid var(--mh-blue-bright);
}
