.hero-footer { align-items: center; }
.scroll-hint { display: inline-flex; align-items: center; justify-self: end; gap: 10px; white-space: nowrap; }
.scroll-hint svg { display: block; flex: 0 0 auto; color: var(--gold); }

footer.footer { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 24px; }
footer.footer .footer-info { display: flex; align-items: center; gap: 22px; min-width: 0; }
footer.footer .footer-logo { display: block; flex: 0 0 auto; width: 82px; height: auto; object-fit: contain; object-position: left center; }
footer.footer .footer-meta { display: flex; align-items: center; gap: clamp(12px, 1.8vw, 22px); min-width: 0; color: rgba(203, 209, 200, .9); font: 400 10px/22px Arial, sans-serif; letter-spacing: .04em; }
footer.footer .footer-meta > * { flex: 0 0 auto; font: inherit; line-height: 22px; letter-spacing: inherit; white-space: nowrap; }
footer.footer .footer-meta > p { display: block; margin: 0; }
footer.footer .footer-meta a { border: 0; padding: 0; text-decoration: underline; text-decoration-color: rgba(255, 255, 255, .35); text-underline-offset: 3px; }
.public-security-filing { display: inline-flex; align-items: center; gap: 5px; }
.public-security-filing img { width: 16px; height: auto; object-fit: contain; }
.back-to-top { grid-column: 2; justify-self: end; }

@media (max-width: 767px) {
  footer.footer { min-height: 0; grid-template-columns: minmax(0, 1fr) auto; gap: 16px 18px; padding: 22px 0; }
  footer.footer .footer-info { grid-column: 1; grid-row: 1; align-items: flex-start; flex-direction: column; gap: 8px; }
  footer.footer .footer-meta { align-items: flex-start; flex-direction: column; gap: 5px; }
  .back-to-top { grid-column: 2; grid-row: 1; align-self: start; }
}
