/* Footer */
.footer {
	padding: var(--sp-16) 0 var(--sp-8);
	border-top: 1px solid var(--border-subtle);
}

.footer__grid {
	display: grid;
	grid-template-columns: 1.5fr 1fr 1fr 1fr;
	gap: var(--sp-12);
	margin-bottom: var(--sp-12);
}

/* Brand column */
.footer__brand {
	max-width: 280px;
}

.footer__brand-logo {
	height: 120px;
	width: auto;
	opacity: 0.7;
	margin-bottom: var(--sp-4);
}

[data-theme="light"] .footer__brand-logo {
	filter: invert(1);
}

.footer__brand-text {
	font-size: var(--text-sm);
	color: var(--text-faint);
	line-height: var(--leading-relaxed);
}

/* Group titles */
.footer__group-title {
	font-family: var(--mono);
	font-size: var(--text-xs);
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: var(--text-subtle);
	margin-bottom: var(--sp-4);
}

/* Links */
.footer__links {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: var(--sp-3);
}

/* Itens de menu gerados pelo wp_nav_menu */
.footer__links .menu-item {
	list-style: none;
}

.footer__links .menu-item a {
	font-size: var(--text-sm);
	color: var(--text-faint);
	transition: color 0.3s var(--ease-out);
}

.footer__links .menu-item a:hover {
	color: var(--text-secondary);
}

.footer__link {
	font-size: var(--text-sm);
	color: var(--text-faint);
	transition: color 0.3s var(--ease-out);
}

.footer__link:hover {
	color: var(--text-secondary);
}

/* Bottom bar */
.footer__bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-top: var(--sp-8);
	border-top: 1px solid var(--border-subtle);
}

.footer__copy {
	font-family: var(--mono);
	font-size: var(--text-xs);
	color: var(--text-faint);
}

.footer__legal {
	display: flex;
	gap: var(--sp-4);
}

.footer__legal a {
	font-family: var(--mono);
	font-size: var(--text-xs);
	color: var(--text-faint);
	transition: color 0.3s var(--ease-out);
}

.footer__legal a:hover {
	color: var(--text-secondary);
}

/* Responsivo */
@media (max-width: 1024px) {
	.footer__grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 768px) {
	.footer__grid {
		grid-template-columns: 1fr;
	}

	.footer__brand {
		max-width: none;
		text-align: center;
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.footer__group-title {
		text-align: center;
	}

	.footer__links {
		align-items: center;
	}

	.footer__bottom {
		flex-direction: column;
		gap: var(--sp-4);
		text-align: center;
	}
}
