/* ==========================================================================
   Footer
   ========================================================================== */

.site-footer {
	background: var(--color-bg-subtle);
	border-top: 1px solid var(--color-border);
	margin-top: var(--space-20);
}

.site-footer__columns {
	max-width: var(--container-max);
	margin-inline: auto;
	padding: var(--space-12) var(--space-6) var(--space-8);
	display: grid;
	grid-template-columns: 1.3fr 1fr 1fr 1fr;
	gap: var(--space-8);
}

@media (max-width: 768px) {
	.site-footer__columns { grid-template-columns: 1fr 1fr; gap: var(--space-6); }
}
@media (max-width: 576px) {
	.site-footer__columns { grid-template-columns: 1fr; padding: var(--space-8) var(--space-4) var(--space-6); }
}

.footer-col h4 {
	font-size: var(--fs-xs);
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--color-text-muted);
	font-weight: 700;
	margin-bottom: var(--space-3);
}

.footer-col p {
	font-size: var(--fs-sm);
	color: var(--color-text-secondary);
	line-height: var(--lh-relaxed);
}

.footer-col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-2); }
.footer-col a { font-size: var(--fs-sm); color: var(--color-text-secondary); }
.footer-col a:hover { color: var(--color-accent); }

.site-footer__bottom {
	border-top: 1px solid var(--color-border);
}

.site-footer__bottom-inner {
	max-width: var(--container-max);
	margin-inline: auto;
	padding: var(--space-5) var(--space-6);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-4);
	flex-wrap: wrap;
}

.footer-brand {
	display: flex;
	align-items: baseline;
	gap: var(--space-2);
	font-size: var(--fs-sm);
	color: var(--color-text-muted);
}
.footer-brand strong { color: var(--color-text-secondary); font-weight: 700; }

.footer-copy { font-size: var(--fs-xs); color: var(--color-text-muted); }
