.footer { background: #171715; color: var(--color-white); padding: var(--space-8) 0 calc(var(--space-6) + env(safe-area-inset-bottom)); }
.footer__top { display: grid; grid-template-columns: 1.6fr repeat(3, 0.7fr); gap: var(--space-7); padding-bottom: var(--space-8); }
.footer__brand { max-width: 20rem; }
.footer__brand .wordmark { align-items: flex-start; }
.footer__brand p { margin-top: var(--space-5); color: rgba(255,255,255,0.55); font-size: var(--font-size-200); }
.footer__column { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-2); color: rgba(255,255,255,0.6); font-size: var(--font-size-200); }
.footer__column h2 { margin-bottom: var(--space-3); color: var(--color-white); font-family: var(--font-body); font-size: var(--font-size-100); font-weight: 700; letter-spacing: var(--letter-spacing-label); text-transform: uppercase; }
.footer__column a { text-decoration: none; }
.footer__column a:hover { color: var(--color-white); }
.footer__bottom { display: flex; align-items: center; justify-content: space-between; gap: var(--space-5); border-top: 1px solid rgba(255,255,255,0.15); padding-top: var(--space-5); color: rgba(255,255,255,0.45); font-size: var(--font-size-100); }
.footer__bottom nav { display: flex; gap: var(--space-5); }
@media (max-width: 767px) {
  .footer__top { grid-template-columns: 1fr 1fr; }
  .footer__brand { grid-column: 1 / 3; }
  .footer__bottom { align-items: flex-start; flex-direction: column; }
  .footer__bottom nav { flex-direction: column; gap: var(--space-2); }
}
@media (max-width: 480px) {
  .footer__top { grid-template-columns: 1fr; }
  .footer__brand { grid-column: 1; }
}
