Earlier quoted context omitted.
Could be ISP adoption. Some ISPs have been more progressive in ipv6 than others.
My ISP in the Netherlands (Ziggo) provides me with native IPv6 if I use their supplied router, but forces me onto IPv4 when I use theirs in bridge mode in conjunction with my own router. Still not sure why they do that.
https://www.juniper.net/documentation/en_US/junos/topics/top... (this isn't a purely Juniper thing, but they have nice diagrams on their documentation)
It's a kind of carrier grade NAT with 4over6 baked in.
Depending on the version of this they are relying on your modem to perform encap/decap of 4to6, hence when you switch to modem mode or your own router you fall back to what the network truly is... v4.
This is what the knuckle draggers at Virgin Media are contemplating apparently.
In the UK the best option for IPv6 is https://www.aa.net.uk/ but unfortunately for me the DSL speed in my area is pretty bad due to being a few KMs from the exchange.
The alternatives to all of this is to run your own Wireguard instance elsewhere on a v6 network, and tunnel the entire home network to it.