Two late goals from Stephen McManus stretched Celtic's lead in the SPL to seven points as they came from two behind to defeat 10-man Hearts.
Edgaras Jankauskas bundled home a cross from Paul Hartley and Steven Pressley headed the second from close range.
But Celtic substitute Stephen Pearson sidefooted home a Shaun Maloney cross.
Takis Fyssas was sent off for fouling Maloney before McManus struck one with his head and another with his foot from Shunsuke Nakamura free-kicks.
Hearts had exerted the early pressure, but it was Celtic who created and missed the first chance of a scintillating encounter.
Alan Thompson, preferred to Aiden McGeady in midfield, found Petrov unmarked at the back post with a pinpoint cross but the Bulgarian powered his header just over from eight yards.
Hearts made them pay for that immediately, as 18-year-old Calum Elliot, again deputising for the injured Roman Bednar up front, sent Hartley clear.
And the Scotland midfielder's low pass across the face of goal was bundled into the net by Jankauskas off retreating defender Ross Wallace.
Hearts were two up after eight minutes, Pressley connecting with Rudi Skacel's inswinging corner to power home a header at the back post.
Elliot, buoyed by a contract extension signed this week, weaved through a couple of challenges before setting up Skacel 16 yards out, but the Czech midfielder sent his low drive straight at goalkeeper Artur Boruc.
Another bit of trickery and a neat cross from the young striker found Skacel, who sent a header wide from 12 yards.
Elliot then set up Skacel with a lovely backheel and the Czech's powerful drive from 14 yards was parried clear by Boruc.
Celtic's cause could have been hindered by the loss of Petrov to a hamstring injury just after the break, Pearson taking over in midfield.
But the former Motherwell man made an immediate impact, playing the ball wide to Maloney and side-footing home the resulting cross from six yards.
Hearts escaped when Nakamura's shot was spilled by goalkeeper Craig Gordon, Pearson's follow-up struck the post and Maloney was ruled offside as he side-footed home.
The home side had to endure 14 minutes with 10 men after Fyssas departed for a last-man challenge on Maloney at the edge of the box.
And McManus made them pay, heading in a Nakamura cross then stabbing home a second after a goalmouth scramble.
Hearts: Gordon, Neilson, Pressley, Webster, Fyssas, Cesnauskis (Wallace 77), Hartley, Brellier, Skacel, Elliot, Jankauskas (Pospisil 88). Subs Not Used: Banks, MacFarlane, McAllister, Simmons, Berra.
Sent Off: Fyssas (76).
Booked: Pressley, Neilson, Hartley, Skacel.
Goals: Jankauskas 6, Pressley 8.
Celtic: Boruc, Telfer, Balde, McManus, Wallace, Petrov (Pearson 50), Lennon, Nakamura, Thompson (McGeady 62), Hartson, Maloney.
Subs Not Used: Marshall, Lawson, Virgo, Du, Camara.
Booked: Balde, McManus, Hartson, Boruc.
Goals: Pearson 55, McManus 87, 90.
Ref: I Brines