/* Shared site footer — single source of truth.
   Markup lives in routers/pages.py::_FOOTER_HTML, injected via the
   `<!-- FOOTER -->` placeholder by _render_with_chrome. Brand tokens
   (--bg, --ink-2, --line, --serif, --accent) MUST be defined on the
   page (see nav.css note). */
.site-foot{margin-top:64px;padding:32px 0 48px;border-top:1px solid var(--line);color:var(--ink-2)}
.site-foot .wrap.foot-row{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;flex-direction:column;gap:18px}
.site-foot .foot-brand{font-family:var(--serif);font-size:24px;font-weight:600;letter-spacing:-.02em;color:var(--ink)}
.site-foot .foot-brand em{font-style:italic;color:var(--accent)}
.site-foot .foot-links{display:flex;gap:18px;flex-wrap:wrap;font-size:14px}
.site-foot .foot-links a{color:var(--ink-2);text-decoration:none}
.site-foot .foot-links a:hover{color:var(--ink)}
.site-foot .foot-mini{font-size:12px;color:var(--muted);line-height:1.5;max-width:64ch}
@media (min-width:720px){
  .site-foot .wrap.foot-row{flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:24px}
  .site-foot .foot-mini{flex-basis:100%}
}
