Jay Stansfield scored a dramatic late winner as Blues beat Swansea City to top of the Sky Bet Championship table.
The Blues forward struck with three minutes to play, reacting quickest in the box to smash home and give Chris Davies' side a sixth win in seven games.
The home side had to weather an early storm as Swansea started brightly and they were given a golden chance to break the deadlock from the penalty spot after 11 minutes.
Alex Cochrane was adjudged to have fouled Jenson Seelt from a corner, with referee Anthony Backhouse pointing to the spot.
But Ryan Allsop did superbly to dive to his right and keep out Ross Stewart's effort with a fantastic save.
The visitors continued to threaten as Goncalo Franco headed against the post, but on 26 minutes the Swans were reduced to ten men when Marko Stamenic was sent off for a reckless challenge on Ethan Laird.
That galvanised the hosts, who went ahead three minutes later. A fine move down the right saw Patrick Roberts play in Max Bird, whose cutback was swept home by Jay Stansfield from 12 yards.
Blues upped the tempo from that point on, missing several good chances to double their lead. Swansea were grateful to Lawrence Vigouroux as he produced a fine double save to deny Liam Millar and Max Bird twice, while Stansfield also struck a post with a glancing header.
The second half saw Swansea change shape slightly and they made life difficult for Blues, and they levelled matters 20 minutes into the second half.
From Josh Tymon's corner from the right, the ball wasn't dealt with and came off Christoph Klarer for an own goal.
Blues continued to press for a winner but were often meant with dogged defending from the visitors who were defending in numbers throughout.
But the breakthrough came with three minutes to play as Demarai Gray's corner caused havoc, and as the ball bounced back in the box, Stansfield reacted quickest to fire a deflected shot past Vigouroux and send the home fans into raptures.
Blues: Ryan Allsop, Ethan Laird (Luis Vazquez, 80), Christoph Klarer (captain), Phil Neumann, Alex Cochrane, Jhon Solis (Paik Seunh-Ho, 70), Tomoki Iwata, Patrick Roberts (Carlos Vicente, 58), Liam Millar (Demarai Gray, 58), Max Bird (Marvin Ducksch, 70), Jay Stansfield.
Subs not used: Brad Mayo, Taylor Gardner-Hickman, Dael Fry, Bright Osayi-Samuel.
Goals: Stansfield (29', 87')
Swansea City: Lawrence Vigouroux, Jenson Seelt, Jay Fulton (Melker Widell, 81), Ben Cabango (captain), Marko Stamenic, Jisung Eom (Josh Key, 46), Josh Tymon, Goncalo Franco (Joseph Opoku, 86), Filip Lissah, Ross Stewart (Zan Vipotnik, 59), Moussa Yeo (Elijah Just, 59).
Subs not used: Andy Fisher, Tom Iorpenda, Adam Idah, Carter Heywood.
Goal: Klarer own goal (65')