.site-footer {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) minmax(150px, 1fr) minmax(150px, 1fr);
  gap: 36px;
  padding: 52px clamp(20px, 5vw, 76px) 26px;
  color: #fff;
  background: #19322e;
  font-family: 'DM Sans', Arial, sans-serif;
}
.site-footer__brand img { display: block; width: 180px; max-width: 100%; filter: invert(1); }
.site-footer__brand p { margin: 16px 0 0; color: #c6d2ce; font-size: 14px; line-height: 1.5; }
.site-footer .site-footer__links { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; }
.site-footer__links strong { margin: 0 0 10px; color: #b7c9c1; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.site-footer a { color: #fff; font: 500 13px/1.5 'DM Sans', Arial, sans-serif; text-transform: none; text-decoration: none; }
.site-footer__links a { display: flex; min-height: 36px; align-items: center; }
.site-footer a:hover { text-decoration: underline; text-underline-offset: 4px; }
.site-footer .site-footer__meta { grid-column: 1 / -1; margin: 4px 0 0; border-top: 1px solid #ffffff26; padding-top: 20px; color: #b7c9c1; font: 400 12px/1.5 'DM Sans', Arial, sans-serif; }
@media (max-width: 760px) {
  .site-footer { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 20px; padding: 38px 20px 24px; }
  .site-footer__brand { grid-column: 1 / -1; }
  .site-footer__brand img { width: 150px; }
  .site-footer__links a { min-height: 44px; }
}
