Real Madrid cruised into the knockout stages of the Champions League with a 3-0 win over Braga.
After overcoming an early scare when Alvaro Djalo missed a penalty for the visitors, the 14-time European champions took the lead through Brahim Diaz in the 27th minute and then seized control early in the second half as Vinicius Junior and Rodrygo added to the score line.
A fourth win out of four in Group C, and ninth straight game at home without defeat in the Champions League, saw Real book their place in the last-16 with two games to spare.
With the hosts needing only a point to be sure of progression, Carlo Ancelotti took the opportunity to rest a number of regulars.
Jude Bellingham was on the bench after suffering a blow to the shoulder at the weekend, while David Alaba and Dani Carvajal were also among the substitutes.
It was a dramatic start to the match as Braga were awarded a penalty just four minutes in, with Lucas Vazquez pulling Cristian Borja back by the shirt and earning a yellow card for his troubles.
But Real avoided further punishment with goalkeeper Andriy Lunin equal to a weak spot-kick from Djalo.
The home side wanted a penalty of their own moments later when Rodrygo went down under a challenge from Sikou Niakate but the referee waved play on.
Diaz, who replaced Bellingham in the side, thought he had scored in the 12th minute following a mistake from Niakate, sweeping home Rodrygo’s pass, but the Brazilian was deemed guilty of a foul in the build-up.
Braga were appealing for another penalty in the 20th minute when Vazquez barged into Bruma, but the winger had already lost control of the ball as he tried to punish a wayward header from the defender.
The hosts went straight to the other end where Federico Valverde blazed over but the goal was coming and arrived in the 27th minute when Rodrygo pulled the ball back for Diaz to lift into the roof of the net.
Rodrygo had a chance to double the lead before half-time but shot straight at Matheus from the left.
— Real Madrid C.F. (@realmadriden) November 8, 2023
Diaz was close to a second 10 minutes into the second half after Vinicius cut the ball back, but his first effort was stopped by the goalkeeper and his follow-up shot blocked by Jose Fonte.
Real were turning up the heat, and the second goal came in the 58th minute as Vinicius finished off a neat move, cutting past Fonte and finding the bottom corner.
And they killed the game off three minutes later, hitting Braga on the break as Rodrygo exchanged passes with Vinicius before lifting the ball over the goalkeeper.
Braga dropped back in numbers to ensure there was no fourth on the night and almost got a goal of their own in stoppage time through Abel Ruiz’s header, which was well saved by Lunin.