/* Lightweight visual continuity when mobile blocks or interrupts the video. */
.has-smoke-fallback .smoke-poster{animation:smoke-poster-drift 18s ease-in-out infinite alternate;transform-origin:50% 65%;will-change:transform}
.smoke-suspended .smoke-poster,.tab-hidden .smoke-poster,.atmosphere-paused .smoke-poster{animation-play-state:paused}
@keyframes smoke-poster-drift{from{transform:scale(1.06) translate(-1.5%,1%)}to{transform:scale(1.14) translate(1.8%,-1.4%)}}
@media(prefers-reduced-motion:reduce){.has-smoke-fallback .smoke-poster{animation:none;transform:none;will-change:auto}}
