A HEADER from Danny Wilson snatched Hearts a sensational late share of the spoils at McDiarmid Park this afternoon.
It had looked like a Stevie May hattrick would consign the Tynecastle side to yet another defeat but Wilson powered home Billy King’s corner in stoppage time to earn the visitors a hard-fought point.
May had scored twice from the penalty spot - one in each half - and once from open play and, up until that point, Dale Carrick’s strike just before the hour had been Hearts’ only consolation.
However Sam Nicholson gave them some hope when he netted two minutes from time and Wilson completed a remarkable recovery in injury time.
Hearts carved out an early effort but Ryan Stevenson’s powerful, curling attempt from the edge of the box, after collecting from Carrick, was straight at the keeper.
And Saints also came close in nine minutes when Frazer Wright, Stevie May and then Murray Davidson all had a go in quick succession.
Saints were stunned with 25 minutes gone when Steven Anderson was shown a straight red card for a foul on Carrick, when it looked like a yellow would have been sufficient punishment.
That left Saints boss Tommy Wright with a difficult task and he shuffled his pack slightly, bringing on Gary Miller in place of Lee Croft.
The day went from bad to worse for Saints when Murray Davidson had to be stretchered off after injuring his left knee and he was later taken away in an ambulance.
However the home side were celebrating in 39 minutes when they were awarded a penalty after a foul on Hasselbaink by Kevin McHattie, who was booked for his contribution.
May wasted no time in slotting home from the spot with his right foot, low into the corner of the net leaving Macdonald no hope.
Saints bagged a second through May again just a few minutes after the restart, although the goal - which came after Macdonald was unable to hold his first effort - seemed to take a touch off the unfortunate Brad McKay on its way into the net.
Hearts pulled one back on the hour when Carrick managed to get his head on the end of a McHattie cross from the right.
But Saints were awarded another spot kick just minutes later, this time for a handball from McHattie.
May slotted home in an almost identical fashion as he had the first, low and hard into the bottom corner with Macdonald going in the opposite direction.
That looked to have killed the game but then Nicholson bagged his first goal for the club to make it 3-2 with two minutes of normal time remaining, firing home from close range.
His goal sparked a mass brawl inside the goal and, as a result, both Ryan Stevenson and Allan Mannus were shown straight red cards.
But Hearts battled to the very end and got their reward inside stoppage time when Wilson rose above the Saints defence to head home the leveller.
St Johnstone: Mannus, Mackay, Scobbie, Wright, Anderson, Millar, McDonald, Hasselbaink (Cregg 70), May, Davidson (Wotherspoon 35), Croft (Miller 26). Subs: Banks, Brown, O’Halloran, Easton.
Hearts: Macdonald, McGowan (Nicholson, 46), McKay, Wilson, McHattie, Hamill, Paterson Carrick, Tapping (Oliver 69), Smith (B King 78), Stevenson. Subs: Hamilton, A King, McGhee, Beith.
Bookings and Sendings off: St Johnstone: Anderson (25, straight red foul on Carrick), Wotherspoon, Mannus (89, unsporting behaviour).
Hearts: McHattie (39, foul on Hasselbaink), Tapping (41, foul on May), McKay (50, foul on Hasselbaink), Stevenson (straight red, unsporting behaviour 89)
Referee: Brian Colvin