Serena Williams survived the first major scare of her Wimbledon comeback to book a semi-final place. The seven-time champion, who missed the tournament last year, was outplayed by Italian Camila Giorgi initially but fought back impressively to win 3-6 6-3 6-4 on Centre Court.
Having swept all before her in the last two years she played Wimbledon, in 2015 and 2016, American Williams has now extended her winning streak at the All England Club to 19 matches.
This is just her fourth tournament back since giving birth last September, and Williams is one win away from a 10th Wimbledon singles final appearance.
Williams will next face Germany's Julia Goerges, the 13th seed, who reached her first grand slam semi-final with victory over Kiki Bertens.
The 29-year-old dropped the first set to Dutch 20th seed Bertens but fought back to win 3-6 7-5 6-1.
Angelique Kerber admitted nerves almost got the better of her after needing seven match points to see off Russian youngster Daria Kasatkina.
Kerber came out on top of a spectacular 25-shot rally to force the all-important match point number seven, and finally got the job done as Kasatkina netted a forehand, the German relieved to be a 6-3 7-5 winner.
"We both played at a really high level, starting from the first point," Kerber said.
"I'm looking forward now to playing the semis here," Kerber added. "That is where I put my focus on right now, not about the results I had before. It's just about the next match now."
That next match will be against another 21-year-old in 12th seed Jelena Ostapenko, who won last year's French Open.
Ostapenko roared into her first Wimbledon semi-final with a display of power-hitting against Dominika Cibulkova.
The Latvian struck 32 winners to just six from her opponent, with Cibulkova's second serve taking a pummelling, and won 7-5 6-4 in an hour and 22 minutes.