/* ASWAD BERLIN V29 — white / red, smooth premium GPU-friendly page transitions.
   Defaults to offscreen: direct visits and reloads are never obscured. */
.page-curtain {
  background: #fff !important;
  color: #d92f3d !important;
  transform: translate3d(0,-105%,0);
  transition: none;
  pointer-events: none;
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  contain: layout paint;
}
.page-curtain .page-curtain-label,
.page-curtain .page-curtain-label *,
.page-curtain-label span {
  color: #d92f3d !important;
}
.page-curtain .page-curtain-label {
  color: #d92f3d !important;
  max-width: 96vw;
  overflow-wrap: anywhere;
  text-transform: uppercase;
  text-wrap: balance;
  line-height: .94;
}
.page-curtain::after {
  background: #d92f3d !important;
  height: 2px;
}
.page-curtain.is-preparing {
  transform: translate3d(0,105%,0);
  transition: none;
  pointer-events: none;
}
.page-curtain.is-covering {
  transform: translate3d(0,0,0);
  transition: transform 760ms cubic-bezier(.65,0,.20,1);
  pointer-events: auto;
}
.page-curtain.is-covered {
  transform: translate3d(0,0,0);
  transition: none;
  pointer-events: none;
}
.page-curtain.is-leaving {
  transform: translate3d(0,-105%,0);
  transition: transform 700ms cubic-bezier(.62,0,.22,1);
  pointer-events: none;
}
@media(max-width:600px) {
  .page-curtain .page-curtain-label {
    font-size: clamp(2.7rem,11.3vw,5.9rem);
    letter-spacing: -.065em;
    padding: 18px 10px;
  }
}
@media(prefers-reduced-motion: reduce) {
  .page-curtain { display: none !important; animation: none !important; transition: none !important; }
}

/* V32 bootstrap safety: the white overlay is intentionally held before CSS/JS load. */
html.aswad-nav-pending .page-curtain{background:#fff!important;}
