/* Loaded after page styles so the same footer is used everywhere. */
.site-footer.site-footer--shared {
  --footer-bg: #edf3fb;
  --footer-text: #172a46;
  --footer-muted: #52657e;
  --footer-line: #d7e2ef;
  --footer-accent: #174ea6;
  margin-top: 64px;
  background: var(--footer-bg);
  color: var(--footer-text);
  border-top: 1px solid var(--footer-line);
  font: 16px/1.65 'Nunito Sans', system-ui, sans-serif;
}
.dark .site-footer.site-footer--shared { --footer-bg: #15253e; --footer-text: #eff5ff; --footer-muted: #b5c7df; --footer-line: #354e70; --footer-accent: #9ac5ff; }
.site-footer.site-footer--shared .container.grid { max-width: 1200px; margin-inline: auto; padding: 48px 32px; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 32px; }
.site-footer.site-footer--shared section { min-width: 0; }
.site-footer.site-footer--shared h2 { font: 800 14px/1.5 'Nunito Sans', system-ui, sans-serif; letter-spacing: 0; color: var(--footer-text); margin: 24px 0 12px; }
.site-footer.site-footer--shared h2:first-child { margin-top: 0; }
.site-footer.site-footer--shared a { display: flex; align-items: center; min-height: 44px; color: var(--footer-muted); font-size: 14px; overflow-wrap: anywhere; margin: 0; text-decoration: none; }
.site-footer.site-footer--shared a:hover { color: var(--footer-accent); text-decoration: underline; }
.site-footer.site-footer--shared a:focus-visible { outline: 3px solid var(--footer-accent); outline-offset: 3px; }
.site-footer.site-footer--shared > p { margin: 0; padding: 16px 24px; border-top: 1px solid var(--footer-line); color: var(--footer-muted); font-size: 12px; text-align: center; }
.site-footer.site-footer--shared > p > a { justify-content: center; font-size: 12px; }
@media (max-width: 1050px) { .site-footer.site-footer--shared .container.grid { grid-template-columns: repeat(3,minmax(0,1fr)); } }
@media (max-width: 700px) { .site-footer.site-footer--shared .container.grid { grid-template-columns: repeat(2,minmax(0,1fr)); padding-inline: 24px; gap: 32px 24px; } }
@media (max-width: 380px) { .site-footer.site-footer--shared .container.grid { grid-template-columns: minmax(0,1fr); } }
