/* Core Cruises | Customer shell parity | 2026-10-07
 * Canonical geometry follows suche.corecruises.de / CruiseCompass shell.
 * Loaded last to neutralize older page-specific header refinements only.
 */
.cc-shell-header{
  position:static!important;
  z-index:auto!important;
  padding:15px 24px!important;
}
.cc-shell-header__inner{
  max-width:1500px!important;
  margin:0 auto!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
}
.cc-shell-header .cc-shell-brand__wordmark{
  width:294px!important;
  height:auto!important;
  max-width:100%!important;
}
.cc-shell-header .cc-shell-nav{
  display:flex!important;
  align-items:center!important;
  gap:3px!important;
  margin-left:0!important;
}
.cc-shell-header .cc-shell-nav a{
  padding:10px 12px!important;
  font-size:14px!important;
  white-space:normal!important;
}
.cc-shell-header .cc-shell-social--header{
  display:flex!important;
  flex:0 0 auto!important;
  flex-wrap:nowrap!important;
  justify-content:center!important;
  gap:10px!important;
  margin-left:0!important;
  padding:0!important;
  border:0!important;
  order:0!important;
}
.cc-shell-header .cc-shell-social--header a{
  flex:0 0 44px!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
}
.cc-shell-header .cc-shell-social--header a .cc-shell-icon{
  flex:0 0 20px!important;
  width:20px!important;
  height:20px!important;
}
.cc-shell-header .cc-shell-mobile{display:none!important}

@media(max-width:1199.98px){
  .cc-shell-header__inner{
    position:relative!important;
    min-height:50px!important;
  }
  .cc-shell-header .cc-shell-nav{display:none!important}
  .cc-shell-header__inner>.cc-shell-brand{order:0!important}
  .cc-shell-header .cc-shell-social--header{
    display:flex!important;
    flex:1 0 100%!important;
    order:2!important;
    justify-content:flex-start!important;
    gap:10px!important;
    margin-left:0!important;
    padding:10px 0 0!important;
    border:0!important;
    border-top:1px solid rgba(255,255,255,.12)!important;
  }
  .cc-shell-header .cc-shell-mobile{
    display:block!important;
    margin-left:auto!important;
    order:1!important;
  }
  .cc-shell-header .cc-shell-mobile>summary{
    min-height:44px!important;
    padding:9px 13px!important;
  }
  .cc-shell-header .cc-shell-mobile__nav{
    padding-top:12px!important;
  }
  .cc-shell-header .cc-shell-mobile__nav a{
    padding:12px!important;
    font-size:15px!important;
  }
}

@media(max-width:575.98px){
  .cc-shell-header{padding:13px 16px!important}
  .cc-shell-header__inner{gap:12px!important}
  .cc-shell-header .cc-shell-social--header{
    display:flex!important;
    justify-content:flex-start!important;
    gap:10px!important;
  }
  .cc-shell-header .cc-shell-brand__wordmark{
    width:225px!important;
    max-width:calc(100vw - 125px)!important;
  }
  .cc-shell-header .cc-shell-mobile>summary{padding:10px!important}
  .cc-shell-header .cc-shell-mobile__label{display:none!important}
  .cc-shell-header .cc-shell-mobile__nav{padding-top:12px!important}
  .cc-shell-header .cc-shell-mobile__nav a{
    padding:12px!important;
    font-size:15px!important;
  }
}

/* Compact mobile header. The existing links stay in the document and become
   a scrollable, touch-friendly menu when the disclosure is opened. */
@media(max-width:1199.98px){
  .cc-shell-header{
    padding:10px 16px!important;
    padding-top:max(10px, env(safe-area-inset-top))!important;
  }
  .cc-shell-header__inner{
    min-height:48px!important;
    flex-wrap:nowrap!important;
    gap:10px!important;
  }
  .cc-shell-header .cc-shell-brand__wordmark{
    width:225px!important;
    max-width:calc(100vw - 110px)!important;
  }
  .cc-shell-header .cc-shell-social--header{display:none!important}
  .cc-shell-header .cc-shell-mobile,
  .cc-shell-header .cc-shell-mobile[open]{
    flex:0 0 auto!important;
    order:1!important;
    margin-left:auto!important;
  }
  .cc-shell-header .cc-shell-mobile>summary,
  .cc-shell-header .cc-shell-mobile[open]>summary{
    position:static!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:48px!important;
    min-height:48px!important;
    padding:10px!important;
    cursor:pointer;
  }
  .cc-shell-header .cc-shell-mobile>summary:focus-visible,
  .cc-shell-header .cc-mobile-menu__close:focus-visible{
    outline:3px solid #d4af37!important;
    outline-offset:2px!important;
  }
  .cc-shell-header .cc-shell-mobile__nav{
    display:none!important;
  }
  .cc-shell-header .cc-shell-mobile[open] .cc-shell-mobile__nav{
    position:fixed!important;
    z-index:6000!important;
    top:0!important;right:0!important;bottom:auto!important;left:0!important;
    width:100vw!important;
    height:100vh!important;
    height:var(--cc-mobile-menu-height,100dvh)!important;
    max-height:var(--cc-mobile-menu-height,100dvh)!important;
    display:block!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    padding:calc(16px + env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left))!important;
    border:0!important;
    background:#0a1a2f!important;
    box-shadow:0 16px 48px rgba(0,0,0,.28);
  }
  .cc-mobile-menu__top{
    display:flex;align-items:center;justify-content:space-between;
    gap:16px;margin-bottom:12px;padding-bottom:12px;
    border-bottom:1px solid rgba(255,255,255,.2);
    color:#fff;font-size:20px;font-weight:800;
  }
  .cc-mobile-menu__close{
    min-width:48px;min-height:48px;padding:8px 12px;
    border:1px solid rgba(255,255,255,.45);border-radius:10px;
    background:transparent;color:#fff;font:inherit;font-size:14px;cursor:pointer;
  }
  .cc-shell-header .cc-shell-mobile__nav>a,
  .cc-shell-header .cc-shell-mobile__nav .cc-lines-mobile__row>a,
  .cc-shell-header .cc-shell-mobile__nav .cc-account-nav>a{
    min-height:48px!important;
    display:flex!important;
    align-items:center!important;
    padding:12px 14px!important;
    font-size:16px!important;
  }
  .cc-shell-header .cc-shell-mobile__nav .cc-lines-mobile__toggle,
  .cc-shell-header .cc-shell-mobile__nav .cc-account-nav>button{
    min-width:48px!important;min-height:48px!important;
  }
  .cc-shell-header .cc-shell-mobile__nav a[data-cc-nav="search"],
  .cc-shell-header .cc-shell-mobile__nav a[data-cc-nav="inquiry"]{
    border:1px solid rgba(212,175,55,.4);
    background:rgba(212,175,55,.09);
  }
  .cc-shell-header .cc-shell-mobile__nav a[data-cc-nav="inquiry"]{margin-top:8px}
  .cc-mobile-follow{
    margin-top:18px;padding-top:16px;
    border-top:1px solid rgba(255,255,255,.2);
  }
  .cc-mobile-follow>strong{
    display:block;margin-bottom:8px;color:#d4af37;
    font-size:13px;letter-spacing:.08em;text-transform:uppercase;
  }
  .cc-mobile-follow__links{display:flex;flex-wrap:wrap;gap:8px}
  .cc-shell-header .cc-mobile-follow__links a{
    display:inline-flex!important;align-items:center;justify-content:center;
    min-height:44px!important;padding:9px 13px!important;
    border:1px solid rgba(255,255,255,.25);border-radius:10px;
    color:#fff!important;font-size:14px!important;
  }
}
