Match ends, Aberdeen 1, Celtic 2.
Celtic stretched their winning run to nine games as Kristoffer Ajer's late goal earned a Scottish Premiership victory against a battling Aberdeen.
Neil Lennnon's men moved 13 points clear in first after a seventh league win in a row before Rangers beat Livingston to reduce the deficit to 10.
But the champions were largely subdued for much of the 90 minutes.
Ash Taylor cancelled out Celtic's Callum McGregor's opener, before Ajer settled it late on.
It was Aberdeen's best display at home to Celtic for some time, but they have now lost the last eight home meetings with the Parkhead team.
- Reaction & how it happened
- Player Rater: Who was your man of the match?
- 'We won't get carried away' - Lennon
No reward for battling Aberdeen
Aberdeen ended a drought of five games without a goal in midweek against Hamilton and in the opening period they certainly looked like a team who could pose the champions problems.
Connor McLennan and Niall McGinn looked lively and Curtis Main was proving a handful for the Celtic trio at the back.
However it was the visitors who opened the scoring with their first real attack of the game. Leigh Griffiths got the better of defender Scott McKenna and slid the ball into the path of Odsonne Edouard. The Celtic striker fed the onrushing James Forrest who was denied by goalkeeper Joe Lewis, but McGregor followed up with the rebound for his 11th goal of the season.
But Aberdeen were level when Lewis Ferguson's cross was flicked on by Matty Kennedy into the path of Taylor, who chested the ball down before despatching it beyond the helpless Fraser Forster.
Aberdeen were playing with a confidence that the home fans had rarely seen evidence of this season, and Funso Ojo and McGinn both threatened before the break.
Celtic's record of not dropping points after taking the lead this season was under threat with the windy conditions proving troublesome for both sets of players, but the home side were marginally coping the better.
Before Lennon tweaked his formation, Celtic had a golden opportunity to regain the lead when Edouard set up Jonny Hayes who was clean through on goal before being denied by his former team-mate Lewis.
Aberdeen were always dangerous though, and Mckenna got his head on a cross ball that he would have been better leaving with Main in a much better position to find the target.
And Celtic then did what they do so well with a goal against the run of play. Forrest sent a perfect pass into the path of Ajer who took one touch before firing past Lewis.
Edouard could have sealed the victory with Lewis languishing on the ground, but from just two yards out the striker hit the ball off the goalkeeper and the opportunity was gone.
In the end it was a score that was harsh on Aberdeen who had put so much into the game, but ended up with nothing to show for their efforts.
Man of the Match - Niall McGinn
Although it was a Celtic victory it was the Aberdeen players who caught the eye on an afternoon where silky football was definitely not on the agenda.
Ferguson and McLennan gave their all but McGinn tormented the Celtic backline from the first minute to the last and although he ended up in the losing side he can be pleased with his performance overall.
'We did annoy them' - reaction
Aberdeen manager Derek McInnes: "The intent from my team was clear today. We did get after them, we did annoy them, we did put them under pressure. At no point did we want to settle for a point in the second half."
Celtic manager Neil Lennon: "That was the hardest game I've had by a considerable way. Conditions were awful and we were playing against a very good side. It's a magnificent three points for us."
- 14TaylorBooked at 45mins
- 22OjoSubstituted forCosgroveat 83'minutes
- 18McLennanBooked at 39mins
- 23KennedySubstituted forBrysonat 67'minutes
- 6BittonBooked at 86mins
- 21NtchamSubstituted forRogicat 79'minutes
- 3TaylorSubstituted forHayesat 25'minutes
- 9GriffithsBooked at 45minsSubstituted forChristieat 58'minutes
- Andrew Dallas
- Shots on Target
Second Half ends, Aberdeen 1, Celtic 2.
Offside, Aberdeen. Sam Cosgrove tries a through ball, but Andrew Considine is caught offside.
Corner, Celtic. Conceded by Andrew Considine.
Corner, Celtic. Conceded by Joe Lewis.
Attempt saved. Odsonne Edouard (Celtic) right footed shot from the centre of the box is saved in the bottom left corner.
Nir Bitton (Celtic) is shown the yellow card for a bad foul.
Foul by Nir Bitton (Celtic).
Sam Cosgrove (Aberdeen) wins a free kick in the attacking half.
Substitution, Aberdeen. Sam Cosgrove replaces Funso Ojo because of an injury.
Goal! Aberdeen 1, Celtic 2. Kristoffer Ajer (Celtic) right footed shot from the right side of the box to the top right corner. Assisted by James Forrest.
Foul by Odsonne Edouard (Celtic).
Lewis Ferguson (Aberdeen) wins a free kick in the defensive half.
Substitution, Celtic. Tomas Rogic replaces Olivier Ntcham.
Scott Brown (Celtic) wins a free kick in the defensive half.
Foul by Craig Bryson (Aberdeen).
Attempt missed. Scott McKenna (Aberdeen) header from the centre of the box misses to the right. Assisted by Andrew Considine with a headed pass.
Corner, Aberdeen. Conceded by Ryan Christie.
Hand ball by Olivier Ntcham (Celtic).
Corner, Celtic. Conceded by Joe Lewis.