Robert Lewandowski brought Arsenal down to earth with a late winner as Borussia Dortmund recorded a 2-1 victory in Tuesday night's Champions League Group F clash at the Emirates Stadium.
The Barclays Premier League leaders had done well to fight back from going behind in the 16th minute when Henrikh Mkhitaryan drilled the ball in after Aaron Ramsey had given away possession on the edge of his own penalty area.
Olivier Giroud's close-range strike sent the teams into the break on level terms, before substitute Santi Cazorla sent a 20-yard effort against the woodwork.
However, all of the Gunners' efforts were undone as Dortmund - last season's beaten Champions League finalists - netted with just eight minutes left on the counter-attack through Lewandowski to ruin Arsene Wenger's 64th birthday and leave the Gunners still with work to do to qualify for the knock-out stages.
Dortmund had looked lively from the kick-off, with Marco Reus supporting Poland forward Lewandowski as manager Jurgen Klopp watched on from the stands serving his UEFA touchline ban.
And it was no real surprise when the Germans took the lead.
Ramsey was hustled out of possession by Reus on the edge of his own penalty area, with the ball fed to Lewandowski.
The Pole played in Mkhitaryan, who smashed a low shot past Wojciech Szczesny from 15 yards.
Arsenal, who moved clear at the top of the Premier League with a 4-1 win over Norwich on Saturday, were used to having it very much their own way this season and faced perhaps the first real test of character.
Giroud showed great strength to out-muscle full-back Marcel Schmelzer and win the ball on the nearside touchline, before cutting back towards the Dortmund box where he was unceremoniously upended by Mats Hummels.
The assistant referee behind the goal was well positioned to correctly signal a free-kick just outside the box, which Laurent Koscielny headed over from Mesut Ozil's delivery.
Tomas Rosicky clipped a ball through for Jack Wilshere to run on to, but it was just too far ahead of the England man.
However, Wilshere landed awkwardly on his ankle, and immediately fell to the ground before needing treatment off the pitch.
He was back on soon enough, but still not moving freely.
Arsenal continued to be patient, often allowing Dortmund long spells of possession.
When the ball broke to Giroud on the left, his cutback was fired goalwards by Rosicky, but Hummels cleared off the line.
Arsenal, though, were level five minutes before the break.
Ramsey brought the ball forwards and fed Bacary Sagna on the overlap.
His cross in behind the defence caught out Neven Subotic and goalkeeper Roman Weidenfeller, with the mix-up allowing Giroud to smash the loose ball into the net.
Wilshere looked to have shrugged off any problems as he emerged for the second half.
The match remained delicately balanced as both sides held good periods of possession, but lacked a decisive ball in the final third.
After 58 minutes, Wilshere was replaced by Cazorla, before Dortmund - coached from the technical area by assistant Zeljko Buvac - made a double change as Pierre-Emerick Aubameyang and Jonas Hofmann came on for Jakub Blaszczykowski and Mkhitaryan.
Lewandowski was somewhat fortunate to only be shown a yellow card by Sweden referee Jonas Eiksson when he clashed with Koscielny, and looked to have caught the defender with a stray elbow.
Arsenal were within inches of taking the lead when Cazorla's curled effort from 20 yards struck the angle of post and crossbar with the keeper beaten.
Dortmund, though, hit Arsenal on the counter attack with eight minutes left.
The ball was played out to right-back Kevin Grosskreutz on the overlap and his deep cross drifted over towards the far post, where Lewandowski arrived on queue to sweep it past countryman Szczesny.
With Napoli winning in Marseille, the Gunners are now locked in a three-way scrap for qualification - and will need a better result when they travel to German in two weeks' time.