.site-footer {
	padding-block: 2.5rem;
	border-top: 1px solid #e2e8f0;
	background: var(--wp--preset--color--surface, #f3f7fb);
	color: var(--wp--preset--color--ink, #172b40);
}

.footer-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 2rem;
}

.footer-grid > * {
	min-width: 0;
}

.site-footer .footer-title {
	margin: 0 0 1rem;
	font-size: 1.125rem;
	line-height: 1.4;
}

.site-footer p {
	margin: 0 0 1rem;
}

.site-footer p:last-child {
	margin-bottom: 0;
}

.footer-company {
	max-width: 38rem;
}

.footer-label {
	display: block;
	font-size: 0.875rem;
	font-weight: 600;
}

.footer-contact a,
.footer-navigation a {
	overflow-wrap: anywhere;
	text-underline-offset: 0.2em;
}

.footer-contact p a {
	display: inline-block;
	padding-block: 0.35rem;
}

.site-footer .footer-whatsapp {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	max-width: 100%;
	margin-bottom: 1rem;
	padding: 0.75rem 1rem;
	border-radius: 6px;
	background: var(--wp--preset--color--brand, #005a9c);
	color: #fff;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
}

.site-footer .footer-whatsapp:hover {
	background: #004779;
}

.site-footer .footer-whatsapp:focus-visible {
	outline-color: #172b40;
}

.footer-navigation ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.footer-navigation a {
	display: inline-block;
	min-height: 44px;
	padding-block: 0.6rem;
}

@media (min-width: 48rem) {
	.footer-grid {
		grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
		gap: 2.5rem;
	}
}

/* Ordem visual: apresentação e contato, seguidos dos grupos de navegação. */
.footer-contact { order:2; }
.footer-navigation { order:1; }
.site-footer a[aria-current="page"] { font-weight:700; }
@media(min-width:64rem) { .footer-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }

.footer-navigation a, .footer-contact p a { color:var(--wp--preset--color--brand,#005a9c); }

.footer-site-icon { display:block; width:80px; height:80px; object-fit:contain; margin-bottom:1rem; }
.footer-cookie-preferences { display:inline-block; min-height:44px; padding:0.6rem 0; border:0; background:none; color:var(--wp--preset--color--brand,#005a9c); font:inherit; text-align:left; text-decoration:underline; text-underline-offset:0.2em; cursor:pointer; }
.footer-cookie-preferences[hidden] { display:none; }
.js .footer-cookie-preferences[hidden] { display:inline-block; visibility:hidden; }
.footer-cookie-preferences:focus-visible { outline:2px solid #172b40; outline-offset:3px; }
