/* www.globestar.nl site navigation: hamburger menu. Strict CSP: external file.
   Compact (hamburger) mode: always below md (768px); from md up site-nav.js switches html.gs-nav-compact on
   whenever the one-line bar would not fit (labels never wrap, logo never truncated). Until site-nav.js has
   measured (.site-nav:not(.is-measured)) per-language fallback breakpoints apply (data-nav-lang). */
.gs-nav-toggle {
  display: none; align-items: center; justify-content: center;
  width: 2.5rem; height: 2.5rem; flex-shrink: 0; border-radius: .75rem;
  border: 1px solid rgba(148, 163, 184, .45); color: #e2e8f0; background: transparent; cursor: pointer;
}
.gs-nav-toggle:hover { border-color: #3b82f6; color: #fff; }
.gs-nav-toggle:focus-visible, .gs-nav-close:focus-visible,
.gs-nav-menu a:focus-visible, .gs-nav-menu button:focus-visible, .gs-nav-menu select:focus-visible {
  outline: 2px solid #60a5fa; outline-offset: 2px;
}
.gs-nav-menu[hidden], .gs-nav-backdrop[hidden] { display: none !important; }

/* one line, never wrap; the logo is never shrunk or cut off */
.site-nav .gs-nav-links a, .site-nav .gs-nav-right span { white-space: nowrap; }
.site-nav a.gs-logo-link { flex-shrink: 0 !important; min-width: auto !important; }
.site-nav .gs-logo { max-width: none !important; overflow: visible !important; text-overflow: clip !important; }

@media (max-width: 767.98px) {
  .gs-nav-toggle { display: inline-flex; }
  .site-nav .gs-nav-desk { display: none !important; }
}
html.gs-nav-compact .gs-nav-toggle { display: inline-flex; }
html.gs-nav-compact .site-nav .gs-nav-desk, html.gs-nav-compact .site-nav .gs-nav-links { display: none !important; }
@media (min-width: 768px) {
  html:not(.gs-nav-compact) .gs-nav-menu, html:not(.gs-nav-compact) .gs-nav-backdrop { display: none !important; }
}
/* fallback before the first measurement (one-line widths measured per language, logged out, + margin) */
@media (min-width: 768px) and (max-width: 1239.98px) {
  .site-nav:not(.is-measured)[data-nav-lang="en"] .gs-nav-toggle { display: inline-flex; }
  .site-nav:not(.is-measured)[data-nav-lang="en"] .gs-nav-desk, .site-nav:not(.is-measured)[data-nav-lang="en"] .gs-nav-links { display: none !important; }
}
@media (min-width: 768px) and (max-width: 1289.98px) {
  .site-nav:not(.is-measured)[data-nav-lang="it"] .gs-nav-toggle { display: inline-flex; }
  .site-nav:not(.is-measured)[data-nav-lang="it"] .gs-nav-desk, .site-nav:not(.is-measured)[data-nav-lang="it"] .gs-nav-links { display: none !important; }
}
@media (min-width: 768px) and (max-width: 1359.98px) {
  .site-nav:not(.is-measured)[data-nav-lang="de"] .gs-nav-toggle, .site-nav:not(.is-measured)[data-nav-lang="nl"] .gs-nav-toggle { display: inline-flex; }
  .site-nav:not(.is-measured)[data-nav-lang="de"] .gs-nav-desk, .site-nav:not(.is-measured)[data-nav-lang="de"] .gs-nav-links,
  .site-nav:not(.is-measured)[data-nav-lang="nl"] .gs-nav-desk, .site-nav:not(.is-measured)[data-nav-lang="nl"] .gs-nav-links { display: none !important; }
}
@media (min-width: 768px) and (max-width: 1399.98px) {
  .site-nav:not(.is-measured)[data-nav-lang="fr"] .gs-nav-toggle, .site-nav:not(.is-measured)[data-nav-lang="pl"] .gs-nav-toggle { display: inline-flex; }
  .site-nav:not(.is-measured)[data-nav-lang="fr"] .gs-nav-desk, .site-nav:not(.is-measured)[data-nav-lang="fr"] .gs-nav-links,
  .site-nav:not(.is-measured)[data-nav-lang="pl"] .gs-nav-desk, .site-nav:not(.is-measured)[data-nav-lang="pl"] .gs-nav-links { display: none !important; }
}
@media (min-width: 768px) and (max-width: 1509.98px) {
  .site-nav:not(.is-measured)[data-nav-lang="es"] .gs-nav-toggle { display: inline-flex; }
  .site-nav:not(.is-measured)[data-nav-lang="es"] .gs-nav-desk, .site-nav:not(.is-measured)[data-nav-lang="es"] .gs-nav-links { display: none !important; }
}
@media (min-width: 768px) and (max-width: 1589.98px) {
  .site-nav:not(.is-measured)[data-nav-lang="vi"] .gs-nav-toggle { display: inline-flex; }
  .site-nav:not(.is-measured)[data-nav-lang="vi"] .gs-nav-desk, .site-nav:not(.is-measured)[data-nav-lang="vi"] .gs-nav-links { display: none !important; }
}

.gs-nav-backdrop { position: fixed; inset: 0; z-index: 95; background: rgba(2, 8, 23, .6); }
.gs-nav-menu {
  position: fixed; top: 0; right: 0; bottom: 0; z-index: 96;
  width: min(20rem, 88vw); overflow-y: auto; overscroll-behavior: contain;
  display: flex; flex-direction: column; gap: 1rem; padding: 1rem 1rem 1.5rem;
  background: #0b1a33; color: #e8eef8;
  border-left: 1px solid rgba(96, 165, 250, .25); box-shadow: -16px 0 40px -12px rgba(0, 0, 0, .55);
}
.gs-nav-menu-head { display: flex; align-items: center; justify-content: space-between; }
.gs-nav-menu-title { font-weight: 700; font-size: 1.05rem; }
.gs-nav-close {
  display: inline-flex; align-items: center; justify-content: center; width: 2.5rem; height: 2.5rem;
  border-radius: .75rem; border: 1px solid rgba(148, 163, 184, .45); color: inherit; background: transparent; cursor: pointer;
}
.gs-nav-close:hover { border-color: #3b82f6; }
.gs-nav-menu-links { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.gs-nav-menu-links a {
  display: block; padding: .8rem .75rem; border-radius: .6rem; font-weight: 600; font-size: 1rem;
  color: #e8eef8; text-decoration: none; border-bottom: 1px solid rgba(96, 165, 250, .12);
}
.gs-nav-menu-links a:hover { background: rgba(59, 130, 246, .15); color: #fff; }
.gs-nav-menu-controls { display: flex; flex-direction: column; gap: .5rem; padding-top: .25rem; }
.gs-nav-menu-label { font-size: .8rem; font-weight: 600; color: #b6c6e0; text-transform: uppercase; letter-spacing: .04em; }
.gs-nav-menu-select {
  width: 100%; padding: .6rem .75rem; border-radius: .6rem; font-size: 1rem;
  background: #0c2244; color: #e8eef8; border: 1px solid rgba(96, 165, 250, .35);
}
.gs-nav-menu-btn {
  display: flex; align-items: center; gap: .6rem; width: 100%; padding: .7rem .75rem; border-radius: .6rem;
  font-size: 1rem; font-weight: 500; text-align: left; text-decoration: none; cursor: pointer;
  color: #e8eef8; background: rgba(37, 99, 235, .12); border: 1px solid rgba(96, 165, 250, .25);
}
.gs-nav-menu-btn:hover { border-color: #3b82f6; background: rgba(59, 130, 246, .2); }
.gs-nav-menu-btn[hidden] { display: none; }
.gs-nav-badge {
  margin-left: auto; min-width: 1.4rem; padding: .1rem .4rem; border-radius: 9999px;
  background: #2563eb; color: #fff; font-size: .75rem; font-weight: 700; text-align: center;
}
.gs-nav-ico { display: inline-flex; }
html:not(.light) .gs-nav-ico-moon, html.light .gs-nav-ico-sun { display: none; }
html.gs-nav-open, html.gs-nav-open body { overflow: hidden !important; }

/* light theme */
html.light .gs-nav-toggle { color: #0f172a; border-color: rgba(15, 23, 42, .2); }
html.light .gs-nav-toggle:hover { color: #1d4ed8; border-color: #2563eb; }
html.light .gs-nav-menu { background: #fff; color: #0f172a; border-left-color: #e2e8f0; box-shadow: -16px 0 40px -12px rgba(15, 23, 42, .25); }
html.light .gs-nav-close { border-color: rgba(15, 23, 42, .2); }
html.light .gs-nav-menu-links a { color: #0f172a; border-bottom-color: #e2e8f0; }
html.light .gs-nav-menu-links a:hover { background: #eff6ff; color: #1d4ed8; }
html.light .gs-nav-menu-label { color: #475569; }
html.light .gs-nav-menu-select { background: #fff !important; color: #0f172a !important; border-color: #cbd5e1 !important; }
html.light .gs-nav-menu-btn { color: #0f172a; background: #f8fafc; border-color: #cbd5e1; }
html.light .gs-nav-menu-btn:hover { background: #eff6ff; border-color: #2563eb; }
html.light .gs-nav-toggle:focus-visible, html.light .gs-nav-menu a:focus-visible,
html.light .gs-nav-menu button:focus-visible, html.light .gs-nav-menu select:focus-visible { outline-color: #1d4ed8; }
html.light .gs-nav-backdrop { background: rgba(15, 23, 42, .35); }

@media (prefers-reduced-motion: no-preference) {
  .gs-nav-menu:not([hidden]) { animation: gs-nav-in .18s ease-out; }
  @keyframes gs-nav-in { from { transform: translateX(16px); opacity: .6; } to { transform: none; opacity: 1; } }
}
