.tf-flow{stroke-dasharray:.06 1;stroke-dashoffset:.06px;animation:3.2s cubic-bezier(.45,0,.25,1) infinite both tf-flow}@keyframes tf-flow{0%{stroke-dashoffset:.06px;opacity:0}10%,70%{opacity:1}90%,to{stroke-dashoffset:-1px;opacity:0}}.tf-march{animation:1.4s linear infinite tf-march}@keyframes tf-march{to{stroke-dashoffset:-16px}}.tf-pulse{transform-box:fill-box;transform-origin:50%;animation:2.6s cubic-bezier(.22,1,.36,1) infinite both tf-pulse}@keyframes tf-pulse{0%{opacity:.85;transform:scale(1)}to{opacity:0;transform:scale(3.6)}}.tf-float{animation:7s ease-in-out infinite alternate tf-float}@keyframes tf-float{0%{transform:translateY(6px)}to{transform:translateY(-6px)}}.tf-blink{animation:2.4s ease-in-out infinite tf-blink}@keyframes tf-blink{0%,to{opacity:1}50%{opacity:.25}}.tf-scan{transform-box:view-box;transform-origin:70px 30px;animation:5s ease-in-out infinite alternate tf-scan}@keyframes tf-scan{0%{transform:rotate(-9deg)}to{transform:rotate(9deg)}}.tf-orbit{animation:10s ease-in-out infinite alternate tf-orbit}@keyframes tf-orbit{0%{transform:translate(-10px,2px)}to{transform:translate(14px,-2px)}}.tf-bar{transform-box:fill-box;transform-origin:bottom;animation:3.6s ease-in-out infinite alternate tf-bar}@keyframes tf-bar{0%{transform:scaleY(.55)}to{transform:scaleY(1)}}.tf-marquee{animation:40s linear infinite tf-marquee}@keyframes tf-marquee{to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.tf-flow,.tf-march,.tf-pulse,.tf-float,.tf-blink,.tf-scan,.tf-orbit,.tf-bar,.tf-marquee{animation:none!important}}
