Leon Bailey struck twice as 10-man Bayer Leverkusen shocked Bundesliga champions Bayern Munich with a 2-1 win at the Allianz Arena.
The defeat leaves Bayern down in fourth place and was Hans-Dieter Flick's first as caretaker manager.
Bailey scored a first-half brace either side of Thomas Muller's equaliser and the visitors hung on for the three points despite Jonathan Tah's red card nine minutes from full-time.
Leipzig lead the way at the top of the table after holding off a spirited comeback away to bottom club Paderborn.
Patrik Schick, Marcel Sabitzer and Timo Werner had Leipzig three goals to the good inside half an hour but Streli Mamba and Klaus Gjasula struck after the break as
Julian Nagelsmann's side saw out the game to win 3-2.
Elsewhere in Germany, Hoffenheim and Fortuna played out a 1-1 draw as Andrej Kramaric's early opener was cancelled out by Rouwen Hennings, while goals from Jadon Sancho and Thorgan Hazard were enough for Borussia Dortmund to beat Hertha 2-1 despite having Mats Hummels sent off.
Real Madrid moved top of LaLiga courtesy of a 2-1 victory at Alaves.
Dani Carvajal hit the winner after former Arsenal forward Lucas Perez's penalty had levelled following Sergio Ramos' opener for the visitors.
Real Sociedad thrashed Eibar 4-1 to move up to fourth with Robin Le Normand, Mikel Oyarzabal, Willian Jose and Martin Odegaard all on the scoresheet as Papakouli Diop registered the consolation strike.
Valencia beat Villarreal 2-1 at the Mestalla thanks to goals from Rodrigo and Ferran Torres either side of Andre-Frank Zambo Anguissa's effort.
In Italy, Mario Pasalic bagged a brace as Atalanta beat rock bottom Brescia 3-0, with Josip Ilicic also on target in stoppage time.
Torino won 1-0 at Genoa through Gleison Bremer's 77th-minute goal, although the visitors finished with 10 men as Simone Edera saw red in stoppage time.
Andrea La Mantia's effort early in the second half was enough for Lecce to win 1-0 at Fiorentina in the other game in Serie A.
Angers failed to close the gap on the top two in Ligue 1 as they slipped to a 3-1 defeat at Nice.
Angelo Fulgini put the visitors ahead but Patrick Vieira's side rallied as goals from Arnaud Lusamba, Myziane Maolida and Kasper Dolberg completed a fine comeback win.
Montpellier now sit a point behind Angers in fourth as they beat 10-man Amiens 4-2.
Damien Le Tallec, Gaetan Laborde, Andy Delort and Florent Mollet grabbed the goals for the home side, while Gael Kakuta and Jack Lahne struck for Amiens, who had Ferney Otero sent off after 52 minutes.
Boulaye Dia's stoppage-time equaliser earned 10-man Stade Reims a 1-1 draw with Bordeaux – who had led through Josh Maja before Alaixys Romao was dismissed for the hosts.
Elsewhere, Lyon won 2-1 at Strasbourg and Lille saw off Dijon 1-0, while Nimes and Metz drew 1-1.