Kyogo Furuhashi's strike saw Celtic edge to a 1-0 victory in a pulsating match against Hearts, opening up a five-point gap over their opponents.
It was a fast-paced, breathless Scottish Premiership encounter, with Celtic dominating the opening period. They deservedly took the lead as Kyogo (33) scored for the first time in three games, although there were questions of offside.
Hearts were much improved after the break - wasting no time in introducing Liam Boyce from the bench - but despite their best efforts, could not find the net. Celtic, meanwhile, were kept at bay by a string of superb saves from their former No 1 Craig Gordon as well as some inspired Hearts defending.
- How the teams lined up | Match stats
- Scottish Premiership fixtures | Results | Table
- Stream with a NOW pass | Get Sky Sports
But the one goal was enough to secure a vital victory for the hosts, who are now four points behind leaders Rangers with a healthy gap to Hearts in third place.
The only dampener on the evening for Celtic were injuries to Anthony Ralston, Jota and Stephen Welsh - the latter two substituted in quick succession ahead of a busy festive period.
How Celtic saw off a spirited Hearts
It was a lightning fast start at Celtic Park, with the hosts seeing a raft of early chances. Hearts were almost the masters of their own downfall inside 10 minutes when Gordon's back pass put Cammy Devlin under pressure, allowing David Turnbull to easily nip in and steal the ball back.
He then found Jota down the left, but his shot was well saved by Gordon - atoning for his own mistake - and as he scrambled to keep the ball under his control, James Forrest came in at the back post. However, his toe-poke hit the bottom of the upright.
- Celtic made three changes. Cameron Carter-Vickers, James McCarthy and Leil Abada drop to the bench, with Carl Starfelt, James Forrest and Tom Rogic coming into the side.
- Hearts also made four changes. Beni Baningime and Andy Halliday were not included in the matchday squad, with Liam Boyce and Gary Mackay-Steven on the bench. Peter Haring, Aaron McEneff, Ben Woodburn and Josh Ginnelly came into the side.
Jota also saw a decent effort curl just wide of the far corner, before Callum McGregor's effort from range pinged off Craig Halkett's leg, forcing a leaping save from Gordon. The defender had Hearts' best effort at the other end too, sending Stephen Kingsley's free-kick goalwards, but it went straight at Joe Hart.
But Celtic deservedly took the lead just after the half-hour. Tom Rogic held the ball up well before slipping in Ralston. It was then a low cross that found Kyogo in the six-yard box as he slotted home at the near post. Hearts had their hands up for offside, but with no flag raised or VAR to check, the goal stood.
Celtic picked up where they left off in the second half, having two early efforts. Gordon made another superb leaping save to keep out Rogic's effort from the left, before Turnbull saw a fierce drive well blocked. Hearts went close too, Kingsley unable to get a strong head onto Barrie McKay's corner.
As the clock ticked over into the 70th minute, Celtic were forced to make two injury substitutions. Ralston had already been replaced in the first half, injuring himself as he crossed for Kyogo's goal, before Jota and Welsh were taken off in quick succession, giving Ange Postecoglu a potential selection headache.
Hearts began to see the upper hand, with McKay unfortunately seeing bottles thrown at him from the stands as he took over corner duties. He almost equalised late on for Hearts too, sending the ball flashing across the face of goal after Gary Mackay-Steven had lost his footing. Robbie Neilson was booked for his protests - thinking Mackay-Steven had been fouled - but in fact, there was no contact on the forward.
Gordon kept Hearts in the hunt for a point too with some wonderful late saves, denying Rogic and Forrest in quick succession, but Celtic already had enough to take the points.
Was Kyogo's goal offside?
Sky Sports' Kris Boyd: "He's offside - there's no doubt about it. He's already ahead of the ball [when Ralston plays in the cross]. There's no argument about it and no doubt that Kyogo is offside. I would love to see a couple of lines drawn across it.
"Get VAR to Scottish football ASAP because Hearts can feel very aggrieved… There are too many decisions in Scottish football that are wrong and that's a big one"
Former Hearts captain Christophe Berra on Sky Sports: "It's marginal if it is, it's hard to tell. We've seen situations in the Premier League where, before the lines come out, you think it's off or on and before the lines are there, you can't tell. There's nothing in it, let's be honest.
"You can't blame the ref or the linesman. The only way you sort that out is by spending money and getting VAR in Scottish football. Even if it was here, it's going to be touch and go whether it was off."
Hearts manager Robbie Neilson to Sky Sports: "The linesman's looking straight along the line, he's ahead of the ball, there's no players in his line blocking it so he's got to see it… I tried to [speak to the officials about the incident] but it was a waste of time. You end up getting banned with red cards and yellow cards.
"But we've got a game on Sunday, we need to try and pick ourselves up for that. The referee and linesman will have a look at it, WhatsApp each other and move on to the next game."
Man of the match - Carl Starfelt
A really good performance from Starfelt on his return to the Celtic XI. There was some concern he may also have picked up an injury in the second half, but he saw out the game to help his side to a clean sheet.
He told Sky Sports after the game: "It was a tough game against a tough opponent. First half, we played well and we got the first goal. In the end, we had to fight for it but we did it. We had chances to score two or three, they also had some chances but I'm really happy with the fighting spirit and I think we showed at the end that we fight for each other and we didn't concede, so I'm happy.
"As a team, we need to play in different ways. We like to control that ball, we like to press high and have the ball in their half. But sometimes you also need to defend a 1-0 lead and I think we showed that we can do that."
What the managers said
Celtic manager Ange Postecoglu: "I'm pleased. I thought we started the game really well, we dominated how the game was played and played on our terms. We lacked a little bit of a ruthless edge today for that second goal, we had the chances to do that.
"But I thought we were resilient, I don't think Joe had any outstanding saves to make. We lost some players during the game which disrupted it but pleased with the win and performance.
"They're always in the game when it's 1-0, anything can happen. But I thought we defended well, we didn't get opened up too much, set-pieces always put you under pressure but we held up not too badly.
"It's a goal. I'll let it go and let our performances speak for themselves. If people think the referee decided this game that's their analysis.
"We'll get a round-up from the medical staff. Tony [Ralston] felt something in his ankle, which is disappointing because he's been outstanding for us. With the others, I'm not really sure so we'll just see how they get through it.
"It's always a worry, but that's why we've got a squad… We've got some options now which is the most important thing."
Hearts manager Robbie Neilson: "Firstly, I'm very proud of the players. I thought they were exceptional today.
"In the first half, I thought we matched Celtic - we had a few chances, they had a few chances. Then second half, I thought we played very well. I don't feel like we got beaten by Celtic today, we got beaten by poor decisions from the referee and the linesman.
"We've all seen it and we can laugh and joke about it, but I said a comment after the game at Ibrox recently and I get the book thrown at me so I can't say too much about it. But it's disappointing when you come here you put on a game, the players were magnificent and we get beaten by a poor decision from the official.
"Celtic are a good team, but I thought today, we matched them in periods of the game and towards the end, we probably had the better of the game."
Celtic travel to Dundee United in a game you can see live on Sky Sports Football on Sunday at 12pm, while Hearts visit Livingston also on Sunday, with the game kicking off at 3pm.