/* v402 — Persistent, predecoded horizontal wallpapers for Projects.
   Panels remain mounted to avoid flash at handoff and on first use. */
html body #views > .od-projects-backdrop > .od-projects-bg{
  transition:none!important;
}

/* Opaque slide stages paint over the switched underlying project image.
   The header duplicate sits above its still wallpaper/mirror (z:4)
   and below the fixed top gradient (z:5) and navigation (z:94+). */
html body #views > .od-projects-backdrop > .od-project-horizontal-stage,
html body #views #work > .work-section > .od-work-top-occluder > .od-project-horizontal-stage{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
  display:none!important;
  pointer-events:none!important;
  contain:paint;
}
html body #views > .od-projects-backdrop > .od-project-horizontal-stage{
  z-index:4!important;display:block!important;
}
html body #views #work[data-cat="projects"] > .work-section > .od-work-top-occluder > .od-project-horizontal-stage{
  z-index:4!important;display:block!important;
}
/* Keep the existing scroll mask visible instead of fading it out. */
html body #views #work.active[data-cat="projects"].od-projects-changing
  > .work-section > .od-work-top-occluder{
  opacity:1!important;
  transition:none!important;
}
html body #views .od-project-horizontal-panel{
  position:absolute!important;
  inset:0!important;
  left:-1px!important;
  width:calc(100% + 2px)!important;
  height:100%!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:#090a0f!important;
  will-change:transform;
  pointer-events:none!important;
}
/* Artwork geometry and brightness match the current stationary backdrop. */
html body #views .od-project-horizontal-art,
html body #views .od-project-horizontal-streak{
  position:absolute!important;
  inset:-8%!important;
  width:116%!important;
  height:116%!important;
  display:block!important;
  background-image:var(--od-project-slide-image)!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
  transform:scale(1.06)!important;
  transform-origin:center!important;
  pointer-events:none!important;
}
html body #views .od-project-horizontal-art{
  filter:blur(38px) brightness(1.18) saturate(.95)!important;
}
/* GPU-friendly motion smear instead of an expensive full-screen SVG filter. */
html body #views .od-project-horizontal-streak{
  opacity:0;
  transform:scale(1.06) scaleX(1.12)!important;
  filter:blur(46px) brightness(1.18) saturate(.95)!important;
}
html body #views .od-project-horizontal-panel::after{
  content:"";
  display:block;
  position:absolute;
  inset:0;
  z-index:2;
  background:rgba(4,7,12,.16);
  pointer-events:none;
}
@media(max-width:760px){
  html body #views .od-project-horizontal-art{
    filter:blur(28px) brightness(1.18) saturate(.95)!important;
  }
}
@media(prefers-reduced-motion:reduce){
  html body #views .od-project-horizontal-stage{display:none!important;}
}
html.motion-paused body #views .od-project-horizontal-stage{
  display:none!important;
}
