.flares-motion{position:absolute;inset:0;z-index:0;display:block;pointer-events:none;overflow:hidden}
.flares-motion>svg{display:block;width:100%;height:100%}
.fm-reader{background:#faf9f6}
.fm-highlight{transform-box:fill-box;transform-origin:left center}
.fm-translation-first,.fm-translation-second{clip-path:inset(0);transform-box:fill-box}
.fm-wire{stroke-dasharray:1;stroke-dashoffset:1;opacity:0}
.fm-spark{opacity:0;transform-box:fill-box;transform-origin:center}
.fm-playing .fm-highlight{animation:fm-highlight 4.5s ease both}
.fm-playing .fm-translation-first{animation:fm-first 4.5s steps(21,end) both}
.fm-playing .fm-translation-second{animation:fm-second 4.5s steps(14,end) both}
.fm-playing .fm-wire{animation:fm-contact 3.6s ease-in-out both}
.fm-playing .fm-spark{animation:fm-spark 3.6s ease-out both}
@keyframes fm-highlight{0%,12%{transform:scaleX(0)}30%,100%{transform:scaleX(1)}}
@keyframes fm-first{0%,34%{clip-path:inset(0 100% 0 0)}62%,100%{clip-path:inset(0)}}
@keyframes fm-second{0%,62%{clip-path:inset(0 100% 0 0)}82%,100%{clip-path:inset(0)}}
@keyframes fm-contact{0%,18%{stroke-dashoffset:1;opacity:0}20%{opacity:1}44%,68%{stroke-dashoffset:0;opacity:1}88%,100%{stroke-dashoffset:1;opacity:0}}
@keyframes fm-spark{0%,43%{opacity:0;scale:.5}47%{opacity:1;scale:1}61%,100%{opacity:0;scale:1.2}}
@media(prefers-reduced-motion:reduce){.flares-motion *{animation:none!important}.fm-wire,.fm-spark{opacity:0!important}}
