/**
 * footer.css — Site footer.
 */

.site-footer {
  background-color: var(--color-primary-dark);
  color: var(--color-text-inverse);
  padding-block: var(--space-16) var(--space-8);
}

.site-footer a { color: var(--color-text-inverse); text-decoration: none; }
.site-footer a:hover { color: var(--color-accent); }

.site-footer__grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1.5fr;
  gap: var(--space-10);
  margin-bottom: var(--space-12);
}

.site-footer__brand .site-brand__name { color: var(--color-text-inverse); }
.site-footer__tagline {
  margin-top: var(--space-3);
  color: var(--color-border-strong);
  max-width: 36ch;
  font-size: var(--font-size-sm);
}

.site-footer__heading {
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-bold);
  letter-spacing: var(--letter-spacing-wide);
  text-transform: uppercase;
  color: var(--color-accent);
  margin-bottom: var(--space-4);
}

.site-footer__menu { list-style: none; margin: 0; padding: 0; }
.site-footer__menu li { margin-bottom: var(--space-2); }

.site-footer__social { display: flex; gap: var(--space-4); margin-top: var(--space-4); }

.site-footer__newsletter .newsletter {
  background-color: transparent;
  border: 1px solid var(--color-primary-light);
  padding: var(--space-6);
  text-align: left;
}
.site-footer__newsletter .newsletter__title { color: var(--color-text-inverse); font-size: var(--font-size-md); }
.site-footer__newsletter .newsletter__subline { color: var(--color-border-strong); }

.site-footer__bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: var(--space-4);
  padding-top: var(--space-8);
  border-top: 1px solid var(--color-primary-light);
  font-size: var(--font-size-sm);
  color: var(--color-border-strong);
}

@media (max-width: 1024px) {
  .site-footer__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px) {
  .site-footer__grid { grid-template-columns: 1fr; }
}
