- Mehdi Taremi (33', 70')
- Evanilson (57')
- Stephen Eustáquio (60')
FC Porto pulled off a convincing 4-0 victory away at Group B leaders Club Brugge on Wednesday and will advance to the last-16 of the Champions League after Atletico Madrid and Bayer Leverkusen drew 2-2 later in the day.
The result left Brugge, already guaranteed a top-two finish, on 10 points as Porto moved up to nine, four ahead of Atleti with only one match left to play.
The game brought Brugge's impressive run to an abrupt halt, after they had won three of their first four group games. They had not conceded a goal in Group B before Wednesday.
They looked defensively fragile and made mistakes as Porto swept to a convincing third successive victory in the group after losing their opening two matches.
Taremi missed two good early chances before tucking away the opener in the 33rd minute after a perfectly weighted through ball from captain Otavio.
Brugge won a penalty three minutes into the second half when defender David Carmo was caught by the VAR needlessly kicking out at Brugge defender Bruno Mechele as Porto cleared a corner.
Costa, who had saved two successive penalties in the Champions League, stopped Hans Vanaken's shot, but the VAR found he had moved off his line before the kick and a retake was ordered by English referee Michael Oliver.
Dutch international Noa Lang was then entrusted with the kick but Costa repeated his heroics, making a one-handed stop to keep his side's lead intact.
Porto then carved apart the Brugge defence with Evanilson snapping up a missed clearance to make it 2-0 in the 57th minute and Eustaquio adding the third three minutes later.
Taremi got his second goal of the game in the 70th minute after being unselfishly teed up by Otavio.
- Michael Oliver