DENVER – The anatomy of a meltdown looks exactly like what took place Sunday night at a stadium known as Empower Field at Mile High.

The Vikings' performance was the opposite of empowering.

They handed the Broncos three points at the end of the first half on a platter.

They brought their own momentum to a screeching halt with a game-altering fumble in the third quarter.

They handed over easy points with an interception deep in their own territory in the fourth quarter.

And when the situation required them to win a jump ball in the end zone, the Vikings came up short.

The Vikings kept leaving the door ajar until the Broncos kicked the thing down to halt the Vikings' winning streak with a 21-20 win that should leave a bad taste with the visitors because of a wasted opportunity.

The five-game winning streak is over as the Vikings took their first loss since Justin Jefferson suffered his injury and Joshua Dobbs arrived in Minnesota to play quarterback.

They lost despite holding Denver to 2-for-12 on third down, outgaining the Broncos in yards and finishing with a 10-minute advantage in time of possession.

A game that felt in their control flip-flopped because of reappearance of their bad habits with ball security.

Dobbs' fumble on the opening possession on what should have been a penalty on a dangerous hit by safety Kareem Jackson led to a field goal.

Kevin O'Connell helped gift the Broncos three points at the end of the half. On third-and-1 from the Denver 48, O'Connell called a pass play out of shotgun and Dobbs' swing pass to Alexander Mattison went incomplete.

The Vikings were punishing the Broncos on the ground. Both Mattison and Ty Chandler averaged 5.0 yards per carry in the first half and Chandler looked especially explosive on his touches.

Why not hand the ball to him?

O'Connell compounded the issue by deciding to punt on fourth-and-1 in Denver territory. Then gunner NaJee Thompson failed to locate the ball near the goal line, allowing it to roll into the end zone.

The Broncos moved quickly into field-goal range. Russell Wilson unleashed an overthrown pass on third down. Safety Josh Metellus was in position to intercept it in the end zone, but Jerry Jeudy jarred the ball loose, giving Denver new life to convert a field goal.

Still, the Vikings regained control at 17-9 and were marching toward the end zone late in the third quarter when Mattison coughed up the ball. A score instead of a turnover could have put the game out of reach. Chandler should get more opportunities over Mattison moving forward.

Denver turned that killer turnover into three points.

Next possession, Dobbs was hit while throwing, causing the ball to flutter for an interception. The Broncos turned that takeaway into three points.

Suddenly, the Vikings were reeling. Denver had life. This is what happens when a team refuses to seize the moment.

O'Connell made a gutsy call on a fake punt from his own 31 with 9½ minutes left. A direct snap to Chandler caught the Broncos by surprise for a 31-yard gain. The Vikings needed a touchdown out of that drive. They settled for a field goal and a 20-15 lead after some conservative play calls from O'Connell inside the red zone.

Russell Wilson isn't the same Russell Wilson who used to terrorize the Vikings when he played for Seattle, but he showed that he still can make magic happen with the game on the line and little time to operate.

Wilson directed a 10-play, 75-yard drive for a go-ahead touchdown. Wilson picked on backup cornerback Mekhi Blackmon at different times in the game, and Blackmon was the closest defender to Courtland Sutton on a leaping grab in the end zone.

This one should sting. The Vikings had control until they didn't, and their self-inflicted miscues sabotaged their chances to return home with their winning streak still intact.