Linfield beat Crusaders in a stormy Belfast derby to stay one point behind leaders Cliftonville in the Irish Premiership title race.
Nathan Hanley fired the Crues into an early lead but Linfield replied through Aaron Burns and Andrew Waterworth.
Crusaders winger Paul Heatley was sent-off for kicking out at Michael Gault.
After the break, Timmy Adamson got the Crues level but Waterworth struck the winner and the Crues finished with nine men as Chris Morrow was dismissed.
Morrow's challenge on Philip Lowry in the 82nd minute earned him a straight red and was an indication of the frustration felt by the home side.
They had been reduced to 10 men three minutes before half-time following Heatley's petulant kick out at Blues skipper Gault.
Just after that Crusaders had a goal disallowed, the referee ruling that Colin Coates had leant on an opponent before heading powerfully into the net.
The result means Linfield, whose manager David Jeffrey will leave the club at the end of the season, keep up the pressure on champions Cliftonville at the top of the table.
With just three matches left, Tommy Breslin's men hold a one-point advantage over the Blues.
"It was crucial to get the three points," said striker Waterworth who celebrated his 28th birthday the day before the game.
"We let ourselves down in the 3-1 defeat by Cliftonville and were desperate to make amends.
"Crusaders is a tough place to come and get three points so we are delighted with the win which keeps us in the hunt."
Defender Hanley, who scored the opening goal with a direct free-kick, was playing the day after the funeral of his father Charlie who died earlier in the week.