Lamine Yamal became the youngest goalscorer in European Championship history as Spain beat France in an absorbing contest to reach the final of Euro 2024.
After Randal Kolo Muani headed in Kylian Mbappe's cross to give France an early lead, Yamal curled home a stunning strike from outside the box to write his name into the record books by scoring at the age of 16 years and 362 days.
Yamal's goal came in the 21st minute, and Spain were ahead just four minutes later as Dani Olmo's shot was turned home by France defender Jules Kounde.
France had to come out fighting after a thrilling first half - and they did just that, with Aurelien Tchouameni having a header saved and Mbappe denied from an ambitious effort.
The France captain, playing without a face mask for the first time since breaking his nose at the start of the tournament, had a big chance to equalise late on - but he shot high over the bar in a moment that summed up his recent form.
While Spain have been the most attacking side at the tournament to date, here they showed they have the defence to match as they stayed on course for a fourth European Championship title.
France, for their part, came up short in attack against a side that will take some stopping when they face either England or the Netherlands in Sunday's final.