Ronaldo hat-trick fires Real Madrid into semis