Norwich's Championship title challenge suffered a hammer blow as they slipped to a 3-1 defeat away at Preston.
Goals from Ben Davies, Paul Gallagher and Sean Maguire secured a hard-earned three points for Alex Neil's side and ended the Canaries' six-game unbeaten run in the league.
Norwich now slip down to second place in the table, with Preston up to 13th as they extended their own unbeaten run to six games with victory at Deepdale.
The Lilywhites flew out of the blocks in front of a loud home crowd and went ahead when Davies crashed home a header from Gallagher's free-kick after just two minutes.
The away side were quick to respond, Teemu Pukki forcing former Norwich player Declan Rudd into a smart save after 10 minutes, with Darnell Fisher on hand to hack the loose ball clear.
The hosts were inches away from extending their lead after 18 minutes, but Brad Potts' effort from the edge of the area cannoned back off the crossbar.
Neil's side did not have to wait long for another chance, though, as Gallagher netted from the spot in the 24th minute after Emiliano Buendia tripped Fisher.
Norwich were presented with a great chance to get back into the game after 33 minutes as Ben Pearson conceded a penalty for a reckless challenge on Onel Hernandez - but Rudd made a fine save to deny Marco Stiepermann from the resulting spot-kick.
The visitors immediately upped the tempo after the break, with Rudd called into action to bravely deny Stiepermann just 60 seconds after the restart.
Daniel Farke's team continued to push for a route back into the contest in the early stages of the second half, with Rudd again denying Pukki after the Finland international was played through.
Rudd was in inspired form against his old side as the Canaries peppered his goal, and the former England U21 international produced his finest save of the match after 66 minutes, tipping Ben Godfrey's header over the bar.
Maguire then put the game beyond Norwich after 69 minutes, latching onto a loose ball inside the area and hammering home a left-footed strike from 15 yards for his first goal of the season.
Norwich continued to push for a consolation goal in the dying stages, with Stiepermann and Pukki both coming close, and the latter netted a scrambled close-range effort in added time.
Alex Neil: "It was an incredible performance from us. Our start was going to be absolutely crucial, we know Norwich like to pass the ball, and we knew we had to get after them.
"Norwich have come here having lost something like one game in their last 20, but they came up against a team tonight that was hungrier than them and I think we deserved the win."
Daniel Farke: "We are unbelievably disappointed to lose this game and we should not have lost. When you look at the game, we won all of the statistics, the amount of shots and possession.
"But in the end unfortunately we did not win the result. The penalty we conceded in the first half was not a penalty, and from that point we had to try and turn it around, which was hard. We did have a lot of chances to score and we created a lot in the second half. We know that games in this league are very tight and we have to try and use situations like the penalty to our advantage."