[class*="website-library-page_hero__"] {
  display: grid;
  place-items: center;
  text-align: center;
}

[class*="website-library-page_hero__"] > div {
  width: 100%;
}

.page-hero h1,
[class*="website-library-page_hero__"] h1 {
  position: relative;
  color: #0b1735;
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-weight: 900;
  letter-spacing: 0;
  text-shadow:
    1px 0 0 rgba(103, 232, 249, 0.95),
    -1px 0 0 rgba(244, 114, 182, 0.72),
    0 0 7px rgba(34, 211, 238, 0.88),
    0 0 16px rgba(59, 130, 246, 0.56),
    0 0 28px rgba(217, 70, 239, 0.30);
  filter: drop-shadow(0 0 5px rgba(103, 232, 249, 0.38));
  animation: catalog-neon-flicker 5.8s linear infinite;
}

.page-hero h1::after,
[class*="website-library-page_hero__"] h1::after {
  content: "";
  position: absolute;
  inset: 7% -2% 5%;
  pointer-events: none;
  background: repeating-linear-gradient(
    180deg,
    transparent 0,
    transparent 5px,
    rgba(103, 232, 249, 0.12) 6px,
    transparent 7px
  );
  mix-blend-mode: screen;
  animation: catalog-scan-flicker 3.6s steps(2, end) infinite;
}

@keyframes catalog-neon-flicker {
  0%, 18%, 22%, 62%, 65%, 100% {
    text-shadow: 1px 0 0 rgba(103, 232, 249, 0.95), -1px 0 0 rgba(244, 114, 182, 0.72), 0 0 7px rgba(34, 211, 238, 0.88), 0 0 16px rgba(59, 130, 246, 0.56), 0 0 28px rgba(217, 70, 239, 0.30);
  }
  19%, 21%, 63% {
    text-shadow: 1px 0 0 rgba(103, 232, 249, 0.62), -1px 0 0 rgba(244, 114, 182, 0.46), 0 0 3px rgba(34, 211, 238, 0.52), 0 0 9px rgba(59, 130, 246, 0.30), 0 0 17px rgba(217, 70, 239, 0.16);
  }
  20%, 64% {
    text-shadow: 2px 0 0 rgba(103, 232, 249, 1), -2px 0 0 rgba(244, 114, 182, 0.86), 0 0 10px rgba(34, 211, 238, 1), 0 0 22px rgba(59, 130, 246, 0.72), 0 0 36px rgba(217, 70, 239, 0.40);
  }
}

@keyframes catalog-scan-flicker {
  0%, 91%, 100% { opacity: 0.74; }
  92%, 94% { opacity: 0.28; }
  93%, 95% { opacity: 0.96; }
}

@media (prefers-reduced-motion: reduce) {
  .page-hero h1,
  .page-hero h1::after,
  [class*="website-library-page_hero__"] h1,
  [class*="website-library-page_hero__"] h1::after {
    animation: none;
  }

  .page-hero h1,
  [class*="website-library-page_hero__"] h1 {
    filter: none;
  }
}
