.site-footer { background: var(--color-primary); color: var(--color-on-dark-soft); padding: var(--space-xl) 0 var(--space-lg); font-size: var(--fs-16); }
.site-footer a { color: var(--color-on-dark); text-decoration: none; }
.site-footer a:hover { color: var(--color-accent-light); }

.site-footer__top {
  display: flex; flex-direction: column; gap: 24px; align-items: flex-start;
  padding-bottom: var(--space-lg); margin-bottom: var(--space-lg);
  border-bottom: 1px solid var(--color-line-dark);
}
.site-footer__claim { font-family: var(--font-heading); font-size: var(--fs-h2); color: var(--color-on-dark); line-height: 1.1; }
.site-footer__sig { font-family: var(--font-script); color: var(--color-accent-light); margin-left: 16px; font-size: 1.1em; }

.site-footer__grid { display: grid; gap: 36px; }
.site-footer__heading { font-family: var(--font-body); font-size: var(--fs-14); letter-spacing: 0.16em; text-transform: uppercase; color: var(--color-accent-light); margin-bottom: 14px; font-weight: 600; }
.site-footer__text { margin-top: 16px; max-width: 32ch; }
.site-footer__list { list-style: none; padding: 0; margin: 0; display: grid; gap: 6px; font-style: normal; }
.site-footer__list a { display: inline-block; padding: 4px 0; }
.site-footer .hours dt, .site-footer .hours dd { color: var(--color-on-dark-soft); }
.site-footer .hours a { text-decoration: underline; }

.site-footer__bottom { margin-top: var(--space-xl); padding-top: var(--space-md); border-top: 1px solid var(--color-line-dark); display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; font-size: var(--fs-14); }

@media (min-width: 768px) {
  .site-footer__top { flex-direction: row; justify-content: space-between; align-items: center; }
  .site-footer__grid { grid-template-columns: 1.3fr 1fr 1fr 1.2fr; }
}

.site-footer .btn--light { color: var(--color-primary); }
.site-footer .btn--light:hover { color: var(--color-primary); }
.site-footer .hours--pending { color: var(--color-on-dark-soft); }
.site-footer .logo { height: 72px; }
