Sevilla stayed on course for a third straight Europa League title by claiming a 2-2 draw against Shakhtar Donetsk in Ukraine in the first leg of their semi-final.
Unai Emery’s side are looking to become the first to win a major European competition three years in a row since Bayern Munich 40 years ago.
They had to come from behind after Vitolo’s early goal was cancelled out by Marlos and Taras Stepanenko, with Kevin Gameiro’s late penalty giving them two vital away goals.
And, given their superb home record, Sevilla will fancy their chances of reaching yet another final.
The contrast between Emery’s team at home and away is remarkable, with Sevilla managing just one win on their travels in Europe and none in the Primera Division.
But it took only six minutes for the Spaniards to take the lead in Lviv. Gameiro released Vitolo and he was allowed to turn inside by Yaroslav Rakitskiy before finding the net.
Shakhtar responded positively and David Soria saved from Marlos before the Brazilian levelled matters in the 23rd minute.
Rakitskiy made up for his error by playing a terrific ball for Marlos, who was allowed acres of space to run through and finish with aplomb.
The teams last met in Europe nine years ago when Sevilla goalkeeper Andres Palop dramatically equalised at the death, with the Spanish side going on to win the title.
Shakhtar would lift the trophy two years later but had not reached the semi-finals again until now.
Their tails were certainly up and with 35 minutes on the clock the Ukrainians took the lead.
A short corner was worked to Marlos, who swung in a cross with such pace that Stepanenko needed only to get his head on it to beat Soria.
Sevilla needed to improve after the break and they did. Daniel Carrico forced Andriy Pyatov into a save, the keeper awkwardly pushing the low drive away.
Substitute Michael Krohn-Dehli then tested Pyatov again as the pressure mounted but the visitors were dealt a blow when the Dane suffered what appeared a serious knee injury.
Gameiro thought he had equalised in the 75th minute but his celebrations were halted by an offside flag, and moments later the Frenchman shot over when well placed.
The threat was growing and Sevilla seemed certain to score when Vitolo beat Pyatov but Olexandr Kucher somehow cleared the ball over the bar from on the line with Gameiro lurking.
But, with 82 minutes on the clock, the visitors had their equaliser. Facundo Ferreyra fouled Vitolo as he tried to cut inside on the right of the box and Gameiro confidently netted the penalty.
Sevilla might have won the game but Rakitskiy produced a vital block to deny Ever Banega.