/* VAV global preloader */
html.vav-preloading,
html.vav-preloading body{
  overflow:hidden!important;
}
.vav-preloader{
  position:fixed;
  inset:0;
  z-index:2147483000;
  display:grid;
  place-items:center;
  background:#fff;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity 320ms cubic-bezier(.16,1,.3,1),visibility 0s linear 320ms;
}
html.vav-preloading .vav-preloader{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition:none;
}
.vav-preloader__content{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:18px;
  transform:translateY(-1vh);
}
.vav-preloader__logo{
  margin:0;
  color:#0a0a0a;
  font-family:Arial,Helvetica,sans-serif;
  font-size:42px;
  line-height:.9;
  font-weight:800;
  letter-spacing:-.065em;
}
.vav-preloader__line{
  position:relative;
  width:84px;
  height:2px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(10,10,10,.14);
}
.vav-preloader__line::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:#0a0a0a;
  transform:translateX(-72%) scaleX(.34);
  transform-origin:left center;
  animation:vav-preloader-run 1.05s cubic-bezier(.65,0,.35,1) infinite;
}
.vav-preloader.is-finishing .vav-preloader__line::after{
  animation:none;
  transform:translateX(0) scaleX(1);
  transition:transform 220ms cubic-bezier(.16,1,.3,1);
}
@keyframes vav-preloader-run{
  0%{transform:translateX(-90%) scaleX(.28)}
  50%{transform:translateX(20%) scaleX(.56)}
  100%{transform:translateX(112%) scaleX(.28)}
}
@media(max-width:620px){
  .vav-preloader__content{gap:16px}
  .vav-preloader__logo{font-size:36px}
  .vav-preloader__line{width:72px}
}
@media(prefers-reduced-motion:reduce){
  .vav-preloader,
  .vav-preloader__line::after{
    animation:none!important;
    transition:none!important;
  }
  .vav-preloader__line::after{
    transform:translateX(0) scaleX(.5);
  }
}
