Preheat oven to 350°F. Line a 12-cup muffin pan with cupcake liners. Set aside.
Make the cupcake batter: In a medium bowl, whisk together the eggs, granulated sugar, brown sugar, vegetable oil and vanilla extract until combined. Set aside. In a large bowl, whisk the dry ingredients - flour, cocoa powder, baking powder, baking soda and salt until combined. Pour half of the wet ingredients over the dry ones, then half of the buttermilk. Whisk gently for 10 seconds. Add the remaining wet ingredients and buttermilk and whisk until JUST combined. Do not overmix. The batter will be quite thin.
Bake the cupcakes: Pour cupcake batter into prepared muffin pan. Fill only halfway! Otherwise, the cupcake batter will spill over the sides. Bake for 18-20 minutes or until a toothpick inserted in the center of a cupcake comes out clean. Allow to cool completely before frosting.
Make the salted caramel: Add granulated sugar and water in a small saucepan and gently stir it. Place over medium-high heat and don't touch the pan until the sugar has caramelised. The color of the mixture will change gradually, taking about 10-15 minutes. It will start transparent, then a golden color and lastly a dark amber. Do not leave the sugar unattended, once it starts changing color, it will darken quickly. Once the caramel reaches that amber color, add in cubed butter and mix energetically. Be careful - the mixture will start to bubble and rise up. Then, carefully and slowly pour heavy cream into the mixture, whisking vigorously. Take off the heat and add vanilla extract and salt. Let it cool completely at room temperature before using.
Make the salted caramel buttercream: Add butter in a medium bowl and beat on high speed using an electric mixer until doubled on volume, pale yellow and fluffy. Turn the mixer to low and slowly add powdered sugar and mix until combined. Then, beat in salted caramel and vanilla extract until fully incorporated.
Assemble the cupcakes: Using a spoon or a sharp knife, cut a circle into the center of the cupcake to create a little pocket, about ½ inch deep. Fill the cupcakes with 1 tsp salted caramel and top with the piece of cupcake you removed to seal. Repeat with all the cupcakes. Frost the cupcakes with the salted caramel buttercream however you like. I just used a spoon to spread it on top of the cupcakes. Drizzle with the rest of the salted caramel sauce.