Atlético Madrid booked their place in the last four of the UEFA Champions League with a 2-1 aggregate victory over Leicester City.
Saúl Ñiguez opened the scoring with a powerful header in the first half.
Jamie Vardy got Leicester back in the tie on the hour mark as the home side attempted to stage a remarkable comeback.
Despite a host of chances, Atlético managed to see out the game and end Leicester's fantastic run in the competition.
The result means Diego Simeone's men are in the semi-final for the third time in four years.
The game started slowly, with both sides failing to muster a single effort on goal in the first 10 minutes.
Saúl was responsible for the away side's first effort, dragging a long-range effort well wide of the target.
However, as the noise began to rise inside the King Power, Leicester created their first chance. Marc Albrighton sent Vardy in behind with a weighted ball but Shinji Okazaki could only fire over from the pull back.
As Leicester were building in confidence, Atlético struck. Filipe Luís found Saúl with a deep cross from the left and the midfielder was unmarked at the back post to power a header past Kasper Schmeichel.
The Spaniard almost doubled his tally for the evening soon after, attempting to catch Schmeichel out from long range with a curling effort which was easily saved.
Mahrez almost levelled proceedings with a sweet volley but Jan Oblak was on hand to keep it out. That proved to be Leicester's last chance of the half, as Diego Simeone's men kept possession for long periods towards the end of the first period.
Leicester all out
Craig Shakespeare wasted no time trying to get his side back into the tie, making two changes at half time.
However, the first chance of the second half fell to Atlético. Antoine Griezmann showing an incredible turn of foot to dance past numerous Leicester bodies on the halfway line, run through on goal and square the ball for Yannick Carrasco. The Belgian couldn't reach the ball but did go down looking for a penalty which wasn't given.
Leicester kept fighting, however. Substitute Ben Chilwell had two chances in as many minutes. First, a half volley followed by a header, both going over the bar by a fair distance.
Foxes start to dominate
Chilwell continued to cause problems for Madrid down the left hand side and he soon grabbed himself an assist. The youngster smashed a ball towards goal and Stefan Savić's block fell to Vardy, who placed the ball into roof of the net to level the match.
The Foxes had their tails up and almost went ahead soon after. Christian Fuchs' long throw fell to Leonardo Ulloa in the area but his shot was blocked when travelling towards goal.
Defenders were in the right place once again for the visitors moments later. Savić again blocked a close range effort from Vardy.
Wilfred N'Didi had the next chance for Leicester, the ball dropped to him 12 yards out but the midfielder could only drag his shot wide.
Last 15 minutes of the fairytale
As the game edged closer to its conclusion, Leicester continued in search of the two goals they needed to progress.
Mahrez won a free kick in a dangerous area but could only curl the subsequent effort narrowly wide, before defender Wes Morgan suffered an injury to his hamstring while stretching for a ball in Atlético's box.
Mahrez again went on the hunt for a goal but was caught in possession, allowing substitute Angel Correa to test Schmeichel after Atlético's counter attack.
Leicester couldn't muster any more late attempts, meaning Diego Simeone's side comfortably went through on aggregate. However, the players and fans can be proud of the fight they put up in the second half.