League Two leaders Lincoln's six-game unbeaten run ended with a shock 2-1 defeat at lowly Crewe as Chris Porter and James Jones netted second-half goals.
Porter marked his recall to the home attack when he headed home in the 47th minute and Jones finished a rapid move 18 minutes from time to seal Crewe's first win in four matches.
Harry Anderson netted a late consolation for City, who have a four-point lead at the top.
Porter should have had the Railwaymen ahead early on but headed Harry Pickering's cross wide from six yards.
But it set the tone for a siege of the Lincoln box with Pickering's volley palmed out of the top corner by Josh Vickers and Charlie Kirk flashing a first-time effort a yard the wrong side of the post.
Lincoln were under pressure from balls launched into their box by Crewe full-backs Pickering and Perry Ng.
They were fortunate when a delivery from Ng was only partially cleared to midfielder Jones but he blasted his volley over at the back stick.
Such was Crewe's domination in the first half, Lincoln boss Danny Cowley made an early change when replacing Bruno Andrade with Shay McCartan.
When Paul Green's 25-yard effort was finger-tipped wide by Vickers after the restart, the resulting corner produced Crewe's breakthrough with Porter flicking Pickering's delivery into the far corner.
Then Green squared for Jones to stroke home with the aid of a deflection and Ryan Wintle may have added a third only for Vickers to dash off his line to thwart the midfielder.
Anderson reduced the arrears, tapping in Lee Frecklington's pull-back deep into stoppage time, but Cowley's side deserved nothing from the game.