/* Light follows the pointer; movement remains on transforms and opacity. */
.motion-card { isolation:isolate; position:relative; will-change:auto; }
.motion-card:after { content:''; position:absolute; inset:0; border-radius:inherit; pointer-events:none; z-index:2; opacity:0; background:radial-gradient(380px circle at var(--spot-x,50%) var(--spot-y,0%),color-mix(in srgb,var(--accent) 10%,transparent),transparent 72%); transition:opacity .3s; }
.motion-card:hover:after,.motion-card:focus-within:after { opacity:1; }
.home-page .story-grid>.motion-card:hover,.home-page .radar .motion-card:hover { transform:none; }
.section-stories>.motion-card { transition:box-shadow .35s,border-color .35s; }
.section-stories>.motion-card:hover { border-color:color-mix(in srgb,var(--accent) 55%,var(--rule)); box-shadow:0 18px 45px #061e1915; }
.section-art .art-lines { animation:none!important; transform-box:fill-box; transform-origin:center; }
.art-motion-toggle { position:absolute; bottom:15px; left:16px; z-index:3; min-height:34px; padding:8px 12px; border:1px solid #ffffff32; border-radius:5px; color:#def7ed; background:#11322feb; font:10px var(--sans); backdrop-filter:blur(8px); }
.art-motion-toggle:hover { background:#205147; }
.art-motion-toggle:focus-visible { outline:2px solid #c2f4df; outline-offset:3px; }
.art-motion-toggle:disabled { opacity:.65; cursor:default; }
.section-art-frame { box-shadow:0 20px 55px #04191455,inset 0 0 65px #35be9d12; }
.section-art-frame:after { content:''; position:absolute; inset:0; border:1px solid #a7eed627; pointer-events:none; background:radial-gradient(ellipse at 50% 50%,transparent 25%,#02101622 85%); }
.home-page .desk { transition:border-color .35s,box-shadow .35s; }
.home-page .desk:hover { border-color:color-mix(in srgb,var(--accent) 27%,var(--rule)); box-shadow:0 8px 35px #092a2210; }
@media(hover:none) { .motion-card:after { display:none; } }
@media(prefers-reduced-motion:reduce) { .motion-card:after { display:none; } .motion-card { transform:none!important; } }
