.site-footer { padding: 76px 0 24px; background: var(--color-bg-dark-2); color: var(--color-text-light); }
.site-footer__grid { display: grid; grid-template-columns: 1.7fr repeat(4, 1fr); gap: 44px; padding-bottom: 64px; }
.site-footer__brand { padding-right: 30px; }
.site-footer__logo { max-width: 190px; max-height: 76px; width: auto; filter: brightness(0) invert(1); }
.site-footer__description { max-width: 330px; margin-top: 26px; color: var(--color-text-muted); }
.site-footer__heading { margin-bottom: 20px; color: #fff; font-family: var(--font-body); font-size: 12px; font-weight: 600; letter-spacing: var(--ls-uppercase); text-transform: uppercase; }
.site-footer__menu { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.site-footer a { text-decoration: none; }
.site-footer a:hover { color: var(--color-accent); }
.site-footer__contact { display: grid; align-content: start; gap: 12px; }
.site-footer__bottom { display: flex; justify-content: space-between; gap: 24px; padding-top: 24px; border-top: 1px solid var(--color-border-dark); color: var(--color-text-muted); font-size: 13px; }
.site-footer__bottom p { margin: 0; }
.site-footer__legal { display: flex; flex-wrap: wrap; gap: 20px; }

@media (max-width: 1024px) { .site-footer__grid { grid-template-columns: 1.5fr repeat(2, 1fr); } }
@media (max-width: 640px) { .site-footer { padding-top: 52px; } .site-footer__grid { grid-template-columns: 1fr 1fr; gap: 36px 24px; } .site-footer__brand, .site-footer__contact { grid-column: 1 / -1; } .site-footer__bottom { align-items: flex-start; flex-direction: column; } }

