Amusingly that's how mobile/smartphones are supposedly run: the devices get IPv6-only, and if they need to hit an IPv4-only address they are CGNATed.
* https://www.internetsociety.org/resources/deploy360/2014/cas...
* https://blogs.akamai.com/2016/06/preparing-for-ipv6-only-mob...
They certainly could be using CGNAT, but that seems like a weird way to do it.
How are you able to tell with IPv4? You cannot run ifconfig on an iPhone, so how are you determining that?