If the client wants a fixed price or at least a rock solid estimate, and there are a fair number of unknowns then I have charged for a discovery phase. The promise being, they would have a document worthy of moving forward (not necessarily with me / my ad-hoc team).
Or, if they are aware of concepts like prototype or MVP you can put a price to that, but with the understanding that it's not a fully finished "final product."
Other than the initial hour (and time to do a proposal) I don't do anything for free. If they want free, that's not for me. Pro bono charity work is the only exception.