.page-bg {
  position: relative;
  width: 100%;
  min-height: 100vh;
  overflow-x: hidden;
  overflow-y: visible;

  background:
    radial-gradient(circle at 74% 18%, rgba(0, 55, 160, 0.13), transparent 31%),
    radial-gradient(circle at 20% 80%, rgba(0, 58, 130, 0.065), transparent 34%),
    linear-gradient(135deg, #02030a 0%, #030613 52%, #050a1a 100%);
}

.grid-layer {
  position: fixed;
  inset: 0;
  z-index: 1;
  pointer-events: none;

  background-image:
    linear-gradient(rgba(115, 160, 255, 0.062) 1px, transparent 1px),
    linear-gradient(90deg, rgba(115, 160, 255, 0.062) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.011) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.011) 1px, transparent 1px);

  background-size: 52px 52px, 52px 52px, 13px 13px, 13px 13px;
  background-position: 0 0;
  opacity: 0.62;
  mask-image: radial-gradient(circle at 50% 42%, black 0%, black 48%, transparent 86%);
}

.noise-layer {
  position: fixed;
  inset: 0;
  z-index: 2;
  pointer-events: none;

  background:
    radial-gradient(circle at 50% 34%, rgba(255, 255, 255, 0.018), transparent 26%),
    radial-gradient(circle at 50% 44%, transparent 0%, rgba(0, 0, 0, 0.22) 62%, rgba(0, 0, 0, 0.62) 100%),
    linear-gradient(to bottom, rgba(2, 3, 10, 0.04), rgba(2, 3, 10, 0.64));
  opacity: 0.92;
}

.glow {
  position: fixed;
  z-index: 0;
  border-radius: 999px;
  pointer-events: none;
  filter: blur(125px);
}

.glow-top {
  width: 520px;
  height: 520px;
  top: -230px;
  right: -170px;
  background: rgba(0, 75, 210, 0.20);
  opacity: 0.40;
}

.glow-bottom {
  width: 540px;
  height: 540px;
  bottom: -260px;
  left: -190px;
  background: rgba(0, 90, 210, 0.10);
  opacity: 0.34;
}
