A brilliant goal by Brahim Diaz handed Real Madrid the advantage following the first leg of their Champions League last-16 meeting with RB Leipzig.
Diaz curled a superb finish into the top corner three minutes after half-time to give Real the win in Germany.
The Spanish midfielder started in place of Jude Bellingham, who missed the game due to injury.
His goal puts Real in a good position to reach the quarter-finals for the 12th time in the past 14 seasons.
Leipzig frustrated Real until the 48th minute, when former Manchester City midfielder Diaz turned on the right touchline and beat two players, before dancing past several others and curling the ball into the top corner.
The Spaniards could not add to their score however, coming closest when Vinicius Jr struck the outside of the post having been set through by the impressive Diaz.
They were also grateful to goalkeeper Andriy Lunin - who kept a clean sheet despite Leipzig having nine shots on target - and for the decision to disallow Benjamin Sesko's second-minute header.
Real host the second leg at Santiago Bernabeu on 6 March.
Diaz steps up in Bellingham absence
The 14-time European champions are packed full of world-class talent but they clearly miss Bellingham, who suffered a sprained ankle in their 4-0 La Liga victory over Girona on Saturday.
The England midfielder had either scored or assisted in all five of his Champions League appearances for Real so far and has been involved in seven goals, more than any other player in the group stage.
Without him, Real lacked fluency in attack in the first half although Diaz, who replaced Bellingham in the attacking midfield role, showed quality and industry throughout before brilliantly providing the breakthrough.
Diaz further replicated Bellingham with his celebration, copying his team-mate in standing with arms wide after scoring. It earned the approval of the England international too, who posted "oh my god Brahim!" on X in response.
There was late concern for Real however as Diaz was forced off in the final minutes with a serious-looking calf injury.
Diaz's goal was a moment of magic in an uneven performance from Real - Leipzig created plenty of chances and could easily have taken at least a draw, while Sesko could have had a hat-trick in the opening 10 minutes.
Leipzig industrious but wasteful
After Dani Carvajal played a loose pass out for corner after two minutes, Sesko headed home the second ball but had his effort ruled out as Benjamin Henrichs was judged to be offside and impeding goalkeeper Lunin.
Immediately after, the tall Slovenian striker could not quite make contact with a lofted through ball, before he was denied one-on-one by the legs of Lunin.
Lunin was forced into action late on too, making a series of solid stops from Xavi Simons, Sesko and Amadou Haidara as the hosts pressed for an equaliser.
The Ukrainian started this season as Real's third-choice keeper, but following Thibaut Courtois' season-ending injury he has superseded Kepa Arrizabalaga and showed why he has the trust of manager Carlo Ancelotti with this display.
Real's frustrations were summed up by Carvajal, who was lucky to escape a booking for scything down Simons in the first half before finally being carded in the second having almost constantly complained to the officials.
Leipzig had started as clear underdogs - they were beaten twice by Manchester City in the group stage and are 18 points behind leaders Bayer Leverkusen in the Bundesliga - but came into this game with a plan.
They came into the game level with Real for the most scored goals on the break in the group stage as well as producing most shots from counter-attacks, and Leipzig looked to take the most of those circumstances here.
Leipzig's deep defence mostly did a good job of restricting Real, but they could do nothing to keep out Diaz's strike and were grateful to the woodwork for keeping the tie alive.
Source: BBC
BDST: 0948 HRS, FEB 14, 2024
SMS