Translating addresses alone still costs one public IP per device. Adding port numbers is what lets hundreds of them share just one.
"NAT" gets used as a catch-all term for how a router lets a private network reach the internet, but the router in your office or your home almost certainly isn't running the mechanism the name literally describes. Basic Network Address Translation — one private IP rewritten to one public IP — still needs roughly as many public addresses as it has devices. The thing that actually lets an entire building share a single public IP is a more specific mechanism, Port Address Translation, and the difference between the two is not just naming trivia — it's the whole reason IPv4 hasn't run out for home and office networks the way the raw math of a 32-bit address space would suggest it should have.