Sevilla beat Real Betis 1-0 at home in La Liga on Sunday to grab a first victory in five games in all competitions and cement their bid to finish in the top four.
Moroccan striker Youssef En-Nesyri settled the city derby in the 27th minute, latching on to a long ball by captain Jesus Navas and finding the far corner of the net from the tightest of angles.
Betis never gave in and pushed for an equaliser deep into added time but were unable to prevent a defeat which halted a four-game winning streak in the league.
Round-Up: Salzburg beat Wolfsburg as Villarreal survive Young Boys comeback; Sevilla and Lille draw
The victory tightened Sevilla's hold on fourth place in the standings as they moved on to 51 points, six clear of fifth-placed Real Sociedad and nine ahead of Betis, who were left in sixth.
It was also a therapeutic win after Julen Lopetegui's side were knocked out of the Champions League at the last 16 stage by Borussia Dortmund on Tuesday and lost a Copa del Rey semi-final tie to Barcelona the previous week.
Coronavirus restrictions prevented fans from attending what is widely seen as the most passionate derby in Spain but did not deter hundreds of Sevilla supporters giving their side a noisy reception when they arrived at the stadium.
"The team really needed the victory and we're very happy to have won such a special game and to be able to stay in the top four," said Sevilla midfielder Joan Jordan.
"Our fans came out to support us when we arrived and it was spectacular and I hope we can have our fans back as soon as possible."
Betis have had a stop-start season under Manuel Pellegrini but their recent run of form had revived hopes of qualifying for European football next season and victory here would have seen them move within three points of their neighbours.
They had a strong penalty appeal turned down when Sergio Canales was felled by Sevilla keeper Bono and had three clear chances to level in the closing stages, with striker Borja Iglesias missing their best effort from point-blank range.
‘Uproar’ in Madrid’s dressing room – Euro Papers
Moments later, Sevilla defender Diego Carlos raced to clear the ball off the line following a goalmouth scramble.
"This is a very painful defeat," said Canales.
Sociedad lost ground after being beaten 1-0 at Granada, who won thanks to German Sanchez's second-half goal.
Villarreal beat Eibar 3-1, while Celta Vigo and Athletic Bilbao played out a 0-0 draw.
Bellerin prefers Betis stay over returning to Arsenal
Celtic fall to defeat at Real Betis, Rangers also beaten, Leverkusen win, Marseille held