|Pathologically Eclectic Rubbish Lister|
I won't try to answer all of the issues here, because it would take all day.
Your first problem is here.
I don't have the detailed spec yet, but need to know how to estimate a delivery time.
If you don't have a detailed spec, it will be difficult to estimate the delivery time.
Start by deciding how much work needs to go into producing the detailed spec.
You may want to agree that development as a set of milestones, e.g. :
Clearly you need to know the capabilities of the hosting platform so that you know what tools you will be able to use.
One way to get ideas is to find a list of existing sites and get the client to give you feedback as to whether they like some of the features, or how they would like it to be different. That can often give you a more concrete feel for the detailed requirements.
These are just a few thoughts. You really need to work up a detailed list of questions to make sure that when you start, your expectations about what you are going to deliver are the same as the client's.