Celtic 0 St Johnstone 1
A magnificent strike from St Johnstone midfielder Danny Swanson inflicted a first domestic defeat of 2015 on Celtic.
The on-loan Coventry midfielder marked his first Scottish Premiership start for Saints with a glorious first-time effort in the 54th minute to hand the visitors a 1-0 victory.
Swanson showed brilliant technique to fire the ball into the top corner from 25 yards after Virgil van Dijk had headed David Wotherspoon’s corner out of the box.
The goal sent St Johnstone into the top six and gave Aberdeen fresh hope in the title race following their 4-0 defeat at Parkhead on Sunday.
Celtic had the chance to move nine points clear but they remain two victories ahead of the Dons with their games in hand now used up.
Celtic never hit the heights that had earned them 10 domestic victories in a row this year and Saints goalkeeper Alan Mannus was well worthy of his clean sheet after making some important saves.
Celtic, who were without the injured Kris Commons and John Guidetti, started with purpose and Stuart Armstrong had a shot blocked and the recalled Anthony Stokes curled wide from a tight angle following a one-two with Leigh Griffiths.
The chances continued to come and Saints soon got a sight of goal when the Celtic central defence failed to deal with a long ball, but Steven MacLean slice wide from 25 yards.
Mannus tipped over Gary Mackay-Steven’s first-time curler at the other end and Griffiths fired just wide from 30 yards.
Celtic could not get in behind a well-organised visiting defence but Gordon was not troubled despite St Johnstone forcing themselves into attacking positions.
There was one piece of meaningful activity just before the break when Armstrong burst towards the Saints back four but his long-range strike was pushed wide by the diving Mannus.
Mubarak Wakaso, who spent the first part of the year on African Nations Cup duty with Ghana, made his first Celtic appearance for three months after Adam Matthews failed to appear after the interval.
Efe Ambrose switched to right back and winger Wakaso came in at left back and quickly set up a good chance for Mackay-Steven, but the former Dundee United winger volleyed off target.
St Johnstone were soon back on the attack and their pressure ultimately led to the corner from which Swanson stunned Celtic Park.
Celtic tried to respond quickly and Stokes earned himself a yard of space on the edge of the box, but Mannus got down to hold his drive.
And Steven Anderson had a great chance to double St Johnstone's lead moments later when Wotherspoon's deep corner found him unmarked but the centre-back volleyed wide of the near post.
Ronny Deila made the rest of his substitutions in the 59th minute when James Forrest and Nir Bitton replaced Mackay-Steven and Stokes, but it took the hosts a while to rediscover their attacking impetus.
And, when they did, they found Mannus on top form. The Northern Ireland goalkeeper made an excellent parry from an Ambrose header, clasped the ball after getting down to stop Bitton’s drive and then held Armstrong’s powerful long-range strike.
Chris Millar blazed well over after a decent Saints move before Celtic resumed their late surge.
But Van Dijk headed just wide from a corner and a poor touch from Griffiths denied him the chance to finish Scott Brown’s pass.