Borussia Dortmund put the brakes on Real Madrid's Champions League campaign with a 2-1 victory at the Signal Iduna Park.
Real began with the same makeshift backline that faced Celta Vigo at the weekend. That meant starts for Sergio Ramos at right back, youngster Raphael Varane at centre-back, and midfielder Michael Essien at left back, whilst Karim Benzema got the nod ahead of Gonzalo Higuain up front.
Dortmund started with close to a first choice line-up, Marcel Schmelzer and Mario Gotze having recovered from injuries.
Real had to make a change after just 20 minutes play, Luka Modric stepping in for the injured Sami Khedira.
Borussia then took the lead in the 36th minute. A very slack pass from Pepe was seized upon, Robert Lewandowski went through on goal, and finished emphatically.
But Real equalised just two minutes later. Mesut Ozil fired a long ball behind the Dortmund defence, and Cristiano Ronaldo, just as he did against Ajax, clipped a immaculate lob over Roman Weidenfeller.
There were chances for both teams at the beginning of the second half, Angel Di Maria shooting narrowly wide and Gotze drawing an excellent save from Iker Casillas.
But Casillas was only able to punch to the edge of the box when Gotze whipped in a 64th minute cross, and Schmelzer was there to thunder a low shot back across goal into the bottom corner.
Jose Mourinho's men won a succession of free kicks and corners but Borussia defended them stoutly. Essien had a glaring chance to equalise late on with a free header in the box, but missed the target!
Borussia Dortmund 2 Real Madrid 1
Scorers: Lewandowski 36 (BD), Ronaldo 38 (RM), Schmelzer 64 (BD)
Borussia Dortmund: Weidenfeller; Pisczek, Subotic, Hummels, Schmelzer; Kehl, Bender (Gundogan 67); Gotze (Schieber 87), Reus (Perisic 91), Grosskreutz; Lewandowski
Real Madrid: Casillas; Ramos, Pepe, Varane, Essien; Khedira (Modric 20), Xabi Alonso; Ozil, Di Maria, Ronaldo; Benzema (Higuain 73)
Ref: Kassai (HUN)