/* Vector wordmarks: logo letters stay stable while the bundled web fonts load. */
.logo.logo-swap{letter-spacing:-.04em;overflow:visible}
.logo.logo-swap .lv-a{display:inline-flex;align-items:baseline;width:6.916em;height:1.005em;line-height:1;overflow:visible}
.logo.logo-swap .lv-b{display:block;width:3.422em;height:1.61em;line-height:1;overflow:visible}
.logo.logo-swap .logo-outline{display:block;width:auto;max-width:none;overflow:visible;flex:none}
.logo.logo-swap .logo-outline-primary{width:6.916em;height:1.005em}
.logo.logo-swap .logo-outline-terminal{width:3.422em;height:1.61em}
.logo.logo-swap .logo-outline-word{fill:currentColor}
.logo.logo-swap .logo-outline-domain{fill:var(--graphite)}
.logo.logo-swap .logo-outline-cursor,.logo.logo-swap .logo-outline-terminal-underscore,.logo.logo-swap .logo-outline-terminal-gt{fill:var(--added)}
.logo.logo-swap .logo-outline-cursor{animation:blink 1.1s steps(2,start) infinite;transform:none}
.logo.logo-swap .lv-a{animation:academy-logo-primary 21s ease-in-out infinite}
.logo.logo-swap .lv-b{animation:academy-logo-terminal 21s ease-in-out infinite}
@keyframes academy-logo-primary{0%,74%{opacity:1}76%,98%{opacity:0}100%{opacity:1}}
@keyframes academy-logo-terminal{0%,77%{opacity:0}79%,95%{opacity:1}97%,100%{opacity:0}}
@media(prefers-reduced-motion:reduce){
  .logo.logo-swap .lv-a{animation:none;opacity:1}
  .logo.logo-swap .lv-b{animation:none;opacity:0}
  .logo.logo-swap .logo-outline-cursor{animation:none}
}
