Lokomotiv Moscow mounted a second-half fightback to snatch victory in the first leg of their Europa League last-32 tie with Athletic Bilbao at the Luzhniki Stadium.
The Spaniards had defied sub-zero conditions to take a deserved half-time lead thanks to a 25th-minute strike from their star teenage winger Iker Muniain.
But Lokomotiv roared back after the break with Felipe Caicedo winning a 61st-minute penalty, converted by Dennis Glushakov, before scoring the winner himself 10 minutes later.
The freezing conditions did not inhibit Athletic in the opening half as they played some eye-catching football, while a subdued Lokomotiv spurned the two good chances they had.
Markel Susaeta forced the first save from Guilherme from the edge of the area and the Brazilian goalkeeper also needed to make a two stops inside a minute to keep out Oscar de Marcos and a Fernando Llorente header.
In between time Lokomotiv's Ecuadorian striker Caicedo missed the target from close range.
Athletic deserved their lead when Muniain netted on 25 minutes after a incisive run from Susaeta.
The winger raced through the home defence and had the presence of mind to then pick out the unmarked Muniain who had time to take a touch before firing in from 12 yards.
Lokomotiv missed a great chance to level just before the break when Maicon close-range shot was tipped wide.
The hosts were level on the hour though when Caicedo was brought down in the area by Jon Aurtenetxe. Glushakov then sent Athletic goalkeeper Gorka Iraizoz the wrong way.
After being second best for long periods Lokomotiv then stole ahead on 72 minutes.
Renat Yanbayev delivered the cross which Caicedo perfectly placed into the far corner to give Iraizoz no chance.
Both sides could have scored in the closing stages with Lokomotiv denied a third by a brilliant close-range save from Iraizoz as he somehow kept out Gulashov's effort.
Guilherme then made a double stop to keep out Llorente, with his feet, before tipping a Muniain effort over at close quarters.