footer {
  position: relative;
  margin-top: auto;
  padding: 24px 18px;
  text-align: center;

  background: rgba(3, 8, 16, 0.94);
  border-top: 1px solid rgba(0, 166, 255, 0.14);
  color: #7890ad;

  overflow: hidden;
}

footer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;

  width: 40%;
  max-width: 40vw;
  height: 2px;

  background: linear-gradient(
    90deg,
    transparent,
    rgba(0, 145, 255, 0.4),
    rgba(0, 200, 255, 1),
    rgba(0, 145, 255, 0.4),
    transparent
  );

  filter: blur(0.6px);
  animation: footerSweep 3s ease-in-out infinite;
  pointer-events: none;
}

@keyframes footerSweep {
  0% {
    transform: translateX(-110%);
    opacity: 0;
  }

  15% {
    opacity: 1;
  }

  85% {
    opacity: 1;
  }

  100% {
    transform: translateX(260%);
    opacity: 0;
  }
}

.footer-links {
  margin-bottom: 8px;
}

.footer-links a {
  color: #8ca8c9;
  text-decoration: none;
  margin: 0 10px;
}

.footer-links a:hover {
  color: #00a6ff;
}