Jack Butland produced a world-class late save to seal a 1-0 Championship victory for Stoke over Bristol City at Ashton Gate.
The goalkeeper threw himself to his left on his line to block a goal-bound shot from Niclas Eliasson with an outstretched glove on 87 minutes with his side under heavy pressure.
The visitors had taken a 34th-minute lead when Bristol failed to deal with a cross into their box from the left and Joe Allen’s header fell into the path of Darren Fletcher, who had time to control the ball on his chest before lashing a left-footed volley past Max O’Leary from 10 yards.
It was not the hosts’ day as they hit the bar twice and failed to find a finish, despite dominating much of the second period.
After an opening half hour in which neither side created much, the game sprang to life, with Tom Ince latching onto an attempted clearance by Bristol defender Tomas Kalas and sending a left-footed volley narrowly wide.
The home side went straight up the other end and fashioned their first opening, Jack Hunt doing well to direct a long diagonal ball from Adam Webster across goal from the right and Famara Diedhiou striking the angle of post and crossbar with a header.
Then came Fletcher’s goal and it proved one of his last contributions as he was forced off by injury on 41 minutes, Charlie Adam going on as replacement.
Kalas had a header saved, Diedhiou sent an overhead kick wide and Callum O’Dowda had a low shot blocked as Bristol tried to get on terms before the break.
But Stoke deserved their interval lead and Bristol head coach Lee Johnson made for the dressing room before four minutes of stoppage time had collapsed, clearly with plenty to say to his men.
So it proved, as Johnson made two changes for the start of the second half, sending on Jay Dasilva at left-back and Liam Walsh in midfield to replace Lloyd Kelly and O’Dowda.
Eric Pieters stung the hands of O’Leary with a 30-yard effort before Bristol began to gain momentum. A series of promising raids saw Butland need two attempts to deal with a Walsh strike from distance.
Johnson made his third change, sending on Matty Taylor for Josh Brownhill and it was all Bristol as Jamie Paterson’s shot was parried by Butland into the path of Elliasson, who failed to control the ball with the goal at his mercy.
Diedhiou headed against the woodwork for the second time in the match and Marlon Pack’s rebound effort was cleared off the line with Stoke defending desperately.
But at the death it took a fine O’Leary save to prevent Benik Afobe increasing Stoke’s winning margin, before Butland’s heroics.