The URL matching is set to "Begins with", so it should match the "Car details" urls, that end with /..../car/$CAR_ID/. However it seems that those are not counted in "Car details" step. Is there any other way to make Google Analytics report correct numbers for "dynamic" URLs?
This sounds a lot like a situation I recently came across.
My logic was very similar to yours:
The goal URLs contained a
? (query string) but everything before the query string was the same so I thought "starts with" would be the logical choice (and less error prone).
It turns out that URLs containing special characters require the RegEx matching.
Hope that helps!