This is an old question, and things have changed since it was asked. Things will change going forward as the 'sandbox' concept and Pardot are under active development.
When asked, it was possible to change which CRM org a Pardot instance was connected to. This is becoming less common as the new V2 connector and Multiple Business Units make Pardot instances and CRM instances more tightly coupled and immutable. When people said 'Pardot Sandbox' what they where referring to was technically a Pardot Training Environment, which is a feature limited production org.
There is now "Pardot Sandboxes", which is a seperate type of Pardot instance.
Pardot 'sandboxes' can currently be created from within CRM sandboxes that have been refreshed from CRM production orgs that have had a Pardot instance provisioned against them. (Some nuance with that which is likely to change, so I will leave it at this)
This suggests currently that Pardot Production to CRM Production should come first. But maybe not become well configured until we have had a chance to do the sandbox process which most Salesforce admins have in their head as best practice.
Pardot Sandboxes are iterating nearly every release right now, so if this is an older answer when you are reading it, the rules likely have changed.