/* ==========================================================================
   Component · Footer
   ========================================================================== */

.site-footer {
  padding-top: clamp(2rem, 1rem + 2vw, 3rem);
  text-align: center;
}

.site-footer__icon {
  width: clamp(7rem, 6rem + 2vw, 9.5rem);
  margin-inline: auto;
}

/* Theme-matched icon plate: dark plate on dark, light plate on light */
.site-footer__icon--light { display: none; }

:root[data-theme="light"] .site-footer__icon--dark  { display: none; }
:root[data-theme="light"] .site-footer__icon--light { display: block; }

.site-footer__legal {
  margin-top: 1.75rem;
  max-width: 41rem;
  margin-inline: auto;
  padding-inline: var(--gutter);
  font-size: var(--text-caption);
  color: var(--color-text-tertiary);
  line-height: 1.5;
}

.site-footer__social {
  margin-top: 2.5rem;
  display: flex;
  justify-content: center;
  gap: 1.5rem;
}

.site-footer__social a {
  color: var(--color-text-tertiary);
  transition: color var(--duration-fast) var(--ease-gentle);
}

.site-footer__social a:hover {
  color: var(--color-text-primary);
}

.site-footer__social svg {
  width: 17px;
  height: 17px;
}

.site-footer__rule {
  width: min(var(--container-nav), calc(100% - 2 * var(--gutter)));
  margin: 3rem auto 0;
  border: 0;
  border-top: 1px solid var(--color-hairline);
}

.site-footer__copyright {
  padding: 1.5rem 0 2.75rem;
  font-size: var(--text-caption);
  color: var(--color-text-secondary);
}
