.site-footer { flex: 0 0 auto; margin-top: 0; color: var(--dfm-footer-text); background: var(--dfm-footer); }
.site-footer__inner { padding-block: 1.5rem 1.25rem; }
.footer-logo { width: min(14rem, 70vw); margin-inline: auto; }
.footer-logo img, .footer-logo .custom-logo { display: block; width: 100%; height: auto; max-height: 4.5rem; object-fit: contain; }
.footer-navigation { display: flex; justify-content: center; margin-top: 1rem; }
.footer-menu { display: flex; flex-wrap: wrap; justify-content: center; gap: .25rem 1.25rem; margin: 0; padding: 0; list-style: none; }
.footer-menu a { display: block; padding: .4rem .2rem; color: var(--dfm-footer-text); text-decoration: none; }
.footer-columns { display: flex; align-items: center; justify-content: space-between; gap: 2rem; margin-top: 1.5rem; padding-top: 1.25rem; border-top: 1px solid color-mix(in srgb, var(--dfm-footer-text) 25%, transparent); }
.footer-links { display: flex; min-width: 0; align-items: center; gap: .55rem; }
.social-links--footer a { width: 2rem; height: 2rem; }
.store-badges--footer { gap: .25rem; }
.store-badges--footer .app-badge { width: 8.75rem; height: 2.5rem; }
.store-badges--footer .app-badge--google img:not(.app-badge__image--custom) { width: 96%; }
.footer-contact { display: grid; gap: .25rem; margin: 0; font-style: normal; text-align: right; }
.footer-contact__phone { display: inline-flex; align-items: center; justify-content: flex-end; gap: .35rem; color: var(--dfm-footer-text); text-decoration: none; }
.footer-contact__phone:hover { text-decoration: none; }
:root[data-diariofm-appearance="contrast"] .footer-contact__phone { text-decoration: none; }
.footer-contact__phone .material-symbols-outlined { font-size: 1.15rem; }
.site-footer-bottom { color: var(--dfm-topbar-text); background: var(--dfm-footer-bottom); font-size: .875rem; }
.site-footer-bottom__inner { display: flex; justify-content: space-between; gap: .75rem; padding-block: .8rem; }
@media (max-width: 991px) {
    .footer-columns { align-items: center; flex-direction: column; gap: 1.25rem; }
    .footer-links { width: 100%; align-items: center; flex-direction: column; gap: .65rem; }
    .social-links--footer,
    .store-badges--footer { justify-content: center; }
    .social-links--footer { flex-wrap: wrap; }
    .store-badges--footer { flex-wrap: wrap; }
    .footer-contact { text-align: center; }
    .footer-contact__phone { justify-content: center; }
    .site-footer-bottom__inner { align-items: flex-start; flex-direction: row; flex-wrap: nowrap; gap: .5rem; }
    .site-footer-bottom__inner > span { min-width: 0; flex: 1 1 0; font-size: .875rem; }
    .site-footer-bottom__inner > span:first-child { text-align: left; }
    .site-footer-bottom__inner > span:last-child { text-align: right; }
}
@media (max-width: 767px) {
    .site-footer-bottom__inner > span { font-size: .8125rem; }
}
@media (max-width: 575px) {
    .site-footer-bottom__inner > span { font-size: clamp(.7rem, 2.7vw, .78rem); }
}
