/* Software-rendering fallback only; accelerated mode keeps its original effects. */
html.perf-low{scroll-behavior:auto!important}
html.perf-low *,html.perf-low *::before,html.perf-low *::after{
 animation:none!important;transition-duration:0s!important;transition-delay:0s!important;
 backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
 mix-blend-mode:normal!important;filter:none!important;will-change:auto!important;
 text-shadow:none!important;box-shadow:none!important;
}
html.perf-low #loader,html.perf-low #gl,html.perf-low #cursor,
html.perf-low .grain,html.perf-low #obs-foam,html.perf-low .obs-sparks,
html.perf-low .sv-glow,html.perf-low .pfx-halo,html.perf-low .pfx-spot,
html.perf-low .pfx-sheen,html.perf-low .obs-glare,html.perf-low .obs-edge,
html.perf-low .am-floor{display:none!important}
/* Low graphics uses one document scroller, never nested full-screen scenes. */
html.perf-low{height:auto!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:auto!important;touch-action:auto!important;scroll-snap-type:none!important}
html.perf-low body{height:auto!important;min-height:100vh;overflow:visible!important;touch-action:auto!important}
html.perf-low #stage{position:relative!important;height:auto!important;overflow:visible!important;transform:none!important}
html.perf-low #stage .scene{position:relative!important;inset:auto!important;height:auto!important;min-height:100vh!important;max-height:none!important;overflow:visible!important;overscroll-behavior:auto!important;touch-action:pan-y!important;visibility:visible!important;opacity:1!important;transform:none!important;pointer-events:auto!important;scroll-margin-top:var(--hud,84px)}
html.perf-low #stage .scene-inner{height:auto!important;max-height:none!important;transform:none!important}
html.perf-low .scene .reveal,html.perf-low .scene .line>span{opacity:1!important;transform:none!important}
html.perf-low,html.perf-low *{cursor:auto!important}
html.perf-low.has-cursor,html.perf-low.has-cursor *{cursor:auto!important}
html.perf-low .card,html.perf-low .obs-tilt,html.perf-low .obs-tilt-wrap,
html.perf-low .am-depth-btn{transform:none!important;rotate:none!important;translate:none!important;perspective:none!important;transform-style:flat!important}
html.perf-low .rv{opacity:1!important;transform:none!important}
html.perf-low .slogo-cube{transform:none!important;transform-style:flat!important}
html.perf-low .slogo-face:not(.slogo-face--front){display:none!important}
html.perf-low .slogo-face--front{transform:none!important}
html.perf-low dialog::backdrop{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
/* Native-flow headlight layout avoids absolute alignment and card overlap. */
html.perf-low #s3 .scene-inner.split{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:32px;align-items:center}
html.perf-low #s3 .scene-head{position:static!important;top:auto!important;min-width:0}
html.perf-low #s3 .hl-compare{position:relative!important;top:auto!important;height:auto!important;align-self:center!important;min-width:0;max-width:100%}
html.perf-low #s3 .service-more-wrap{position:static!important;grid-column:1/-1;margin-top:16px!important}
@media(max-width:900px){html.perf-low #s3 .scene-inner.split{grid-template-columns:minmax(0,1fr)}}
/* One flat review at a time; arrows, keyboard navigation and dragging still work. */
html.perf-low .am-stage{height:390px!important;perspective:none!important;mask-image:none!important;-webkit-mask-image:none!important}
html.perf-low .am-ring{left:0!important;top:20px!important;width:100%!important;height:auto!important;transform:none!important;transform-style:flat!important}
html.perf-low .am-card{display:none!important;transform:none!important;-webkit-box-reflect:unset!important}
html.perf-low .am-card.is-active{display:flex!important;position:relative!important;left:auto!important;top:auto!important;margin:0 auto!important;width:min(340px,90%)!important;height:340px!important;opacity:1!important}
