Bloom the gelatin: Sprinkle the powdered gelatin over the cold water in a small bowl.
Let it sit for 5–10 minutes until it looks spongy. This step ensures smooth, lump-free panna cotta.
Heat the dairy: In a medium saucepan, combine the cream, milk, sugar, and salt. If using a vanilla bean, add the seeds and pod now.
Warm over medium heat, stirring occasionally, until the sugar dissolves and steam rises. Do not let it boil.
Add vanilla and gelatin: Remove the pan from the heat. Stir in the vanilla extract (if not using a bean).
Add the bloomed gelatin and whisk until completely dissolved. If the gelatin doesn’t dissolve, return the pan to very low heat for 30–60 seconds, stirring gently.
Strain for silkiness: Pour the mixture through a fine-mesh sieve into a large measuring cup or bowl. This catches any undissolved bits and vanilla pod pieces.
Discard the pod if used.
Pour and chill: Divide the mixture into 6 small glasses or ramekins. Let them cool on the counter for 15 minutes, then cover and refrigerate for at least 4 hours, preferably overnight, until set with a gentle wobble.
Make the berry sauce: In a small saucepan, combine the berries, sugar, lemon juice, and zest. Cook over medium heat, stirring occasionally, until the berries release their juices and soften, about 5–8 minutes.
If you prefer a thicker sauce, stir in the cornstarch slurry and simmer 1–2 minutes more until glossy.
Adjust and cool: Taste the sauce. Add a bit more sugar or lemon to balance sweetness and tartness. Let the sauce cool to room temperature, then chill until ready to serve.
Serve: Spoon the cooled berry sauce over the chilled panna cotta.
Garnish with fresh berries or mint if you like. Serve straight from the glass or unmold onto plates by briefly dipping the ramekins in warm water and running a thin knife around the edge.