Francesco Bagnaia has kept his 2024 MotoGP title hopes alive with victory in the Solidarity Grand Prix sprint race as championship leader Jorge Martin was third.
With 24 points splitting Martin at the head of the standings from Bagnaia, the Pramac rider needed to outscore his rival by just two points on Saturday to be crowned champion.
But Bagnaia converted pole position into his seventh sprint of the season, while team-mate Enea Bastianini mugged Martin on the last lap to demote him to third.
It means the pair go into Sunday’s grand prix split by 19 points now, with Martin needing to finish at least ninth to win the championship.
Bastianini grabbed the holeshot into Turn 1 from seventh on the grid, though Bagnaia swooped up his inside through Turn 3 to head the pack.
Martin slotted into third after the opening melee, while Pedro Acosta - who briefly ran in the podium places - lost his Tech3 GASGAS’ front fairing after contact with Marc Marquez.
Bagnaia led Bastianini by 0.4s over the line after two laps, before Martin threw his Pramac Ducati underneath him to take second into Turn 1.
Bastianini would retake second from Martin at the same place a lap later, with the pair trading the pace on the fifth tour.
Martin squeezed Bastianini to the outside of Turn 1, which brought the likes of Alex Marquez, Aleix Espargaro and Franco Morbidelli into play.
This squabbling also gave Bagnaia a 1.3s lead, which would only come down in the final laps as the reigning champion ensured his vital sprint victory.
He took the chequered flag 0.942s clear of Bastianini, who snatched second from Martin at Turn 5 on the final lap.
Espargaro was fourth on the first of the Aprilias having started second, and celebrated his penultimate MotoGP race in front of his home fans with a cooldown lap on one of his old 125cc machines.
Alex Marquez completed the top five after a late mistake at Turn 10 dropped him off the back of Bastianini.
He headed Morbidelli (Pramac), while Marc Marquez was seventh after his lap one contact with Acosta.
Marco Bezzecchi was eighth for VR46 Ducati, while Brad Binder came from 18th on the grid to take the final point in ninth ahead of Yamaha’s Fabio Quartararo.
Top Honda was Johann Zarco in 11th, while Michele Pirro won the contest of the test riders for VR46 in 21st ahead of Honda’s Stefan Bradl.
Acosta retired after after his lap one tangle with Marquez.