/* layout/footer.css — split from theme.css */
.site-footer {
	flex-shrink: 0;
	margin-top: 4rem;
	padding-block: 2.5rem;
	border-top: 2px solid var( --stroke-strong );
	background: var( --footer-bg );
}

.footer-inner,
.footer-inner > .wp-block-group__inner-container {
	display: grid;
	grid-template-columns: minmax( 14rem, 1.2fr ) repeat( 2, minmax( 12rem, 1fr ) );
	gap: 1.75rem 2rem;
	align-items: start;
}

.footer-brand,
.footer-brand > .wp-block-group__inner-container,
.footer-legal-block,
.footer-legal-block > .wp-block-group__inner-container {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	min-width: 0;
}

.footer-brand p,
.footer-legal-block p,
.footer-brand .wp-block-heading,
.footer-legal-block .wp-block-heading {
	max-width: none;
	margin: 0 !important;
}

.footer-brand p,
.footer-legal-block p {
	color: var( --muted );
	font-size: 0.9rem;
	font-weight: 400;
	letter-spacing: normal;
	line-height: 1.35;
	text-transform: none;
}

.site-footer .footer-legal-title,
.site-footer .footer-legal-title a {
	display: block;
	width: 100%;
	margin: 0 !important;
	color: var( --ink ) !important;
	font-family: inherit !important;
	font-size: 0.95rem !important;
	font-weight: 850 !important;
	font-style: normal;
	letter-spacing: 0.01em;
	line-height: 1.25 !important;
	text-transform: none;
	text-decoration: none !important;
	white-space: normal;
}

.site-footer .footer-brand-title,
.site-footer .footer-brand-title a {
	display: block;
	width: 100%;
	margin: 0 !important;
	color: var( --ink ) !important;
	font-family: inherit !important;
	font-size: 1.2rem !important;
	font-weight: 850 !important;
	font-style: normal;
	letter-spacing: normal;
	line-height: 1.25 !important;
	text-transform: none !important;
	text-decoration: none !important;
	white-space: normal;
}

.site-footer .footer-legal-title a:hover,
.site-footer .footer-brand-title a:hover {
	color: var( --accent-rose ) !important;
}

.footer-brand .footer-links,
.footer-brand .footer-links .wp-block-navigation__container {
	justify-content: flex-start;
	margin-top: 0.35rem;
}

@media ( max-width: 900px ) {
	.footer-inner,
	.footer-inner > .wp-block-group__inner-container {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}
}

.site-footer .brand + p {
	margin-top: 0;
}

.site-footer .site-branding__fallback-logo {
	width: 2rem;
	height: 2rem;
	background: var( --accent );
	box-shadow:
		0.16rem 0.16rem 0 var( --coral ),
		0.3rem 0.3rem 0 var( --orange );
	color: var( --white );
	font-size: 1.28rem;
	text-shadow:
		0.08em 0.08em 0 var( --shadow-ink ),
		0.12em 0.12em 0 var( --coral );
	transform: none;
}

.footer-links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 1rem;
	margin: 0;
	min-width: 0;
	padding: 0;
	list-style: none;
}

.footer-links a {
	color: var( --ink );
	font-weight: 850;
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.18em;
}

.footer-links a:hover {
	color: var( --accent-rose );
}

@media ( max-width: 900px ) {
	.hero-grid,
	.hero-grid > .wp-block-group__inner-container,
	.two-column,
	.two-column > .wp-block-group__inner-container,
	.two-column:has( > .feature-list ),
	.two-column:has( > .wp-block-group__inner-container > .feature-list ),
	.callout.split,
	.callout.split > .wp-block-group__inner-container {
		grid-template-columns: 1fr;
	}

	.card-grid,
	.card-grid > .wp-block-group__inner-container,
	.card-grid.two,
	.card-grid.two > .wp-block-group__inner-container,
	.post-archive-grid,
	.feature-list,
	.feature-list > .wp-block-group__inner-container,
	.steps,
	.steps > .wp-block-group__inner-container {
		grid-template-columns: repeat( 2, minmax( 0, 1fr ) );
	}

	.post-navigation .nav-links {
		grid-template-columns: 1fr;
	}

	.post-navigation .nav-next {
		text-align: start;
	}

	.post-navigation .nav-links:has( .post-navigation-link-previous:empty ) .post-navigation-link-next:not( :empty ) {
		grid-column: auto;
	}

	.post-container {
		grid-template-columns: 1fr;
		gap: 1.75rem;
	}

	.post-sidebar {
		max-width: var( --content-width );
	}

	#get-involved .cta-row.compact,
	#get-involved .cta-row.compact > .wp-block-group__inner-container {
		grid-template-columns: repeat( 3, minmax( 0, 1fr ) );
		width: 100%;
	}

	#get-involved .cta-row.compact {
		justify-self: stretch;
	}

	#get-involved .callout.split,
	#get-involved .callout.split > .wp-block-group__inner-container {
		grid-template-columns: 1fr;
	}

	.status-notice,
	.status-notice > .wp-block-group__inner-container {
		grid-template-columns: 1fr;
	}

	.status-notice__links {
		justify-content: flex-start;
	}

	.diagram,
	.diagram > .wp-block-group__inner-container {
		grid-template-columns: 1fr;
	}

	.diagram-arrow {
		transform: rotate( 90deg );
		text-align: center;
	}

	#provider-lifecycle .two-column > .section-heading,
	#provider-lifecycle .two-column > .timeline,
	#provider-lifecycle .two-column > .panel,
	#provider-lifecycle .two-column > .wp-block-group__inner-container > .section-heading,
	#provider-lifecycle .two-column > .wp-block-group__inner-container > .timeline,
	#provider-lifecycle .two-column > .wp-block-group__inner-container > .panel {
		grid-column: 1;
	}
}

@media ( max-width: 782px ) and ( min-width: 601px ) {
	body.admin-bar header.wp-block-template-part,
	body.admin-bar .site-header {
		top: 46px;
	}
}

@media ( max-width: 600px ) {
	body.admin-bar header.wp-block-template-part,
	body.admin-bar .site-header {
		top: 0;
	}
}

