UEFA Europa League: Zenit 2 Sevilla 2
After scoring Sevilla's winner in a 2-1 first leg victory last week, Carlos Bacca found the net again with an early penalty in the second leg to put the La Liga side in command on Thursday.
Zenit looked short of ideas, but the Russian Premier League leaders were gifted a way back into the tie when Beto, making his return from injury, inexplicably dropped a cross and Salomon Rondon turned the ball home just after half-time.
Three-time winners Sevilla then lost composure and Zenit capitalised, with Hulk putting them in front on the night in spectacular fashion with a sensational long-range lob to seemingly take the tie into extra time.
Gameiro had the final say, though, coming off the bench to fire home five minutes from time to seal a 4-3 aggregate victory, which keeps Unai Emery's men on course to retain Europe's secondary club competition.
Bacca was preferred to Gameiro in attack and the Colombia international made the most of his inclusion when he was on target again from the penalty spot after six minutes to extend Sevilla's advantage.
Referee Nicola Rizzoli pointed to the spot after Luis Neto upended Vitolo with a rash sliding challenge and Bacca fired a fine penalty high into the top-left corner.
Zenit were stunned by that early setback and Portugal midfielder Danny was unable to restore parity when he surged into the penalty area before unleashing a shot which his compatriot Beto kept out at the near post.
The lively Bacca was denied a second goal on the night when his shot from a tight angle was bound for the back of the net after he rounded keeper Yuri Lodygin - Igor Smolnikov making a crucial intervention.
Danny, one of four Zenit players returning after sitting out the first leg due to suspension, clipped the outside of the post in stoppage time at the end of a frustrating first half for the home side.
Sevilla looked comfortable, but Beto gave Zenit a lifeline when he spilled a routine cross from Oleg Shatov and Rondon was on hand to apply a simpele finish just three minutes into the second half.
After appeared so assured in the first half, the Spanish side now looked jittery at the back and Hulk produced a moment of class 18 minute from time to embarrass Beto once again.
There seemed to be little danger when the Brazil forward picked the ball up more than 40 yards out, just in front the right touchline, and tried his luck with an audacious left-footed effort that just cleared the goalline via the underside of the crossbar.
Rondon had a chance to settle the tie, but Beto denied him on this occasion as Sevilla came under extreme late pressure.
Emery's side had been dangerous on the break all night, though, and Gameiro took a pass from Vitolo before firing into the far corner of the net to dump Zenit out and put Sevilla a step closer to the final in Warsaw on May 27.