A magnificent hat-trick from Cristiano Ronaldo, including two in the dying moments of the game, lifted Portugal to a 3-1 victory over Switzerland in Porto and a place in the Nations League final.
Ronaldo's free-kick opened the scoring midway through the first-half, but the Swiss leveled when the referee overturned his decision to award Portugal a penalty to give a spot-kick at the other end after a VAR review, and Ricardo Rodriguez converted.
The game seemed destined to head for extra-time, but as ever Ronaldo stepped up to be the hero with two expert finishes in the final two minutes.
The Juventus striker converted a cross from Bernardo Silva two minutes from time to put Portugal in front and promptly converted a counter-attack to secure the final berth against either Netherlands or England, who will face off in the second semi-final Thursday. The final will be played Sunday in Porto.
The Swiss team was made to pay for several spurned chances throughout the tie and must settle for third or fourth, decided against the loser of the other semi, in Guimaraes before the final.