World number two Carlos Alcaraz crashed out of the quarter-finals of the Miami Masters on Thursday after losing to Bulgaria's Grigor Dimitrov 2-6, 4-6.
Dimitrov, who played some brilliant and energetic tennis to defeat the Spanish top player, will now face Germany's Alexander Zverev for a place in the final.
German tennis player Zverev saw off rising Hungarian Fabian Marozsan and booked his place in the semi-finals with a 6-3, 7-5 win.
Jannik Sinner and Daniil Medvedev will play in the other semi-final, a rematch of the Australian Open final won by Sinner in January.
Alcaraz arrived in Miami with his Indian Wells title and his sights set on the Sunshine Double.
But from the start, Dimitrov showed no fear, attacking Alcaraz and breaking early to take a 3-0 lead.
The Bulgarian took advantage of every opportunity, often going to the net and moving Alcaraz around the court.
He looked to be on course for a comfortable two-set victory after breaking the Spaniard in the fourth game and then holding on for a 4-1 lead.
But Alcaraz didn't give up and made it 3-4 after scoring a winner at the end of a fun rally.
With the match back on serve, a tiebreak seemed inevitable. But when Alcaraz served to stay in the match, Dimitrov broke to seal the final victory, his second against the Spaniard since Shanghai at the end of last year.
"To win against him, you have to play your best. It's just the way it is," said Dimitrov after the game.
"I went into the match very focused and I think I'm extremely aware of what I have to do. Sometimes simplicity is genius. It's very, very difficult to do that, especially when you're playing against an opponent like this. But I really managed to dictate the game. To be honest, it was a very, very good match from my side. And I'm just happy that at least once I finished it in two sets", the Bulgarian joked. /BGNES