Harry Kane gave Pep Guardiola a glimpse of what he's missing - and blew the title race wide open.
Kane scored twice - including an injury-time winner just seconds after Riyad Mahrez had dragged Manchester City level from the penalty spot - on a dramatic evening at the Etihad.
The Tottenham skipper spent the summer trying to engineer his departure from North London to join Guardiola’s champions.
But Daniel Levy stood firm - and Kane capped an outstanding performance by scoring the goal that makes City’s advantage at the top of the table much more precarious.
City still lead Liverpool by six points, but Jurgen Klopp’s men play their game in hand against Leeds this week.
All eyes will now turn to the Merseysiders’ visit to Manchester on April 9.
It has taken Kane time to get over the disappointment of not moving to City; this double takes his tally in the Premier League to just six for the season.
On this form, he is worth much more than the £100million that City wanted to pay.
He was instrumental in Dejan Kulusevski’s opener and also had another goal disallowed in the second half by VAR.
Tottenham’s victory ended a run of three successive defeats for Antonio Conte’s side - and delivered City their first defeat in 16 games.
Conte’s game-plan hinged on sitting back to frustrate the home side and punishing them on the break.
It worked to perfection.
Conte has been complaining about Tottenham’s lack of business in the transfer market.
Yet his team were ahead in the fourth minute - thanks to a player who did arrive last month.
Ruben Dias was lured into engaging Son on the halfway line and was then undone by Kane’s brilliant first-time pass into the space behind.
Son tempted Ederson from his line and squared the ball for Kulusevski to guide a shot home through Joao Cancelo’s legs.
City responded when Cancelo cut inside Pierre-Emile Hojbjerg before curling a shot over.
Then Ilkay Gundogan struck the post when he dug out a shot on the turn.
City were level in the 33rd minute.
Raheem Sterling’s cross dipped in front of Lloris as he tried to scoop it up in front of Kevin De Bruyne and when the ball slipped from his grasp, Gundogan pounced to ram it home.
Spurs had beaten the champions on the opening day of the season when Nuno Espirito Santo was manager.
And the double was on when Kane struck just before the hour.
Home fans had just started to taunt him with a chant of “Harry Kane, he wanted to be blue” when the striker’s initial switch of play found Ryan Sessegnon wide on the left.
When the ball was worked to Son, he found Kane galloping into the City box and the Spurs skipper caressed a glorious finish into the top corner.
Kane was denied another goal when Ederson raced from his line to smother his shot.
At the other end, Lloris made up for his earlier blunder by tipping behind Gundogan’s curling effort from 25 yards.
Kane found the net again when he turned sharply with Dias at his back and squeezed a shot between Ederson’s right hand and his post.
But Kulusevski had strayed a fraction offside before crossing the ball and VAR intervened.
City thought they had rescued a point in injury-time when Cristian Romero handled Bernardo Silva’s cross and referee Anthony Taylor pointed to the spot after checking the pitch-side monitor.
The home side wanted Romero to be shown a second yellow card and words were exchanged on the pitch and by Guardiola and Tottenham’s backroom staff.
Mahrez kept his cool to hammer his kick into the roof of Lloris’ net.
But there was another twist in the tale still to come.
Kulusevski’s clipped cross to the far post was delicious - and Kane was the hungriest player around.
He muscled his way beyond Kyle Walker to guide a textbook header into the corner.