/*--------------------------------------------------------------
# Footer — Global site footer
# Figma node 1:202
# Bg: --color-surface-dark | Centered layout
# Logo → tagline → nav links → separator → copyright + credits
--------------------------------------------------------------*/

.site-footer {
	background-color: var(--color-surface-dark);
	border-top: 1px solid rgba(255, 255, 255, 0.05);
	padding: var(--section-gap) 0 var(--inner-padding);
}

.site-footer__inner {
	max-width: var(--container-max);
	margin-inline: auto;
	padding-inline: var(--container-padding);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1.5rem;
	text-align: center;
}

@media screen and (min-width: 1281px) {
	.site-footer__inner {
		max-width: 100%;
	}
}

/* ---- Branding ---- */

.site-footer__branding {
	display: flex;
	align-items: center;
	justify-content: center;
}

.site-footer .custom-logo-link {
	display: inline-flex;
	align-items: center;
}

/* Logo slightly larger than header */
.site-footer .custom-logo {
	height: 2rem;
	width: auto;
}

/* Fallback text site name */
.site-footer__site-name {
	font-size: 1.125rem;
	font-weight: var(--font-weight-black);
	text-transform: uppercase;
	color: var(--color-text-white);
	letter-spacing: 0.025em;
}

/* ---- Description / Tagline ---- */

.site-footer__description {
	font-size: 0.875rem;
	font-weight: var(--font-weight-light);
	line-height: 1.625;
	color: var(--color-text-muted);
	max-width: 30rem;
	margin: 0;
}

/* ---- Footer navigation ---- */

.footer-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.375rem 1.5rem;
}

.footer-navigation li {
	display: inline-block;
}

.footer-navigation a {
	font-family: var(--font-family);
	font-size: 0.8125rem;
	font-weight: var(--font-weight-medium);
	text-transform: uppercase;
	color: var(--color-text-muted);
	text-decoration: none;
	transition: color 0.2s ease;
}

.footer-navigation a:hover,
.footer-navigation a:focus {
	color: var(--color-primary);
}

/* ---- Separator ---- */

.site-footer__separator {
	width: 100%;
	height: 1px;
	background-color: rgba(255, 255, 255, 0.05);
	border: none;
	margin: 0;
}

/* ---- Bottom bar: copyright + credits ---- */

.site-footer__bottom {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.375rem;
}

.site-footer__copyright {
	font-size: 0.75rem;
	font-weight: var(--font-weight-regular);
	text-transform: uppercase;
	color: var(--color-text-muted);
	margin: 0;
}

.site-footer__credits {
	font-size: 0.75rem;
	font-weight: var(--font-weight-regular);
	color: var(--color-text-muted);
	margin: 0;
}

.site-footer__credits a {
	color: var(--color-primary-text);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
	transition: color 0.2s ease;
}

.site-footer__credits a:hover,
.site-footer__credits a:focus {
	color: var(--color-text-white);
}
