Virtual push-forwards