Preheat oven to 400° F. Lightly butter a 12 x 3-inch Madeleine mold. (I used non-stick baking spray with flour.)
Separate the eggs, placing the whites with a few grains of salt in a very clean bowl. Whip the egg whites to firm but not stiff peaks. Set aside.
In a large mixing bowl, beat the butter and sugar together until well blended and fluffy. Beat in the egg yolks, zest, juice, orange blossom water, and salt until smooth. Scrape down the sides of the bowl, add the flour, and beat just until combined and smooth.
Fold the whipped egg whites into the batter until completely blended in and no white is visible. The batter should be thick and very smooth.
Divide the batter evenly into 2 bowls. Using a spatula, fold the cocoa powder and vanilla into 1 of the bowls, until well blended.
Spoon equal parts of each batter into the indentations of the prepared pan, about ¾ full. Marble the 2 batters together by dragging the tip of a sharp knife through the 2 colors of batter to create a swirl pattern in each Madeleine.
Bake for about 10 minutes. Remove the pan from the oven when the center of each Madeleine is set and puffed and the edges are golden.
Allow to cool for 1–2 minutes in the mold before popping them out, using the point of a sharp knife and a gentle hand, or turning the pan over and tapping on the bottom. Cool completely on a cooling rack.