/* Moving light is clipped to original brand geometry. Reading surfaces stay put. */
@keyframes he-hero-light{from{transform:translateX(-450px);opacity:.36}to{transform:translateX(650px);opacity:.8}}
@keyframes he-focus-light{0%,100%{opacity:.65}50%{opacity:1}}
@keyframes he-page-light{from{transform:translateX(-25%);opacity:.35}to{transform:translateX(65%);opacity:.8}}
@keyframes he-material-exposure{0%,100%{opacity:.66}45%,58%{opacity:1}}
.firm-edition.motion-enabled .motion-surface.is-visible .cinematic-texture{animation:he-material-exposure 17s ease-in-out infinite}
@keyframes he-optical-camera{0%{transform:scale(1.015);opacity:.82}100%{transform:scale(1.065) translateX(-.6%);opacity:1}}
.firm-edition:not(.site-edition) .hero-aperture:before{transform-origin:80% 50%;animation:he-optical-camera 24s ease-in-out infinite alternate;animation-play-state:paused}
.firm-edition:not(.site-edition).motion-enabled .hero-aperture.motion-surface.is-visible:before{animation-play-state:running}
.firm-edition .page-light{transform-box:view-box;transform-origin:center;animation-play-state:paused;opacity:.35}
.firm-edition.motion-enabled .motion-surface.is-visible .page-light{animation:he-page-light 16s ease-in-out infinite alternate}
.firm-edition .hero-light{transform-box:view-box;transform-origin:center;animation-play-state:paused}
.firm-edition.motion-enabled .motion-surface.is-visible .hero-light{animation:he-hero-light 12s ease-in-out infinite alternate}
.firm-edition.motion-enabled .motion-surface.is-visible .brand-plane-focus{animation:he-focus-light 11s ease-in-out infinite}
.firm-edition .motion-control[hidden]{display:none}
/* Original page bundles also animate decorative rings, telemetry dots and CTA
   surfaces. Keep those static so the shared pause control owns all ambient light. */
.firm-edition.page-about-us .inner-site .pcard .portrait:before,
.firm-edition.page-about-us .inner-site .mono-av:after,
.firm-edition.page-suite .inner-site .core-spine:after {
 content:none;
 display:none;
 animation:none;
}
.firm-edition.page-home .hero>.optic :is(.o-seg1,.o-seg2),
.firm-edition.page-home .frame .shot-wrap:before,
.firm-edition.page-careers .inner-site .glow-orb,
.firm-edition .siren,
.firm-edition.page-range .inner-site .console-bar .dot,
.firm-edition.page-form .inner-site .form-bar .dot,
.firm-edition.page-form .inner-site .success-ring:after,
.firm-edition.page-crisis .inner-site :is(.btn-red,.band-panel),
.firm-edition.page-crisis .inner-site .eyebrow .pulse,
.firm-edition.page-crisis .inner-site .desk .desk-head .pulse-red,
.firm-edition.page-crisis .inner-site .band-eye .pulse-red,
.firm-edition.page-crisis .inner-site .clock-72 .c-eye .qd,
.firm-edition.page-crisis .inner-site .stage-fill:after {
 animation:none;
}
/* A short focus change belongs to an intentional product-view switch only.
   The image frame and surrounding copy never translate or resize. */
@keyframes he-product-focus{from{opacity:.55;filter:blur(1.5px)}to{opacity:1;filter:blur(0)}}
@media(prefers-reduced-motion:no-preference){
 .firm-edition:not(.site-edition) .range-viewer [role=tabpanel]:not([hidden]) img,
 :is(.page-suite,.page-range) .inner-site .sc-panel.active .he-screen img{animation:he-product-focus 240ms ease-out both}
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 :is(.firm-edition,.site-edition) :is(.button,.btn,.text-link,.feat-link,.service-row,.product-expand,.sc-tab,.viewer-toolbar button,.main-nav a){transition:color 150ms ease,background-color 150ms ease,border-color 150ms ease,box-shadow 150ms ease}
 :is(.firm-edition,.site-edition) :is(.button,.btn):hover{box-shadow:inset 0 0 0 1px #acc7ed18}
}
:is(.firm-edition,.site-edition) :is(a,button,summary):focus-visible{transition:none}
@media(prefers-reduced-motion:reduce){
 html:has(:is(.firm-edition,.site-edition)){scroll-behavior:auto}
 :is(.firm-edition,.site-edition) *, :is(.firm-edition,.site-edition) *:before, :is(.firm-edition,.site-edition) *:after{animation:none!important;transition:none!important}
}
@media print{
 :is(.firm-edition,.site-edition) *, :is(.firm-edition,.site-edition) *:before, :is(.firm-edition,.site-edition) *:after{animation:none!important;transition:none!important}
}
