Insight into fault-controlled hydrothermal dolomitization using reactive transport modelling