Routes to fake a Structure
The route/template for '/itinerary/name-of-itinerary' will be defined in the section's settings, so it's the others you need to deal with.

I'd add this route to your routes.php file:

'itinerary/(?P&lt;entrySlug&gt;[-\w]+)/(?P&lt;subpageSlug&gt;(dates-prices|gallery|etc))' =&gt; '_views/itinerary/index',


And then in '_views/itinerary/index' I'd include these conditionals:

{% if entry is not defined %}
    {% set entry = craft.entries.section('itineraries').slug(entrySlug).first() %}
{% endif %}

{% if not entry %}
    {% exit 404 %}
{% endif %}


On your subpages, the entry model object won't be available by default so you need to check whether it's defined, and if not define it.