/* Shared site footer (markup from lib/site-footer.js). Self-contained so it works on every page. */
.site-footer {
  /* Sit above the pages' fixed decorative backgrounds. */
  position: relative;
  z-index: 2;
  margin-top: auto;
  padding: 44px 24px 26px;
  background: linear-gradient(180deg, rgba(10, 12, 16, 0.6) 0%, #07080b 100%);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.72);
  font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  font-size: 14px;
}
.site-footer-inner {
  display: flex; flex-wrap: wrap; justify-content: space-between;
  max-width: 1120px; margin: 0 auto;
}
.site-footer-brand { flex: 1 1 260px; max-width: 340px; margin: 0 32px 28px 0; }
.site-footer-logo {
  display: inline-flex; align-items: center; font-size: 20px; font-weight: 800; letter-spacing: 0.02em;
  color: #fff; text-decoration: none;
}
.site-footer-mark { margin-right: 8px; color: #22d3ee; font-size: 24px; line-height: 1; }
.site-footer-tag { margin: 10px 0 0; line-height: 1.6; color: rgba(255, 255, 255, 0.6); }
.site-footer-cols { display: flex; flex-wrap: wrap; flex: 3 1 560px; }
.site-footer-col { flex: 1 1 130px; margin: 0 24px 24px 0; }
.site-footer-title {
  margin: 0 0 12px; font-size: 12px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase;
  color: rgba(255, 255, 255, 0.9);
}
.site-footer-col ul { margin: 0; padding: 0; list-style: none; }
.site-footer-col li { margin: 0 0 8px; }
.site-footer-col a {
  color: rgba(255, 255, 255, 0.62); text-decoration: none; transition: color 0.15s ease;
}
.site-footer-col a:hover, .site-footer-col a:focus-visible { color: #22d3ee; }
.site-footer a:focus-visible { outline: 2px solid #22d3ee; outline-offset: 3px; border-radius: 2px; }
.site-footer-bottom {
  display: flex; flex-wrap: wrap; justify-content: space-between;
  max-width: 1120px; margin: 8px auto 0; padding-top: 18px;
  border-top: 1px solid rgba(255, 255, 255, 0.07);
  font-size: 12.5px; color: rgba(255, 255, 255, 0.45);
}
.site-footer-bottom > span { margin: 0 16px 6px 0; }
@media (max-width: 640px) {
  .site-footer { padding: 34px 18px 22px; }
  .site-footer-brand { margin-right: 0; max-width: none; }
  .site-footer-col { flex-basis: 40%; }
}
