/* Independent of the main page script; hidden by default when JavaScript is unavailable. */
.site-intro[hidden] {
  display:none
}
html.intro-active {
  overflow:hidden
}
.site-intro {
  position:fixed;
  inset:0;
  z-index:1000;
  display:grid;
  place-items:center;
  background:#171717;
  opacity:1;
  transition:opacity .55s ease
}
.site-intro.is-leaving {
  opacity:0;
  pointer-events:none
}
.site-intro video {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  opacity:0;
  transition:opacity .2s ease
}
.site-intro.is-playing video {
  opacity:1
}
.intro-logo {
  width:min(400px,72vw);
  aspect-ratio:2.45;
  position:relative;
  overflow:hidden;
  transition:opacity .2s ease;
  animation:intro-arrive .9s ease both
}
.intro-logo img {
  position:absolute;
  width:375%;
  height:auto;
  max-width:none;
  left:-134%;
  top:-74%;
  filter:contrast(1.5);
  mix-blend-mode:screen
}
.site-intro.is-playing .intro-logo {
  opacity:0;
  visibility:hidden
}
@keyframes intro-arrive {
  from { opacity:0; transform:translateY(10px) scale(.96) }
  to { opacity:1; transform:none }
}
@media(prefers-reduced-motion:reduce) {
  .site-intro,.intro-logo,.site-intro video {
    animation:none;
    transition:none
  }
}
