/* Shared site footer — quiet compact row of links */

footer.site-footer,
.site-footer {
  display: block;
  padding: 28px var(--lf-gutter, 6vw) 24px;
  color: var(--lf-footer-muted, #57534e);
  border-top: 1px solid var(--lf-line, #d8d4cd);
  background: var(--lf-bg, #f4f2ee);
  font-family: var(--lf-font, Arial, Helvetica, sans-serif);
  box-sizing: border-box;
  max-width: none;
  margin: 0;
}

.site-footer__inner,
.site-footer .footer-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 10px 22px;
  width: 100%;
  max-width: none;
  margin: 0;
}

.site-footer .footer-group {
  display: contents;
}

.site-footer .footer-title {
  display: none;
}

.site-footer .footer-link,
.site-footer .footer-group a {
  font-size: var(--lf-footer-link-size, 11px);
  line-height: 1.45;
  letter-spacing: 0.04em;
  color: var(--lf-footer-muted, #57534e);
  text-decoration: none;
  transition: color 0.2s;
  white-space: nowrap;
}

.site-footer .footer-link:hover,
.site-footer .footer-group a:hover {
  color: var(--lf-ink, #151515);
}

.site-footer .footer-note {
  display: none;
}

.site-footer .footer-bottom {
  width: max-content;
  max-width: 100%;
  margin: 18px auto 0;
  padding-top: 0;
  border-top: 0;
  font-size: var(--lf-footer-bottom-size, 11px);
  text-align: center;
  color: var(--lf-footer-muted, #57534e);
}

/* Subpages — full viewport width (matches TOP editorial footer) */
body.has-site-header:not(.page-top) .site-footer {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* Detail — less empty space above quiet footer */
body.page-detail.has-site-header:not(.account-space) .page-wrap {
  padding-bottom: 40px;
}

@media (max-width: 800px) {
  .site-footer {
    padding: 24px var(--lf-gutter-mobile, 18px) 20px;
  }

  .site-footer__inner,
  .site-footer .footer-links {
    gap: 10px 16px;
  }
}
