01 - Preheat oven to 350°F. Line a 12-cup muffin tin with paper liners.
02 - Whisk together flour, baking powder, baking soda, and salt in a bowl. Set aside.
03 - Beat butter and sugar in a large bowl until light and fluffy, approximately 2-3 minutes.
04 - Add eggs one at a time, beating well after each addition. Mix in vanilla, orange blossom water, and orange zest.
05 - Add half the flour mixture, followed by the milk, then remaining flour. Mix until just combined, being careful not to overmix.
06 - Divide batter evenly among cupcake liners, filling each about two-thirds full.
07 - Bake for 16-18 minutes, or until a toothpick inserted into the center comes out clean. Cool completely on a wire rack.
08 - Beat butter until smooth. Gradually add powdered sugar, orange blossom water, orange juice, and salt. Beat until fluffy, approximately 2-3 minutes.
09 - Frost cooled cupcakes and garnish with orange zest or edible flowers if desired.