@media(max-width:650px){
 .hero-grid{padding-top:25px}.hero-copy{text-align:center}.hero-copy p{margin-left:auto;margin-right:auto}.hero-highlights{justify-content:center}
 .booking-shell{padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
 .booking-shell .booking-head,.booking-shell .mobile-booking-intro{display:none!important}
 .booking-shell .tabs{padding:5px!important;margin:0 0 12px!important;background:#f6f9fceb!important;border:1px solid #fff9!important;box-shadow:0 8px 25px #03152a35;border-radius:15px!important;gap:4px!important}
 .booking-shell .tabs button{min-height:45px!important;font-size:12px!important;background:transparent!important;color:#5f7288!important;border-radius:11px!important}.booking-shell .tabs button.active{background:#12345b!important;color:#fff!important;box-shadow:0 4px 12px #0a294633!important}
 .booking-shell .booking{padding:16px!important;background:#fff!important;border:1px solid #ffffffb3!important;border-radius:19px!important;box-shadow:0 18px 45px #020d2754!important}
 .booking-shell #searchForm{position:relative}.booking-shell #searchForm>.route-field:not(#hoursField){padding:10px 42px 10px 0!important;border:0!important;border-radius:0!important;border-bottom:1px solid #e6edf3!important;background:#fff!important;min-height:69px!important;margin:0!important;box-shadow:none!important}
 .booking-shell #searchForm>.route-field .field-icon{width:32px;height:34px;background:transparent;color:#54708c}.booking-shell #searchForm>.route-field .destination-icon{color:#eb7c29}.booking-shell #searchForm>.route-field label{color:#72869b;font-size:10px;letter-spacing:.08em}.booking-shell #searchForm>.route-field input{font-size:15px!important;font-weight:650}.booking-shell #searchForm>.route-field input::placeholder{font-size:14px!important}
 .booking-shell .route-swap{position:absolute;z-index:5;right:2px;top:49px;width:38px;height:38px;border:1px solid #dce7f0;border-radius:50%;background:#f6f9fc;color:#284e72;box-shadow:0 3px 10px #1936501c;display:grid;place-items:center;font-size:18px;line-height:1}
 .booking-shell #searchForm[data-mode="hourly"] .route-swap{display:none}
 .booking-shell #searchForm>.date-card{margin-top:12px!important}.booking-shell #searchForm>.date-card,.booking-shell #searchForm>.passengers,.booking-shell #searchForm>#hoursField{background:#f7f9fc!important;border:1px solid #e8eef4!important;border-radius:12px!important;min-height:62px!important;padding:9px 11px!important}
 .booking-shell .return-toggle{min-height:48px!important;background:#fff!important;border:1px dashed #d6e3ed!important}.booking-shell .return-toggle span{background:#f2f6fa!important}
 .booking-shell .booking-submit{margin-top:8px!important;min-height:54px!important}.booking-shell #tourSearch .field{background:#f8fafc!important}.booking-shell .date-inputs input{font-size:16px!important}
 .mobile-address-layer{position:fixed;inset:0;z-index:5000;background:#f7f9fc;color:#173754;display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:contain;padding-top:env(safe-area-inset-top)}
 .mobile-address-layer[hidden]{display:none!important}.mobile-address-header{background:#fff;padding:14px 16px 13px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #e7edf3;box-shadow:0 3px 12px #1636560b}.mobile-address-back,.mobile-address-clear{display:grid;place-items:center;flex:none;width:42px;height:42px;border:1px solid #e3ebf2;border-radius:12px;background:#f7fafc;color:#173957;font-size:21px;cursor:pointer}.mobile-address-heading{min-width:0;flex:1}.mobile-address-heading small{display:block;color:#df792b;font-size:10px;font-weight:800;letter-spacing:.1em}.mobile-address-heading strong{display:block;font-size:17px;margin-top:2px}.mobile-address-field-area{background:#fff;padding:14px 16px 6px}.mobile-address-layer .route-field{display:flex;align-items:center;flex-wrap:wrap;gap:10px;position:relative;margin:0;padding:12px!important;background:#f5f8fb;border:1px solid #e0eaf3;border-radius:13px;min-height:64px}.mobile-address-layer .field-icon{display:none}.mobile-address-layer .field-body{min-width:0;flex:1}.mobile-address-layer .field-body label{display:block;color:#70849a;font-size:11px;font-weight:750;margin-bottom:4px}.mobile-address-layer .field-body input{width:100%;min-height:25px;border:0;outline:0;background:transparent;color:#133453;font-size:16px!important;font-weight:700;padding:0}.mobile-address-layer .address-selected{display:none!important}
 .mobile-address-layer .address-suggestions{position:static!important;order:5;flex:0 0 100%;max-width:none!important;width:100%!important;max-height:45dvh!important;overflow:auto!important;border:0;border-top:1px solid #e4ecf3;border-radius:0;box-shadow:none;background:transparent;margin-top:6px}.mobile-address-layer .address-suggestions button{display:block!important;width:100%;text-align:left;background:transparent;border:0;border-bottom:1px solid #e8eef4;padding:13px 3px;color:#173754;font-size:15px;line-height:1.4;font-weight:750}.mobile-address-layer .address-suggestions small{display:block;color:#7c8e9e;font-size:12px;font-weight:500;margin-top:3px}.mobile-address-layer .address-message{padding:14px 2px;color:#74899d;font-size:13px}.mobile-address-hint{padding:15px 20px;color:#71869b;font-size:13px;line-height:1.5}.mobile-address-tools{margin-top:auto;padding:12px 16px calc(12px + env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr 1fr;gap:9px;background:#fff;border-top:1px solid #e4ebf2}.mobile-address-tools button,.mobile-map-confirm{min-height:48px;border:1px solid #dfe9f2;background:#f4f8fb;color:#214a70;border-radius:12px;font-size:12px;font-weight:750}.mobile-address-tools button span{color:#e77924;font-size:17px;margin-right:4px}.mobile-address-message{padding:8px 16px;color:#a45122;font-size:12px;min-height:18px}.mobile-address-layer button:focus-visible{outline:3px solid #f1a15d;outline-offset:2px}
}
@media(min-width:651px){.route-swap,.mobile-address-layer{display:none!important}}
@media(max-width:650px){.booking-shell #searchForm .address-selected{display:none!important}.mobile-address-tools button:disabled{opacity:.55;cursor:not-allowed;font-size:11px}}
/* Compact mobile booking card, with comfortable touch targets. */
@media(max-width:650px){
 .booking-shell{width:calc(100% - 8px)!important;max-width:430px!important;margin-inline:auto}
 .booking-shell .tabs{padding:4px!important;margin-bottom:8px!important;border-radius:13px!important;box-shadow:0 6px 18px #03152a28}
 .booking-shell .tabs button{min-height:44px!important;padding:6px 3px!important;font-size:11px!important;border-radius:10px!important}
 .booking-shell .booking{padding:11px 12px 12px!important;border-radius:16px!important;box-shadow:0 14px 36px #020d2747!important}
 .booking-shell #searchForm>.route-field:not(#hoursField){min-height:60px!important;padding:7px 42px 7px 0!important}
 .booking-shell #searchForm>.route-field .field-icon{width:29px;height:30px}.booking-shell #searchForm>.route-field input{font-size:16px!important}.booking-shell #searchForm>.route-field label{font-size:10px;margin-bottom:3px}
 .booking-shell .route-swap{top:38px;width:44px;height:44px;right:-2px;background:#f8fafc}
 .booking-shell #searchForm>.date-card{margin-top:8px!important}.booking-shell #searchForm>.date-card,.booking-shell #searchForm>.passengers,.booking-shell #searchForm>#hoursField{min-height:55px!important;margin-bottom:6px!important;padding:7px 9px!important;border-radius:11px!important}
 .booking-shell .field-icon{width:32px;height:32px;border-radius:10px}.booking-shell .return-toggle{min-height:44px!important;margin-bottom:6px!important;padding:6px 9px!important;border-radius:11px!important}.booking-shell .return-toggle span{width:30px;height:30px}
 .booking-shell .count{gap:6px}.booking-shell .count button{width:44px;height:44px}.booking-shell .booking-submit{min-height:48px!important;margin-top:5px!important;padding:12px!important;border-radius:11px!important;font-size:14px!important}.booking-shell .booking-note{font-size:10px!important;margin:7px 3px 0!important}
 .booking-shell #tourSearch .field{min-height:55px!important;margin-bottom:6px!important;padding:8px 10px!important}.booking-shell #tourSelectBtn{min-height:48px!important;padding:12px!important}
}
