All three goals came in the first-half, with Matt O’Riley and an own goal giving the home side a two-goal lead before Cyriel Dessers got one back for Rangers.
There were two changes from last weekend’s victory over Kilmarnock as Ben Davies and Tom Lawrence came in from the start with Todd Cantwell on the bench and Leon Balogun missing out through injury.
That meant Rangers started at Parkhead with Jack Butland in goal behind a back four of James Tavernier, John Souttar, Ben Davies and Borna Barisic.
John Lundstram and Mohamed Diomande were once again in the heart of midfield, alongside Tom Lawrence, while it was the same from three as last weekend with Dujon Sterling and Fabio Silva providing the support for striker Cyriel Dessers.
As expected, it was a lively start to this one, and there was an early chance for the hosts inside the first two minutes. James Forrest made ground down the right before getting a cross into the box, John Souttar’s clearance came off Jack Butland before James Tavernier was able to clear the danger.
At the other end, Dujon Sterling came close with a header at the back post from a Fabio Silva cross but it was cleared by Scales, before Butland tipped over an effort from distance from James Forrest.
Celtic were awarded a free-kick in a dangerous position on the edge of the box with less than 10 minutes played but Matt O’Riley was unable to keep his curling strike on target.
Fabio Silva was next to flash a left-footed shot wide after Ben Davies did well to send the ball back into the path of the forward in the box, before Celtic captain Callum McGregor sent a shot from range just wide at the other end.
With both teams still searching for a breakthrough in the opening half an hour, Jack Butland pulled off an incredible save with 32 minutes on the clock at Parkhead. O’Reily and Johnston combined, with the latter finding Kyogo in the box. He managed to send a powerful low effort towards goal with Butland reacting well to deny the striker.
However, it was the home side who had the breakthrough, captain Callum McGregor played the ball into the path of Matt O’Riley on the edge of the box and he guided a left-footed strike into the bottom corner.
There was disaster for Clement’s side just a few minutes later as Maeda made his way to the byline and cut a ball back across the box, with John Lundstram’s touch taking the ball beyond Butland to double Celtic’s lead.
Rangers responded instantly with Fabio Silva and Borna Barisic combining down the left, with Barisic curling a dangerous delivery into the box with Dujon Sterling sending it towards goal with Cyriel Dessers rising well to head beyond Hart and reduce the deficit.
On the stroke of half-time, Rangers were reduced to 10 men as John Lundstram was shown a straight-red card. Following a challenge on Alistair Jonhston, the midfielder was initially shown a yellow card, but after a VAR check, Lundstram was sent up the tunnel.
At half-time, Clement made a change to his side, with Ross McCausland coming on in place of John Souttar, with Dujon Sterling moving from right-wing to centre-back.
With just five minutes played of the second-half, the home side were awarded a penalty as O’Riley went down in the box while he was being tracked by Mohamed Diomande. After a VAR check, the penalty stood and it was O’Riley who stepped up to the spot but it was saved by Jack Butland.
Clement turned to his bench again for the final half an hour as Nico Raskin and Ridvan were introduced in place of Tom Lawrence and Borna Barisic, with Scott Wright introduced shortly after for Fabio Silva as the manager looked to freshen up the attack for the remainder of the match.
Inside the final 10 minutes there was a chance for Celtic as Idah got on the end of a cross across the face of goal but it was gathered by Jack Butland.
In a final change Kemar Roofe was introduced up front in place of Cyriel Dessers.
The fourth official showed seven minutes added time as Rangers continued to search for an equaliser with Jack Butland heading into the box to attack an early corner before recovering well to get back to the other end as Idah sent a shot wide of the target.
RANGERS: Butland, Tavernier, Souttar (McCausland, 46), Davies, Barisic (Ridvan, 60), Lundstram, Diomande, Lawrence (Raskin, 60), Sterling, Silva (Wright, 75), Dessers (Roofe, 83)
Subs: McCrorie, Cantwell, Dowell, King
Celtic: Hart, Johnston (Ralston, 75), Carter-Vickers, Scales, Taylor, McGregor, O’Riley, Hatate (Iwata 80), , Forrest (Kuhn, 71), Maeda, Kyogo (Idah, 71).
Subs: Bain, Palma, Nawrocki, Bernardo, Welsh.