Philadelphia Union almost pulled of an incredible win against the Vancouver Whitecaps, only to concede a late equaliser in the MLS on Saturday.
A second-half blitz saw the Union come from 2-0 down to lead 3-2, as they struck three times in the space of eight minutes but Pedro Morales' 81st-minute penalty ensured the visiting Whitecaps took a share of the points back to Canada.
The draw ensured Vancouver remained level with FC Dallas on 21 points in the Western Conference, after the latter defeated Colorado Rapids 3-2, while Philadelphia (15 points) moved above Chicago Fire (14) into eighth in the East.
Chicago lost 3-2 to Seattle Sounders in a match that included two red cards in the first half, while Harry Schipp and Obafemi Martins both notched braces.
The Whitecaps sit fifth in the West, just behind Dallas on games won, while third-placed Colorado have 22 points.
Philadelphia were aiming for their first home win in six games at PPL Park but looked likely to suffer their third defeat in four at half-time.
Vancouver edged ahead in the 18th minute when Erik Hurtado headed Nigel Reo-Coker's cross into the net.
The goal made it five games in a row in all competitions where Hurtado has scored, with the 24-year-old left all alone by the Union's defence to leap high and send his header past Zac MacMath.
The Whitecaps led 2-0 at half-time after Hurtado cut the ball back to Nicolas Mezquida in the 42nd minute and the Uruguayan scored inside the near post.
But after a poor first half, Philadelphia exploded just after the hour mark.
In the 63rd minute, Cristian Maidana picked out Conor Casey at the near post and the powerful centre forward sent a diving header into the net and five minutes later, Vincent Nogueira teed up fellow Frenchman Sebastien Le Toux for the equaliser.
The Union completed their comeback in the 71st minute with Casey completing his brace, picking out the bottom corner of the net from the edge of the area, but the success-starved home fans were denied the win they craved when MacMath tripped Darren Mattocks in the box and Morales made no mistake from the spot.
In Utah, Portland Timbers continued their strong form with a 3-1 triumph over Real Salt Lake with Fanendo Adi scoring a double.
After Luke Mulholland gave Real the lead in the 23rd minute, Adi equalised nine minutes before half-time with a header from Diego Valeri's corner.
Adi made it four goals in three games of the Timbers just before the break, with the Nigerian striker knocking the loose ball into the net after Darlington Nagbe's initial shot had been saved, while Portland captain Will Johnson converted a penalty in the 73rd minute to secure the three points.
Real had Tony Beltran sent off in the second half as they slumped to their second loss in three matches, while the Timbers have won three of their past four and have just one defeat in their past eight fixtures.
Portland moved to within two points of Vancouver in the Western Conference, while in other results, Toronto FC defeated San Jose Earthquakes 1-0 and DC United versus Columbus Crew ended scoreless.