.site-footer {
  padding: 64px 0 30px;
  color: #fff;
  background: radial-gradient(ellipse at 50% 12%, #202526 0%, #181c1d 48%, #101314 100%);
  border-top: 1px solid rgba(255,255,255,.14);
}
.site-footer > .container { width: min(calc(100% - 40px), 1280px); margin-inline: auto; }
.footer-top { display: grid; grid-template-columns: 1.25fr .65fr .85fr; gap: clamp(36px, 6vw, 88px); padding-bottom: 58px; }
.footer-top > div:first-child { display: flex; flex-direction: column; }
.footer-brand { display: block; width: fit-content; margin-bottom: 22px; color: #f7f5ef; text-decoration: none; }
.footer-brand .brand-text { color: #f7f5ef; font-family: "Satoshi", "Instrument Sans", system-ui, sans-serif; font-size: clamp(2rem, 3vw, 2.75rem); font-weight: 500; letter-spacing: -.02em; line-height: 1; white-space: nowrap; }
.footer-copy { max-width: 435px; margin: 0; color: rgba(255,255,255,.68); }
.footer-column { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.footer-label { margin-bottom: 8px; color: rgba(255,255,255,.46); font-family: inherit; font-size: .72rem; font-weight: 750; letter-spacing: .14em; text-transform: uppercase; }
.footer-column a { color: rgba(255,255,255,.86); font-weight: 475; text-decoration: none; }
.footer-column a:hover { color: #fff; }
.footer-location { color: rgba(255,255,255,.86); font-weight: 475; }
.footer-contact-item { display: inline-flex; align-items: center; gap: 10px; }
.footer-contact-icon { flex: 0 0 16px; width: 16px; height: 16px; fill: none; stroke: #f28a52; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.footer-column a.footer-contact-item:hover .footer-contact-icon { stroke: #ffa06f; }
.footer-meta { display: flex; justify-content: space-between; gap: 24px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.14); color: rgba(255,255,255,.58); font-size: .86rem; text-align: left; }
.footer-legal { display: flex; flex-wrap: wrap; gap: 18px; }
.footer-legal a { color: inherit; text-decoration: none; }
@media (max-width: 1000px) {
  .footer-top { grid-template-columns: 1fr 1fr; }
  .footer-top > div:first-child { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
  .site-footer > .container { width: min(calc(100% - 24px), 1280px); }
  .footer-top { grid-template-columns: 1fr; }
  .footer-top > div:first-child { grid-column: auto; }
  .footer-meta { align-items: flex-start; flex-direction: column; }
}
