/* Compact touch navigation and fluid phone layouts across all pages. */
.mobile-menu-toggle{display:none}
@media(max-width:1100px){
 header{position:sticky;top:0;z-index:50}
 header .bar{min-height:76px;display:flex;flex-wrap:wrap;gap:0;justify-content:space-between;padding-top:5px;padding-bottom:5px}
 header .brand img{width:124px;height:66px}
 .mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;border:1px solid #b99c61;border-radius:4px;background:transparent;color:#fff;font:650 16px/1.2 system-ui,sans-serif;cursor:pointer}
 header .nav{display:none;width:100%;flex:0 0 100%;padding:10px 0 16px;gap:0;overflow-y:auto;overflow-x:hidden;max-height:calc(100vh - 90px);max-height:calc(100dvh - 90px);overscroll-behavior:contain}
 header.mobile-menu-open .nav{display:flex;flex-direction:column;align-items:stretch;flex-wrap:nowrap}
 header .nav>.menu{width:100%;border-bottom:1px solid #ffffff26}
 header .nav>a:not(.button),header .nav>.menu>summary{display:block;padding:14px 8px;min-height:48px;font-size:16px;white-space:normal}
 header .menu summary:after{float:right}
 header .nav .dropdown,header .nav .tour-dropdown,header .nav .multiday-menu>.dropdown{position:static;width:100%;min-width:0;max-width:100%;max-height:none;overflow:visible;margin:0 0 10px;padding:10px 14px;background:#f7f8f3;border-radius:4px;box-shadow:none}
 header .nav .dropdown a{font-size:15px;min-height:44px;padding-top:11px;padding-bottom:11px;white-space:normal;overflow-wrap:anywhere}
 header .nav .tour-link{gap:10px}
 header .nav .tour-name{min-width:0;flex:1}
 header .nav .trek-submenu summary{font-size:16px;padding:13px 3px;min-height:48px}
 header .nav .button{display:block;margin-top:14px;text-align:center;min-height:48px;padding:12px 18px}
}
@media(max-width:600px){
 body{font-size:16px;line-height:1.65}
 .wrap{padding-left:20px;padding-right:20px}
 .hero{min-height:0;padding:24px 0 32px;background-position:58% center}
 .hero .wrap{padding-top:18px;padding-bottom:18px}
 .hero h1{font-size:clamp(34px,9.5vw,48px);line-height:1.12;overflow-wrap:break-word}
 .hero p,.pagehero p{font-size:17px;line-height:1.65}
 .eyebrow{font-size:10px;letter-spacing:.14em}
 .hero .button{margin-top:12px}
 .pagehero{padding:36px 0}.pagehero h1{font-size:clamp(30px,8vw,42px);overflow-wrap:break-word}
 h2{font-size:30px}h3{font-size:23px}
 .section{padding:40px 0}.grid,.split,.detail{grid-template-columns:minmax(0,1fr)}
 .grid>*,.split>*,.detail>*,.trust-layout>*{min-width:0}
 .card,.note{padding:22px}.trust-stat{padding:26px}
 input,select,textarea{width:100%;min-width:0;font-size:16px}
 .content a,footer a,.note a{overflow-wrap:anywhere}
 .button{min-height:44px}.route-map-head{padding:18px}.route-map-head h2{font-size:25px}
 .payment-region{scroll-margin-top:90px}
}
