/* footer.css */

.site-footer {
  border-top: 1px solid var(--surface);
  background: color-mix(in srgb, var(--mantle) 94%, transparent);
}

.site-footer-inner {
  width: var(--site-shell);
  margin: 0 auto;
  padding: 34px 0;
  display: flex;
  justify-content: space-between;
  gap: 32px;
}

.site-footer-brand {
  max-width: 38ch;
}

.site-footer-brand strong,
.site-footer-links h2 {
  color: var(--mauve);
}

.site-footer-brand p {
  color: var(--sub);
}

.site-footer-cta {
  margin-top: 8px;
}

.site-footer-credit-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 14px;
  margin-top: 8px;
}

.site-footer-version,
.site-footer-authors {
  margin: 0;
  font-size: 0.88rem;
}

.site-footer-authors a {
  color: var(--sub);
}

.site-footer-authors a:hover {
  color: var(--blue);
}

.site-footer-links {
  display: flex;
  gap: clamp(28px, 7vw, 72px);
}

.site-footer-links div {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.site-footer-links h2 {
  margin-bottom: 4px;
  font-size: 1rem;
}

.site-footer-links h2:not(:first-child) {
  margin-top: 10px;
}

.site-footer-links a {
  color: var(--sub);
  text-decoration: none;
}

.site-footer-links a:hover {
  color: var(--blue);
}

.site-footer-socials {
  display: flex;
  gap: 12px;
}

.site-footer-socials a {
  display: inline-flex;
  padding: 2px;
}

.site-footer-socials img {
  width: 22px;
  height: 22px;
}

@media (max-width: 720px) {
  .site-footer-inner,
  .site-footer-links {
    flex-direction: column;
  }
}
