They started strong but in the end they were hanging on.
All the twists and turns made the Steelers' 26-21 victory over Denver this afternoon at Heinz Field less than aesthetically pleasing, but the final result sure beat the alternative.
"We were far from perfect," head coach Mike Tomlin assessed. "We gotta get better. We're thankful to win in spite of it.
"We understand there's gonna be some growth in the early stages of this thing. We better make enough plays to win along the way."
The biggest play was made by strong safety Terrell Edmunds.
Edmunds' sack of Broncos backup quarterback Jeff Driskel on fourth-and-2 from the Steelers' 15-yard line with 1:51 left in the fourth quarter ended what turned out to be Denver's final possession.
The Broncos had driven from their 18 to the Steelers 15 but couldn't finish what could have been a game-stealing march.
"We were like 'we love this, let's make a play,'" Edmunds said of the mindset of the defense on fourth down. "I was the open guy to make a play."
Edmunds rushed unblocked into the Denver backfield and registered his second career sack (and first since 2018) and the Steelers' seventh on the afternoon.
Running back James Conner's subsequent 59-yard burst allowed the Steelers to run out the clock.
The Steelers stayed unbeaten at 2-0 with the decision in their home opener.
The Broncos fell to 0-2.
Denver had trailed by 14 in the first half (17-3) and by 12 with 10:01 left in regulation (26-14).
A fumble by running back Benny Snell immediately after the Steelers' punt-return team had registered a safety opened the door for the Broncos to get back in the game.
Denver eventually turned that into a 16-yard touchdown pass from Driskell to running back Melvin Gordon that brought the Broncos to within 26-21.
The Steelers offense managed just one first down in response before giving the ball back to the Broncos.
"They were special," quarterback Ben Roethlisberger said of the Steelers' defense. "They bailed us out numerous times."
Roethlisberger finished 29-for-41 passing for 311 yards and two touchdowns, but he was also intercepted once (the Broncos turned that turnover into a field goal and a 17-6 third-quarter deficit) and directed an offense that converted just two of 12 third downs.
"I didn't play well and that's on me," he said.
In the early stages it was the Steelers' defense generating the turnovers and the Steelers' offense taking advantage.
The tone was set on Denver's second possession, when Steelers outside linebacker Bud Dupree sacked quarterback Drew Lock and forced a fumble that was recovered by cornerback Mike Hilton and returned 8 yards to the Steelers' 41.
Denver lost Lock (shoulder) for the remainder of the afternoon on the play, the first of five sacks registered by the Steelers in the first half.
The Steelers' offense responded with a nine-play, 59-yard drive in 3:19 for a 7-0 lead.
The possession was extended by a conversion on third-and-10 from the Denver 20 that netted 18 yards to the Broncos' 2 on a screen from Roethlisberger to wide receiver JuJu Smith-Schuster. Conner scored on the ground on the following snap.
The formula cashed in again just before halftime, albeit not as quite as effectively.
Cornerback Joe Haden's interception of a Driskel pass that deflected off the hands of wide receiver Courtland Sutton and 24-yard return set the Steelers up at the Denver 11 with 1:58 left in the second quarter. But this time Conner lost 1 yard on third-and-1 from the Broncos' 2 and the Steelers settled for kicker Chris Boswell's 21-yard field goal and a 17-3 lead.
In between, the Steelers sprinkled in some spectacular via an 84-yard connection from Roethlisberger to rookie second-round wide receiver Chase Claypool. Roethlisberger let it fly on first-and-10 from the Steelers' 16 and Claypool hauled the ball in over rookie third-round cornerback Michael Ojemudia, managed to navigate the sideline after coming down with it and sprinted the final 47 yards into the end zone.
Boswell's extra point gave the Steelers a 14-3 lead with 6:23 left in the half.
Denver took advantage of short fields on two of its first three scoring drives.
A 36-yard punt by Dustin Colquitt and 9-yard return by Diontae Spencer started a Broncos' possession at the Steelers' 36 at the start of the second. Kicker Brandon McManus' 49-yard field goal drew Denver to within 7-3 five plays later.
Roethlisberger's first interception of the season on the Steelers' first possession of the third quarter set Denver up at the Steelers' 41. McManus' second field goal of the day, this one from 28 yards, brought the Broncos to within 17-6 with eight minutes left in the third.
And a stop by the Denver defense on fourth-and-2 from the Broncos' 35 (Roethlisberger threw incomplete for tight end Eric Ebron) turned into a six-play, 65-yard drive that ended with a 20-yard touchdown pass to tight end Noah Fant and a two-point conversion to Fant that sliced the Steelers' lead to 17-14 with 1:07 left in the third.
The Steelers countered with a 28-yard touchdown pass from Roethlisberger to wide receiver Diontae Johnson, and with a safety when Broncos punter Sam Martin fumbled a snap and the ball was eventually knocked out of the back of the end zone.
Roethlisberger broke a tie with Eli Manning and assumed sole possession of eighth place on the NFL's all-time touchdown passes list at 368.
His 311 passing yards moved him ahead of Manning and into seventh place all-time with 57,085.
Roethlisberger also tied Mike Webster for first in Steelers history in regular-season games played (220).
Game action photos from the Steelers' Week 2 game against the Denver Broncos at Heinz Field