Markus Granlund had two goals and an assist, Ryan Miller made 44 saves, and the Vancouver Canucks defeated the Calgary Flames 4-2 for their sixth straight victory on Friday night.
Michael Chaput and Loui Eriksson also scored for Vancouver (20-18-3), which has its longest winning streak since December 2013.
Michael Frolik had both goals for Calgary (21-18-2), while Mikael Backlund picked up two assists. Brian Elliott stopped nine shots for the Flames, who host the Canucks in the rematch on Saturday.
The win, despite a season-low 13 shots, pushed Vancouver into the Western Conference's second wild-card spot, a point up on the idle Los Angeles Kings, and marked the first time the Canucks have found themselves in the top-8 since early November. Calgary, meanwhile, sits one point up on Vancouver in the first wild-card position.
After a frantic first period that saw the Canucks lead 2-1 despite getting outplayed, things settled down in the second until Granlund struck on the man advantage. The Vancouver winger worked hard to keep the play alive while sprawled on the ice before eventually getting the puck back and ripping his seventh of the season past Elliott's glove.
The Flames had a great chance moments earlier on a short-handed rush, but Miller stopped Deryk Engelland's effort before Mark Giordano's follow up was waved off for goalie interference.
Vancouver played the game's final 47 minutes with just five defenceman after Christopher Tanev took a shot in the back/neck area in the first period and didn't return.
The Flames, who came in having won four of their last five, held a 23-10 shot edge through two periods but Granlund, who was acquired from Calgary in a February 2016 trade, scored his second of the night and ninth overall on a slick deflection in the slot off a Nikita Tryamkin point shot at 3:18 of the third.
Frolik got a consolation goal, his second of the night, on a power play with 1:43 left in regulation.
The visitors also got back-to-back-power plays midway through the period and pushed hard, but the Canucks held the fort as Miller won his fifth straight start.
Calgary opened the scoring just 1:18 into the game after a Vancouver turnover and some poor defensive zone coverage led to a tap-in for Frolik's eighth off a feed from Backlund.
The Flames nearly went up 2-0 a few minutes later when Johnny Gaudreau flubbed a shot from a tight angle with Miller out of position after a great feed from Alex Chiasson.
Calgary put the puck in the net for a second time on a 2-on-3 short-handed rush at 8:48 when Matt Stajan walked around Canucks forward Sven Baertschi. But it was ruled Stajan interfered with Miller before Lance Bouma buried the rebound, a call that stood after Calgary challenged the play.
Vancouver finally got something positive going at 10:49 when its fourth line connected on a pretty passing play. Chaput worked a give-and-go with Jack Skille off the rush before beating Elliott, who had won his last five starts, under the blocker for his first goal with the Canucks.
Chiasson ripped a shot off the crossbar that stayed out with under seven minutes to go in the period before Tanev took a puck up high from Dougie Hamilton. Tanev, who missed 20 games with a lower-body injury before returning to the lineup Dec. 16, went straight to the locker-room and threw his gloves off as he rushed down the tunnel.
Eriksson gave Vancouver its first lead with 6:53 left in the first when his attempted saucer pass on a rush went off sliding Calgary defenceman Tyler Wotherspoon and looped over a helpless Elliott for his ninth.
Eriksson then took a pass and moved in alone late in the period, but his backhand nicked the post and stayed out to close a wild 20 minutes.