.zierleiste {
  width: 100%;
  height: 14.5px;
  background: #1E5490;
  background: linear-gradient(90deg, rgb(30, 84, 144) 0%, rgb(31, 74, 139) 43%, rgb(33, 64, 133) 100%);
}

.header_box {
  display: block;
  position: relative;
  top: 0;
  height: auto;
  padding: 0 var(--gap-section-side);
  width: 100%;
  background: #EEF2F3;
  color: var(--color-heading);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25;
  transition: background-color 0.3s, box-shadow 0.3s, height 0.3s;
  z-index: 1000;
  box-shadow: var(--shadow-small);
}
.header_box.is_sticky {
  position: sticky;
  top: var(--offset-top);
}
.header_box.is_scrolled {
  height: unset;
}
.header_box.is_scrolled .topline, .header_box.is_scrolled .divider {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
  min-height: unset;
}
.header_box.is_scrolled .navline {
  margin-block: 0.5rem;
}
.header_box.is_scrolled .header_content {
  padding: 0;
}
.header_box.is_scrolled .brand {
  width: auto;
  padding: 0.25rem;
}
@media screen and (max-width: 88.75rem) {
  .header_box.is_scrolled .brand {
    width: unset;
  }
}
.header_box.is_scrolled .brand .logo {
  height: 5rem;
}
@media screen and (max-width: 88.75rem) {
  .header_box.is_scrolled .brand .logo {
    height: 4rem;
    width: 10rem;
  }
}
.header_box.is_fixed {
  background-color: #EEF2F3;
}
.header_box .fixed {
  display: grid;
  grid-template-columns: 20rem minmax(0, 1fr);
  max-width: 1600px !important;
  margin: 0 auto !important;
}
@media (max-width: 1620px) {
  .header_box .fixed {
    grid-template-columns: 17rem minmax(0, 1fr);
  }
}
.header_box .brand {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 17rem;
  padding: 1.375rem 0 1.75rem 0;
}
@media (max-width: 1620px) {
  .header_box .brand {
    width: 15rem;
  }
}
.header_box .logo {
  display: block;
  flex-grow: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  background-image: var(--image-logo);
  background-repeat: no-repeat;
  background-position: 0 50%;
  background-size: contain;
}
.header_box .header_content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: 1.5rem 0 0;
}
@media (max-width: 1620px) {
  .header_box .header_content {
    max-width: 100%;
  }
}
.header_box .topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 2rem;
  padding: 0 1.5rem 0 0;
  color: #214085;
  font-size: 1rem;
}
.header_box .divider {
  width: 100%;
  height: 1px;
  background: #214085;
  margin-top: 1rem;
  margin-bottom: 2rem;
}
.header_box .claim {
  letter-spacing: 0.01em;
  white-space: nowrap;
  font-weight: 500;
  line-height: 0.95;
  font-size: 1.5rem;
}
.header_box .claim strong {
  color: var(--theme-secondary);
  font-weight: 500;
}
.header_box .contact_links {
  display: flex;
  align-items: center;
  gap: 4rem;
  white-space: nowrap;
}
.header_box .contact_link {
  display: inline-flex;
  position: relative;
  align-items: center;
  gap: 0.75rem;
  color: #214085;
  font-size: 1.5rem;
  text-decoration: none;
  font-weight: 500;
}
.header_box .contact_link img {
  display: block;
  flex-grow: 0;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  object-fit: contain;
}
.header_box .contact_link span {
  display: block;
}
@media (hover: hover) {
  .header_box .contact_link:hover {
    color: var(--theme-secondary);
  }
}
.header_box .contact_link.contact_login {
  color: #009ee3;
}
.header_box .navline {
  display: flex;
  align-items: stretch;
  min-height: 2.5rem;
  background: var(--theme-white);
  margin-bottom: 2.375rem;
}
.header_box .navigation {
  display: flex;
  flex-grow: 1;
  align-self: stretch;
  min-width: 0;
}
.header_box .menu {
  font-weight: 500;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
.header_box .menu_btn {
  display: none;
  position: relative;
  flex-shrink: 1;
  order: 1;
  width: 1.5rem;
  height: 1.5rem;
  margin: 0 0 0 var(--gap-grid);
  margin-top: 2rem;
}
.header_box .menu_btn:before, .header_box .menu_btn:after, .header_box .menu_btn span {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1.5rem;
  height: 2px;
  margin: -1px 0 0 -0.75rem;
  border-radius: 2px;
  background-color: currentColor;
  transition: 0.2s;
  opacity: 1;
}
.header_box .menu_btn:before {
  margin-top: -0.5625rem;
}
.header_box .menu_btn:after {
  margin-top: 0.4375rem;
}
.header_box.is_fixed .menu_btn {
  margin-top: 0;
}
@media (min-width: 100rem) {
  .header_box .menu {
    display: flex;
    flex-grow: 1;
    align-items: stretch;
    justify-content: space-between;
    min-width: 0;
  }
  .header_box .menu > li {
    display: flex;
    position: relative;
    align-items: stretch;
    margin: 0;
    font-weight: bold;
  }
  .header_box .menu > li.active > a:before, .header_box .menu > li.current-menu-item > a:before, .header_box .menu > li.current_page_item > a:before, .header_box .menu > li.current-menu-ancestor > a:before {
    right: 0;
  }
}
@media (min-width: 100rem) and (hover: hover) {
  .header_box .menu > li:hover > a {
    color: var(--theme-primary);
  }
  .header_box .menu > li:hover > a:before {
    right: 0;
  }
}
@media (min-width: 100rem) {
  .header_box .menu > li > a {
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    padding: 1rem 1.5rem;
    color: #214085;
    font-size: 1.5rem;
    font-weight: 500;
    text-align: center;
    text-decoration: none;
  }
}
@media screen and (min-width: 100rem) and (max-width: 1570px) {
  .header_box .menu > li > a {
    font-size: 1.25rem;
  }
}
@media (min-width: 100rem) {
  .header_box .menu > li > a:before {
    content: "";
    position: absolute;
    right: 100%;
    bottom: 0;
    left: 0;
    height: 0.375rem;
    background: var(--theme-secondary);
    transition: 0.3s;
  }
  .header_box .menu .icon {
    margin-left: 0;
  }
  .header_box .submenu:focus-within > ul {
    transform: scale(1);
    visibility: visible;
    opacity: 1;
  }
}
@media (min-width: 100rem) and (hover: hover) {
  .header_box .submenu:hover > ul {
    transform: scale(1);
    visibility: visible;
    opacity: 1;
  }
}
@media (min-width: 100rem) {
  .header_box .submenu > a {
    display: block;
    position: relative;
    padding-right: 24px;
  }
  .header_box .submenu > a:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0.75rem;
    width: 12px;
    height: 8px;
    margin: -4px 0 0;
    background: currentColor;
    -webkit-mask: url(../../images/ico_arrow_down.svg) 50% 50%/contain no-repeat;
  }
  .header_box .sub-menu {
    display: block;
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 13.75rem;
    padding: 0.5rem 0;
    border-top: 1px solid var(--color-border);
    background-color: var(--color-base);
    box-shadow: var(--shadow-small);
    transition: 0.3s;
    transform: scaleY(0);
    transform-origin: 0 0;
    visibility: hidden;
    opacity: 0;
  }
  .header_box .sub-menu .submenu > a {
    padding-right: 35px;
  }
  .header_box .sub-menu .submenu > a:after {
    right: 12px;
    transform: rotate(-90deg);
  }
  .header_box .sub-menu .sub-menu {
    top: -7px;
    left: 100%;
    padding: 7px 0;
    margin: 0;
    border-top-width: 0;
    background-color: var(--color-background);
    transform: scaleX(0);
  }
  .header_box .sub-menu li {
    display: block;
    position: relative;
  }
  .header_box .sub-menu li.back {
    display: none;
  }
  .header_box .sub-menu li.active > a, .header_box .sub-menu li.current-menu-item > a, .header_box .sub-menu li.current_page_item > a {
    background-color: var(--color-primary);
    color: var(--color-primary-text);
  }
}
@media (min-width: 100rem) and (hover: hover) {
  .header_box .sub-menu li:hover > a {
    background-color: var(--color-primary);
    color: var(--color-primary-text);
  }
}
@media (min-width: 100rem) {
  .header_box .sub-menu a {
    display: flex;
    align-items: center;
    padding: 8px 16px;
    text-transform: none;
    transition: 0.2s;
  }
}
@media (max-width: 100rem) {
  .header_box .fixed {
    display: flex;
    align-items: center;
    height: var(--height-header);
  }
  .header_box .brand {
    padding: 0;
  }
  .header_box .logo {
    width: 100%;
    margin-right: auto;
    height: 4rem;
  }
  .header_box .header_content {
    display: contents;
  }
  .header_box .topline, .header_box .divider {
    display: none;
  }
  .header_box .navline {
    display: flex;
    align-items: center;
    margin-left: auto;
    background: transparent;
  }
  .header_box:before {
    content: "";
    position: fixed;
    top: calc(var(--height-header) + var(--height-bar) + var(--offset-header));
    right: 0;
    bottom: 0;
    left: 0;
    background: var(--color-shadow);
    transition: 0.4s;
    visibility: hidden;
    opacity: 0;
  }
  .header_box.is_menu:before {
    visibility: visible;
    opacity: 0.4;
  }
  .header_box.is_menu .menu_btn span {
    opacity: 0;
  }
  .header_box.is_menu .menu_btn:before, .header_box.is_menu .menu_btn:after {
    margin-top: -1px;
    transform: rotate(45deg);
  }
  .header_box.is_menu .menu_btn:after {
    transform: rotate(-45deg);
  }
  .header_box.is_menu .navigation {
    transform: translateX(0);
    visibility: visible;
  }
  .header_box .navigation {
    display: flex;
    position: fixed;
    top: calc(var(--height-header) + var(--offset-header));
    right: 0;
    bottom: 0;
    left: auto;
    overflow: hidden;
    flex-direction: column;
    align-self: stretch;
    width: 300px;
    border-top: 1px solid var(--color-border);
    background-color: var(--color-base);
    box-shadow: var(--shadow-small);
    transition: transform 0.3s, visibility 0.3s;
    transform: translateX(100%);
    visibility: hidden;
  }
  .header_box .menu {
    display: block;
    overflow-x: hidden;
    overflow-y: auto;
    flex-grow: 1;
    width: auto;
    min-height: 0;
  }
  .header_box .menu_btn {
    display: block;
  }
  .header_box .menu .back {
    display: flex;
    align-items: center;
    width: 100%;
    height: 50px;
    padding: 0 var(--gap-section-side) 0 0;
    background-color: var(--color-background);
    color: var(--color-heading);
    font-weight: 500;
  }
  .header_box .menu .back:before {
    content: "";
    display: block;
    flex-grow: 0;
    flex-shrink: 0;
    width: 12px;
    height: 8px;
    margin: 0 12px 0 var(--gap-section-side);
    background: currentColor;
    transform: rotate(90deg);
    -webkit-mask: url(../../images/ico_arrow_down.svg) 50% 50%/contain no-repeat;
  }
  .header_box .menu ul {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    overflow-x: hidden;
    overflow-y: auto;
    width: 100%;
    background-color: var(--color-base);
    transition: transform 0.3s;
    transform: translateX(100%);
    z-index: 1;
  }
  .header_box .menu li {
    display: flex;
    position: static;
    align-items: center;
    border-top: 1px solid var(--color-border);
  }
  .header_box .menu li:first-child {
    border-top-width: 0;
  }
  .header_box .menu li a:focus + ul {
    transform: translateX(0);
    opacity: 0;
    z-index: -1;
  }
  .header_box .menu li.is_active > ul, .header_box .menu li > ul:focus-within {
    transform: translateX(0);
    opacity: 1;
    z-index: 3;
  }
  .header_box .menu li.is_parent > ul {
    overflow: hidden;
    height: 100%;
  }
  .header_box .menu a {
    display: inline-flex;
    align-items: center;
    min-height: 50px;
    padding: 5px var(--gap-section-side);
  }
  .header_box .submenu:after {
    content: "";
    display: inline-block;
    width: 12px;
    height: 8px;
    margin: 0 15px 0 auto;
    background-color: currentColor;
    transition: 0.3s;
    transform: rotate(-90deg);
    -webkit-mask: url(../../images/ico_arrow_down.svg) 50% 50%/contain no-repeat;
  }
  .header_box .mega-menu-panel {
    width: 300px;
    padding: 0;
    height: auto;
    padding-top: 2rem;
  }
  .header_box .mega-menu-panel .mega-menu {
    padding: 0;
    font-size: 1rem;
    margin-top: 2rem;
    box-shadow: var(--shadow-large);
  }
  .header_box .mega-menu-panel .mega-menu__links .mega-menu-link {
    gap: 0;
    margin-bottom: 0;
  }
  .header_box .mega-menu-panel .mega-menu__links h3, .header_box .mega-menu-panel .mega-menu__links img {
    display: none;
  }
  .header_box .mega-menu-panel .mega-menu__cta {
    display: none;
  }
}
@media (max-width: 30rem) {
  .header_box .navigation {
    width: 100%;
  }
}

#main-menu {
  display: flex;
  align-items: center;
  width: 100%;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (max-width: 100rem) {
  #main-menu {
    flex-direction: column;
  }
  #main-menu li {
    width: 100%;
  }
}

.has-mega-menu {
  position: relative;
}

.mega-menu-panel {
  position: fixed;
  top: calc(var(--height-header) - 3.25rem);
  left: 50%;
  transform: translateX(-50%);
  width: min(1600px, 100vw - 2rem);
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  padding-top: 3.5rem;
}
.mega-menu-panel.is_scrolled {
  top: 4.5rem;
  padding-top: 1rem;
}
.mega-menu-panel .mega-menu {
  background-color: white;
  border-radius: var(--radius-small);
  padding-block: 50px;
  padding-inline: 100px;
  display: flex;
  justify-content: space-between;
  box-shadow: var(--shadow-large);
}
.mega-menu-panel .mega-menu h3 {
  font-size: 2rem;
  font-weight: 500;
  margin-bottom: 2.25rem;
}
.mega-menu-panel .mega-menu__links {
  display: flex;
  flex-direction: column;
}
.mega-menu-panel .mega-menu__links .mega-menu-link {
  font-size: 1.5rem;
  color: #214085;
  display: flex;
  gap: 2rem;
  margin-bottom: 2.5rem;
}
.mega-menu-panel .mega-menu__links .mega-menu-link__image {
  width: 110px;
  height: auto;
  object-fit: fill;
  border-radius: 0.5rem;
}
.mega-menu-panel .mega-menu__links .mega-menu-link__title {
  font-weight: 600;
  margin-bottom: 0;
  max-width: 18rem;
  line-height: 1.25;
  text-transform: none;
  font-size: 1.5rem;
}
.mega-menu-panel .mega-menu__links .mega-menu-link__subtitle {
  font-weight: 300;
  text-transform: none;
  font-size: 1.5rem;
}
.mega-menu-panel .mega-menu__cta .mega-menu-card {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-small);
  height: 65%;
}
.mega-menu-panel .mega-menu__cta .mega-menu-card img {
  display: block;
  width: 592px;
  aspect-ratio: 1.218/1;
  object-fit: cover;
  height: 100%;
}
.mega-menu-panel .mega-menu__cta .mega-menu-card__text {
  position: absolute;
  top: 1.5rem;
  left: 1.5rem;
  z-index: 2;
  max-width: 60%;
  margin: 0;
  font-size: 2rem;
  font-weight: 300;
  line-height: 1.25;
  text-transform: none;
}

.has-mega-menu:hover > .mega-menu-panel, .has-mega-menu:focus-within > .mega-menu-panel {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
/*# sourceMappingURL=header.css.map */
