Nibali snatches pink on penultimate Giro stage