.site-footer {
    display: grid;
    grid-template-columns: 1.15fr 1.1fr 0.9fr 0.8fr;
    gap: 40px;
    padding: 58px max(32px, calc((100vw - 1220px) / 2)) 24px;
    background: linear-gradient(135deg, var(--wine-900), #260719);
    color: var(--white);
}
.rodape-coluna h3 { margin-bottom: 16px; font-family: var(--fonte-titulo); font-size: 1.42rem; font-weight: 600; }
.rodape-coluna p, .rodape-coluna a { display: block; margin-bottom: 9px; color: #eadde5; font-size: 0.86rem; line-height: 1.65; }
.rodape-coluna:first-child h3 { color: var(--gold-soft); font-size: 1.7rem; }
.rodape-coluna a { width: fit-content; transition: color 160ms ease, transform 160ms var(--ease-out); }
.rodape-direitos { grid-column: 1 / -1; padding-top: 22px; border-top: 1px solid rgba(255, 255, 255, 0.14); color: #d8c7d1; font-size: 0.78rem; text-align: center; }
@media (hover: hover) and (pointer: fine) {
    .rodape-coluna a:hover { color: var(--gold-soft); transform: translateX(2px); }
}
@media (max-width: 900px) { .site-footer { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .site-footer { grid-template-columns: 1fr; gap: 28px; padding: 44px 20px 22px; } }
