a bit cleaner zoom anim logic