/* container for zoomed background */
.zoom-bg {
  position: relative;
  overflow: hidden;
}
.zoom-bg .zoom-bg-inner {
  position: absolute;
  inset: 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  transform-origin: center center;
  transform: scale(1);
  z-index: -1;
  animation: zoomScale 45s linear infinite alternate;
}
@keyframes zoomScale {
  from { transform: scale(1); }
  to   { transform: scale(1.4); }
}

/* particles container */
.bg-particles {
  position: relative;
  overflow: hidden;
}
.bg-particles > * {
  position: relative;
  z-index: 1;
}
