Atletico Madrid beat hosts Bayer Leverkusen 4-2 in a topsy-turvy encounter to take a firm handle on their Champions League round-of-16 tie ahead of the return leg in Spain next month.
Two lethal counter-attacks in the opening 25 minutes put the 2014 and 2016 finalists in the driving seat, with Saul Niguez and Antoine Griezmann on target, and give them the edge for a quarter-final spot for the ninth time.
Leverkusen, who struggled to contain the hard-charging Spaniards for more than an hour, cut the deficit before Atletico's Kevin Gameiro scored with a spot kick and Stefan Savic's own goal set up a nervous finale.
Fernando Torres ended any speculation with his goal in the 87th minute as the Germans suffered their first home loss in Europe after a 10-match unbeaten run.
They are at risk of missing out on the last eight for the fifth time with Atletico taking revenge for a 1-0 loss at the same stage last season.
The Bundesliga club, finalists in 2002 before the introduction of the round of 16, have never gone past this stage on four previous attempts.
They were supposed to be dangerous on the break but it was Atletico who came close early on with keeper Bernd Leno stopping a Griezmann effort and Wendell seeing his subsequent clearance bounce off his keeper's crossbar.
Niguez did better in the 17th minute, charging down the right and curling his shot past Leno after it took a slight deflection off Aleksandar Dragovic.
Griezmann then doubled the score after the hapless Dragovic fluffed his clearance and sent the ball into the path of Gameiro who picked out the onrushing Frenchman to sweep in.
Leverkusen played completely into Atletico's hands with their high defensive line, for the first time in the competition conceding goals in the opening 30 minutes.
Griezmann should have added another in the 34th when Gameiro again sent him through but Leno stood his ground and the hosts cut the deficit four minutes after the restart with Karim Bellarabi from inside the box.
But their hopes were short-lived as Dragovic capped his nightmarish performance by giving away a penalty after bringing down Gameiro.
Savic's own goal put Leverkusen back in the game but despite constant pressure they failed to carve out an equaliser before substitute Torres finished them off.