Berlin, Germany: Centre-back Naldo completed Schalke's thrilling four-goal fightback at rivals Borussia Dortmund with a 94th-minute header on Saturday as the Ruhr derby finished in a frantic 4-4 draw.
Having been four down after just 25 minutes, Brazilian Naldo's last-gasp header brought Schalke back from the dead against troubled, 10-man local rivals Dortmund, to snatch a dramatic Bundesliga point.
"Schalke showed they have character and the mentality to offer a real spectacle," said Schalke coach Domenico Tedesco.
Schalke, who are unbeaten since September, are third in the table, three points ahead of fourth-placed Dortmund, and five behind leaders Bayern Munich, who play later at Borussia Moenchengladbach.
The hosts had Pierre-Emerick Aubameyang sent off in the 72nd minute for two yellow cards with the score 4-2 after giving Dortmund an early lead, but Borussia's defence collapsed in the second half.
Dortmund coach Peter Bosz is under increasing pressure as his side are now winless in their last six league games.
"It's hard, you only feel disappointment," said the Dutchman.
"When you lead 4-0, that shouldn't have happened.
"After the red card, we didn't play any more football, lost the ball too quickly and didn't use our room, but I don't want to look for excuses."
The biggest win in a Ruhr derby -- 10-0 to Schalke in 1940 -- looked under threat when Dortmund raced into a 4-0 lead.
Christian Pulisic's cross was flicked on by Nuri Sahin to the far post where Aubameyang slid the ball home on 12 minutes.
Dortmund doubled the lead six minutes later when Sahin's free-kick was volleyed into his own net by Schalke midfielder Benjamin Stambouli.
The Frenchman was then beaten for pace on the flank by Aubameyang, before the Gabon international fired in a superb cross for Mario Goetze to head in the third on 20 minutes.
Schalke looked dead and buried when Raphael Guerreiro volleyed home Dortmund's fourth with just 25 minutes on the clock.
In a bid to avert a debacle, Tedesco brought on midfielders Leon Goretzka and 20-year-old Amine Harit on 34 minutes.
The double substitution tightened things in the middle and with Schalke putting in the tackles, it was a totally different story in the second half.
The away side pulled their first goal back when Stambouli's long floated pass was headed home by striker Guido Bergstaller on 61 minutes.
Harit pulled another goal back four minutes later, taking advantage of terrible defending to fire home at close range.
Aubameyang was given his marching orders after clattering Harit and Dortmund were barely holding on when midfielder Daniel Caligiuri buried Schalke's third on 86 minutes.
In a frantic finale that included seven minutes of stoppage time, Schalke deservedly got their equaliser when Naldo escaped his marker at a corner.
He powered home a header, sparking wild celebrations, but tensions boiled over with the scores level for the first time.
Both Sahin and Schalke captain Ralf Faehrmann received yellow cards after the final whistle as the teams got into a shoving match.
Elsewhere, RB Leipzig remained second after their 2-0 win at home to second-from-bottom Werder Bremen with goals from Liverpool-bound midfielder Naby Keita and Brazilian defender Bernardo.
Bayer Leverkusen moved up to sixth with a 1-0 win at Eintracht Frankfurt with Germany forward Kevin Volland scoring the winner.
Michael Gregoritsch and Alfred Finnbogason scored for mid-table Augsburg as they came from behind to seal a 2-1 win over ten-man Wolfsburg, who had Maximilian Arnold sent off after only 11 minutes.
That was Wolfsburg's first defeat since losing to Stuttgart in September.