Manchester City were held to a VAR-filled, frustrating 0-0 draw against a dogged Southampton side on Saturday afternoon.
From the first whistle, Southampton's brave and well-drilled high block bottlenecked the ball into Manchester City's defensive third, frustrating the hosts as they denied them any shots in the opening 20 minutes.
City gradually grew into the contest, cautiously picking their way through the Saints at even the slightest hint of a misstep but looked disjointed and jaded until the major flashpoint of the match an hour in.
Kyle Walker, caught on the ball while looking for a passing lane that was invariably blocked, rashly hooked his leg around Adam Armstrong in City's penalty area. After a pitch-side video review, City's fullback had a red card and penalty overturned.
Yet, rather than sparked into life, Pep Guardiola's side continue to struggle for a clear opening before falling foul of VAR themselves as Raheem Sterling had a 91st-minute winner denied by a narrow offside.
In a damning indictment of City's attacking bluntness, Phil Foden's header in the build up to Sterling's disallowed goal was the home side's only shot on target of the match.
Man City player ratings
1. Goalkeeper & defenders
Ederson (GK) - 6/10 - Stepping out almost alongside his centre backs to aid in City's build up, Ederson wasn't forced to often touch the ball with his gloves.
Kyle Walker (RB) - 5/10 - VAR may have spared Walker's blushes but the penalty incident was of his own making.
Ruben Dias (CB) - 6/10 - Given a testing afternoon by Southampton's buzzing forwards.
Nathan Ake (CB) - 8/10 - Just three days after his father passed away, that Ake even made himself available for selection, let alone the controlled and composed performance he delivered, is remarkable.
Joao Cancelo (LB) - 5/10 - A little too eager to force the opening with a defensive splitting pass that never quite came off.
Ilkay Gundogan (CM) - 6/10 - Making a steady slew of surges into Southampton's box, Gundogan could and perhaps should have put City ahead in the first half with a close range header.
Fernandinho (CM) - 4/10 - In an unusually staccato and uncontrolled performance, Fernandinho never looks comfortable when made to run back towards his own goal.
Bernardo Silva (CM) - 5/10 - Only fleetingly floated into those menacing pockets of space that may have helped City shift up the pitch.
Gabriel Jesus (RW) - 4/10 - Starting the game in his newly favoured wide role, Jesus clearly didn't sufficiently impress on the right and was only given 20 minutes through the middle before making way in the second half.
Raheem Sterling (ST) - 5/10 - On his 200th Premier League appearance, Sterling selflessly darted around the top of the pitch but was starved of service.
Jack Grealish (LW) - 7/10 - Having rapidly established he had the beating of Southampton's right back, City's £100m-man repeatedly skipped down the touchline but couldn't force the opening.
Kevin De Bruyne (CM) - 5/10
Riyad Mahrez (RW) - N/A
Phil Foden (CM) - N/A
Southampton player ratings
5. Goalkeeper & defenders
Alex McCarthy (GK) - 8/10 - Following 90 minutes without a save to make, McCarthy produced a stunning stop right at the death.
Tino Livramento (RB) - 5/10 - Struggled against Grealish but caused Cancelo plenty of problems going the other way.
Jack Stephens (CB) - 6/10 - Limped out of the game (and a long way around the pitch) before half-time.
Jan Bednarek (CB) - 7/10 - In his first Premier League start of the season, Bednarek managed to contend with City's feared front line pretty comfortably.
Kyle Walker-Peters (LB) - 7/10 - Shoehorned into the side in an unfamiliar position, Walker-Peters pushed forward regularly and kept Jesus quiet.
Nathan Redmond (RM) - 5/10 - Regularly swapping flanks with his other winger, Redmond didn't make a particularly compelling case for a repeat of Pep Guardiola's praise assault.
James Ward-Prowse (CM) - 7/10 - In his 100th consecutive Premier League appearance Southampton's skipper assuredly marshalled his boldly advanced midfield.
Oriol Romeu (CM) - 7/10 - Snapping in challenges all over the pitch, Romeu's industry was pivotal to Saturday's point.
Mohamed Elyounoussi (LM) - 6/10 - Charging around the pitch with a contagious enthusiasm, the Norwegian international didn't win every challenge, but gamely contested plenty of them.
Che Adams (ST) - 4/10 - Painfully anonymous throughout, Adams had almost half as many touches as City's goalkeeper Ederson (19) before he was replaced.
Adam Armstrong (ST) - 7/10 - Razor sharp in the final third, Armstrong proved a constant thorn in the side of City's centre backs though couldn't add to his goal tally.
Mohammed Salisu (CB) - 7/10 - Stepping in for the ailing Stephens early on, Salisu swiftly caught up with the (albeit tame) tempo of the game.
Armando Broja (ST) - N/A
Romain Perraud (LB) - N/A