Victor Wanyama's first goal for Celtic secured a 1-0 home victory over Hearts that took the Hoops back to within four points of Clydesdale Bank Premier League leaders Rangers.
Anthony Stokes hit the bar with a header after the break before Wanyama broke the deadlock in the 72nd minute with a drive from the edge of the box.
Two minutes from time, though, Wanyama conceded a penalty when he handled in the box but Fraser Forster dramatically saved Eggert Jonsson's spot-kick.
On a freezing cold day the supporters were looking for some entertaining football to warm them up but the first half was simply dire. An early through ball by Georgios Samaras in the eighth minute, which was just too strong for wide-man James Forrest, was the first sign of anything resembling a threat to the Tynecastle men.
Parkhead striker Gary Hooper missed Celtic's first real chance on the half-hour mark when he drove past the far post from close range after taking a Forrest pass, following good work by Du-Ri Cha.
Moments later, at the other end, Scott Robinson drove high over the bar with a shot from distance but this remained a turgid encounter.
On the hour mark Forrest raced down the right and stood the ball up for Stokes whose header from 10 yards crashed off the top of the bar before going behind.
South Korea midfielder Ki Sung-yueng replaced Beram Kayal as Celtic boss Neil Lennon tried something different and he was rewarded soon afterwards although it was Wanyama who gave the home side the lead. As Celtic pinned Hearts back into their own box, the ball broke to the Kenyan who fired the ball from 25 yards high past Marian Kello.
Celtic were moving forward with some purpose now but six minutes from time Jambos' midfielder Mehdi Taouil had a strike saved by Forster at his right-hand post.
Two minutes from time there was potentially title-changing drama when Hearts were handed a lifeline, with Forster emerging the hero.

