Germany got off the mark in style at Euro 2020 as they tore Portugal apart with an impressive attacking performance in Munich to throw Group F wide open.
Germany's win means both these sides now sit on three points, one behind group leaders France, heading into a pivotal final round of fixtures on Wednesday.
Atalanta wing-back Robin Gosens was the architect with a goal and an assist, earning an ovation from the Allianz Arena crowd as he was replaced just after the hour mark.
Cristiano Ronaldo had put the visitors ahead, continuing his record-breaking campaign with his third goal of the tournament and 12th European Championship strike of all time.
But two own goals in the space of five first-half minutes flipped an entertaining encounter in Germany's favour, as first Ruben Dias and then Raphael Guerreiro turned into their own net.
The influential Gosens laid on a third immediately after the break with an inviting ball that allowed Kai Havertz to tap in from close range, before heading in Germany's fourth himself.
Diogo Jota poked in from Ronaldo's cutback but the defending champions were unable to mount a comeback.
Germany host Hungary, who earlier on Saturday held France to a draw, while Portugal face the world champions in the final game with all four nations still able to progress.