Hearts saw their lead at the top of the Scottish Premiership cut to just three points on Saturday after falling short in their comeback during a 3-2 loss to rivals Hibernian.
In the 150th Edinburgh derby in the competition, Hibs started quickly but held their nerve late on at Easter Road to ensure they dented their neighbours' title hopes.
Jamie McGrath sent the home fans into raptures after just three minutes when he cushioned in the opener before substitute Josh Campbell doubled their lead on the stroke of half-time.
Hibs made a strong start after the break, with Kieron Bowie thumping in their third in the 48th minute after a poor clearance from Stuart Findlay.
Lawrence Shankland got the first goal back 75 minutes in, while Cameron Devlin ensured a nervy finish in the 89th minute, but Raphael Sallinger made two big saves to keep out Shankland and Beni Baningime late on to win the three points.
Celtic took advantage of that slip-up as they twice came from behind to earn a 4-2 win away to Livingston.
There were four goals in the opening 10 minutes, with Cristian Montano's brace quickly cancelled out by Benjamin Nygren and Yang Hyun-Jun.
Nygren then gave Wilfried Nancy's side the lead for the first time in the 31st minute before Arne Engel's penalty eight minutes later clinched the points for Celtic.
Rangers, meanwhile, moved up to third, leapfrogging Motherwell after beating them 1-0 thanks to Thelo Aasgaard's close-range finish.
Data Debrief: Derby day blues for Hearts
Hearts failed to claim bragging rights and extend their lead at the top of the league on a frustrating day, despite having more possession and chances.
They created 1.51 expected goals (xG) to Hibs' 1.43, and had four more shots (16 to 12), though they could only convert two of their seven attempts on target.
Hibs have now won two consecutive home derbies against Hearts for the first time in the Scottish Premiership since March 2018.