.site-footer {
  background: var(--color-footer-bg); border-top: 1px solid var(--color-border);
  margin-top: auto; padding: var(--space-xl) 0 0;
}
.footer-widgets { display: grid; grid-template-columns: 1fr; gap: var(--space-xl); margin-bottom: var(--space-xl); }
@media (min-width: 600px) { .footer-cols-2 .footer-widgets { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 768px) {
  .footer-cols-3 .footer-widgets { grid-template-columns: repeat(3, 1fr); }
  .footer-cols-4 .footer-widgets { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) { .footer-cols-4 .footer-widgets { grid-template-columns: repeat(4, 1fr); } }
.footer-col .widget { background: transparent; border: none; border-radius: 0; padding: 0; }
.footer-col .widget-title { color: var(--color-text); border-bottom-color: var(--color-border); }
.footer-col .widget ul li a { color: var(--color-secondary); }
.footer-col .widget ul li a:hover { color: var(--color-primary); }
.footer-bar {
  padding: var(--space-l) 0; border-top: 1px solid var(--color-border); margin-top: var(--space-m);
  font-size: var(--font-size-sm); color: var(--color-muted); text-align: center;
}
.footer-bar p { margin: 0; }
.footer-bar a { color: var(--color-link); }

.footer-content { margin-bottom: var(--space-l); font-size: var(--font-size-sm); color: var(--color-secondary); }
.footer-content :last-child { margin-bottom: 0; }
