/**
 * Global site footer.
 */

.site-footer {
	border-top: var(--bv-border-width) solid var(--bv-border);
	background: var(--bv-bg);
	color: var(--bv-text-secondary);
}

.site-footer__cta {
	border-bottom: var(--bv-border-width) solid var(--bv-border);
	background: var(--bv-surface);
}

.site-footer__cta-inner {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--bv-space-8);
	padding-block: var(--bv-section-space-compact);
}

.site-footer__cta-title {
	margin-bottom: var(--bv-space-3);
	font-size: var(--bv-type-h2);
}

.site-footer__cta-copy {
	max-width: 38rem;
	margin: 0;
	color: var(--bv-text-secondary);
	font-size: var(--bv-type-body-lg);
}

.site-footer__main {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--bv-space-12);
	padding-block: clamp(var(--bv-space-12), 7vw, var(--bv-space-24));
}

.site-footer__brand {
	max-width: 28rem;
}

.site-footer__wordmark,
.site-footer__wordmark:visited {
	display: inline-block;
	margin-bottom: var(--bv-space-4);
	color: var(--bv-text);
	font-size: var(--bv-type-body-sm);
	font-weight: var(--bv-font-weight-bold);
	letter-spacing: 0.12em;
	line-height: 1;
	text-decoration: none;
}

.site-footer__wordmark:hover,
.site-footer__wordmark:focus-visible {
	color: var(--bv-accent);
	text-decoration: none;
}

.site-footer__brand p {
	margin: 0;
	color: var(--bv-text-secondary);
}

.site-footer__heading {
	margin-bottom: var(--bv-space-4);
	color: var(--bv-text-muted);
	font-family: var(--bv-font-mono);
	font-size: var(--bv-type-label);
	font-weight: var(--bv-font-weight-medium);
	letter-spacing: var(--bv-tracking-label);
	text-transform: uppercase;
}

.site-footer__menu {
	display: grid;
	gap: var(--bv-space-2);
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-footer__menu a,
.site-footer__menu a:visited {
	display: inline-flex;
	padding-block: var(--bv-space-1);
	color: var(--bv-text-secondary);
	text-decoration-color: transparent;
}

.site-footer__menu a:hover,
.site-footer__menu a:focus-visible,
.site-footer__menu .current-menu-item > a {
	color: var(--bv-text);
	text-decoration-color: var(--bv-accent);
}

.site-footer__bottom {
	padding-block: var(--bv-space-6);
	border-top: var(--bv-border-width) solid var(--bv-border);
}

.site-footer__bottom p {
	margin: 0;
	color: var(--bv-text-muted);
	font-family: var(--bv-font-mono);
	font-size: var(--bv-type-body-sm);
}

@media (min-width: 48rem) {
	.site-footer__cta-inner {
		flex-direction: row;
		align-items: flex-end;
		justify-content: space-between;
	}

	.site-footer__main {
		grid-template-columns: minmax(0, 2fr) repeat(2, minmax(9rem, 1fr));
		column-gap: var(--bv-grid-gap);
	}
}