card type and validation