LOUISVILLE — For two quarters Saturday, Louisville sliced through North Carolina's defense with surgical precision.
With a 36-7 halftime lead, the Cardinals were on track to win a laugher.
Instead, No. 19 U of L hung on to win a 39-34 nail-biter.
Cards cornerback Andrew Johnson broke up a fourth-and-goal pass in the back of the end zone with 1:44 left to snuff Carolina's final chance.
Sign Up and Save
Get six months of free digital access to the Lexington Herald-Leader
Bryn Renner, who tied a Tar Heels record with five touchdown passes, was on target for a sixth. But Johnson was able to break up the play, raking the ball away from the hands of Erik Highsmith.
"I went up and checked him at the line," Johnson said. "I lined up on the outside and then, when the ball was snapped, I snuck back on the inside. That gave me the leverage to get under him. He can jump, so I waited for him to come down and I knocked the ball out of his hands."
Coach Charlie Strong gave a nod to the Papa John's Cardinal Stadium crowd of 53,334 for making it difficult for the Tar Heels to make checks at the line of scrimmage.
"The noise of our fans is the reason why and, at the end of the game when we had to make a play, we made that play," Strong said. "And we were able to go and somehow, somehow go get us a victory."
U of L is off to a 3-0 start for the first time since 2006, when it went 8-0 in what would be a 12-1 season.
The Cardinals scored on all six of their first-half possessions, but had only a field goal the rest of the way.
"We are not a mature enough team to go out and play well, and I told them at halftime that if we are a mature football team we would not lose our focus; we will go out and finish this game," Strong said. "It is so hard when you get a big lead and have a young football team the way we do, and (we) just did not go out there and finish the game."
Teddy Bridgewater passed for three TDs — 32 yards to Charles Gaines, 15 yards to Eli Rogers and 4 yards to Nick Heuser. Bridgewater finished 23 of 28 for 279 yards.
"The offensive line was winning up front, the running backs were running with their pads low and the wide receivers were making big plays in the passing game, so it was all just perfect execution," Bridgewater said of the first half. After that, "I just feel like we lost our tempo."
U of L's two-headed running monsters also struck as Senorise Perry tallied on a 13-yard run and Jeremy Wright went in from 12 yards. Wright ended with 114 yards on 20 carries, Perry with 86 on 16 tries.
John Wallace had the other first-half score, a 22-yard field goal. He added a 43-yarder in the third quarter.
Renner, who completed 26 of 41 passes for 363 yards, threw TD passes of 44 yards to Romar Morris in the second quarter, plus second-half strikes of 2 and 5 yards to Eric Ebron, 9 yards to Highsmith and 50 yards to Morris.
Carolina buckled down on defense in the second half.
"Coming in at halftime, we realized we really needed to step it up," said Tommy Heffernan, who led the Heels with 12 tackles. "Coach (Larry) Fedora gave a great pump-up speech. He said all he wanted us to do was to just fight and claw all you can."
Down 39-14 through three, Renner found Highsmith for a score with 12:06 left.
U of L's first punt of the game, with 8:30 left, was blocked by Morris.
Renner passed to Ebron on the next play for a 5-yard score that cut U of L's lead to 39-28 with 8:22 left.
Morris, who finished with five catches for 149 yards, turned a short screen into a 50-yard TD at 4:23.
Adrian Bushell — who led U of L with eight tackles and recovered a fumble — fumbled the ensuing kickoff away on his his 23.
The comeback ended, though, when Johnson broke up Renner's final pass.