/* FOOTER v3: ONE component on all 6 sites (founder 00:28 UTC 2026-10-21; Creative brand/specs/site-header-v1.md §7).
   Markup: scripts/sitelib.py Site.footer() (.site-footer--v3 + --hub | --niche). Loads LAST in the shared bundle; every rule is
   scoped to .site-footer.site-footer--v3 so it wins over the older footer layers (landing, dark, space-scroll-v2 !important,
   cancel-footer-v1, footer-social-v2) without touching them. */
/* placement: standard section gap after the last section (the last section already gives half of it), hairline, no band */
.site-footer.site-footer--v3{margin-top:calc(var(--rhythm-section) / 2);padding:32px 0;
  background:transparent !important;border-top:1px solid rgba(255,255,255,.10) !important;text-align:left}
.site-footer.site-footer--v3 .site-footer__inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:0 24px}
/* logo: the header wordmark, 28px tall */
.site-footer.site-footer--v3 .site-footer__logo{justify-self:start;display:inline-flex;align-items:center;padding:0;min-height:44px;border-radius:8px}
.site-footer.site-footer--v3 .site-footer__logo img{height:28px;width:auto;display:block;align-self:center}
/* links: Source Sans 3 400, 15px/1.4, #C9D1DE, no underline; hover/focus-visible white + underline (2px offset); 24px apart */
.site-footer.site-footer--v3 .site-footer__links{justify-self:center;display:flex;flex-wrap:wrap;justify-content:center;gap:0 24px}
.site-footer.site-footer--v3 .site-footer__links a{display:inline-flex;align-items:center;min-height:44px;padding:0;
  font-family:var(--font-body);font-weight:400;font-size:15px;line-height:1.4;color:#C9D1DE;text-decoration:none;white-space:nowrap}
.site-footer.site-footer--v3 .site-footer__links a:hover,.site-footer.site-footer--v3 .site-footer__links a:focus-visible{
  color:#FFFFFF;text-decoration:underline;text-decoration-color:currentColor;text-underline-offset:2px}
.site-footer.site-footer--v3 a:focus-visible{outline:none;box-shadow:var(--dk-focus-ring);border-radius:4px}
/* icons: 20px glyphs, #C9D1DE, in 44x44 targets, 8px apart; hover white */
.site-footer.site-footer--v3 .site-footer__social{justify-self:end;display:flex;align-items:center;gap:8px}
.site-footer.site-footer--v3 .footer-social{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;
  margin:0;padding:0;border:0;border-radius:999px;background:transparent;color:#C9D1DE}
.site-footer.site-footer--v3 .footer-social:hover{background:transparent;color:#FFFFFF}
.site-footer.site-footer--v3 .footer-social:focus-visible{color:#FFFFFF;box-shadow:var(--dk-focus-ring);border-radius:999px}
.site-footer.site-footer--v3 .footer-social__icon{width:20px;height:20px}
.site-footer.site-footer--v3 .footer-social__icon--linkedin path{fill:currentColor}
/* phones */
@media (max-width:767px){
  .site-footer.site-footer--v3{padding:28px 0}
  .site-footer.site-footer--v3 .site-footer__logo img{height:24px}
  .site-footer.site-footer--v3 .site-footer__links{gap:0 16px}
  .site-footer.site-footer--v3 .site-footer__links a{font-size:14px}
  /* hub: stack centred, 16px row gap: logo, links (wrap), icons */
  .site-footer--hub.site-footer--v3 .site-footer__inner{grid-template-columns:1fr;justify-items:center;row-gap:16px;text-align:center}
  .site-footer--hub.site-footer--v3 .site-footer__logo,.site-footer--hub.site-footer--v3 .site-footer__social{justify-self:center}
  /* niches: one row, logo left, Privacy centred between, X right */
  .site-footer--niche.site-footer--v3 .site-footer__inner{grid-template-columns:1fr auto 1fr;gap:0 16px}
}
