/* ---- logo-stack preloader ----
   Homepage only, once per session. The guard in homepage.html's <head>
   sets .loader-skip on <html> before the body paints, so a repeat visit
   never flashes the white panel. */
html.loader-skip .logo-loader{display:none!important}
/* Failsafe. The panel is white and covers the whole screen until the GSAP
   timeline hides it (~2.6s). If that never happens - the GSAP CDN slow or
   blocked on a phone, any script error first - the homepage stayed a blank
   white screen with the logo until a reload. After 5s this takes it away
   whatever state the script is in (an animation outranks the inline styles
   GSAP sets). */
@keyframes logo-loader-failsafe{to{opacity:0;visibility:hidden;pointer-events:none}}
.logo-loader{animation:logo-loader-failsafe .4s ease 5s forwards}
.logo-loader {
  position: fixed;
  inset: 0%;
  z-index: 100000;            /* see note below */
  display: flex;
  align-items: center;
  justify-content: center;
  color: #1a1a1a;
  perspective: 40em;
}
/* The supplied CSS used z-index:100. .gnav is also 100 and sits later in
   the DOM, so the nav painted on top of the loader; the custom cursor is
   99999. 100000 puts the loader above both. */
.logo-loader__bg {
  position: absolute;
  inset: 0%;
  z-index: 0;
  background-color: #ffffff;
  transform-origin: 50% 0%;
}
.logo-loader__stack {
  position: relative;
  z-index: 1;
  display: grid;
  /* 12em suited the 540x156 placeholder mark (~3.5:1). The real Voitel
     wordmark is 1177x85 (~13.8:1), so at 12em it rendered 192x14px. */
  width: min(26em, 72vw);
  transform-style: preserve-3d;
}
.logo-loader__logo { grid-column: 1; grid-row: 1; }
.logo-loader__logo-svg { display: block; width: 100%; height: auto; }
.logo-loader__track {
  position: absolute;
  bottom: 3.5em;
  left: 0%;
  right: 0%;
  z-index: 1;
  width: 8em;
  height: 0.25em;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
  border-radius: 100em;
  background-color: rgba(26, 26, 26, 0.15);
}
.logo-loader__bar {
  position: absolute;
  inset: 0%;
  background-color: #1a1a1a;
  transform-origin: 0% 50%;
  transform: scaleX(0);
}

/* never let the loader end up in a printed page or generated PDF */
@media print{.logo-loader{display:none!important}}
