Borussia Dortmund's Bundesliga title push got back into gear with a 4-1 win over Hannover at the Westfalen Stadion.
Mohammed Abdellaoue gave the visitors a shock lead in the 57th minute, but Dortmund controlled the rest of the game and deservedly took all three points to maintain their seven-point cushion at the top of the table with six games remaining.
Mario Gotze, Lucas Barrios (two) and Kevin Grosskreutz were all on target for Jurgen Klopp's men, who won for the first time in almost a month.
Champions Bayern Munich moved past Hannover into third place for Champions League qualifying thanks to Arjen Robben's goal in a 1-0 win against bottom side Borussia Moenchengladbach.
Bayern chairman Karl-Heinz Rummenigge has ruled out selling Robben in the summer, even if the club fail to qualify for the Champions League next season. And the Holland winger responded with the only goal of the game after 77 minutes as the home side took advantage of Hannover's 4-1 thrashing at Borussia Dortmund to climb above them in the table.
Bayer Leverkusen continued to cling onto the coat tails of Dortmund as they edged to a 1-0 victory at Kaiserslautern.
Sidney Sam scored the only goal of the game after 74 minutes to secure a hard-fought victory though Srdjan Lakic could have denied them when he hit the post late on.
Mainz suffered a blow to their hopes of securing a European place after being held to a 1-1 draw at home to Freiburg.
The early-season pacesetters, who started the season with seven wins in a row, have won only once at home since that unbeaten start was ended. And they had to come from behind today to grab a point after Papiss Demba Cisse put the visitors in front in the first minute, Sami Allagui heading the equaliser in the 75th minute.
Torsten Frings' powerful strike earned Werder Bremen a deserved 1-1 draw against Stuttgart in this unexpected Bundesliga relegation battle at the Weser Stadion
Fourth-bottom Stuttgart took the lead in the 13th minute through Hungary international Tamas Hajnal as the visitors attempted to pull away from St Pauli, whose game against Schalke was abandoned due to crowd trouble. Hajnal lashed into the top-right corner from point-blank range but Stuttgart showed no ambition to build on their goal after taking the early lead, instead inviting pressure onto their troubled defence.
The goal seemed to spur a lacklustre Bremen side into life and both Marko Marin and Wesley had attempts saved by Sven Ulreich before Frings' long-range effort flew past him from outside the box after a cleverly worked corner in the 34th minute.
In the day's late game, Hoffenheim and Hamburg played out a 0-0 draw.
Bosnian striker Vedad Ibisevic wasted a good opportunity to give Hoffenheim the lead when he headed wide from close range after only four minutes. The end-to-end nature of the game was highlighted with a plethora of chances for both teams in the space of seven first half minutes.