/* =========================================================
   Site Footer
   Full-width horizontal bar — mirrors nav layout.
   Brand left · Socials centre · Meta right
========================================================= */

.site-footer {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 0;
  background: rgba(5, 8, 13, 0.90) !important;
  backdrop-filter: blur(16px) saturate(1.08) !important;
  -webkit-backdrop-filter: blur(16px) saturate(1.08) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: none !important;
}

/* Teal/ember split glow line at top edge */
.site-footer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 8%; right: 8%;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(70, 240, 255, 0.22) 28%,
    rgba(255, 154, 60, 0.16) 72%,
    transparent
  );
  pointer-events: none;
}

.site-footer::after { display: none; }

/* ── Inner shell — single horizontal row ── */
.footer__inner {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;
  width: 100% !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 18px 24px !important;
  box-sizing: border-box !important;
  text-align: left !important;
}

/* ── Brand (left) ── */
.footer__brand {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 2px !important;
  flex-shrink: 0 !important;
  min-width: 0 !important;
}

.footer__title {
  font-family: var(--serif, "Cinzel", ui-serif, Georgia, serif) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  color: rgba(231, 246, 248, 0.85) !important;
  white-space: nowrap !important;
}

.footer__tagline {
  font-size: 10px !important;
  font-style: italic !important;
  letter-spacing: 0.05em !important;
  color: rgba(231, 246, 248, 0.42) !important;
  white-space: nowrap !important;
}

/* ── Socials (centre) ── */
.footer__socials {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: 1 !important;
}

.social {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 7px 12px !important;
  border-radius: 8px !important;
  border: 1px solid rgba(255, 255, 255, 0.09) !important;
  background: rgba(255, 255, 255, 0.03) !important;
  color: rgba(231, 246, 248, 0.58) !important;
  text-decoration: none !important;
  font-family: var(--serif, "Cinzel", ui-serif, Georgia, serif) !important;
  font-size: 10px !important;
  letter-spacing: 0.09em !important;
  text-transform: uppercase !important;
  transition: background .18s, border-color .18s, color .18s !important;
  white-space: nowrap !important;
}

.social svg {
  width: 13px !important;
  height: 13px !important;
  fill: currentColor !important;
  flex-shrink: 0 !important;
}

.social:hover {
  background: rgba(255, 255, 255, 0.07) !important;
  border-color: rgba(255, 255, 255, 0.16) !important;
  color: rgba(231, 246, 248, 0.90) !important;
  text-decoration: none !important;
}

/* ── Meta (right) ── */
.footer__meta {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 3px !important;
  flex-shrink: 0 !important;
}

.footer__copy {
  font-size: 10px !important;
  color: rgba(231, 246, 248, 0.32) !important;
  letter-spacing: 0.04em !important;
  white-space: nowrap !important;
}

.footer__links {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.footer__links a {
  font-size: 10px !important;
  color: rgba(231, 246, 248, 0.38) !important;
  text-decoration: none !important;
  letter-spacing: 0.06em !important;
  transition: color .18s !important;
  white-space: nowrap !important;
}

.footer__links a:hover {
  color: rgba(231, 246, 248, 0.72) !important;
  text-decoration: none !important;
}

.footer__links .dot {
  color: rgba(231, 246, 248, 0.20) !important;
  font-size: 9px !important;
}

/* =========================================================
   Responsive — stack at narrow widths
========================================================= */
@media (max-width: 860px) {
  .footer__inner {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    padding: 24px 16px !important;
    gap: 16px !important;
  }

  .footer__brand {
    align-items: center !important;
  }

  .footer__meta {
    align-items: center !important;
  }
}

@media (max-width: 520px) {
  .social span { display: none !important; }
  .social { padding: 8px 10px !important; }
  .social svg { width: 15px !important; height: 15px !important; }
}