Mix yeast, milk, bread flour, cake flour, salt, sugar, cold water, and butter. Knead using a stand mixer on low speed for about 5 minutes, then increase to high speed and continue kneading for 15–20 minutes until the dough is smooth and no longer sticks to the bowl.
Take a portion of the dough (300 g) and knead it with cocoa powder, adding a small amount of water. Mix until smooth, then roll into a thin sheet (2 mm). Chill until set.
Roll out the croissant dough into a flat sheet approximately 30 × 60 cm. Place the chocolate dough sheet on top, cover tightly with plastic wrap, and refrigerate for 30–45 minutes.
Roll the croissant butter (1 kg) into a 30 × 30 cm square. Place the butter sheet onto the rolled dough, cover with plastic wrap, and refrigerate for about 30 minutes. The butter and dough should both be around 5–6°C for easy lamination.
Roll the dough into a sheet about 30 cm long and fold using a single fold (letter fold). Rest in the refrigerator for 30 minutes.
Roll and fold the dough again using a double fold (book fold). Rest for 90 minutes.
Using a sharp knife, cut the laminated dough lengthwise into even strips, about 1 cm thick. Stack the strips onto the uncut dough sheet and gently press to adhere. Use a rolling pin lightly—do not press too hard to avoid damaging the layers. Roll the dough to a thickness of 3–4 mm, cut into pieces (base 10 cm, length 30 cm), roll from the base, and place into round molds as shown.
Proof for about 2 hours at 26°C. Before baking, gently press the center to create a “well” for the flan. Bake at 200°C for 14–16 minutes until almost fully baked.
Pipe flan filling into the center (25–30 g), then bake again at 160–170°C for 8–10 minutes.