Second-placed Borussia Dortmund twice squandered the lead as they drew 2-2 at Schalke 04 in the Ruhr derby on Sunday, allowing leaders Bayern Munich to move closer to another Bundesliga title.
A gem from Shinja Kagawa and an odd goal from Matthias Ginter put Dortmund ahead but the hosts hit back each time through Leroy Sane and a Klaas-Jan Huntelaar penalty.
Bayern, who won 3-1 at VfB Stuttgart on Saturday, are seven points clear of Dortmund with only five matches left to play.
Schalke are seventh with 45 points, behind Borussia Moenchengladbach, Bayer Leverkusen and Mainz on goal difference.
Dortmund coach Thomas Tuchel made eight changes to the line-up that drew 1-1 with Liverpool in the Europa League on Thursday as he rotated his side.
There was little excitement in the first half where the best chances fell to Schalke as Sane struck the post from 20 metres and Junior Caicara fired a shot across the face of the goal, leaving Huntelaar waiting and furious in the middle.
But the game dramatically came to life after the break.
Dortmund struck the first blow in the 49th minute when Moritz Leitner backheeled the ball into the path of Kagawa and the Japanese midfielder dinked the ball over Ralf Faehrmann from the edge of the area.
Sane levelled two minutes later, firing home the rebound after Roman Buerki parried the ball invitingly into his path, but the game quickly took another twist.
Henrik Mkhitaryan's free kick hit a Schalke defender and looped into the area, the home defence was wrong-footed and Ginter, in between two defenders, was left unchallenged to head the ball in.
Huntelaar levelled again when the Dutchman won and converted a penalty in the 65th minute.