Preheat oven to gas 4 and grease a 9 x 13 tin
Mix the flour, xanthan gum if using and caster sugar, then rub in the 1st lot of margarine to form 'breadcrumbs' so it is well integrated. Continue kneading to form a dough.
Press the dough into the bottom of the baking tin and prick lightly with a fork. Let rest in the fridge for 30 minutes before baking for 20 minutes. Let cool in the tin
Meanwhile add the next 100g of butter, sugar and cans of condensed milk to a pan and heat until sugar is dissolved. Then bring to the boil and simmer down for 5 mins to thicken.
Pour over the cooled shortbread and let cool and set.
Melt the chocolate in a bowl over a pan of simmering water and when the caramel layer has cooled, pour the chocolate on top.
Let everything cool and set then cut into squares
If you can't tolerate coconut, dairy or are vegan, there's a product called Vance's Foods DariFree Original Powder Gluten-Free Beverage which is potato-based. You can make evaporated milk from this, then condensed from the evaporated! Mix half a cup of it with 1 cup of water to make evapo, then to make condensed mix that with 1 cup of granulated sugar and stir over a medium heat