Spanish top seed Carlos Alcaraz moves into the Wimbledon semi-finals, where he will face Russian third seed Daniil Medvedev.