When you place a booking with Marriott you're just adding an entry into a database, they're a fiction, a hotel booking isn't a thing, there is no law that governs hotel bookings. Contract law could be relevant but to enter into a contract there has to be consideration. We pay hotels, so the contract we enter into as a guest is between the guest and the hotel, not Marriott. Marriott don't need explicit terms and conditions outlining this because they benefit from the ambiguity. And until you've paid the hotel for your booking, you don't have a contract
So if I follow your thinking, since we have not paid for the stay yet, Marriott and the hotel are not obligated to fulfill the booking? But if we don't show up, we are obligated to pay for the no-show? How is it that we have obligations and they do not?