Make the syrup first. Add sugar, water, and citrus peels to a small pot.
Bring to a gentle boil, then lower heat and simmer for 8–10 minutes until slightly thickened. Stir in lemon juice, remove from heat, and let it cool completely. Discard peels before using.
Heat the oven. Preheat to 350°F (175°C).
Grease a 9x13-inch (23x33 cm) baking pan and line the bottom with parchment for easy release.
Whisk the wet ingredients. In a large bowl, whisk eggs and sugar for 2 minutes until pale and a bit frothy. Add oil, yogurt, vanilla, and lemon zest. Whisk until smooth.
Combine dry ingredients. In a separate bowl, mix semolina, flour, baking powder, and salt.
Bring it together. Add dry ingredients to the wet mixture.
Whisk gently until just combined. The batter will be pourable and slightly grainy from the semolina.
Bake. Pour batter into the prepared pan and smooth the top. Bake for 25–30 minutes, or until the top is golden and a toothpick comes out clean.
Syrup meet cake. Let the cake rest for 5 minutes, then cut it into squares or diamonds in the pan.
Slowly pour the cooled syrup evenly over the warm cake. It will look like a lot, but the cake will drink it up.
Rest and garnish. Let the cake sit at room temperature for at least 1 hour to absorb the syrup fully. Sprinkle with coconut or pistachios if you like.
Serve. Enjoy at room temperature or slightly chilled.
The flavor improves after a few hours.