.site-footer { display: grid; grid-template-columns: 1fr 1.5fr; align-items: center; gap: 32px; padding: 45px clamp(24px, 4.2vw, 68px); background: #171817; color: #f8f3eb; font-family: Arial, Helvetica, sans-serif; text-align: left; }
.site-footer, .site-footer * { box-sizing: border-box; }
.site-footer a { color: inherit; text-decoration: none; }
.site-footer p, .site-footer small { margin: 0; color: #aaa69f; font-size: 12px; line-height: 1.6; }
.site-footer small, .site-footer .footer-navigation { grid-column: 1 / -1; }
.site-footer .brand { display: inline-flex; width: max-content; align-items: center; gap: 10px; font-size: 21px; font-weight: 900; letter-spacing: -.04em; }
.site-footer .brand > span:last-child > span { color: #eb5a43; }
.site-footer .brand-mark { width: 33px; height: 33px; display: inline-flex; align-items: center; justify-content: center; border-radius: 10px; background: #171817; color: #faf7f1; font-size: 18px; }
.site-footer .footer-navigation { display: grid; width: 100%; min-width: 0; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: start; gap: 24px 32px; }
.footer-navigation section, .footer-navigation ul, .footer-navigation li { min-width: 0; margin: 0; padding: 0; border: 0; background: none; list-style: none; }
.site-footer .footer-navigation h2 { margin: 0 0 12px; color: #f8f3eb; font-size: 15px; line-height: 1.4; font-weight: 700; letter-spacing: normal; }
.site-footer .footer-navigation a { display: flex; align-items: center; min-height: 44px; padding: 8px 0; color: #c7c2ba; font-size: 14px; font-weight: 400; line-height: 1.45; overflow-wrap: anywhere; }
.site-footer .footer-navigation a:hover { color: #f7a08c; text-decoration: underline; text-underline-offset: 4px; }
.site-footer a:focus-visible { outline: 3px solid #f3a89a; outline-offset: 3px; }
.site-footer .footer-social { grid-column: 1 / -1; display: flex; align-items: center; flex-wrap: wrap; gap: 16px 24px; padding-block: 24px; border-block: 1px solid #ffffff20; }
.site-footer .footer-social > span { color: #aaa69f; font-size: 14px; }
.site-footer .footer-social > div { display: flex; flex-wrap: wrap; gap: 12px; }
.site-footer .footer-social a { display: inline-flex; align-items: center; gap: 18px; min-height: 48px; padding: 12px 20px; border: 1px solid #ffffff30; border-radius: 999px; font-size: 14px; font-weight: 800; transition: transform .22s ease, background .22s ease, border-color .22s ease; }
.site-footer .footer-social a:hover, .site-footer .footer-social a:focus-visible { background: #eb5a43; border-color: #eb5a43; transform: translateY(-3px); }
.site-footer .footer-social a:active { transform: translateY(0); }
@media (max-width: 900px) { .site-footer .footer-navigation { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .site-footer { grid-template-columns: 1fr; } .site-footer .footer-navigation { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .site-footer .footer-social a { transition: none; transform: none; } }
