/* Shared public navigation. Keep these overrides after the existing page styles. */
html{scroll-padding-top:110px}
.menu-toggle{display:none}
.site-header .nav{gap:22px;font-size:15px;flex-wrap:nowrap}
.site-header .nav a{white-space:nowrap;min-height:44px;display:flex;align-items:center}
.site-header .nav a[aria-current]{text-decoration:underline;text-underline-offset:7px;color:var(--teal)}
.site-header .nav .nav-accent{background:var(--deep);color:white;border-color:var(--deep)}
.journey-start{display:grid;grid-template-columns:1.15fr repeat(3,1fr);gap:18px;align-items:center;padding-top:24px;padding-bottom:24px}
.journey-start p{margin:0;font:24px/1.25 var(--serif)}
.journey-start p span{display:block;margin-top:6px;font:14px/1.5 var(--sans);color:var(--muted)}
.journey-start>a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px;padding:16px;border:1px solid var(--line);font-size:16px;line-height:1.35}
.journey-start>a:first-of-type{border-color:var(--teal);color:var(--teal)}
.journey-start>a:hover{background:var(--pale);border-color:var(--teal)}
.back-to-top{position:fixed;left:24px;bottom:24px;z-index:49;width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:white;color:var(--deep);box-shadow:0 3px 15px #102b3826;cursor:pointer}
.back-to-top[hidden]{display:none}
.back-to-top svg,.menu-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.back-to-top:hover{background:var(--pale)}
.mobile-trip-actions{display:none}
.site-footer{padding-bottom:76px}
@media(max-width:1100px){.site-header .brand-wordmark{width:230px}.site-header .nav{gap:14px}.journey-start{gap:12px}}
@media(max-width:960px){
 .site-header{position:sticky;top:0;z-index:60;background:white}
 .site-header .header-inner{min-height:78px;gap:12px;padding:14px 0;flex-wrap:wrap}
 .site-header .brand{flex:1;min-width:0}
 .site-header .brand-wordmark{width:220px;max-width:100%}
 .site-header .nav{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}
 .site-header .nav a{padding:12px;font-size:16px;min-height:48px}
 .site-header .nav .nav-accent{grid-column:auto;margin:0;justify-content:center}
 .site-header[data-menu-ready] .menu-toggle{display:flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:10px 13px;border:1px solid var(--line);border-radius:5px;background:white;color:var(--ink);font-size:16px;cursor:pointer}
 .site-header[data-menu-ready] .nav{display:none}
 .site-header[data-menu-ready].menu-open .nav{display:grid;position:absolute;left:0;right:0;top:100%;padding:12px 20px 20px;border-bottom:1px solid var(--line);background:white;box-shadow:0 10px 18px #102b3812;max-height:calc(100dvh - 170px);overflow-y:auto}
 .journey-start{grid-template-columns:repeat(3,1fr);padding-top:20px;padding-bottom:20px}
 .journey-start p{grid-column:1 / -1;font-size:25px}
 .journey-start p span{display:inline;margin-left:12px}
 .journey-start>a{padding:14px;min-height:56px}
 .nav .nav-accent[aria-current]{color:white}
}
@media(max-width:600px){
 html{scroll-padding-top:94px}
 .site-header .header-inner{min-height:72px;padding:12px 0}
 .site-header .brand-wordmark{width:195px}
 .site-header .nav{grid-template-columns:1fr}
 .site-header[data-menu-ready].menu-open .nav{grid-template-columns:1fr}
 .site-header .nav a{border-bottom:1px solid var(--line)}
 .journey-start{grid-template-columns:1fr 1fr;gap:10px;padding-top:20px;padding-bottom:20px}
 .journey-start p{font-size:25px;margin-bottom:4px}
 .journey-start p span{display:block;margin:5px 0 0;font-size:15px}
 .journey-start>a{font-size:15px;padding:12px;min-height:56px}
 .journey-start>a:first-of-type{grid-column:1 / -1;background:var(--deep);border-color:var(--deep);color:white}
 .mobile-trip-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:55;padding:10px max(16px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:white;border-top:1px solid var(--line)}
 .mobile-trip-actions a{display:flex;align-items:center;justify-content:center;gap:10px;min-height:46px;border:1px solid var(--teal);border-radius:5px;color:var(--teal);font-size:16px;font-weight:600}
 .mobile-trip-actions a:first-child{background:var(--deep);border-color:var(--deep);color:white}
 .back-to-top{left:16px;bottom:calc(82px + env(safe-area-inset-bottom))}
 .media-toast{bottom:calc(142px + env(safe-area-inset-bottom));z-index:56}
 .chat-launcher{right:16px;bottom:calc(82px + env(safe-area-inset-bottom));min-height:48px;font-size:14px;padding:12px 16px}
 .site-footer{padding-bottom:calc(150px + env(safe-area-inset-bottom))}
 .tour-chat{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);margin:auto}
 .enquiry-form input:not([type=checkbox]),.enquiry-form select,.enquiry-form textarea,#chat-input,#chat-handoff input,#chat-handoff textarea{font-size:16px;min-height:46px}
 .film-filters button,.film-actions button,.film-story-link,.chat-suggestions button,.chat-links a,.chat-links button{min-height:44px}
 .film-actions{flex-wrap:wrap}
 .cities a{min-height:44px;align-items:center}
 .has-enquiry-form .mobile-trip-actions,.has-enquiry-form .chat-launcher{display:none}
 .has-enquiry-form .back-to-top{bottom:calc(18px + env(safe-area-inset-bottom))}
 .has-enquiry-form .site-footer{padding-bottom:80px}
}
@media(max-width:360px){.site-header .brand-wordmark{width:168px}.site-header[data-menu-ready] .menu-toggle{padding:10px;gap:6px}.journey-start>a{font-size:14px}}
