An opportunist hat-trick from captain Raul helped Real Madrid to a 4-2 comeback win at Sevilla which cut Barcelona's lead at the top of the Primera Liga standings to four points.

Third-placed Sevilla went ahead in the 17th minute when midfielder Renato nipped in front of his marker to score from close range before Raul turned in a low cross from Christoph Metzelder just before half-time.

The 31-year-old striker hooked in a deflected cross on 63 minutes and pounced on a fumble by Sevilla goalkeeper Andres Palop to make it 3-1 three minutes later.

Substitute Diego Capel pulled one back with just under 10 minutes left before Marcelo raced clear to score Real's fourth and seal their 16th win in 17 matches since a 2-0 defeat at Barca's Camp Nou in December.