Pues estuve probando con poco éxito.
Si no te importa tener dos animaciones, puedes hacer algo así:
Curiosamente no funciona con la misma animación, que son totalmente iguales, sólo cambia el nombre. Pero al usar la misma parece quedarse estoicamente congelado por
forwards
.
Estuve probando con
reverse
y
alternate-reverse
pero sólo funciona en la misma
petición de la animación.
Si fuese un pelín más simple la animación se podría igual hacer algo con transition. Bueno de hecho tal vez se puede así combinando transformaciones con anchos,
cubic-bezier()
y
animation-delay
.