I'm obviously on my own here, but I don't see why the client should pay for the hotel at all? I often take extended evening and dinner bookings and my fees are set to cover the costs which I incur when accepting these bookings - if I can't spare fifty quid or so for a budget room out of the fee for a lengthy appointment (which is going to be ?400 at the very least) then I wouldn't do them. What arrangements I make get to a booking and what I do after I leave it are nobody's concern but my own - I would only expect the client to pay for things that came up during the paid time (dinner, drinks, gig tickets or whatever).
I do have a minimum booking duration based on distance, which applies anywhere outside my home town and works on a sliding scale depending on the time it takes me to get there (and also the time of day - I don't drive either and if I can't get a driver I have to leave early too, so I do sympathise about the trains stopping early) but I would never have the nerve to start asking for more money on top of this. I have plenty of clients who regularly travel on business to meet customers and it is their own company which pays for the hotel - to expect their customers to be responsible for this (or to even know where they were staying) would be ridiculous.
I do agree that a deposit is necessary and also that this is all hypothetical as this one is clearly a fantasist anyway (and please also
read this thread, just in case), but this should come out of the fee IMO, not be added on. Anybody can charge what they want for anything, but if you are going to charge people extra for travel and so on, I would recommend making it very clear on your site.