Inverness finally lost their long unbeaten league away record stretching back more than a year as substitute Collin Samuel fired St Johnstone to a dramatic late 1-0 victory in Perth.
The Highland club had been unbeaten on their travels in the Premier League all season and had last lost away from home in the league as a First Division club on November 28, 2009 to Partick.
St Johnstone had previously managed a meagre haul of just four goals at McDiarmid Park all season in the top flight and it looked as if Inverness would hold out for a hard-earned goalless draw with goalkeeper Ryan Esson impressing.
With five minutes remaining, however, Samuel, who had already spurned a clear opening to score, netted from close range after a Dave Mackay effort had been hacked off the line.
Jody Morris was restored to the St Johnstone midfield after suspension as the Perth club were finally able to return football to McDiarmid Park after the recent bad weather.
St Johnstone last played at home on November 13 and even today's fixture required a 9.30am inspection of the stadium footprint before police permission was granted to play.
Inverness, on the back of two home defeats but unbeaten away in the league all season, were without the injured Jonny Hayes (ankle), while Ritchie Foran was demoted to the bench.
That meant a rare chance to impress from the start for Israeli attacking midfielder Gil Blumenshtein who has battled with fitness problems for much of this term.
The home team threatened first on six minutes, Mackay's cross from the right missed by Sam Parkin and then diverted wide at close range by Liam Craig.
Morris was driving St Johnstone forward and from his neat pass Cleveland Taylor forced a smart save from Esson with an angled drive.
St Johnstone were starting to impose themselves and Taylor created their next chance, crossing for Parkin whose diving header was well stopped by a diving Esson.
Inverness made their first opening of the game when Adam Rooney's drive was pushed away by Peter Enckelman in the St Johnstone goal with the rebound eluding Eric Odhiambo.
St Johnstone's next effort was an ambitious one on 29 minutes from Danny Grainger, the full-back's long-range strike soaring some distance over Esson's crossbar.
After 41 minutes, Peter MacDonald had the best chance of the opening half, but his low strike was pushed away one-handed by Esson with Parkin unable to bundle in the loose ball.
In first-half injury time, Lee Cox produced a powerful shot from the edge of the area, but defender Steven Anderson was there to block for St Johnstone.
Inverness made a change at the break, introducing the dropped Foran for Blumenshtein who had struggled to make an impact on his first Premier League start.
Cox collected the game's first booking for upending Grainger on the left flank on 49 minutes as he attempted to burst onto Taylor's through pass.
Inverness almost claimed a goal out of nothing when a floating Nick Ross cross from the right deceived Enckleman in its flight and hit the top of the crossbar.
Substitute Foran's battling qualities set up a shooting chance for Odhiambo, but Enckelman was equal to his fierce effort on the turn.
St Johnstone were still applying pressure and could have gone ahead on 71 minutes when Chris Millar's cross found Mackay unmarked at the far post only for Esson to save smartly.
Grainger was getting forward well on the left, but when a chance presented itself to score he snatched at it badly, firing over from a narrow angle.
Grant Munro was fortunate to avoid punishment for a woeful backpass seized on by substitute Samuel only for Esson to save again.
St Johnstone had a penalty claim rejected on 83 minutes when, from a Mackay cross, Munro appeared to handle as he landed on the ball, but nothing was given.
The home team finally broke the deadlock in the 85th minute when a Mackay shot was cleared off the line by Munro only for Samuel to make amends for his earlier miss by blasting home the rebound.
Source: DSG
Source: DSG