Borussia Dortmund condemned Bayern Munich to a second straight defeat in the German Bundesliga, dismantling the champions 3-0 in their own Allianz Arena.
Henrikh Mkhitaryan, Marco Reus and Jonas Hofmann scored the goals as Jurgen Klopp's side all but mathematically secured their place in the UEFA Champions League next season. Bayern's woes were compounded in stoppage time when Rafinha was shown a red card, although the defeat to their rivals from Westphalia was ultimately not so painful with still 17 points between the two sides at the top of the table.
Earlier in the day, Wolfsburg came from behind to get the better of relegation-threatened Nurnberg 4-1 and move above Bayer Leverkusen into fourth place. Markus Feulner gave the visitors the lead, but two goals in three minutes from Ivica Olic and Ivan Perisic turned the game on its head. As a battling Nurnberg searched for an equaliser, Junior Malanda doubled the home team's advantage midway through the second half before Perisic grabbed his second and Wolfsburg's fourth of a dominant victory.
Borussia Monchengladbach slipped out of the top four, and were grateful for a late equaliser from Juan Arango in their 1-1 draw at fourth-bottom Stuttgart. The Venezuelan's header looped past Sven Ulreich on 88 minutes after Stuttgart had led from the 12th minute through Daniel Didavi.
Mainz boosted their hopes of qualifying for next season's UEFA Europa League with a 3-0 win over Werder Bremen - a result which plunged the visitors back in the thick of relegation danger. An own goal from Nils Petersen set Mainz on their way to victory, with further goals from Christoph Moritz and Yunus Malli sealing the points before the interval and leaving Bremen just six points above the drop zone with four games left.
Didier Ya Konan struck an 86th-minute winner to hand Hannover a huge 2-1 win over relegation rivals Hamburg. Ya Konan's goal put a dampener on HSV coach Mirko Slomka's return to Hannover, having been sacked from his post 107 days ago. Slomka's side had levelled through Hakan Calhanoglu's free-kick, which cancelled out Lars Stindl's opener.
Freiburg also picked up a crucial three points in the battle for survival, winning 2-0 at home against Eintracht Braunschweig. An own goal from Damir Vrancic and one from Julian Schuster moved Christian Streich's side out of the bottom three with some room to breathe over their rivals below.