/* Fixed jumbotron ambience — aurora, orbs, flowing lines, particles behind the whole page */

.site-backdrop {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: visible;
  background-color: var(--color-bg-base);
}

.site-backdrop__aurora {
  position: absolute;
  inset: 0;
  opacity: 0.42;
}

.site-backdrop .light-orb {
  opacity: 0.85;
  animation: orb-drift 12s ease-in-out infinite;
}

.site-backdrop .light-orb--2 {
  animation-delay: -4s;
}

.site-backdrop .light-orb--3 {
  animation-delay: -7s;
}

.site-backdrop__lines {
  position: absolute;
  inset: -18%;
  width: 136%;
  height: 136%;
  opacity: 0.55;
}

.site-backdrop__lines path {
  stroke-dasharray: 10 14;
  animation: hero-jumbo-line-flow 22s linear infinite;
}

.site-backdrop__lines .site-backdrop__waves path:nth-child(2) {
  animation-duration: 17s;
  animation-direction: reverse;
  opacity: 0.75;
}

.site-backdrop__lines .site-backdrop__waves path:nth-child(3) {
  animation-duration: 28s;
  opacity: 0.55;
}

.site-backdrop__lines .site-backdrop__waves path:nth-child(4) {
  animation-duration: 20s;
  animation-direction: reverse;
}

.site-backdrop__lines .site-backdrop__waves path:nth-child(5) {
  animation-duration: 26s;
}

@keyframes hero-jumbo-line-flow {
  to {
    stroke-dashoffset: -240;
  }
}

#site-particle-grid {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0.14;
}

@media (max-width: 900px) {
  .site-backdrop__lines {
    opacity: 0.35;
  }

  #site-particle-grid {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-backdrop__lines path,
  .site-backdrop .light-orb,
  .site-backdrop__aurora {
    animation: none !important;
  }
}
