/* Performance layer: preserve layout/scroll behavior, reduce expensive mobile paint work. */

@media (max-width: 900px){


  /* Avoid live video post-processing on every decoded frame. The existing dark overlay keeps contrast. */
  html body main#top>section:first-child .pw-hero-video{
    filter:none!important;
    opacity:.84!important;
    transform:translateZ(0);
    backface-visibility:hidden;
  }

  html body main#top>section:first-child::after{
    background:linear-gradient(180deg,rgba(3,5,9,.24) 0,rgba(3,5,9,.33) 45%,rgba(3,5,9,.58) 78%,#05070b 100%),radial-gradient(ellipse at 50% 34%,rgba(17,67,150,.04),transparent 62%)!important;
  }

  /* Backdrop blur over moving video is expensive on weaker phones. Use visually similar solid translucency. */
  html body main#top>section:first-child .rise-in>div button:nth-child(2){
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    background:rgba(5,9,16,.78)!important;
  }
  html body .pw-trust-strip{
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    background:linear-gradient(180deg,rgba(12,20,34,.94),rgba(5,9,16,.90))!important;
  }

  /* Once the hero intro finishes, keep text static and cheap to composite while scrolling. */
  html body main#top>section:first-child.pw-copy-sequence-done .pw-show-line,
  html body main#top>section:first-child.pw-copy-sequence-done .pw-show-title{
    filter:none!important;
    will-change:auto!important;
  }
}





@media (prefers-reduced-motion:reduce){
  html body main#top>section:not(:first-child),
  html body main#top>section:not(:first-child)>div>*{
    animation:none!important;
    opacity:1!important;
    transform:none!important;
    filter:none!important;
  }
}
