.nav-menu { gap: clamp(.7rem, 1.4vw, 1.5rem); }
.nav-menu > li > a { display: flex; align-items: center; min-height: 48px; font-size: 13px; }
.nav-menu > .menu-item-has-children > a::after { content: ''; width: 7px; height: 7px; margin: 0 3px 4px 6px; border-right: 1.5px solid; border-bottom: 1.5px solid; transform: rotate(45deg); }
.nav-menu .sub-menu { margin-top: 0; width: 340px; max-width: 85vw; max-height: min(70vh, 620px); overflow-y: auto; padding: 10px; border-radius: 16px; box-shadow: 0 18px 48px #0f4a4020; }
.nav-menu .sub-menu a { border-radius: 8px; padding: 11px 14px; line-height: 1.5; white-space: normal; }
.nav-menu > li:last-child > .sub-menu { left: auto; right: 0; }
#mobile-menu { visibility: hidden; }
#mobile-menu.is-open { visibility: visible; }
#mobile-menu li { position: relative; list-style: none; }
#mobile-menu li > a { display: block; padding: 14px 52px 14px 0; line-height: 1.5; }
#mobile-menu .sub-menu { margin: 0; padding-left: 16px; border-left: 1px solid #e8dfd2; }
#mobile-menu .sub-menu a { padding: 11px 8px; font-size: 14px; }
.mobile-submenu-toggle { position: absolute; right: 0; top: 2px; width: 44px; height: 44px; display: grid; place-items: center; border-radius: 50%; background: #e8dfd2; color: #841641; cursor: pointer; }
.mobile-submenu-toggle svg { width: 18px; height: 18px; transition: transform .2s; }
.mobile-submenu-toggle[aria-expanded=true] svg { transform: rotate(180deg); }
.mobile-submenu-toggle:focus-visible { outline: 2px solid #841641; outline-offset: 2px; }
.tour-single-hero { height: calc(100svh - var(--travel-header-height, 80px) - var(--travel-admin-height, 0px)); min-height: 0; }
.tour-single-hero > div.relative { position: absolute; inset: 0; width: 100%; }
.tour-whatsapp { margin-top: 16px; background: #0f4a40; color: #fff; min-height: 48px; }
.tour-whatsapp:hover { background: #176c50; }
.single-tour main .travel-icon { width: 24px; height: 24px; flex-shrink: 0; }
.single-tour aside .travel-icon { width: 20px; height: 20px; }
