Preheat the oven to 350°F (190°C). Grease and line the bottom of an 8- or 9-inch round pan or one 12 x 10 pan with parchment paper. Lightly flour the sides or use nonstick spray.
Sift the dry ingredients: In a medium bowl, sift together the flour, baking powder, baking soda, cinnamon, and cardamom. Whisk to combine and set aside.
Prepare the eggs: In a small bowl, crack the eggs, remove any chalazae (white bits), then mix in the lime rind and vanilla extract. Set aside.
Cream the butter and sugar: In a large mixing bowl or stand mixer, beat butter on high speed for 1 minute until creamy. Add sugar and continue to beat for 4–5 minutes until light, pale, and fluffy. Scrape the sides and bottom halfway through.
Add eggs: Add the egg mixture one at a time, beating each for about 15 seconds until fully incorporated. Scrape down the sides again.
Alternate dry and wet: Add the flour mixture in three additions, alternating with the buttermilk. Start and end with flour. Mix just until combined. Scrape the bowl and gently fold with a spatula to ensure it’s evenly mixed. Remove the lime rind and discard.
Create the chocolate batter: Transfer half the batter to a separate bowl. Sift in cocoa powder and mix gently. Add 1–2 tablespoons of buttermilk to match the consistency of the plain batter. Mix until smooth.
Swirl the batter: Spoon both batters alternately into the prepared pans. Use a skewer or butter knife to gently swirl the two for a marble effect. Tap pans gently to release air bubbles and level the top.
Bake: Place pans on the middle rack of the oven and bake for 40–50 minutes, or until golden brown and a skewer inserted into the center comes out clean. The center should feel springy to the touch. Avoid opening the oven in the first 40 minutes.
Cool: Let the cakes rest in the pans for 10 minutes, then invert onto a wire rack. Remove the parchment and flip right-side up to cool completely before slicing.