/* GDS Travel fluid responsive header — 2026-10-11
   IMPORTANT: continuous interpolation across 1024px+.
   No desktop font/spacing jumps at 1200px or 1440px.
   On tablet/phone only the navigation mode changes at 1024px. */
.gds-site-header .gds-header-nav,
.gds-site-header .gds-header-logo,
.gds-site-header .gds-desktop-nav,
.gds-site-header .gds-header-actions {
  box-sizing:border-box;
  min-width:0;
}

@media (min-width:1024px) {
  .gds-site-header .gds-header-main,
  .gds-site-header .gds-header-nav {
    height:clamp(88px,calc(64px + 2.25vw),108px)!important;
    min-height:clamp(88px,calc(64px + 2.25vw),108px)!important;
  }
  .gds-site-header .gds-header-nav {
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    width:100%!important;
    max-width:none!important;
    padding-inline:clamp(14px,calc(-24px + 3.73vw),48px)!important;
    gap:clamp(6px,calc(-7px + 1.3vw),18px)!important;
  }
  .gds-site-header .gds-header-logo {
    display:inline-flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
  }
  .gds-site-header .gds-header-logo-img {
    display:block!important;
    width:auto!important;
    height:clamp(54px,calc(4px + 4.9vw),78px)!important;
    max-height:78px!important;
    max-width:none!important;
    object-fit:contain!important;
  }
  .gds-site-header .gds-desktop-nav,
  .gds-site-header .gds-header-actions {
    display:flex!important;
    visibility:visible!important;
    align-items:center!important;
  }
  .gds-site-header .gds-desktop-nav {
    flex:1 1 auto!important;
    min-width:0!important;
    /* Share available space across all eight links AND both ends.
       This avoids squeezed links and oversized logo/menu/button gaps. */
    justify-content:space-around!important;
    flex-wrap:nowrap!important;
    white-space:nowrap!important;
    gap:clamp(3px,0.45vw,8px)!important;
    /* Balanced breathing room on both sides of the menu, smoothly
       scaling from 0px at 1024px to 14px on wide desktop screens. */
    margin-inline:clamp(0px,calc(-25.6px + 2.5vw),14px)!important;
  }
  .gds-site-header .gds-desktop-nav > * {
    flex:0 0 auto!important;
    min-width:0!important;
  }
  .gds-site-header .gds-desktop-nav .gds-nav-link {
    display:inline-flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    white-space:nowrap!important;
    padding-block:8px!important;
    padding-inline:clamp(3px,calc(-7px + 0.98vw),11px)!important;
    font-size:clamp(11.2px,calc(6.3px + 0.48vw),15px)!important;
    gap:clamp(2px,calc(-2px + 0.4vw),6px)!important;
    line-height:1.5!important;
  }
  .gds-site-header .gds-desktop-nav .gds-nav-chevron {
    width:clamp(9px,calc(3.9px + 0.5vw),13px)!important;
    height:clamp(9px,calc(3.9px + 0.5vw),13px)!important;
  }
  .gds-site-header .gds-header-actions {
    flex:0 0 auto!important;
    flex-wrap:nowrap!important;
    gap:clamp(4px,calc(-6px + 1vw),12px)!important;
  }
  .gds-site-header .gds-header-cta {
    flex:0 0 auto!important;
    white-space:nowrap!important;
    font-size:clamp(11px,calc(6.1px + 0.48vw),15px)!important;
    padding-inline:clamp(10px,calc(-2.3px + 1.2vw),22px)!important;
  }
  .gds-site-header .gds-header-utility > a {
    font-size:clamp(11px,calc(5.9px + 0.5vw),15px)!important;
    min-width:clamp(30px,calc(10px + 2vw),42px)!important;
    height:clamp(32px,calc(12px + 2vw),42px)!important;
  }
  .gds-site-header .gds-header-whatsapp {
    flex:0 0 auto!important;
    width:clamp(32px,calc(12px + 2vw),42px)!important;
    height:clamp(32px,calc(12px + 2vw),42px)!important;
  }
  .gds-site-header .gds-mobile-menu-toggle {display:none!important;}
}

/* Tablet/phone: one-row header, with gradual changes in logo/header size
   from 320px to 1023px. The drawer starts at the same 1024px cut-off. */
@media (max-width:1023px) {
  .gds-site-header .gds-header-main {
    height:clamp(72px,calc(66.5px + 1.7vw),84px)!important;
    min-height:clamp(72px,calc(66.5px + 1.7vw),84px)!important;
  }
  .gds-site-header .gds-header-nav {
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    height:clamp(72px,calc(66.5px + 1.7vw),84px)!important;
    min-height:clamp(72px,calc(66.5px + 1.7vw),84px)!important;
    padding-inline:clamp(12px,2.6vw,28px)!important;
    gap:clamp(8px,1.3vw,14px)!important;
  }
  .gds-site-header .gds-desktop-nav,
  .gds-site-header .gds-header-actions {
    display:none!important;
    visibility:hidden!important;
  }
  .gds-site-header .gds-header-logo {
    display:inline-flex!important;
    flex:0 0 auto!important;
    align-items:center!important;
    width:auto!important;
    min-width:0!important;
    max-width:calc(100% - 68px)!important;
    margin:0!important;
  }
  .gds-site-header .gds-header-logo-img {
    display:block!important;
    width:auto!important;
    height:clamp(52px,calc(45.6px + 2vw),66px)!important;
    max-height:66px!important;
    max-width:100%!important;
    object-fit:contain!important;
  }
  .gds-site-header .gds-mobile-menu-toggle {
    display:inline-flex!important;
    visibility:visible!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 46px!important;
    width:46px!important;
    min-width:46px!important;
    height:46px!important;
    margin:0!important;
    pointer-events:auto!important;
  }
}

/* Keep narrow-screen container clipping guards scoped to text/media.
 * Never force overflow:hidden on header, nav or dropdowns. */
.gds-site-footer .gds-footer-column,
.gds-site-footer .gds-footer-brand-block{min-width:0!important}
@media(max-width:1023px){
  :where(.gds-ref-root,.gds-native-visual-entity,.gds-entity-template)
  :is(.gds-ref-heading-title,h1,h2,h3,p){
    max-width:100%;
    overflow-wrap:break-word;
  }
  :where(.gds-ref-root,.gds-native-visual-entity,.gds-entity-template)
  :is(img,video,iframe){max-width:100%}
  .gds-smart-section-head{flex-wrap:wrap;min-width:0}
  .gds-smart-section-head>*{min-width:0;max-width:100%}
}
