/* === Header === */
/* === Header === */

header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 999;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition: var(--Transition);
  -o-transition: var(--Transition);
  transition: var(--Transition);
  border-top: 6px solid #dd0b15;
}

/* META-TOP-NAV */

nav.meta_navbar {
  background-color: var(--Weiss);
  height: 20px;
  width: 100%;
  color: #666;
  -webkit-transition: var(--Transition);
  -o-transition: var(--Transition);
  transition: var(--Transition);
}

nav.meta_navbar ul.meta_nav {
  list-style: none;
}

nav.meta_navbar a.nav-link {
  padding: 3px 15px;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 400;
  color: var(--Schwarz);
}
nav.meta_navbar a.nav-link:hover {
  color: var(--Rot);
}

nav.meta_navbar ul:last-child a.nav-link {
  padding-right: 0;
}

nav.meta_navbar.shrink {
  height: 0px;
  padding-top: 0;
}

nav.meta_navbar.shrink a.nav-link {
  color: transparent;
}

/* END META-TOP-NAV */

/* GENERAL MAIN-NAV */

nav.navbar {
  position: relative;
  background-color: #fff;
  -webkit-transition: var(--Transition);
  -o-transition: var(--Transition);
  transition: var(--Transition);
}

nav.navbar.scroll {
  background-color: #ffffff80;
  -webkit-backdrop-filter: blur(2.5px);
  backdrop-filter: blur(2.5px);
}

nav.navbar.scroll:has(div.navbar-collapse.collapse.show) {
  background-color: #fff;
}

nav.navbar > .container {
  height: 100%;
}

nav.navbar .main_nav {
  max-height: calc(100vh - 90px);
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

nav.navbar .main_nav::-webkit-scrollbar {
  display: none;
}

nav.navbar .navbar-brand {
  margin-top: 5px;
}

nav.navbar div.navbar-collapse.collapse.show,
nav.navbar div.navbar-collapse.collapse.show ul.navbar-nav.main_menu {
  -webkit-transition: var(--Transition);
  -o-transition: var(--Transition);
  transition: var(--Transition);
}

/* END GENERAL MAIN-NAV */

/* BURGER */

nav.navbar button.navbar-toggler {
  height: 48px;
  width: 48px;
  position: relative;
  margin: 7px 15px 7px 0px;
  border: 3px solid var(--Schwarz);
  border-radius: 100px;
}

nav.navbar button.navbar-toggler .patty_1,
nav.navbar button.navbar-toggler .patty_2,
nav.navbar button.navbar-toggler .patty_3 {
  position: absolute;
  left: 50%;
  width: 20px;
  height: 3px;
  background-color: var(--Schwarz);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-transition: top 0.4s ease-in-out, opacity 0s 0.4s,
    transform 0.4s ease-in-out 0.4s, -webkit-transform 0.4s ease-in-out 0.4s;
  -o-transition: top 0.4s ease-in-out, opacity 0s 0.4s,
    transform 0.4s ease-in-out 0.4s, -webkit-transform 0.4s ease-in-out 0.4s;
  transition: top 0.4s ease-in-out, opacity 0s 0.4s,
    transform 0.4s ease-in-out 0.4s, -webkit-transform 0.4s ease-in-out 0.4s;
}

nav.navbar button.navbar-toggler.collapsed .patty_1,
nav.navbar button.navbar-toggler.collapsed .patty_2,
nav.navbar button.navbar-toggler.collapsed .patty_3 {
  -webkit-transition: top 0.4s ease-in-out 0.4s, opacity 0s 0.4s,
    transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
  -o-transition: top 0.4s ease-in-out 0.4s, opacity 0s 0.4s,
    transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
  transition: top 0.4s ease-in-out 0.4s, opacity 0s 0.4s,
    transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
}

nav.navbar button.navbar-toggler.collapsed .patty_1 {
  top: 48%;
  opacity: 1;
}
nav.navbar button.navbar-toggler.collapsed .patty_2 {
  top: 30%;
}
nav.navbar button.navbar-toggler.collapsed .patty_3 {
  top: calc(90% - 11px);
}

nav.navbar button.navbar-toggler:not(.collapsed) .patty_1 {
  top: calc(50% - 2px);
  opacity: 0;
}
nav.navbar button.navbar-toggler:not(.collapsed) .patty_2 {
  top: calc(50% - 2px);
  -webkit-transform: translateX(-50%) rotate(45deg);
  -ms-transform: translateX(-50%) rotate(45deg);
  transform: translateX(-50%) rotate(45deg);
}
nav.navbar button.navbar-toggler:not(.collapsed) .patty_3 {
  top: calc(50% - 2px);
  -webkit-transform: translateX(-50%) rotate(-45deg);
  -ms-transform: translateX(-50%) rotate(-45deg);
  transform: translateX(-50%) rotate(-45deg);
}

/* END BURGER */

/* MENU-NESTING */

nav.navbar > .container {
  position: static;
}

nav.navbar ul.main_menu ul {
  list-style: none;
}

/* END MENU-NESTING */

/* MENU-ITEMS-SYLING */

nav.navbar ul.main_menu a.nav-link {
  text-transform: uppercase;
  font-size: 18px;
  font-weight: 700;
  color: var(--Schwarz);
  /*  text-shadow: 0px 2px 2px rgba(18, 33, 49, 0.1),
    0px 9px 4px rgba(18, 33, 49, 0.13), 0px 6px 14px rgba(18, 33, 49, 0.18),
    0px 18px 30px rgba(18, 33, 49, 0.2); */
}

/* Nav Colors Based on Categories */

nav.navbar ul.main_menu li.menu-item.fitness a.nav-link:hover,
nav.navbar ul.main_menu a.nav-link.active.fitness {
  color: var(--FitnessGrun);
}
nav.navbar ul.main_menu li.menu-item.aqua a.nav-link:hover,
nav.navbar ul.main_menu a.nav-link.active.aqua {
  color: var(--AquaBlau);
}

nav.navbar ul.main_menu li.menu-item.events a.nav-link:hover,
nav.navbar ul.main_menu a.nav-link.active.events {
  color: var(--EventsLila);
}

nav.navbar ul.main_menu li.menu-item.ice a.nav-link:hover,
nav.navbar ul.main_menu a.nav-link.active.ice {
  color: var(--IceTurkis);
}
nav.navbar ul.main_menu li.menu-item.wellness a.nav-link:hover,
nav.navbar ul.main_menu a.nav-link.active.wellness {
  color: var(--WellnessOrange);
}

/* END MENU-ITEMS-SYLING */

/* SEARCH */

header .search_wrapper {
  background: rgba(255, 255, 255, 0.8);
  width: 0;
  position: absolute;
  right: 0;
  overflow: hidden;
  height: auto;
  -webkit-transition: width 0.4s ease-in-out;
  -moz-transition: width 0.4s ease-in-out;
  -ms-transition: width 0.4s ease-in-out;
  -o-transition: width 0.4s ease-in-out;
  transition: width 0.4s ease-in-out;
}

body.is-search-visible header .search_wrapper {
  width: 100%;
  right: 0;
}
body.is-search-visible {
  overflow: hidden;
}
main {
  -webkit-transition: opacity 0.4s ease-in-out;
  -moz-transition: opacity 0.4s ease-in-out;
  -ms-transition: opacity 0.4s ease-in-out;
  -o-transition: opacity 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out;
}

body.is-search-visible main {
  opacity: 0.35;
}

header .search_wrapper .form-control {
  background: #fff;
  font-weight: 400;
  font-size: 22px;
  margin-top: 10px;
}

header a.toggle_search:hover svg path {
  fill: var(--Rot);
}

header .search_wrapper button.close_search {
  padding: 0 15px;
  background-color: #fff;
}

header .search_wrapper button.close_search svg path {
  -webkit-transition: fill 0.4s ease-in-out;
  -moz-transition: fill 0.4s ease-in-out;
  -ms-transition: fill 0.4s ease-in-out;
  -o-transition: fill 0.4s ease-in-out;
  transition: fill 0.4s ease-in-out;
}

header .search_wrapper button.close_search:hover svg path {
  fill: var(--Rot);
}

header .search_wrapper .search_results {
  height: calc(100vh - 100px);
  overflow: hidden;
  padding: 30px;
  padding-bottom: 60px;
}

header .search_wrapper .search_results h3 {
  margin-bottom: 0;
  font-size: 16px;
}
header .search_wrapper .search_results p {
  color: #000;
}

header .search_wrapper .search_results a {
  -webkit-transition: color 0.4s ease-in-out;
  -moz-transition: color 0.4s ease-in-out;
  -ms-transition: color 0.4s ease-in-out;
  -o-transition: color 0.4s ease-in-out;
  transition: color 0.4s ease-in-out;
}

header .search_wrapper .search_results a:hover {
  color: var(--Rot) !important;
  text-decoration: none !important;
}

body.is-search-visible header .search_wrapper .search_results {
  overflow: scroll;
}

/* MEDIA  */
@media (min-width: 1200px) {
  nav.navbar {
    height: 70px;
  }

  main {
    margin-top: 100px;
  }

  nav.meta_navbar {
    height: 25px;
    padding-top: 5px;
  }

  /* nav-link (first lvl) */
  nav.navbar .main_nav,
  nav.navbar ul.main_menu,
  nav.navbar ul.main_menu > li,
  nav.navbar ul.main_menu > li > a.nav-link {
    height: 100%;
  }

  nav.navbar ul.main_menu > li > a.nav-link {
    padding: 5px 16px 5px;
    -webkit-transition: 0.3s 0.15s ease-in-out;
    -o-transition: 0.3s 0.15s ease-in-out;
    transition: 0.3s 0.15s ease-in-out;
  }

  nav.navbar ul.main_menu > li:last-child > a.nav-link {
    padding-right: 0;
  }
}

@media (max-width: 1199.98px) {
  nav.navbar .navbar-brand {
    margin-top: -15px;
    margin-left: 15px;
  }
  nav.navbar .navbar-brand svg {
    width: 200px;
    height: 79px;
  }

  nav.navbar .main_nav .main_menu {
    padding: 50px 15px 0px;
  }
  nav.navbar .main_nav .meta_nav_mobile {
    padding-bottom: 50px;
  }

  nav.navbar ul .wpml-ls-menu-item a {
    justify-content: flex-end;
  }
  nav.navbar ul.main_menu > li {
    position: relative;
    padding-right: 40px;
  }
  nav.navbar .meta_nav_mobile li {
    padding-right: 40px;
  }

  nav.navbar ul.main_menu a.nav-link,
  nav.navbar .meta_nav_mobile {
    text-align: right;
  }
}

@media (max-width: 992px) {
  nav.navbar div.navbar-collapse.collapse.show {
    padding-top: 30px;
    padding-bottom: 50px;
  }

  nav.navbar div.navbar-collapse.collapse.show {
    height: 100vh;
  }

  nav.navbar div.container div.navbar-collapse.collapse.show {
    align-items: flex-start;
  }

  .meta_nav_mobile .menu-item-wpml-ls-12-fr.nav-item .nav-link {
    justify-content: flex-end;
  }

  nav.navbar ul.main_menu a.nav-link {
    font-size: 18px;
  }

  nav.navbar .navbar-brand svg {
    width: 130px;
    height: 50px;
    padding-top: 15px;
  }
}
