It's not that they can't. They don't because you're forced to engage with them and it gives them an opportunity to get a salesperson to give you the whole sales pitch and possibly upsell in the process.
This is exactly it. And any salesman worth their salt will lead with a question about your budget or how much you'd like to spend so they can know how much they can gouge you
It's usually wholesale. I run a retail store with prices. And hide wholesale prices on the other store as these prises are reserved for logged in retailers. Some retailers have different wholesale prices to other retailers so it's good to keep prices hidden