Bayern Munich wrapped up their 23rd Bundesliga title with six games to go thanks to a 1-0 win at Eintracht Frankfurt on Saturday.
It has been a matter of when and not if Bayern regained the title from Borussia Dortmund for some weeks and Bastian Schweinsteiger's 53rd-minute effort gave the visitors the win they needed.
The afternoon could have been more comfortable for Bayern, with David Alaba sending a first-half penalty against a post, but they moved 20 points clear of Dortmund with only 18 left to play for.
The victory also ended a mini title drought as they won their first crown in three seasons.
It was not quite on the same level as the 9-2 thumping of Hamburg in their last league clash, but the Bavarian giants can now turn their attention to completing the treble. They are well-placed in their Champions League quarter-final with Juventus and in the last four of the DFB-Pokal.
On Sunday, Hannover failed to make up ground on the top six after being held to a goalless draw at home to Stuttgart.
Chances were rare between two sides who reached the knockout stages of the Europa League this season and are both keen to return next.
While Stuttgart's chances of qualifying look slim with a nine-point gap to close on sixth-place Eintracht Frankfurt, they do still have a DFB-Pokal semi-final with Freiburg to come in 10 days' time.
Hannover, on the other hand, need to start picking up points away from home after confirming once again their strength at the Niedersachsenstadion, where they have lost only once all season.
Nurnberg closed to within a point of eighth-place Mainz, practically assuring their place in the Bundesliga next season with a 2-1 victory.
A second-half brace for Per Nilsson was enough to earn the Bavarians victory after Mainz missed a penalty in the first half, while Nicolai Muller scored the visitors' consolation on the hour mark.
The win also lifts Nurnberg into the chase for a place in Europe next season, even if their coach Michael Wiesinger did not want to hear anything of that prospect on the eve of the game.
Back to Saturday's action and Borussia Dortmund overturned a half-time deficit to secure a 4-2 home victory over Augsburg and consolidate second place in the standings.
Dortmund went ahead after 22 minutes through Julian Schieber but found themselves behind at the interval after goals from Daniel Baier and Kevin Vogt stunned the hosts.
But Schieber restored parity by netting his second goal in the 52nd minute before Neven Subotic put Dortmund ahead in the 64th minute and then Robert Lewandowski sealed the triumph in stoppage time.
Bayer Leverkusen dropped two points to Wolfsburg in a 1-1 draw at the BayArena, allowing Schalke to make ground on them in the challenge for third place in the Bundesliga.
Andre Schurrle gave the home side the lead after 12 minutes, before Wolfsburg defender Simon Kjaer equalised in the 70th minute.
Leverkusen have secured just two wins in their last five matches to move to 49 points, four more than Schalke, who beat Werder Bremen and moved to within four points of Bayer as the chase for third place and Champions League football hots up.
Schalke remained in the running for an automatic Champions League spot with victory at Werder Bremen as they closed the gap on third-placed Leverkusen to four points.
Julian Draxler opened the scoring for Schalke in the 51st minute and Ciprian Marica made it 2-0 after 69 minutes as Jens Keller's side picked up their fifth victory in their last six matches to move on to 45 points.
Bremen, meanwhile, extended their winless streak to seven matches to remain on 31 points.
Borussia Monchengladbach remained in the running for European football next season with an uninspiring 1-0 home win over 10-man Greuther Furth.
Luuk de Jong scored the only goal of the match in the 74th minute for Gladbach, eight minutes after Furth went a man down when Matthias Zimmermann was given a second yellow card.
Gladbach have lost just once in their last six matches to move to 41 points while last-placed Furth have not won in eight matches to remain on 15 points - nine points from the relegation play-off spot.
Hamburg were unable to bounce back from a humiliating 9-2 defeat to Bayern Munich last weekend as they were beaten 1-0 at home by Freiburg, effectively putting their European hopes to bed.
Jonathan Schmid's second-half goal was enough for Christian Streich's men to take all three points away from the HSV-Arena and move up to fifth in the table, above Eintracht Frankfurt on goal difference.
Hamburg are now four points adrift of the top six after their third consecutive defeat, and looking unlikely to challenge for a place in the Europa League.
On Friday night Markus Gisdol celebrated a winning start to life as coach of Hoffenheim, who gained a much-needed survival boost with a comfortable 3-0 win over Fortuna Dusseldorf.
Roberto Firmino's early strike and an Andreas Lambertz own goal put the hosts on their way to victory before Kevin Volland sealed all three points for only the sixth time this season.