Multi-scale experimental and computational investigation of matrix cracking evolution in carbon fiber-reinforced composites in the absence and presence of voids