/*
 * Rodapé com mapa de links (todas as páginas).
 * Colunas geradas do menu principal: item em rascunho não aparece.
 */

.zafarie-footer {
	padding: clamp(3.5rem, 3rem + 3vw, 5rem) clamp(1.25rem, 4vw, 2.5rem) 2.5rem;
	border-top: 1px solid rgba(255, 255, 255, 0.07);
	background: var(--wp--preset--color--preto);
	color: var(--wp--preset--color--cinza);
}

.zafarie-footer__grade {
	max-width: 75rem;
	margin: 0 auto;
	display: grid;
	grid-template-columns: minmax(0, 19rem) minmax(0, 1fr);
	gap: clamp(2.5rem, 2rem + 3vw, 4rem);
}

.zafarie-footer__marca { display: flex; flex-direction: column; gap: 1.125rem; }

.zafarie-footer__titulo { margin: 0; font-size: 1.5rem; font-weight: 800; letter-spacing: -0.02em; }
.zafarie-footer__titulo a { color: var(--wp--preset--color--branco); text-decoration: none; }

.zafarie-footer .zf-rodape-identidade { max-width: none; font-size: 0.9375rem; }
.zafarie-footer .zf-rodape-identidade a { color: #c4c4cc; }
.zafarie-footer .zf-rodape-identidade a:hover { color: var(--wp--preset--color--branco); }

.zf-rodape-links {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 2.5rem 2rem;
}

.zf-rodape-coluna h2 {
	margin: 0 0 0.875rem;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--wp--custom--roxo--400);
}

.zf-rodape-coluna ul { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 0.25rem; }

.zf-rodape-coluna a {
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	font-size: 0.875rem;
	line-height: 1.35;
	color: #c4c4cc;
	text-decoration: none;
}

.zf-rodape-coluna a:hover { color: var(--wp--preset--color--branco); text-decoration: underline; }
.zf-rodape-coluna a:focus-visible { outline: 2px solid var(--wp--preset--color--roxo-claro); outline-offset: 2px; }

@media (max-width: 1023px) {
	.zafarie-footer__grade { grid-template-columns: 1fr; }
	.zf-rodape-links { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
	.zf-rodape-links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem 1.25rem; }
	.zf-rodape-coluna a { min-height: 40px; }
}

/* Logo (cabecalho e rodape) */
.zf-logo { display: inline-flex; align-items: center; line-height: 0; }
.zf-logo img { display: block; width: auto; max-width: 100%; }
@media (max-width: 480px) { .zafarie-header .zf-logo img { height: 28px !important; } }
