/* Header/Menu */
header {
  position: absolute !important;
  z-index: 100;
  top: 0;
  width: 100%;
}
.inside-header {
  padding: var(--spacer-xxs) var(--spacer-s);
}

.gp-icon svg {
  fill: unset;
}

.header-image {
  width: 130px !important;
}

.menu {
  gap: 20px !important;
}
.menu-toggle {
  background-color: transparent !important;
  padding: 0 5px;
}
.menu-toggle svg {
  height: 20px;
  width: 20px;
}

.footer-menu a,
.main-navigation .main-nav ul li,
.main-navigation .main-nav ul li > a {
  border-radius: 110px;
}

.footer-menu a,
.main-navigation a,
.main-navigation a:hover {
  line-height: 45px !important;
  border: 2px solid;
}

.main-navigation .main-nav ul li:not([class*="current-menu-"]):hover > a {
  color: unset;
}
.main-navigation .main-nav ul li a {
  color: unset;
}

.main-navigation {
  background-color: unset !important;
}

.site-logo {
  height: fit-content;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 150px;
}
.site-logo > a:not(.injected-logo) {
  display: none;
}
.site-logo > .injected-logo,
.site-logo svg {
  width: 100%;
}

/* Navigation (Mobile) */
html.mobile-menu-open header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  height: 100%;
  width: 100%;
}
html.mobile-menu-open .site {
  display: none;
}

@media screen and (max-width: 768px) {
  .mobile-menu-open header {
    height: 100vh !important;
  }

  .main-navigation.sub-menu-right.toggled {
    background-color: transparent !important;
  }

  .main-navigation a {
    padding: 0 15px !important;
    width: fit-content;
    font-size: 22px !important;
  }

  .main-navigation.toggled .main-nav > ul {
    display: flex;
  }

  .inside-footer-widgets {
    gap: 10px;
  }

  #menu-hauptnavigation {
    flex-direction: column;
    align-items: flex-start;
  }
  #menu-hauptnavigation > li {
    width: fit-content;
  }

  .site-logo {
    width: 100px;
  }

  .inside-header {
    padding-top: 10px;
  }

  .menu-item {
    width: 100% !important;
    text-align: center !important;
  }
  .menu-item a {
    width: 100% !important;
  }
}

.sub-menu {
  background: none !important;
}
.sub-menu a {
  padding: 0 20px !important;
  margin-top: 10px !important;
  width: fit-content;
}

.footer-menu a {
  padding: 0 20px !important;
  display: block;
  opacity: 1 !important;
}

.menu-item-has-children a:hover .dropdown-menu-toggle svg {
  fill: var(--dark-blue) !important;
}


@media (min-width: 768px) and (max-width: 1100px) {
  .main-navigation:not(.toggled) {
    display: none;
  }

  .main-navigation.mobile-menu-control-wrapper,
  .main-navigation.mobile-menu-control-wrapper > .menu-toggle {
    display: block;
  }

  .inside-header:has(.main-navigation.toggled) {
    height: 100vh;
    background: var(--dark-blue);
    display: flex;
    flex-direction: column;
    align-items: flex-start;

    .main-navigation.toggled {
      .inside-navigation {
        margin-left: 0;
      }
    }

    .main-navigation.sub-menu-right.toggled {
      width: 100%;

      #menu-hauptnavigation {
        width: 100%;
        display: flex;
        gap: var(--spacer-s);
        flex-direction: column;

        li {
        text-align: center;
        }
      }
    }

    .main-navigation.toggled.mobile-menu-control-wrapper {
        position: absolute;
        top: 5px;
        right: 12px;
        padding: inherit;
    }
  }
}