.page-loader {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 10000;
  place-items: center;
  padding: clamp(24px, 6vw, 80px);
  background: #000;
  color: #fff;
}

html.is-page-loading {
  overflow: hidden;
}

.is-page-loading .page-loader {
  display: grid;
}

.page-loader-art {
  width: min(80%, 500px);
}

.page-loader-art svg {
  display: block;
  width: 100%;
  height: auto;
}

.page-loader-art svg * {
  /* Override the supplied SVG's three-second animation shorthands. */
  animation-duration: 1.5s !important;
  animation-fill-mode: forwards;
}

@media (prefers-reduced-motion: reduce) {
  .page-loader-art svg * {
    animation: none !important;
  }
}
