Prepare Pan: Line an 8x8-inch baking pan with parchment paper, leaving overhang on all sides. Lightly grease the paper with butter or cooking spray.
Mix Sugar: In a medium heavy-bottomed saucepan, combine sugar, corn syrup, and water. Stir until sugar is moistened.
1 cup granulated sugar, 1/2 cup light corn syrup, 1/4 cup water
Cook Sugar: Cook mixture over medium heat without stirring until it reaches a light amber color and registers 320°F (160°C) on a candy thermometer.
Add Cream: Remove from heat and carefully add the warmed heavy cream (mixture will bubble vigorously). Stir until smooth.
1 cup heavy cream
Cook Caramel: Return to medium-low heat and add butter pieces. Stir continuously until mixture reaches 245-248°F (118-120°C) for firm but chewy caramels.
5 tablespoons unsalted butter
Add Flavoring: Remove from heat and stir in vanilla extract and salt until incorporated.
Set Caramel: Pour caramel into the prepared pan and let cool completely at room temperature for about 3 hours, or refrigerate for 1 hour until firm.
Cut Caramels: Once firm, use parchment paper overhang to lift caramel from pan. Cut into 36 equal pieces (6 rows by 6 columns) with a sharp knife. If the knife sticks, lightly oil the blade.
Chill Caramels: Place cut caramels on a parchment-lined baking sheet and freeze for 15 minutes to firm up before dipping.
Melt Chocolate: While caramels are chilling, melt chocolate and coconut oil in a heatproof bowl set over simmering water (or in microwave in 30-second intervals), stirring until smooth.
12 ounces good-quality dark chocolate, 1 tablespoon coconut oil or neutral vegetable oil
Dip Caramels: Using a fork or dipping tool, dip each caramel piece into the melted chocolate, allowing excess to drip off. Place on parchment paper.
Add Salt: Before chocolate sets, sprinkle each piece with a few flakes of sea salt.
Set Chocolate: Allow chocolate to set completely at room temperature (about 1 hour) or refrigerate for 15-20 minutes until firm.