Borussia Dortmund captain Marco Reus has sent his side back to the top of the German Bundesliga with a stoppage-time winner in a 3-2 victory at Hertha Berlin.
Just when it seemed Dortmund's chances would take a title blow in heavy rain on Saturday, Jadon Sancho set up Reus to score in the third minute of added time.
Dortmund reclaimed the lead by three points from Bayern Munich, who are home against Mainz on Sunday.
Hertha finished the game with nine men after Jordan Torunarigha was shown a second yellow card in the 85th minute and Vedad Ibisevic received a straight red in the sixth minute of stoppage time for throwing the ball at Roman Buerki after he felt the Dortmund goalkeeper was wasting time.
Dortmund twice came from behind through Thomas Delaney in the 14th minute and Dan-Axel Zagadou two minutes after the restart to cancel out Salomon Kalou's first-half double - the second a 35th-minute penalty.
"Such a win in the 93rd minute will give us an enormous push," Reus told reporters.
"We kept believing in ourselves and fighting. It was a deserved win at the end.
"Now we have to keep showing this mentality in the coming weeks."
Schalke's hopes of making a fresh start under returning coach Huub Stevens, on an interim basis, were derailed by a 1-0 loss at home to Leipzig.
Timo Werner's 14th-minute strike was enough for the visitors to consolidate third place and hand Schalke a fourth consecutive defeat to leave them 15th in the 18-team competition.
Stuttgart's 1-1 draw at home to Hoffenheim means there are now just three points between the sides with eight games left.
Augsburg defeated fellow strugglers Hannover 3-1 to overtake Schalke.
Also Saturday, Wout Weghorst scored twice as Wolfsburg beat Fortuna Duesseldorf 5-2 in their first game since Bruna Labbadia announced he would end his tenure as coach at the end of the season.