Preheat your oven to 350°F. Lightly spray an 8-inch springform pan with nonstick spray, then line it with parchment paper and spray again.
In a medium saucepan, melt the chocolate and butter over medium-low heat, stirring until smooth. Mix in the sugar and let it cool slightly.
Add the eggs and vanilla to the chocolate mixture, whisking until combined. Sift in the flour, cocoa powder, and salt, then fold the mixture until no dry flour remains. Spread the batter in the prepared pan.
Bake for 20-25 minutes, until a toothpick comes out with a few moist crumbs. Cool the brownie completely in the pan, or chill it in the fridge for 15-20 minutes.
Make the mousse:
In a small bowl, sprinkle gelatin over water and let it sit for 5 minutes. In a medium bowl, place the semisweet chocolate.
Heat ½ cup of cream and 2 tablespoons of sugar in a small saucepan until it simmers. Remove from heat and stir in the gelatin until dissolved, then pour this over the chocolate. Whisk until smooth and let it cool to room temperature, stirring occasionally.
In a stand mixer, whip the remaining 1 cup of cream to medium-stiff peaks. Mix a third of the whipped cream into the chocolate mixture, then fold in the rest until no streaks remain. Spread the mousse over the cooled brownie layer and refrigerate.
Make the ganache:
In a saucepan, heat the cream and butter over medium-high heat until just before boiling. Pour this over the chocolate in a heatproof bowl and stir until smooth. Cool until the ganache is no longer warm.
Spread the ganache over the mousse layer and refrigerate until set, about 1 hour. Remove the pan sides and parchment paper, transfer to a serving platter, and enjoy with whipped cream or fresh berries.