Text this: ICRL: independent causality representation learning for domain generalization