.site-footer {
  padding: clamp(32px, 5vw, 64px) 0;
  background: #09182b;
  color: #e1ebf7;
}
.footer-columns {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 1.3fr) minmax(0, .6fr);
  gap: clamp(24px, 5vw, 60px);
}
.site-footer h2 { margin: 0 0 12px; color: #fff; font: 650 1rem/1.3 system-ui, sans-serif; }
.site-footer ul { display: grid; gap: 9px; margin: 0; padding: 0; list-style: none; }
.site-footer a { color: inherit; text-decoration: none; overflow-wrap: anywhere; }
.site-footer a:hover, .site-footer a:focus-visible { color: #a7d3ff; text-decoration: underline; }
.footer-brand a { color: #fff; font-size: 1.35rem; font-weight: 700; }
.footer-contacts a { display: inline-flex; align-items: center; gap: 9px; }
.footer-contacts svg { width: 18px; height: 18px; flex: none; fill: none; stroke: #a7d3ff; stroke-width: 1.6; stroke-linejoin: round; }
@media (max-width: 760px) {
  .footer-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-brand { grid-column: 1 / -1; }
}
@media (max-width: 480px) {
  .footer-columns { grid-template-columns: minmax(0, 1fr); }
}
