/* AUA 24.10.4: do not flash the splash when returning from another AUA page
   in the same tab. The class is injected synchronously before loader markup. */
html.aua-loader-skip .aua-loader{display:none !important;}
html.aua-loader-complete .aua-loader{display:none !important;}

/* AUA Loader V6 — single fixed illustration, map-safe.
   The supplied illustration is used as-is.
   The logo/loading block is anchored in the visual centre of the sky. */

.aua-loader{
  position:fixed;
  inset:0;
  z-index:2147483000;
  overflow:hidden;
  background:#efe2c9;
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition:opacity .26s ease, visibility 0s linear 0s;
}

.aua-loader[hidden]{
  display:none !important;
}

.aua-loader.is-leaving{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .26s ease, visibility 0s linear .26s;
}

/* Exact supplied artwork.
   object-position:center top is intentional:
   - portrait: full image height remains compositionally stable;
   - very wide screens: cropping happens at the bottom rather than through the sky. */
.aua-loader__image{
  position:absolute;
  inset:0;
  top:0px;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  display:block;
  user-select:none;
  -webkit-user-drag:none;
  pointer-events:none;
  transform:scale(1.002);
}

/* Very subtle integration veil.
   It does NOT replace the illustration. It only gives the transparent logo
   a natural transition into the light centre already present in the artwork. */
.aua-loader__sky-blend{
  position:absolute;
  z-index:1;
  left:50%;
  top:28%;
  width:min(94vw,680px);
  height:min(42vh,420px);
  transform:translate(-50%,-50%);
  pointer-events:none;
  background:
    radial-gradient(
      ellipse at center,
      rgba(255,244,220,.42) 0%,
      rgba(255,240,211,.20) 44%,
      rgba(255,238,205,.07) 68%,
      transparent 82%
    );
}

/* The whole brand/loading unit is positioned as ONE composition.
   28.5% corresponds to the visual centre of the sky in the supplied image. */
.aua-loader__brand{
  position:absolute;
  z-index:2;
  left:50%;
  top:28.5%;
  width:min(78vw,360px);
  transform:translate(-50%,-50%);
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  color:var(--theme-dark,#0f4a49);
}

.aua-loader__logo{
  display:block;
  width:min(62vw,260px);
  height:auto;
  max-height:22vh;
  object-fit:contain;
  opacity:0;
  transform:translateY(7px) scale(.985);
  animation:aua-loader-logo-in .68s cubic-bezier(.2,.75,.2,1) .05s forwards;
  user-select:none;
  -webkit-user-drag:none;
}

.aua-loader__loading{
  margin-top:clamp(24px,4.2vh,44px);
  font-family:"Montserrat",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:clamp(12px,3.2vw,15px);
  font-weight:500;
  line-height:1;
  letter-spacing:.18em;
  text-transform:uppercase;
  white-space:nowrap;
  color:var(--theme-dark,#0f4a49);
  opacity:0;
  transform:translateY(5px);
  animation:aua-loader-fade-up .46s ease .22s forwards;
}

/* One and only progress line. */
.aua-loader__track{
  width:min(42vw,170px);
  height:3px;
  margin-top:15px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.42);
  opacity:0;
  animation:aua-loader-fade-up .46s ease .30s forwards;
}

.aua-loader__bar{
  display:block;
  width:var(--aua-loader-progress,8%);
  height:100%;
  border-radius:inherit;
  background:var(--accent);
  transition:width .18s cubic-bezier(.22,.7,.2,1);
}

/* Tagline kept low enough to sit on the water on portrait devices. */
.aua-loader__tagline{
  position:absolute;
  z-index:2;
  left:50%;
  bottom:max(7vh,calc(env(safe-area-inset-bottom) + 24px));
  transform:translateX(-50%);
  width:min(86vw,430px);
  margin:0;
  text-align:center;
  font-family:"Montserrat",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:clamp(14px,4vw,20px);
  font-weight:400;
  line-height:1.55;
  letter-spacing:.14em;
  text-transform:uppercase;
  text-shadow:0 2px 14px rgba(8,56,56,.17);
}

.aua-loader__tagline span{
  display:block;
  opacity:0;
  transform:translateY(8px);
  animation:aua-loader-fade-up .50s ease forwards;
}

.aua-loader__tagline span:nth-child(1){
  animation-delay:.36s;
  color:rgba(255,247,229,.96);
}
.aua-loader__tagline span:nth-child(2){
  animation-delay:.46s;
  color:rgba(182,213,207,.95);
}
.aua-loader__tagline span:nth-child(3){
  animation-delay:.56s;
  color:var(--accent);
}

@keyframes aua-loader-logo-in{
  to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes aua-loader-fade-up{
  to{opacity:1;transform:translateY(0)}
}

/* Short portrait screens: keep the brand inside the sky instead of letting
   the logo/loading unit drift onto the buildings. */
@media (max-height:700px) and (orientation:portrait){
  .aua-loader__brand{
    top:27%;
    width:min(74vw,330px);
  }
  .aua-loader__sky-blend{
    top:27%;
  }
  .aua-loader__logo{
    width:min(52vw,220px);
  }
  .aua-loader__loading{
    margin-top:20px;
  }
  .aua-loader__tagline{
    bottom:max(4.5vh,calc(env(safe-area-inset-bottom) + 15px));
    font-size:clamp(12px,3.6vw,16px);
  }
}

/* On landscape screens the supplied image is cropped vertically from the
   bottom because object-position is top. Most/all of the viewport is sky,
   so the brand is centred in the visible sky area. */
@media (orientation:landscape){
  .aua-loader__brand{
    top:46%;
    width:min(36vw,300px);
  }
  .aua-loader__sky-blend{
    top:46%;
    width:min(56vw,620px);
    height:min(70vh,360px);
  }
  .aua-loader__logo{
    width:min(27vw,230px);
    max-height:28vh;
  }
  .aua-loader__loading{
    margin-top:14px;
    font-size:clamp(10px,1.5vw,14px);
  }
  .aua-loader__track{
    margin-top:11px;
    width:min(20vw,160px);
  }
  .aua-loader__tagline{
    left:auto;
    right:max(24px,env(safe-area-inset-right));
    bottom:max(18px,env(safe-area-inset-bottom));
    transform:none;
    width:auto;
    text-align:right;
    font-size:11px;
    line-height:1.4;
  }
}

@media (prefers-reduced-motion:reduce){
  .aua-loader,
  .aua-loader__logo,
  .aua-loader__loading,
  .aua-loader__track,
  .aua-loader__bar,
  .aua-loader__tagline span{
    animation:none !important;
    transition:none !important;
  }
  .aua-loader__logo,
  .aua-loader__loading,
  .aua-loader__track,
  .aua-loader__tagline span{
    opacity:1 !important;
    transform:none !important;
  }
}