Pierre-Emerick Aubameyang missed a penalty in a nightmare outing as Kostas Mitroglou's opportunistic strike gave Benfica a 1-0 victory over Borussia Dortmund in the first leg of their Champions League last-16 tie.
The usually dependable Aubameyang spurned three excellent chances to get Dortmund an away goal at the Estadio da Luz and was withdrawn by coach Thomas Tuchel after 62 minutes, with Benfica holding on to gain the upper hand.
Dortmund started positively but Aubameyang was unable to finish a one-on-one chance in the early exchanges, to set the tone for his dismal game.
Rui Vitoria's side took the lead when Mitroglou converted off a header from Luisao - the 36-year-old captain marking his 500th Benfica appearance with an assist.
After missing a great chance to draw level, Aubameyang looked certain to score when referee Nicola Rizzoli awarded Dortmund a penalty for handball by Ljubomir Fejsa.
However, the striker's weak penalty was kept out by the brilliant Ederson, and Benfica withstood late pressure following Aubameyang's withdrawal to ensure they take an advantage to Signal Iduna Park on March 8.
Dortmund scored a Champions League record 21 goals in the group stage and they first bared their teeth in the 10th minute.
Ousmane Dembele won possession in the opposition half and slid an excellent pass to put Aubameyang one-on-one with Ederson, but he could only fire over from 12 yards.
Dortmund used their control of the ball to slow the tempo after a frantic start and their high pressing continued to cause Benfica problems, Victor Lindelof colliding with Ederson when blocking another Dembele effort.
The hosts had to soak up plenty of pressure but Fejsa almost undid their good work when he failed to shepherd the ball out under pressure from Raphael Guerreiro, who stole in to roll a pass across the face of a vacant goal and agonisingly out of Aubameyang's reach.
Tuchel was furious his side were not awarded at least a free-kick when Dembele was clattered by Ederson on the edge of the area and Rizzoli saw no foul.
The hosts went ahead three minutes after the restart when Mitroglou stuck out a leg to stop Luisao's header from reaching the diving Roman Burki, before slotting into the gaping net.
Aubameyang wasted another glorious opening when he swiped over five minutes later, while Ederson produced great stops from Marco Reus and Lukasz Piszczek before the Gabon captain's outing took another turn for the worse.
Fejsa handled inside the area to concede a penalty, but Aubameyang was unable to take advantage as his poor effort straight down the middle was batted away by a squatting Ederson and Tuchel quickly hooked him for Andre Schurrle.
Dortmund pressed for an equaliser but saw Piszczek head wide before Ederson capped a sensational display by clawing Christian Pulisic's deflected volley out of the top corner, leaving Benfica fans dreaming of a Champions League quarter-final at the Estadio da Luz for the second successive season.