/* User-approved SCM footer colours. Scoped to the shared footer only. */
body .site-footer.site-footer {
  --footer-main:#414141;
  --footer-legal:#2d2d2d;
  --footer-ink:#fff;
  background:var(--footer-main);
  color:var(--footer-ink);
  border:0;
  padding:56px 0 0;
  font-size:16px;
  font-weight:300;
}
body .site-footer.site-footer .footer-grid { padding-bottom:56px; }
body .site-footer.site-footer :is(h3,a,p,address,.footer-social-mark) { color:var(--footer-ink); }
body .site-footer.site-footer h3 { font-size:16px; font-weight:500; }
body .site-footer.site-footer .footer-grid > div > a:not(.brand) { color:var(--footer-ink); line-height:1.55; }
body .site-footer.site-footer .footer-contact { color:var(--footer-ink); }
body .site-footer.site-footer a:hover { color:var(--footer-ink); text-decoration:underline; text-underline-offset:4px; }
body .site-footer.site-footer a:focus-visible { outline:2px solid #fff; outline-offset:5px; }
body .site-footer.site-footer .footer-social-mark { background:transparent; border:0; box-shadow:none; }
body .site-footer.site-footer .footer-bottom {
  width:100%; max-width:none; margin:0;
  padding:24px max(24px,calc((100% - 1320px)/2));
  background:var(--footer-legal);
  border:0; color:var(--footer-ink); font-size:13px;
}
body .site-footer.site-footer .footer-bottom :is(span,a) { color:var(--footer-ink); font-size:13px; }
body .site-footer.site-footer .footer-legal-row { flex-wrap:wrap; gap:10px 20px; white-space:normal; }
body .site-footer.site-footer .footer-legal-divider { display:none; }
@media(max-width:700px) {
  body .site-footer.site-footer { padding-top:40px; }
  body .site-footer.site-footer .footer-grid { padding-bottom:40px; }
  body .site-footer.site-footer .footer-bottom { padding:22px 20px; }
  body .site-footer.site-footer .footer-legal-row { line-height:1.6; }
}
