/* The header only carries its page-transition name while a page change is running (html.vt-nav, set in the
   inline head script). A permanent name would stop the Explore menu's glass blur from working. */
header{view-transition-name:none}
html.vt-nav header{view-transition-name:site-header}
/* The header's glass blur lives on a layer behind it, not on the header itself: a blurred parent
   would stop the Explore menu (inside the header) from blurring what is behind it. */
body header{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
header:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none}
.concept-home header:not(.is-scrolled):before{backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.agency-home header.is-scrolled:before{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}

/* Header "Explore" dropdown (all pages): a small glass strip of round photo icons that drop in one by one. */
.nav-explore{position:relative}
.nav-explore>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:5px;font-size:14px;white-space:nowrap;user-select:none;position:relative}
.nav-explore>summary::-webkit-details-marker{display:none}
.nav-explore>summary svg{width:13px;height:13px;transition:transform .25s}
.nav-explore[open]>summary svg{transform:rotate(180deg)}
.nav-explore>summary:after{content:'';position:absolute;bottom:-6px;left:0;right:18px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s}
.nav-explore>summary:hover:after,.nav-explore[open]>summary:after{transform:scaleX(1)}

.nav-explore-panel{position:absolute;z-index:40;top:calc(100% + 14px);left:50%;transform:translateX(-50%);display:flex;gap:0;padding:12px 8px 10px;
 background:linear-gradient(180deg,#1a3a7099,#0b22507a);border:1px solid #ffffff4d;border-radius:24px;
 box-shadow:0 18px 44px -14px #06204a80,inset 0 1px 0 #ffffff40;backdrop-filter:blur(26px) saturate(1.7);-webkit-backdrop-filter:blur(26px) saturate(1.7);animation:explore-in .2s ease-out}
header .navlinks .nav-explore-item{position:relative;display:flex;flex-direction:column;align-items:center;gap:7px;width:94px;margin:0 10px;padding:6px 2px 4px;border-radius:14px;color:#fff;text-decoration:none;white-space:normal;text-align:center;
 animation:explore-drop .34s cubic-bezier(.3,1.4,.5,1) both}
header .navlinks .nav-explore-item:nth-child(2){animation-delay:.04s}
header .navlinks .nav-explore-item:nth-child(3){animation-delay:.08s}
header .navlinks .nav-explore-item:nth-child(4){animation-delay:.12s}
header .navlinks .nav-explore-item:nth-child(5){animation-delay:.16s}
header .navlinks .nav-explore-item:hover,header .navlinks .nav-explore-item:hover *{text-decoration:none}
header .navlinks .nav-explore-item:focus-visible{outline:2px solid #2b68c4;outline-offset:0}
/* Thin glass divider between items. */
header .navlinks .nav-explore-item+.nav-explore-item:before{content:'';position:absolute;left:-11px;top:8px;bottom:8px;width:2px;background:linear-gradient(90deg,#0b225066 0 1px,#ffffff73 1px 2px);-webkit-mask-image:linear-gradient(180deg,transparent,#000 22%,#000 78%,transparent);mask-image:linear-gradient(180deg,transparent,#000 22%,#000 78%,transparent)}
.nav-explore-label{color:#fff;text-shadow:0 1px 3px #0b2250cc}

/* Glossy round photo icon */
.nav-explore-icon{position:relative;display:block;width:52px;height:52px;border-radius:50%;overflow:hidden;
 box-shadow:0 6px 14px -4px #0b2d6680,0 0 0 2px #fff,0 0 0 3px #c9d9f2;transition:transform .2s,box-shadow .2s}
.nav-explore-icon img{display:block;width:100%;height:100%;object-fit:cover}
.nav-explore-icon:after{content:'';position:absolute;inset:0;border-radius:50%;pointer-events:none;
 background:linear-gradient(160deg,#ffffffa6 0%,#ffffff26 34%,#fff0 50%),radial-gradient(circle at 50% 120%,#0b2d6640,#0000 60%)}
.nav-explore-item:hover .nav-explore-icon,.nav-explore-item:focus-visible .nav-explore-icon{transform:translateY(-2px) scale(1.06);box-shadow:0 10px 18px -4px #0b2d6699,0 0 0 2px #fff,0 0 0 3px #2b68c4}
.nav-explore-label{font-size:11.5px;line-height:1.25;font-weight:600;letter-spacing:0}

@keyframes explore-in{from{opacity:0;translate:0 -6px}}
@keyframes explore-drop{from{opacity:0;transform:translateY(-10px) scale(.85)}}

/* Phones: same strip, centred under the menu row, icons slightly smaller. */
@media(max-width:700px){
 .nav-explore{position:static}
 .nav-explore-panel{top:calc(100% - 4px);padding:10px 4px 8px;border-radius:20px;max-width:calc(100vw - 16px)}
 header .navlinks .nav-explore-item{width:68px;margin:0 6px}
 header .navlinks .nav-explore-item+.nav-explore-item:before{left:-7px}
 .nav-explore-icon{width:44px;height:44px}
 .nav-explore-label{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.nav-explore-panel,header .navlinks .nav-explore-item{animation:none}.nav-explore>summary svg,.nav-explore>summary:after,.nav-explore-icon{transition:none}}

/* Wide letter-spacing breaks Devanagari and CJK characters apart; the small section labels use it site-wide. */
:is(:lang(ne),:lang(hi),:lang(zh-CN),:lang(ja),:lang(ko)) :is(.eyebrow,.tag){letter-spacing:0!important}
/* Small phones: keep Home · Travel packages · Explore · Services · Booking on one line where the words allow. */
@media(max-width:430px){
 header .navlinks,.concept-home header .navlinks{gap:8px 11px!important}
 header .navlinks>a,header .nav-explore>summary{font-size:13px}
 header .navlinks>a.button{padding:6px 12px!important;font-size:13px}
}

/* Peak & Lake icon set (tools/icons.py): duotone navy line, light-blue fill, gold accent. */
.ic .f{fill:#d3e2fa}.ic .w{fill:#fff}.ic .g{fill:#e3a33c}
.ic .l,.ic .gl,.ic .wl{fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.ic .l{stroke:#0f3479}.ic .gl{stroke:#e3a33c;stroke-width:1.6}.ic .wl{stroke:#fff}
/* On the dark footer: light line, translucent fill. */
.pl-footer .ic .f{fill:#ffffff26}.pl-footer .ic .l{stroke:#e4eeff}.pl-footer .ic .w{fill:#0b2250}

/* Only the contact strip may carry the "contact-strip" transition name; other ".top" classes (map and chart points) must not. */
.top:not(body>.top){view-transition-name:none}

/* WhatsApp + email beside the logo (owner, 2026-09-29): two small glass rows on wide screens,
   two round glass buttons on phones. Colour follows the header (white on the photo, dark when scrolled). */
.hdr-contact{display:flex;flex-direction:column;gap:5px;margin:0 auto 0 18px;padding-left:16px;border-left:1px solid color-mix(in srgb,currentColor 28%,transparent);min-width:0}
.hdr-contact a{display:inline-flex;align-items:center;gap:7px;color:inherit;text-decoration:none;font:600 12.5px/1.2 Arial,sans-serif;letter-spacing:.2px;white-space:nowrap;opacity:.95;transition:opacity .2s,transform .2s}
.hdr-contact a:hover{opacity:1;transform:translateX(2px)}
.hdr-contact a:hover span{text-decoration:underline;text-underline-offset:3px}
.hdr-contact img,.hdr-contact svg{flex:none;width:18px;height:18px}
.hdr-contact svg{fill:#ffffff30;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
header.is-scrolled .hdr-contact svg,body:not(.concept-home) .hdr-contact svg{fill:#1a55b814;stroke:#1a55b8}
@media(max-width:1100px){.hdr-contact a{font-size:11.5px}}
@media(max-width:650px){
 .hdr-contact{flex-direction:row;gap:4px;margin-left:auto;margin-right:0;padding-left:0;border:0}
 .hdr-contact span{display:none}
 .hdr-contact a{width:28px;height:28px;justify-content:center;border-radius:50%;background:linear-gradient(145deg,#ffffff40,#ffffff14);border:1px solid #ffffff66;box-shadow:inset 0 1px 0 #ffffff80,0 4px 10px -6px #0008;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
 header.is-scrolled .hdr-contact a,body:not(.concept-home) .hdr-contact a{background:#fff;border-color:#dce5f4}
 .hdr-contact img,.hdr-contact svg{width:16px;height:16px}
 .brand small{font-size:8px;letter-spacing:.3px}
 .brand{gap:7px}
 header .lang,.concept-home header .lang{margin-left:0;max-width:72px;padding:6px 2px;font-size:11.5px}
 header nav.wrap{column-gap:6px}
}
@media(max-width:380px){.hdr-contact a{width:26px;height:26px}.hdr-contact img,.hdr-contact svg{width:15px;height:15px}header .lang,.concept-home header .lang{max-width:62px;font-size:11px}.brand small{letter-spacing:0}.brand-emblem{transform:scale(.9);margin:0 -2px}}
header nav.wrap>.brand{margin-right:0}
@media(min-width:651px){header nav.wrap>.lang{margin-left:0}}

/* ---------- Touch & motion on every page (owner, 2026-09-29: "always, on everything, start to end") ----------
   Press: anything you can tap shrinks a touch and springs back, with a soft light ripple from the finger.
   Hover (mouse only): cards and buttons lift. Scroll: blocks glide up into place as they arrive. */
:where(.button,button,.cat-chip,.hr-card,.card,.service-tile,.destination-tile,.route-card,.pk-acc>summary,.pk-drop-q>summary,.pk-day>summary,.hs-item,.navlinks>a,.hdr-contact a,.nav-explore-item,.pk-hl-tiles li,.pk-facts-bar li,.featured-trip){
 transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s ease,background-color .2s ease,filter .2s ease;-webkit-tap-highlight-color:transparent}
:where(.button,button,.cat-chip,.hr-card,.card,.service-tile,.destination-tile,.route-card,.hs-item,.navlinks>a,.hdr-contact a,.nav-explore-item,.featured-trip):active{transform:scale(.96)}
:where(.pk-acc>summary,.pk-drop-q>summary,.pk-day>summary):active{transform:scale(.985)}
@media(hover:hover) and (pointer:fine){
 :where(.blog-card,.hr-card,.card,.service-tile,.destination-tile,.route-card,.pk-hl-tiles li,.featured-trip):hover{transform:translateY(-4px);box-shadow:0 22px 40px -22px #0b2d66aa}
 :where(.button,.cat-chip):hover{transform:translateY(-2px);filter:brightness(1.05)}
}
.tap-ripple{position:absolute;border-radius:50%;pointer-events:none;background:radial-gradient(circle,#ffffffb3 0%,#ffffff40 45%,transparent 70%);transform:scale(0);opacity:1;animation:tap-ripple .6s ease-out forwards;z-index:3;mix-blend-mode:soft-light}
.tap-ripple.on-light{background:radial-gradient(circle,#1a55b840 0%,#1a55b81a 45%,transparent 70%);mix-blend-mode:normal}
@keyframes tap-ripple{to{transform:scale(1);opacity:0}}
.pl-reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease var(--pl-delay,0s),transform .7s cubic-bezier(.2,.7,.2,1) var(--pl-delay,0s)}
.pl-reveal.is-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.pl-reveal{opacity:1;transform:none;transition:none}.tap-ripple{display:none}
 :where(.button,button,.cat-chip,.hr-card,.card):active{transform:none}}

/* Phones (owner, 2026-10-08: "on the phone Home, Travel packages, Vehicles are hard to tap"): the menu becomes a grid of
   finger-sized buttons, three to a row, the page you are on filled in; same on every page, light or dark header. */
@media(max-width:700px){
 header .navlinks,.concept-home header .navlinks{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px!important;width:100%;margin:2px 0 0;padding:0}
 header .navlinks>a,header .nav-explore>summary{display:flex!important;align-items:center;justify-content:center;gap:4px;min-height:40px;margin:0;padding:6px 4px!important;border-radius:12px;
  font:700 13px/1.15 Arial,sans-serif!important;text-align:center;white-space:normal;text-decoration:none!important;color:inherit;
  background:color-mix(in srgb,currentColor 9%,transparent);border:1px solid color-mix(in srgb,currentColor 26%,transparent);transition:background .15s,transform .12s}
 header .navlinks>a:active,header .nav-explore>summary:active{transform:scale(.96);background:color-mix(in srgb,currentColor 18%,transparent)}
 header .navlinks>a[aria-current=page]{background:color-mix(in srgb,currentColor 22%,transparent);border-color:color-mix(in srgb,currentColor 55%,transparent);font-weight:800!important}
 header .nav-explore{display:block}header .nav-explore>summary{width:100%}header .nav-explore>summary:after{display:none}
 header .nav-explore[open]>summary{background:color-mix(in srgb,currentColor 22%,transparent)}
 header .navlinks>a.button{min-height:40px;padding:6px 4px!important;border-radius:12px!important;font-size:13px!important}
}

/* Phones (owner, 2026-10-08, second look): the header as before, the logo, WhatsApp, e-mail and the language at the top, plus
   one ☰ button; Booking and everything else is inside it. Only when nav.js runs (html.js-mnav); without it the 3 × 2 grid stays. */
@media(max-width:700px){
 html.js-mnav header #navlinks{display:none!important}
 html.js-mnav header .mobile{display:inline-grid!important;place-items:center;flex:none;width:44px;height:44px;margin:0 0 0 8px;padding:0;border-radius:13px;font:400 22px/1 Arial,sans-serif;color:inherit;
  background:color-mix(in srgb,currentColor 10%,transparent);border:1px solid color-mix(in srgb,currentColor 30%,transparent);cursor:pointer}
 html.js-mnav header nav.wrap{flex-wrap:nowrap;align-items:center;min-height:0!important;gap:0}
 html.js-mnav header .hdr-contact{flex:none;margin-left:auto!important}
 html.js-mnav header .hdr-contact a{flex:none}
 html.js-mnav header select.lang{flex:none;margin-left:6px!important}
}
@media(max-width:420px){
 html.js-mnav header .brand{min-width:0;gap:6px}
 html.js-mnav header .brand small{font-size:8.5px;letter-spacing:.2px;white-space:nowrap}
 html.js-mnav header .hdr-contact a{width:27px;height:27px}
 html.js-mnav header select.lang{max-width:60px;padding:5px 1px;font-size:11px}
}
@media(max-width:380px){html.js-mnav header .mobile{width:40px;height:40px;margin-left:6px;font-size:20px}}
html:not(.js-mnav) .m-wrap{display:none}
.m-wrap[hidden]{display:none}
.m-scrim{position:fixed;inset:0;z-index:80;background:#061a3a73;opacity:0;transition:opacity .25s}
.m-drawer{position:fixed;top:0;right:0;bottom:0;z-index:81;width:min(86vw,340px);overflow-y:auto;overscroll-behavior:contain;padding:calc(12px + env(safe-area-inset-top)) 14px calc(22px + env(safe-area-inset-bottom));
 background:linear-gradient(180deg,#f7faff,#eaf1fd);color:#0f2a55;box-shadow:-24px 0 44px -24px #061a3acc;transform:translateX(102%);transition:transform .3s cubic-bezier(.22,.8,.2,1)}
.m-open .m-scrim{opacity:1}.m-open .m-drawer{transform:none}
.m-dh{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 10px}
.m-dh .brand{color:#0f2a55!important;text-decoration:none}.m-dh .brand small{color:#526781!important}
.m-x{flex:none}
.m-list{display:grid;gap:4px;margin:0 0 6px}
.m-list a{display:flex;align-items:center;gap:12px;min-height:54px;padding:7px 10px;border-radius:16px;color:#0f2a55;text-decoration:none;font:700 16px/1.2 Arial,sans-serif;transition:background .15s}
.m-list a:active{background:#dfe9fb}.m-list a[aria-current=page]{background:#e1ebfb}
.m-list a small{display:block;margin-top:2px;font:600 11.5px/1.3 Arial,sans-serif;color:#526781}
.m-ic{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(150deg,#fff,#dfe9fb);box-shadow:0 8px 16px -10px #0b2d6677,inset 0 1px 0 #fff;overflow:hidden}
.m-ic svg{width:22px;height:22px;fill:none;stroke:#1a55b8;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.m-ic.ph img{width:100%;height:100%;object-fit:cover;display:block}
.m-h{margin:12px 10px 4px;font:800 11px Arial,sans-serif;letter-spacing:.7px;text-transform:uppercase;color:#526781}
.m-contact{display:grid;gap:6px;margin:10px 0 4px}
.m-c{display:flex;align-items:center;gap:10px;min-height:48px;padding:8px 12px;border-radius:14px;background:#fff;border:1px solid #dce5f4;color:#0f2a55;text-decoration:none;font:700 13.5px Arial,sans-serif;overflow-wrap:anywhere}
.m-c img,.m-c svg{flex:none;width:20px;height:20px}.m-c svg{fill:#1a55b814;stroke:#1a55b8;stroke-width:1.7}.m-c span{display:inline!important}
.m-lang{display:flex;flex-wrap:wrap;gap:6px;padding:0 4px}.m-lang button{min-height:40px;padding:6px 12px;border-radius:12px;border:1px solid #d6e2f5;background:#fff;color:#0f2a55;font:700 13px Arial,sans-serif;cursor:pointer}
.m-lang button.on{background:#0f2a55;color:#fff;border-color:#0f2a55}
@media(prefers-reduced-motion:reduce){.m-drawer,.m-scrim{transition:none}}

/* Phones: the five promises under the homepage photo as small separate cards, like the icon cards on the package pages (owner, 2026-10-08) */
@media(max-width:700px){
 .concept-home .trust-strip ul{background:none!important;box-shadow:none!important;border:0!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;gap:6px!important;padding:0 2px!important}
 .concept-home .trust-strip li{padding:10px 3px 9px!important;border-radius:16px;background:linear-gradient(160deg,#fff,#eef4ff);border:1px solid #fff;box-shadow:0 12px 22px -16px #0d356b99,inset 0 1px 0 #fff}
 .concept-home .trust-strip li+li:before{display:none!important}
 .concept-home .trust-strip .trust-ico{transform:none!important;flex:none;width:36px;height:36px;border-radius:11px}
 .concept-home .trust-strip .trust-ico svg,.concept-home .trust-strip .trust-ico img{width:22px;height:22px}
 .concept-home .trust-strip b{font-size:10.5px;line-height:1.2}
}

.m-book2{display:flex;align-items:center;justify-content:center;margin:14px 2px 4px;min-height:54px;border-radius:16px;font:800 17px Arial,sans-serif;color:#fff;text-decoration:none;
 background:linear-gradient(180deg,#3d8cf0,#1a55b8);border:1px solid #2b6fd6;box-shadow:inset 0 1px 0 #ffffff55,0 14px 26px -14px #1a55b8}
/* Every page, once you scroll (owner, 2026-10-08: "going up, the logo is not visible"): the header becomes white glass with
   dark text, like the Vehicles page; at the top it keeps each page's look. The homepage gets a dark shade at the top so the
   white logo text reads over the bright sky of the photograph. */
header.is-scrolled{background:rgba(255,255,255,.94)!important;background-image:none!important;-webkit-backdrop-filter:blur(14px) saturate(1.4)!important;backdrop-filter:blur(14px) saturate(1.4)!important;
 box-shadow:0 10px 28px -20px #0b2d66aa!important;color:#102646!important}
header.is-scrolled:before,header.is-scrolled:after{background:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
header.is-scrolled .brand,header.is-scrolled .brand span,header.is-scrolled .brand small,header.is-scrolled .navlinks>a:not(.button),header.is-scrolled .nav-explore>summary,header.is-scrolled .hdr-contact a,header.is-scrolled .mobile{color:#102646!important;text-shadow:none!important}
header.is-scrolled select.lang{color:#102646!important;background-color:#fff!important;border-color:#cfdcf0!important}
.concept-home header:not(.is-scrolled){background-image:linear-gradient(180deg,rgba(6,26,58,.62),rgba(6,26,58,.18) 70%,rgba(6,26,58,0))!important}
.concept-home header:not(.is-scrolled) .brand,.concept-home header:not(.is-scrolled) .hdr-contact a{text-shadow:0 1px 10px #0008}
/* the homepage header overlays its photo by its own height: the old fixed -170px was for the two-row phone header */
@media(max-width:700px){html.js-mnav .concept-home header,html.js-mnav .agency-home header{margin-bottom:calc(-1 * var(--hdr,67px))!important}}

/* The logo looks the same everywhere (owner, 2026-10-08: "in many places our logo goes missing"): the round emblem always sits on
   white with a white ring, so the navy circle shows on dark headers and dark photographs as well as on white. */
header .brand-emblem,.m-dh .brand-emblem{border-radius:50%;background:#fff;box-shadow:0 0 0 2px #fff,0 6px 16px -8px #000a}

/* Phone polish (owner, 2026-10-08, from a real phone: "most people search from the phone; fully mobile optimised").
   Every browser on an iPhone uses Apple's WebKit; see tools/mobile_ios.py. Bigger tap areas are invisible (::after), so the look does not change. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
a,button,summary,label,select{-webkit-tap-highlight-color:#1a55b81f}
header .hc-wa,header .hc-mail{position:relative}
header .hc-wa::after,header .hc-mail::after{content:"";position:absolute;inset:-8px -3px}
html .rt-more,html .sv-more,html .vx-routes-link{position:relative}
html .rt-more::after,html .sv-more::after,html .vx-routes-link::after{content:"";position:absolute;inset:-12px -6px}
html .pk-place-close::after{content:"";position:absolute;inset:-9px}
html .ar-toc a{padding:8px 12px}
/* iPhone only: date and search fields drawn by WebKit (an empty date field collapses, a search field gets its own round look) */
@supports (-webkit-touch-callout:none){
 input[type=date],input[type=time]{-webkit-appearance:none;appearance:none;min-height:44px;line-height:1.2}
 input[type=date]::-webkit-date-and-time-value,input[type=time]::-webkit-date-and-time-value{text-align:left;min-height:1.2em}
 input[type=search]{-webkit-appearance:none;appearance:none}
 input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}
}

/* Round buttons: one system for close, previous / next and share (owner, 2026-10-08: "one system for the brand, geometrically right
   and attractive"). Drawn icons from tools/ui_icons.py, centred in a 44 px circle; .glass on photos, white elsewhere; .sm 36 px. */
.pl-ib{box-sizing:border-box;flex:none;display:inline-grid;place-items:center;width:44px;height:44px;min-width:0;min-height:0;margin:0;padding:0;border-radius:50%;border:1px solid #d6e2f5;background:#fff;color:#0f2a55;box-shadow:0 10px 22px -14px #06142acc;cursor:pointer;line-height:0;font-size:0;text-decoration:none;transition:transform .15s ease,background-color .2s,box-shadow .2s;-webkit-tap-highlight-color:transparent}
.pl-ib svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.pl-ib:hover{background:#f3f8ff;box-shadow:0 12px 24px -14px #06142aee}
.pl-ib:active{transform:scale(.92)}
.pl-ib:focus-visible{outline:3px solid #3d8cf0;outline-offset:2px}
.pl-ib.glass{background:#ffffff26;border-color:#ffffff73;color:#fff;box-shadow:0 10px 24px -16px #000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.pl-ib.glass:hover{background:#ffffff3d}
.pl-ib.sm{width:36px;height:36px}.pl-ib.sm svg{width:17px;height:17px}
.pl-ibar{display:flex;align-items:center;gap:8px}
.pl-count{box-sizing:border-box;display:inline-grid;place-items:center;height:44px;min-width:72px;padding:0 12px;border-radius:22px;border:1px solid #d6e2f5;background:#fff;color:#0f2a55;box-shadow:0 10px 22px -14px #06142acc;font:800 13px/1 Arial,sans-serif;font-variant-numeric:tabular-nums;white-space:nowrap}
@media(prefers-reduced-motion:reduce){.pl-ib{transition:none}}
/* the old contact strip above the header: hidden on every page (the header has WhatsApp, e-mail and the phone) */
html body>.top{display:none}
/* long web addresses in text (credits) break instead of widening the page */
main p a{overflow-wrap:anywhere}

/* the assistant's close button and the floating "Let's plan your trip" pill in the same system */
#chat-close.pl-ib{float:right;margin:-4px -4px 6px 8px}
html .chat-toggle{border-radius:999px}
/* the smallest phones (320 px, first iPhone SE): the header lost its menu button off the screen; drop the e-mail icon and the small brand line there */
@media(max-width:340px){html.js-mnav header .hc-mail{display:none}html.js-mnav header .brand small{display:none}}
