/* Footer works on the unchanged homepage without publishing-main variables. */
html body.public-site > footer.nav8767-footer {
  --nav8767-bg: #f8fafc;
  --nav8767-ink: #0f172a;
  --nav8767-muted: #475569;
  --nav8767-line: #cbd5e1;
  --nav8767-accent: #3b70b7;
  background: var(--nav8767-bg);
  color: var(--nav8767-ink);
  border-top: 1px solid var(--nav8767-line);
  padding: 0;
}
html[data-theme="dark"] body.public-site > footer.nav8767-footer {
  --nav8767-bg: #070b12;
  --nav8767-ink: #f8fafc;
  --nav8767-muted: #a9b8c9;
  --nav8767-line: #334155;
  --nav8767-accent: #8bb4e8;
}
.nav8767-footer *, .nav8767-sitemap * { box-sizing: border-box; }
.nav8767-footer .nav8767-container { max-width: 1216px; margin-inline: auto; padding: 48px 32px 24px; }
.nav8767-footer .nav8767-identity { display:flex; justify-content:space-between; gap:32px; align-items:center; padding-bottom:32px; }
.nav8767-footer .nav8767-brand { min-width:0; }
.nav8767-footer .nav8767-brand>a { display:inline-flex;align-items:center;min-height:44px; }
.nav8767-footer .nav8767-brand img { display:block; width:208px; max-width:100%; height:auto; }
.nav8767-footer .nav8767-brand dl { display:grid;gap:4px;margin:16px 0 0;padding:0; }
.nav8767-footer .nav8767-brand dd { margin:0;color:var(--nav8767-muted);font-size:14px;line-height:1.7; }
.nav8767-footer .nav8767-contact { display:flex;flex-direction:column;align-items:flex-start;min-width:0;font-style:normal; }
.nav8767-footer .nav8767-contact-link { display:inline-flex;align-items:center;min-height:44px;color:var(--nav8767-ink);font-size:16px;overflow-wrap:anywhere; }
.nav8767-footer .nav8767-menu-grid,
.nav8767-sitemap .nav8767-menu-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 48px; }
.nav8767-footer .nav8767-menu-grid { padding-block:32px;border-block:1px solid var(--nav8767-line); }
.nav8767-footer .nav8767-menu,
.nav8767-sitemap .nav8767-menu { min-width:0; }
.nav8767-footer .nav8767-menu-title,
.nav8767-sitemap .nav8767-menu-title { margin:0 0 8px;font-size:18px;line-height:1.5;font-weight:700; }
.nav8767-footer .nav8767-group-title,
.nav8767-sitemap .nav8767-group-title { margin:8px 0 0;font-size:14px;line-height:1.6;font-weight:650; }
.nav8767-footer .nav8767-links,
.nav8767-sitemap .nav8767-links { list-style:none;margin:0;padding:0; }
.nav8767-footer .nav8767-links li,
.nav8767-sitemap .nav8767-links li { margin:0;padding:0;min-width:0; }
.nav8767-footer .nav8767-menu a,
.nav8767-sitemap .nav8767-menu a { display:flex;align-items:center;min-height:44px;max-width:100%;padding-block:8px;overflow-wrap:anywhere;text-decoration:none; }
.nav8767-footer .nav8767-menu a { color:var(--nav8767-muted);font-size:15px;line-height:1.55; }
.nav8767-footer .nav8767-menu-title a { color:var(--nav8767-ink);font-size:inherit; }
.nav8767-footer .nav8767-group-title a { color:var(--nav8767-ink);font-size:inherit; }
.nav8767-footer .nav8767-product-group+.nav8767-product-group,
.nav8767-sitemap .nav8767-product-group+.nav8767-product-group { margin-top:12px; }
.nav8767-footer .nav8767-product-group .nav8767-links,
.nav8767-sitemap .nav8767-product-group .nav8767-links { padding-left:14px; }
.nav8767-footer .nav8767-product-group .nav8767-links { border-left:1px solid var(--nav8767-line); }
.nav8767-footer .nav8767-bottom { display:flex;justify-content:space-between;align-items:center;gap:12px 24px;flex-wrap:wrap;padding-top:20px; }
.nav8767-footer .nav8767-copyright { margin:0;color:var(--nav8767-muted);font-size:13px;line-height:1.7; }
.nav8767-footer .nav8767-policies { display:flex;gap:8px 24px;flex-wrap:wrap; }
.nav8767-footer .nav8767-policy-link { display:inline-flex;align-items:center;min-height:44px;color:var(--nav8767-muted);font-size:14px;line-height:1.6;overflow-wrap:anywhere; }
.nav8767-footer a:hover { color:var(--nav8767-accent);text-decoration:underline;text-underline-offset:4px; }
.nav8767-footer a:focus-visible { outline:2px solid var(--nav8767-accent);outline-offset:3px;border-radius:2px; }
/* Sitemap-only companions; never target another page's main/header. */
#public-main .nav8767-sitemap { margin-top:24px;min-width:0; }
#public-main .nav8767-sitemap .nav8767-menu { padding:24px 0;border-bottom:1px solid var(--pub-line,#cbd5e1); }
#public-main .nav8767-sitemap .nav8767-menu-title { font-size:22px!important; }
#public-main .nav8767-sitemap .nav8767-menu-title a,
#public-main .nav8767-sitemap .nav8767-group-title a { color:var(--pub-ink,#0f172a); }
#public-main .nav8767-sitemap .nav8767-links a { color:var(--pub-muted,#475569); }
#public-main .nav8767-sitemap .nav8767-product-group .nav8767-links { border-left:1px solid var(--pub-line,#cbd5e1); }
#public-main .nav8767-sitemap .nav8767-sitemap-policies { margin-top:32px; }
#public-main .nav8767-sitemap .nav8767-sitemap-policies .nav8767-links { display:flex;flex-wrap:wrap;gap:8px 24px; }
#public-main .nav8767-sitemap .nav8767-sitemap-policies a { display:inline-flex;align-items:center;min-height:44px; }
#public-main .nav8767-sitemap a:hover { color:var(--pub-accent,#3b70b7);text-decoration:underline;text-underline-offset:4px; }
#public-main .nav8767-sitemap a:focus-visible { outline:2px solid var(--pub-accent,#3b70b7);outline-offset:3px; }
@media(max-width:1023px) {
  .nav8767-footer .nav8767-menu-grid,
  .nav8767-sitemap .nav8767-menu-grid { grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px; }
}
@media(max-width:599px) {
  .nav8767-footer .nav8767-container { padding:32px 24px 20px; }
  .nav8767-footer .nav8767-identity { flex-direction:column;align-items:flex-start;gap:20px; }
  .nav8767-footer .nav8767-menu-grid,
  .nav8767-sitemap .nav8767-menu-grid { grid-template-columns:minmax(0,1fr);gap:24px; }
  .nav8767-footer .nav8767-bottom { align-items:flex-start;flex-direction:column; }
  .nav8767-footer .nav8767-policies { gap:4px 16px; }
}
