Tottenham moved top of the Premier League as Jose Mourinho's side claimed a hard-fought victory over Pep Guardiola's Manchester City.
City dominated in both possession and chances but goals from Son Heung-min and substitute Giovani lo Celso - 35 seconds after his introduction - sealed a fourth successive league win for Spurs.
Captain Harry Kane set up Lo Celso with his ninth assist in as many league matches midway through the second half, after Son had slotted in his ninth goal of the campaign five minutes into the contest from Tanguy Ndombele's lofted pass.
Both sides had a goal disallowed in the first half, as Kane strayed offside at the end of a sweeping team move and referee Mike Dean retrospectively penalised Gabriel Jesus for handball in the build-up to Aymeric Laporte's strike.
Spurs are two points above Chelsea and Leicester City, though the Foxes can reclaim top spot with victory over champions Liverpool at Anfield on Sunday (19:15 GMT).
Defeat leaves City 10th and eight points off the early pace - but with a game in hand.Reaction to Tottenham v Man City, plus live coverage of Saturday's Premier League action
More to follow.
How to play
Rate players out of 10 throughout or after the game. The rater will close 30 minutes after the final whistle.
Rating range key1 = Give it up10 = Pure perfection
Squad number1Player nameLloris
Squad number24Player nameAurier
Squad number4Player nameAlderweireld
Squad number15Player nameDier
Squad number3Player nameReguilón
Squad number17Player nameSissoko
Squad number5Player nameHøjbjerg
Squad number7Player nameSon Heung-Min
Squad number28Player nameNdombele
Squad number23Player nameBergwijn
Squad number10Player nameKane
Squad number14Player nameRodon
Squad number18Player nameLo Celso
Squad number27Player nameLucas Moura
Squad number31Player nameEderson
Squad number2Player nameWalker
Squad number3Player nameRúben Dias
Squad number14Player nameLaporte
Squad number27Player nameJoão Cancelo
Squad number17Player nameDe Bruyne
Squad number16Player nameRodri
Squad number20Player nameBernardo Silva
Squad number26Player nameMahrez
Squad number9Player nameGabriel Jesus
Squad number21Player nameTorres
Squad number7Player nameSterling
Squad number47Player nameFoden
Tottenham1Lloris24Aurier4AlderweireldSubstituted forRodonat 81'minutes15Dier3Reguilón17SissokoBooked at 42mins5Højbjerg7Son Heung-Min28NdombeleSubstituted forLo Celsoat 65'minutes23BergwijnSubstituted forLucas Mouraat 73'minutes10KaneBooked at 90mins
Substitutes9Bale12Hart14Rodon18Lo Celso27Lucas Moura33Davies45Alves Morais
Man City31Ederson2Walker3Rúben DiasBooked at 87mins14Laporte27Cancelo17De Bruyne16Rodri20Bernardo SilvaSubstituted forFodenat 72'minutes26MahrezSubstituted forSterlingat 72'minutes9Gabriel Jesus21TorresBooked at 88mins
Match ends, Tottenham Hotspur 2, Manchester City 0.
Second Half ends, Tottenham Hotspur 2, Manchester City 0.
Phil Foden (Manchester City) wins a free kick in the attacking half.
Foul by Pierre-Emile Højbjerg (Tottenham Hotspur).
Raheem Sterling (Manchester City) wins a free kick on the left wing.
Foul by Harry Kane (Tottenham Hotspur).
Attempt missed. João Cancelo (Manchester City) right footed shot from outside the box is high and wide to the right. Assisted by Raheem Sterling following a corner.
Corner, Manchester City. Conceded by Pierre-Emile Højbjerg.
Corner, Manchester City. Conceded by Eric Dier.
Attempt saved. Rúben Dias (Manchester City) header from the centre of the box is saved in the centre of the goal. Assisted by Kevin De Bruyne with a cross.
Harry Kane (Tottenham Hotspur) is shown the yellow card for a bad foul.
Rúben Dias (Manchester City) wins a free kick in the attacking half.
Foul by Harry Kane (Tottenham Hotspur).
Attempt blocked. Ferran Torres (Manchester City) left footed shot from the right side of the box is blocked. Assisted by João Cancelo.
Ferran Torres (Manchester City) is shown the yellow card for a bad foul.
Foul by Ferran Torres (Manchester City).
Giovani Lo Celso (Tottenham Hotspur) wins a free kick in the attacking half.
Rúben Dias (Manchester City) is shown the yellow card for a bad foul.
Foul by Rúben Dias (Manchester City).
Harry Kane (Tottenham Hotspur) wins a free kick on the left wing.
Watch Premier League football live on BBC iPlayer: Fulham v Everton - find out more here