body .hs-subnav-wrap{
  position: sticky;
  top: 80px;
  z-index: 9999;
  display: flex;
  justify-content: center;
  box-sizing: border-box;
}

body .hs-subnav{
  position: relative;
  display: inline-block;
  width: max-content;
  max-width: calc(100vw - 24px);
  border-radius: 999px;
  background: rgba(0,65,117,0.8);
  backdrop-filter: blur(8px);
  border: 2px solid rgba(255,255,255,0.75);
  overflow: hidden;
  box-sizing: border-box;

  /* Pfeil/Gradient Steuerung */
  --arrow-btn: 40px;   /* Klickfläche */
  --arrow-fade: 110px; /* Gradient-Länge nach innen */
}

body .hs-subnav-pad{
  width: 100%;
  padding: 10px 30px;
  box-sizing: border-box;
}

body .hs-subnav-viewport{
  width: 100%;
  overflow-x: auto;
  overflow-y: visible;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
body .hs-subnav-viewport::-webkit-scrollbar{ display:none; }

body .hs-subnav-inner{
  display: inline-flex;
  gap: 10px;
  width: max-content;
  align-items: center;
}

/* ===== Button Styles ===== */
body .hs-subnav a{
  color: #fff;
  text-decoration: none;
  padding: 10px 16px;
  border-radius: 999px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  border: 2px solid transparent;
  box-sizing: border-box;
  background: transparent;
  transition: border-color .2s ease, color .2s ease, background .2s ease;
}

/* nicht aktiv = immer weiß */
body .hs-subnav a:not(.is-active){
  color: #fff;
}

/* visited darf nicht blau werden */
body .hs-subnav a:visited{
  color: #fff;
}

/* Hover = nur Rahmen */
body .hs-subnav a:hover,
body .hs-subnav a:focus-visible{
  border-color: #fff;
  color: #fff;
  background: transparent;
}

/* Active = weißer Button + blaue Schrift */
body .hs-subnav a.is-active{
  background: #ffffff;
  color: #004175;
  border-color: #ffffff;
}

/* Active + Hover bleibt wie Active */
body .hs-subnav a.is-active:hover,
body .hs-subnav a.is-active:focus-visible{
  background: #ffffff;
  color: #004175;
  border-color: #ffffff;
}

/* ===== Pfeile (Overlay mit transparenter Gradient-Fläche) ===== */
body .hs-subnav-arrow{
  position: absolute;
  top: 0;
  bottom: 0;
  width: var(--arrow-btn);
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0;
  background: none;
  color: #fff;
  font-size: 36px;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  z-index: 3;
  padding: 0;
}

body .hs-subnav-arrow::before{
  content:"";
  position: absolute;
  top: 0;
  bottom: 0;
  width: var(--arrow-fade);  /* nur nach innen größer */
  pointer-events: none;
  z-index: -1;
}

body .hs-subnav-arrow.hs-left{ left: 0; }
body .hs-subnav-arrow.hs-right{ right: 0; }

body .hs-subnav-arrow.hs-left::before{
  left: 0;
  background: linear-gradient(90deg, rgba(0,65,117,0.95) 0%, rgba(0,65,117,0) 100%);
}
body .hs-subnav-arrow.hs-right::before{
  right: 0;
  background: linear-gradient(270deg, rgba(0,65,117,0.95) 0%, rgba(0,65,117,0) 100%);
}

body .hs-subnav-arrow.is-disabled{
  opacity: .35;
  pointer-events: none;
}

body .hs-subnav-wrap.no-overflow .hs-subnav-arrow{
  display: none;
}

/* JS-Fallback Sticky */
body .hs-subnav-wrap.is-fixed{
  position: fixed;
  top: 80px;
  left: 0;
  right: 0;
  z-index: 9999;
  display: flex;
  justify-content: center;
}

/* harte Override gegen Theme-Links */
body .hs-subnav a,
body .hs-subnav a:visited{
  color:#fff !important;
  -webkit-text-fill-color:#fff; /* Safari/Chrome */
}

/* Hover/Fokus immer weiß */
body .hs-subnav a:hover,
body .hs-subnav a:focus,
body .hs-subnav a:focus-visible{
  color:#fff !important;
  -webkit-text-fill-color:#fff;
}

/* Active bleibt blau (auch bei Hover/Fokus) */
body .hs-subnav a.is-active,
body .hs-subnav a.is-active:hover,
body .hs-subnav a.is-active:focus,
body .hs-subnav a.is-active:focus-visible{
  color:#004175 !important;
  -webkit-text-fill-color:#004175;
}


/* ScrollSpy Offset */
html { scroll-behavior: smooth; }
[id] { scroll-margin-top: var(--hs-scroll-offset, 200px); }

/* Hover während Scrollen deaktivieren (verhindert "Flackern") */
body.hs-no-hover .hs-subnav a:hover,
body.hs-no-hover .hs-subnav a:focus-visible{
  border-color: transparent;
  background: transparent;
  color: #fff;
}

body.hs-no-hover .hs-subnav a.is-active:hover,
body.hs-no-hover .hs-subnav a.is-active:focus-visible{
  background: #fff;
  color: #004175;
  border-color: #fff;
}

.hs-subnav-spacer{
  height: 0;
}

