.site-footer {
  background: var(--color-primary-dark);
  color: #d9e3df;
  padding: var(--space-10) 0 var(--space-6);
  margin-top: var(--space-12);
}
.footer-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-8);
}
.footer-brand { margin-bottom: var(--space-3); }
.footer-brand .logo-word { font-size: 1.25rem; }
.footer-tagline { color: #a9bdb6; font-size: 0.9375rem; max-width: 32ch; }
.footer-column h4 { color: #fff; font-size: 0.875rem; text-transform: uppercase; letter-spacing: 0.06em; margin-bottom: var(--space-3); }
.footer-column ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-2); }
.footer-column a { color: #c3d3cd; }
.footer-column a:hover { color: #fff; }
.footer-bottom {
  margin-top: var(--space-8);
  padding-top: var(--space-5);
  border-top: 1px solid rgba(255,255,255,0.12);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  justify-content: space-between;
  font-size: 0.8125rem;
  color: #a9bdb6;
}
.footer-fee-note { font-size: 0.8125rem; color: #a9bdb6; }

@media (min-width: 640px) {
  .footer-grid { grid-template-columns: minmax(240px, 1fr) 1fr 1fr; }
}
@media (min-width: 960px) {
  .footer-grid { grid-template-columns: minmax(280px, 1fr) 1fr 1fr 1fr; }
}
