Thanks for the response Steven. I didn’t use your approach, but it did lead me in the right direction. Instead, I’ve just edited the card.php file and added is_user_logged_in() condition on any fields I wanted to FORCE to be private. For example, we always want phone numbers to be private, and sometimes forget to check the radio box for private. So I changed this:
if ( $atts['show_phone_numbers'] )
To be this:
if ( $atts['show_phone_numbers'] && is_user_logged_in() )
That seemed to do the trick!