Mark Sykes was the match-winner as Bristol City extended their unbeaten run to nine games with a 1-0 victory over Norwich at Ashton Gate in the Championship.
The hosts took a 24th-minute lead when Cameron Pring’s precise through ball found Sykes, whose low left-footed shot squirmed under the body of diving goalkeeper Angus Gunn.
From then on, the hosts defended their lead with a hugely committed performance in a closely fought encounter.
Norwich were equally spirited, but could not conjure sufficient clear openings to force an equaliser as they slipped to a second successive defeat.
Robins boss Nigel Pearson was forced into a team change, with Joe Williams replacing the injured Kal Naismith in central midfield, while opposite number David Wagner gave a start to Marcelino Nunez and selected Gunn between the posts, with Tim Krul on the bench.
Norwich looked the more threatening side up to Sykes’ goal. An early right-wing cross from Teemu Pukki drifted just wide of Max O’Leary’s far post.
Josh Sargent headed wide from a Marcelino Nunez cross and Gabriel Sara sent a low shot wide as the visitors pressed.
The hosts had attacked with promise, while lacking a final pass until Pring sent up Sykes to break the deadlock.
That gave them a lift and George Tanner sent a glancing header wide from an Alex Scott cross four minutes later.
Andrew Omobamidele headed over for Norwich from a corner and Pukki had a low drive pushed around a post by O’Leary.
But Bristol City had the final chance of a competitive first half when Nahki Wells was off target with a header from a Sykes cross.
Wagner made a change at the break, sending on Onel Hernandez for Nunez, and saw his side start the second period brightly.
Grant Hanley headed wide from a corner after 52 minutes and soon afterwards Sara’s low shot was blocked by Rob Atkinson.
Pearson responded with a double substitution, replacing Sam Bell and Wells with two of his January recruits, Anis Mehmeti and Harry Cornick, both making their Ashton Gate debuts.
The hosts then enjoyed a period of pressure without fashioning a clear chance.
It was Norwich who threatened again with 12 minutes left when Pukki had a shot blocked from a Dimitris Giannoulis cross.
But the home side should have wrapped up the points two minutes later when Cornick broke clear on to a Williams pass only to see his shot smothered by Gunn.
Norwich had the ball in the net five minutes from time, but the whistle had already blown for offside against Giannoulis before he crossed from the left.
Despite an added-time free-kick from a dangerous position and a late corner, the visitors had to leave empty-handed.