Perth Glory went three points clear at the top of the A-League after a stunning comeback at Brisbane Roar, while Melbourne City moved up to fourth with a 2-1 win at home to Newcastle Jets.
Brisbane looked on track to end a six-game winless run when they led 2-0 at half-time but they collapsed to a 4-2 defeat at Suncorp Stadium on Sunday after Daniel Bowles was sent off.
Goalkeeper Liam Reddy came rushing off his line but missed the ball, allowing Adam Taggart to score his eighth A-League goal of the season to get Roar up and running.
And it was nine 12 appearances in the 40th minute, Taggart planting home a solid header after he was picked out by Eric Bautheac's right-wing corner.
But Glory got one back in the 58th minute, Neil Kilkenny drilling home a penalty after Bowles was sent off for bundling over Joel Chianese, starting the Roar collapse.
Glory captain Andy Keogh should have equalised when he beat the offside trap only to see a tame shot blocked by Jamie Young, but the goalkeeper could do nothing about a second Kilkenny penalty, sent the wrong way after Aaron Reardon was penalised for handball following a VAR review.
And in the last five minutes, Glory completed their comeback, the hapless Reardon turning a cross into his own net before Keogh headed in a Chianese cross to seal the points.
There was still time for more drama, however, as Taggart should have wrapped up his hat-trick in the last minute but hit the crossbar with a penalty after Ivan Franjic tripped the striker in the box.
What a comeback!
Down 2-0 at the break, @PerthGloryFC found the net four times in the second half! #ALeague#BRIvPER#SummerOfHeroespic.twitter.com/LHNyNliUUE— Hyundai A-League (@ALeague) January 6, 2019
In the day's earlier game at AAMI Park, Jets striker Roy O'Donovan scored for the third A-League game in a row, taking advantage of a Eugene Galekovic mistake in the fourth minute.
But the game turned on a decision from referee Kurt Ams, who gave a penalty for a handball by Ronald Vargas, showing the midfielder a second yellow card to compound the punishment.
Riley McGree converted the penalty and within five minutes City were in front, a fine 20-yard strike from Luke Brattan proving the winner for his side.
Jets, who are seventh in the table, had opportunities to snatch a draw but City held on and McGree could have added to their lead, instead striking the post.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.