/* V23 — iOS Safari: white rectangle in intro and route transitions.
   Two logo images previously used animated filter: blur() + drop-shadow()
   on transparent RGBA PNGs. Render the EXACT original logo pixels without
   image filters or GPU-animated transforms; atmospheric layers still animate.
   No browser-specific heuristic: avoid fragile behavior on all platforms. */
.intro .intro-center img.gt-intro-logo,
.intro.awaiting .intro-center img.gt-intro-logo,
.intro.playing .intro-center img.gt-intro-logo,
.page-veil .veil-core img.veil-brand,
.page-veil.exit .veil-core img.veil-brand,
.page-veil.arrive .veil-core img.veil-brand{
  animation: none !important;
  -webkit-animation: none !important;
  filter: none !important;
  -webkit-filter: none !important;
  transform: none !important;
  -webkit-transform: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  -webkit-mask-image: none !important;
  mask-image: none !important;
  box-shadow: none !important;
  will-change: auto !important;
  backface-visibility: visible !important;
  -webkit-backface-visibility: visible !important;
  image-rendering: auto !important;
  background: transparent !important;
}
/* Keep a predictable alpha-transparent layer with no compositor effects. */
.intro .intro-center img.gt-intro-logo,
.page-veil .veil-core img.veil-brand{
  display:block !important;
  max-height: 37svh;
  height: auto !important;
  object-fit: contain !important;
  isolation: auto;
}
/* Do not render a hidden transition layer (including on iOS back navigation). */
.intro[hidden],.page-veil[hidden]{
  display:none !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
@media (max-width:740px){
  .intro .intro-center img.gt-intro-logo{max-height:37svh !important;}
  .page-veil .veil-core img.veil-brand{max-height:40svh !important;}
}
@media (max-height:690px){
  .intro .intro-center img.gt-intro-logo{max-height:29svh !important;}
}
