/* ─────────────────────────────────────────────────────────────────────────
   Canonical site footer — THE single definition. Do not copy these rules
   into a page's inline <style>; link this file instead.

   Every marketing page links this, so the footer is identical everywhere by
   construction rather than by 25 copies agreeing with each other. The markup
   was unified previously while the CSS was not, and the two lineages drifted:
   guides rendered ~6% larger type with ~30% more row spacing.

   SELF-CONTAINED BY DESIGN. Every property that affects the footer's
   appearance is set here, including ones that would otherwise be inherited.
   That is the part that actually matters: the earlier divergence survived a
   value-by-value alignment because line-height was never declared at all and
   was quietly inherited from `body` — 1.7 in editorial.css, unset elsewhere.
   Anything left to inherit here will drift again the moment two pages define
   their body text differently.

   Depends only on the design tokens (--hair, --ink-muted, --f-body, --f-mono,
   --gold-text, --ink-faint), which every page defines in :root.
   ───────────────────────────────────────────────────────────────────────── */

.site-foot {
  /* Reset the inherited value rather than leaving it to the host page. */
  line-height: normal;
  border-top: 1px solid var(--hair);
  background: rgba(255, 255, 255, 0.3);
  padding: clamp(2rem, 5vh, 3.2rem) clamp(1.5rem, 7vw, 7rem) clamp(1.3rem, 3vh, 2rem);
  /* Inert unless the page is a scroll-snap container, so it is safe to keep
     here for the capability decks rather than overriding per page. */
  scroll-snap-align: start;
}

.foot-inner { max-width: 1160px; margin: 0 auto; }

.foot-cols {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: clamp(1.2rem, 2.6vw, 2.4rem);
}

.foot-col .foot-h {
  font-family: var(--f-mono);
  font-size: clamp(0.52rem, 0.68vw, 0.6rem);
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gold-text);
  margin-bottom: 0.55rem;
}

.foot-col ul { list-style: none; padding: 0; margin: 0; }
.foot-col li { margin-bottom: 0.35rem; }

.foot-col a {
  font-family: var(--f-body);
  font-size: clamp(0.78rem, 0.94vw, 0.87rem);
  font-weight: 400;
  line-height: normal;
  letter-spacing: normal;
  color: var(--ink-muted);
  text-decoration: none;
  transition: color 0.2s ease;
}

.foot-col a:hover,
.foot-col a[aria-current="page"] { color: var(--gold-text); }

.foot-base {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: clamp(1.4rem, 3.4vh, 2.2rem);
  padding-top: 1rem;
  border-top: 1px solid var(--hair);
  font-family: var(--f-mono);
  font-size: clamp(0.52rem, 0.68vw, 0.6rem);
  line-height: normal;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  color: var(--ink-faint);
}

.foot-base .sig { color: rgba(134, 99, 36, 0.75); }
