@charset "UTF-8";
/*
Theme Name: Koenig MTM
Description: Wilhelm König MTM Theme
Author: OAO Kreation GmbH
Template: hestia
Version: 1.5.0
*/
/* ---- FONT ---- */
@import url("https://use.typekit.net/imh5fil.css");
/* ---- DEF ---- */
* {
  font-family: "din-2014", sans-serif;
  font-weight: 300;
}

strong {
  font-family: "din-2014", sans-serif;
  font-weight: 700;
}

header.header--blue-trigger .navbar.navbar-scroll-point .navbar-toggle .icon-bar {
  background-color: #004388 !important;
  border-color: #004388 !important;
}

header .navbar {
  box-shadow: none !important;
  background-color: none;
}
header .hestia-hide-if-transparent {
  display: block;
}
header .hestia-transparent-logo {
  display: none;
}
header .navbar-scroll-point .hestia-hide-if-transparent {
  display: none !important;
}
header .navbar-scroll-point .hestia-transparent-logo {
  display: block !important;
  transition: none !important;
}
header .hestia-top-bar {
  position: relative;
  background: #fff;
  z-index: 20;
}
header .navbar-header {
  display: block;
}
header .navbar.hestia_left {
  background-color: rgba(255, 255, 255, 0);
  color: #fff;
  border: none;
}
header .navbar.hestia_left .title-logo-wrapper {
  position: absolute;
  left: calc(50vw - 650px);
}
header .navbar.hestia_left .title-logo-wrapper .navbar-brand img {
  max-width: 250px !important;
  max-height: 125px;
  transition: all 1s ease;
}
header .navbar.hestia_left .title-logo-wrapper .navbar-brand:hover {
  opacity: 1 !important;
}
header .navbar.hestia_left > .container {
  justify-content: end;
  width: 100%;
  max-width: 1300px;
  padding: 10px 20px;
}
header .navbar.hestia_left > .container:before, header .navbar.hestia_left > .container:after {
  content: none;
}
header .navbar.hestia_left .navbar-collapse {
  margin-left: 0;
}
header .navbar.hestia_left .navbar-header {
  margin-top: 20px;
}
header .navbar.hestia_left .icon-bar {
  color: #FFFFFF !important;
  width: 50px;
  height: 3px;
  background-color: #fff;
  margin-bottom: 10px !important;
  margin-right: 100px;
}
header .navbar.hestia_left .menu-item,
header .navbar.hestia_left .menu-item:hover {
  padding: 0px;
  opacity: 1;
  position: relative;
}
header .navbar.hestia_left .menu-item a,
header .navbar.hestia_left .menu-item:hover a {
  position: relative;
  color: #fff;
  padding: 10px 0px;
  margin: 10px 30px 10px 0px;
  font-size: 1.8rem;
  text-transform: uppercase;
  border-bottom: 2px solid rgba(255, 255, 255, 0);
}
header .navbar.hestia_left .menu-item a:hover, header .navbar.hestia_left .menu-item a:focus, header .navbar.hestia_left .menu-item a:active, header .navbar.hestia_left .menu-item a.active,
header .navbar.hestia_left .menu-item:hover a:hover,
header .navbar.hestia_left .menu-item:hover a:focus,
header .navbar.hestia_left .menu-item:hover a:active,
header .navbar.hestia_left .menu-item:hover a.active {
  border-bottom: 2px solid #fff;
  border-radius: 0;
  opacity: 1;
  background: none !important;
  color: #fff;
}
header .navbar.hestia_left .menu-item a:hover:before, header .navbar.hestia_left .menu-item a:focus:before, header .navbar.hestia_left .menu-item a:active:before, header .navbar.hestia_left .menu-item a.active:before,
header .navbar.hestia_left .menu-item:hover a:hover:before,
header .navbar.hestia_left .menu-item:hover a:focus:before,
header .navbar.hestia_left .menu-item:hover a:active:before,
header .navbar.hestia_left .menu-item:hover a.active:before {
  display: none !important;
}
header .navbar.hestia_left .menu-item a:before,
header .navbar.hestia_left .menu-item:hover a:before {
  display: none !important;
}
header .navbar.hestia_left .menu-item a:after,
header .navbar.hestia_left .menu-item:hover a:after {
  content: " ";
  display: none;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  color: #000;
  background: #000;
  position: absolute;
  right: -16px;
  top: 18px;
}
header .navbar.hestia_left .menu-item:last-of-type a,
header .navbar.hestia_left .menu-item:hover:last-of-type a {
  margin-right: 0px;
}
header .navbar.hestia_left .menu-item:last-of-type a:after,
header .navbar.hestia_left .menu-item:hover:last-of-type a:after {
  display: none;
}
header .navbar.hestia_left .menu-item.active a,
header .navbar.hestia_left .menu-item:hover.active a {
  color: #fff !important;
}
header .navbar.hestia_left .menu-item .dropdown-menu,
header .navbar.hestia_left .menu-item:hover .dropdown-menu {
  margin: 0px;
  padding: 0px;
  box-shadow: none !important;
  background: none !important;
}
header .navbar.hestia_left .menu-item .dropdown-menu li,
header .navbar.hestia_left .menu-item:hover .dropdown-menu li {
  background-color: none !important;
}
header .navbar.hestia_left .menu-item .dropdown-menu li:hover, header .navbar.hestia_left .menu-item .dropdown-menu li:focus,
header .navbar.hestia_left .menu-item:hover .dropdown-menu li:hover,
header .navbar.hestia_left .menu-item:hover .dropdown-menu li:focus {
  background-color: none !important;
}
header .navbar.hestia_left .menu-item .dropdown-menu a,
header .navbar.hestia_left .menu-item:hover .dropdown-menu a {
  padding: 10px 20px;
  margin: 0px 0px;
  color: #fff !important;
  background: rgb(0, 69, 135);
  text-transform: none;
  font-weight: 300;
  border: none !important;
  border-radius: 0;
  opacity: 1;
}
header .navbar.hestia_left .menu-item .dropdown-menu a:before, header .navbar.hestia_left .menu-item .dropdown-menu a:after,
header .navbar.hestia_left .menu-item:hover .dropdown-menu a:before,
header .navbar.hestia_left .menu-item:hover .dropdown-menu a:after {
  display: none;
}
header .navbar.hestia_left .menu-item .dropdown-menu a:hover, header .navbar.hestia_left .menu-item .dropdown-menu a:focus,
header .navbar.hestia_left .menu-item:hover .dropdown-menu a:hover,
header .navbar.hestia_left .menu-item:hover .dropdown-menu a:focus {
  background: #004388 !important;
  border: none !important;
  border-radius: 0px !important;
}
header .navbar.navbar-scroll-point {
  position: fixed;
  top: 0px;
  left: 0px;
  background: rgb(255, 255, 255);
  transition: height 1s ease;
}
header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav {
  width: 100%;
}
header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav .menu-item a,
header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav .menu-item:hover a {
  color: #004388;
}
header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav .menu-item a:hover, header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav .menu-item a:focus,
header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav .menu-item:hover a:hover,
header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav .menu-item:hover a:focus {
  border-color: #004388;
}
header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav .menu-item.active a,
header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav .menu-item:hover.active a {
  color: #004388 !important;
}

/* Hover-Effekt auf dem Burger-Button entfernen */
.navbar button.navbar-toggle {
  background: none !important;
  border: none !important;
  color: #ffffff !important;
}
.navbar button.navbar-toggle:hover {
  background-color: rgba(214, 214, 214, 0.8);
}
.navbar button.navbar-toggle .icon-bar {
  background-color: #fff;
}
.navbar button.navbar-toggle:hover .icon-bar {
  background-color: rgba(214, 214, 214, 0.8);
  border-color: rgba(214, 214, 214, 0.8);
}

.navbar-toggle::after {
  content: "Menü";
  margin-left: 6px;
  font-size: 1.8rem;
}

@media (max-width: 768px) {
  .navbar-toggle::after {
    display: none;
  }
}
.navbar-toggle-wrapper {
  margin-left: 85%;
}

.navbar button.navbar-toggle:hover,
.navbar button.navbar-toggle:focus {
  background: none !important;
  color: #e6e9f5 !important;
}

.navbar-toggle {
  padding-bottom: 0px;
  margin-bottom: 0px;
}
.navbar-toggle .icon-bar {
  transition: all 0.3s ease;
}
.navbar-toggle.is-open .icon-bar:nth-child(1) {
  transform: rotate(45deg) translate(9px, 9px);
}
.navbar-toggle.is-open .icon-bar:nth-child(2) {
  opacity: 0;
}
.navbar-toggle.is-open .icon-bar:nth-child(3) {
  transform: rotate(-45deg) translate(9px, -9px);
}

.vc_custom_1772525384573 {
  padding-top: 0px !important;
}

@media (min-width: 769px) {
  .fullscreen-close-btn {
    position: fixed;
    top: 30px;
    right: 40px;
    background: none;
    border: none;
    color: #ffffff;
    font-size: 4rem;
    line-height: 1;
    cursor: pointer;
    z-index: 9999;
    padding: 0;
  }
  .fullscreen-close-btn:hover {
    opacity: 0.7;
  }
  .fullscreen-menu-logo {
    position: fixed;
    top: 30px;
    left: 40px;
    z-index: 9999 !important;
    display: none;
  }
  .fullscreen-menu-logo img {
    max-height: 120px;
    width: auto;
  }
  .navbar-collapse.in .fullscreen-menu-logo {
    display: block;
  }
  .navbar.full-screen-menu .navbar-nav.nav {
    z-index: 9000 !important;
    background-color: rgba(0, 69, 135, 0.6) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px); /* für Safari */
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: flex-start !important;
    gap: 30px !important;
    padding: 200px 200px;
  }
  .navbar.full-screen-menu .navbar-nav.nav .menu-item {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    position: static !important;
    width: 20%;
  }
  .navbar.full-screen-menu .navbar-nav.nav .menu-item > a {
    margin-bottom: 20px !important;
    padding: 0 0 10px 0 !important;
    border-bottom: 2px solid rgba(255, 255, 255, 0.5) !important;
    white-space: nowrap !important;
    text-transform: uppercase !important;
  }
  .navbar.full-screen-menu .navbar-nav.nav .menu-item > a .caret-wrap {
    display: none !important;
  }
  .navbar.full-screen-menu .navbar-nav.nav .menu-item .dropdown-menu {
    display: block !important;
    position: static !important;
    float: none !important;
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    padding: 0 !important;
    min-width: 0 !important;
    width: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
  .navbar.full-screen-menu .navbar-nav.nav .menu-item .dropdown-menu li a {
    padding: 6px 0 !important;
    margin: 0 !important;
    background: transparent !important;
    white-space: nowrap !important;
    border: none !important;
    text-transform: none !important;
  }
  .navbar.full-screen-menu .navbar-nav.nav .menu-item a {
    color: #ffffff !important;
    transition: color 0.3s ease;
  }
  .navbar.full-screen-menu .navbar-nav.nav .menu-item a:hover,
.navbar.full-screen-menu .navbar-nav.nav .menu-item a:focus {
    color: #e6e9f5 !important;
  }
}
@media (max-width: 768px) {
  .main section.header--img {
    min-height: 60vh !important;
    height: 60vh !important;
  }
  header .navbar .navbar-collapse.in .navbar-nav .menu-item a,
header .navbar .navbar-collapse.show .navbar-nav .menu-item a {
    color: #ffffff !important;
  }
  header {
    width: 100vw;
  }
  header .hestia-hide-if-transparent {
    display: none !important;
  }
  header .hestia-transparent-logo {
    display: block !important;
    filter: none !important;
  }
  header .title-logo-wrapper {
    position: absolute;
    top: 0px;
    left: 0px;
    padding-top: 20px;
    background: transparent !important;
  }
  header .navbar-header {
    display: block;
    width: 100%;
    height: 70px;
  }
  header .navbar-header .navbar-brand {
    width: calc(100% - 50px) !important;
    max-width: 250px !important;
  }
  header .navbar-header .navbar-brand img {
    width: 100%;
    max-width: 220px !important;
    max-height: 50px !important;
  }
  header .navbar, header .navbar.hestia_left {
    width: 100vw;
    padding: 0px 20px;
    background: transparent !important;
  }
  header .navbar .container, header .navbar.hestia_left .container {
    padding: 0px !important;
  }
  header .navbar .navbar-header .navbar-toggle-wrapper, header .navbar.hestia_left .navbar-header .navbar-toggle-wrapper {
    display: block;
    padding-top: 0px;
    width: 50px;
    height: 78px;
    position: absolute;
    top: 10px;
    right: 20px;
  }
  header .navbar .navbar-header .navbar-toggle-wrapper .icon-bar, header .navbar.hestia_left .navbar-header .navbar-toggle-wrapper .icon-bar {
    background: #FFFFFF;
    display: block;
    width: 40px;
    height: 3px;
    border: none;
  }
  header .navbar .navbar-collapse, header .navbar.hestia_left .navbar-collapse {
    margin-left: 0px;
    padding-left: 20px !important;
    padding-right: 20px !important;
    padding-bottom: 20px;
    width: 100% !important;
    max-width: 100vw;
    transition: none !important;
  }
  header .navbar .navbar-collapse.in, header .navbar .navbar-collapse.show, header .navbar.hestia_left .navbar-collapse.in, header .navbar.hestia_left .navbar-collapse.show {
    background-color: rgba(0, 69, 135, 0.8) !important;
  }
  header .navbar .navbar-collapse .navbar-nav, header .navbar.hestia_left .navbar-collapse .navbar-nav {
    width: 100%;
  }
  header .navbar .navbar-collapse .navbar-nav .menu-item,
header .navbar .navbar-collapse .navbar-nav .menu-item:hover, header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item,
header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item:hover {
    display: block;
    width: 100% !important;
    padding: 0px;
  }
  header .navbar .navbar-collapse .navbar-nav .menu-item a,
header .navbar .navbar-collapse .navbar-nav .menu-item:hover a, header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item a,
header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item:hover a {
    color: #ffffff !important;
    padding: 15px;
    border-radius: 0px;
    font-size: 18px;
    font-weight: 200;
  }
  header .navbar .navbar-collapse .navbar-nav .menu-item a svg.fa-chevron-down,
header .navbar .navbar-collapse .navbar-nav .menu-item:hover a svg.fa-chevron-down, header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item a svg.fa-chevron-down,
header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item:hover a svg.fa-chevron-down {
    color: #ffffff !important;
    fill: #ffffff !important;
  }
  header .navbar .navbar-collapse .navbar-nav .menu-item a span.caret-wrap,
header .navbar .navbar-collapse .navbar-nav .menu-item:hover a span.caret-wrap, header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item a span.caret-wrap,
header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item:hover a span.caret-wrap {
    display: block;
  }
  header .navbar .navbar-collapse .navbar-nav .menu-item a span.caret-wrap .caret,
header .navbar .navbar-collapse .navbar-nav .menu-item:hover a span.caret-wrap .caret, header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item a span.caret-wrap .caret,
header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item:hover a span.caret-wrap .caret {
    border: 0px;
  }
  header .navbar .navbar-collapse .navbar-nav .menu-item a:hover, header .navbar .navbar-collapse .navbar-nav .menu-item a:focus,
header .navbar .navbar-collapse .navbar-nav .menu-item:hover a:hover,
header .navbar .navbar-collapse .navbar-nav .menu-item:hover a:focus, header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item a:hover, header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item a:focus,
header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item:hover a:hover,
header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item:hover a:focus {
    color: #fff !important;
    background: #004388;
    border-radius: 0;
    opacity: 1;
  }
  header .navbar .navbar-collapse .navbar-nav .menu-item a::before,
header .navbar .navbar-collapse .navbar-nav .menu-item:hover a::before, header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item a::before,
header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item:hover a::before {
    display: block;
  }
  header .navbar .navbar-collapse .navbar-nav .menu-item.placeholder,
header .navbar .navbar-collapse .navbar-nav .menu-item:hover.placeholder, header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item.placeholder,
header .navbar.hestia_left .navbar-collapse .navbar-nav .menu-item:hover.placeholder {
    display: none !important;
  }
  header .navbar .navbar-collapse .navbar-nav .dropdown-menu, header .navbar.hestia_left .navbar-collapse .navbar-nav .dropdown-menu {
    display: none;
    width: 100%;
    background: #ffffff !important;
  }
  header .navbar .navbar-collapse .navbar-nav .dropdown-menu li.menu-item, header .navbar.hestia_left .navbar-collapse .navbar-nav .dropdown-menu li.menu-item {
    padding: 0px 0px !important;
  }
  header .navbar .navbar-collapse .navbar-nav .dropdown-menu li.menu-item.active, header .navbar.hestia_left .navbar-collapse .navbar-nav .dropdown-menu li.menu-item.active {
    background: none !important;
  }
  header .navbar .navbar-collapse .navbar-nav .dropdown-menu li a, header .navbar.hestia_left .navbar-collapse .navbar-nav .dropdown-menu li a {
    background: #004388 !important;
    color: #fff !important;
    font-size: 15px !important;
    text-align: left;
    padding-top: 10px;
    padding-bottom: 15px;
  }
  header .navbar.navbar-scroll-point {
    position: fixed;
    top: 0px;
    left: 0px;
    background: rgb(255, 255, 255);
    transition: height 1s ease;
  }
  header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav {
    width: 100%;
  }
  header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav .menu-item a,
header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav .menu-item:hover a {
    color: #004388 !important;
  }
  header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav .menu-item.placeholder,
header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav .menu-item:hover.placeholder {
    display: none !important;
  }
  header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav .dropdown-menu {
    display: none;
    width: 100%;
    background: #fff !important;
  }
  header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav .dropdown-menu li.menu-item {
    padding: 5px 15px;
  }
  header .navbar.navbar-scroll-point .navbar-collapse .navbar-nav .dropdown-menu li a {
    color: #fff !important;
    font-size: 15px;
    text-align: left;
  }
  header .navbar.navbar-fixed-top .title-logo-wrapper {
    position: absolute;
    top: 0px;
    left: 0px;
    transform: none !important;
    width: auto;
    padding: 20px 20px 10px 20px;
  }
}
/* ---- MAIN ---- */
.main {
  margin: 0;
  border-radius: 0;
}
.main .entry-social {
  display: none;
}
.main .label-primary {
  background-color: #004388 !important;
}
.main .wp-block-heading {
  color: #004388;
}
.main article {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}
.main h1, .main h2, .main h3, .main h4, .main h5 {
  font-family: "din-2014", sans-serif;
  font-weight: 600;
  margin-top: 0;
}
.main h1 a:hover, .main h2 a:hover, .main h3 a:hover, .main h4 a:hover, .main h5 a:hover {
  text-decoration: none;
}
.main h1, .main h1 a {
  font-size: 4rem;
  margin-bottom: 20px;
}
.main h2, .main h2 a {
  font-size: 4rem;
  margin-bottom: 20px;
}
.main h2 {
  position: relative;
}
.main h2::after {
  content: "";
  position: absolute;
  width: 76px;
  height: 6px;
  background-color: white;
  top: -19px;
  left: 0;
}
.main .vc_row.row-wide {
  max-width: 1600px !important;
}
.main .vc_row.vc_column-gap-35 > .vc_column_container {
  padding-bottom: 0;
}
.main h1.schritte-element {
  position: absolute;
  font-size: 15rem;
  top: -46px;
  left: -25px;
  z-index: 0;
  color: rgba(230, 233, 245, 0.3) !important;
}
.main h1.schritte-element * {
  position: relative;
  z-index: 1;
}
.main .engagement {
  min-height: 265px;
}
.main .fertigung {
  min-height: 300px;
}
.main .headline--blue {
  color: #004388;
}
.main .headline--blue.text--white h3, .main .headline--blue.text--white p, .main .headline--blue.text--white li {
  color: #ffffff !important;
}
.main .headline--blue.text--white ul {
  margin-bottom: 35px;
}
.main .headline--blue h5 {
  font-family: "din-2014-narrow";
  font-weight: 400;
}
.main .headline--blue h2 {
  position: relative;
}
.main .headline--blue h2::after {
  content: "";
  position: absolute;
  width: 76px;
  height: 6px;
  background-color: #004388;
  top: -19px;
  left: 0;
}
.main .img--aktuelles {
  min-height: 230px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  column-gap: 20px;
}
.main h3, .main h3 a {
  font-size: 2.5rem;
  margin-bottom: 25px !important;
}
.main h4, .main h4 a {
  font-size: 2.5rem;
  margin-bottom: 5px;
  font-weight: 700;
}
.main h5 {
  font-size: 2rem;
  font-weight: 200;
  margin-bottom: 10px !important;
}
.main h5 a {
  font-family: "din-2014-light", sans-serif;
  font-weight: 300;
  text-decoration: underline;
}
.main blockquote {
  margin: 0px !important;
  border: none !important;
}
.main blockquote p {
  color: #6f6f6f;
  font-size: 2.5rem;
  text-transform: uppercase;
  text-decoration: none;
  font-style: normal !important;
}
.main img {
  color: #6f6f6f;
  fill: #6f6f6f;
}
.main .filter--blue {
  background-color: rgba(0, 69, 135, 0.3);
  background-blend-mode: darken;
}
.main .filter--blue-50 {
  background-color: rgba(0, 69, 135, 0.5);
  background-blend-mode: darken;
}
.main .filter--blue-75 {
  background-color: rgba(0, 69, 135, 0.75);
  background-blend-mode: darken;
}
.main .filter--blue h1, .main .filter--blue h2, .main .filter--blue h3, .main .filter--blue h4, .main .filter--blue h5, .main .filter--blue h6, .main .filter--blue p, .main .filter--blue a, .main .filter--blue-50 h1, .main .filter--blue-50 h2, .main .filter--blue-50 h3, .main .filter--blue-50 h4, .main .filter--blue-50 h5, .main .filter--blue-50 h6, .main .filter--blue-50 p, .main .filter--blue-50 a, .main .filter--blue-75 h1, .main .filter--blue-75 h2, .main .filter--blue-75 h3, .main .filter--blue-75 h4, .main .filter--blue-75 h5, .main .filter--blue-75 h6, .main .filter--blue-75 p, .main .filter--blue-75 a {
  color: #ffffff;
}
.main .lighten {
  background-color: rgba(255, 255, 255, 0.8);
  background-blend-mode: lighten;
}
.main p, .main ul, .main ul li {
  color: #000000;
  font-size: 1.8rem;
}
.main p a {
  color: #6f6f6f;
  font-size: 1.8rem;
}
.main .color {
  color: #6f6f6f;
}
.main .color p, .main .color a {
  color: #6f6f6f;
}
.main p ul, .main ul {
  padding-left: 20px;
  list-style: square;
}
.main .spaced {
  font-weight: 200;
  letter-spacing: 0.3rem;
}
.main .vc_general.vc_btn3 {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: 15px;
}
.main .vc_general.vc_btn3::after {
  content: "";
  display: inline-block;
  width: 50px;
  height: 20px;
  margin-left: 0;
  background-image: url("./assets/img/pfeil-rechts-blue.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.main .vc_general.vc_btn3:hover::after {
  background-image: url("./assets/img/pfeil-rechts-white.svg");
}
.main .vc_general.vc_btn3:hover {
  opacity: 1 !important;
  background-color: #FFFFFF !important;
  color: #004388 !important;
}
.main .vc_general.vc_btn3.vc_btn3-shape-rounded {
  border-radius: 0px !important;
}
.main .vc_general.vc_btn3.vc_btn3-color-blue {
  background: #ffffff;
  color: #004388 !important;
}
.main .vc_general.vc_btn3.vc_btn3-color-sky {
  background: #D6DEEF;
  color: #fff !important;
}
.main .wpb_text_column {
  margin-bottom: 20px;
}
.main .wpb_text_column:last-child {
  margin-bottom: 0;
}
.main .btn--outline-white .vc_btn3 {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  border: 1px solid #ffffff !important;
  background-color: transparent !important;
  color: #ffffff !important;
  font-size: 17px !important;
  padding: 10px 20px;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: none !important;
}
.main .btn--outline-white .vc_btn3::after {
  content: "";
  display: inline-block;
  width: 40px;
  height: 40px;
  background-image: url("./assets/img/pfeil-rechts-white.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: all 0.3s ease;
}
.main .btn--outline-white .vc_btn3:hover {
  background-color: #ffffff !important;
  color: #004388 !important;
}
.main .btn--outline-white .vc_btn3:hover::after {
  background-image: url("./assets/img/pfeil-rechts-blue.svg");
}
.main .btn--outline-blue .vc_btn3 {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  border: 1px solid #004388 !important;
  background-color: transparent !important;
  color: #004388 !important;
  font-size: 17px !important;
  padding: 10px 20px;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: none !important;
}
.main .btn--outline-blue .vc_btn3::after {
  content: "";
  display: inline-block;
  width: 40px;
  height: 40px;
  background-image: url("./assets/img/pfeil-rechts-blue.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: all 0.3s ease;
}
.main .btn--outline-blue .vc_btn3:hover {
  background-color: #004388 !important;
  color: #ffffff !important;
  border-color: #004388 !important;
}
.main .btn--outline-blue .vc_btn3:hover::after {
  background-image: url("./assets/img/pfeil-rechts-white.svg");
}
.main .frm_submit button {
  border-radius: 0 !important;
  padding: 12px 20px !important;
  box-shadow: none !important;
}
.main .frm_submit button:hover {
  box-shadow: none !important;
  border: 1px solid #ffffff !important;
}
.main .frm_submit button:focus, .main .frm_submit button:active {
  box-shadow: none !important;
  outline: none !important;
}
.main .inline-button {
  color: #004388;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-weight: 500;
  font-size: 1rem;
  transition: color 0.2s;
}
.main .inline-button:hover {
  color: #0066cc;
}
.main .inline-button svg {
  display: inline-block;
  vertical-align: middle;
  transition: transform 0.2s;
}
.main .inline-button:hover svg {
  transform: translateX(3px);
}
.main section {
  height: auto;
  width: 100vw;
  position: relative;
  margin: 0 auto !important;
  padding-top: 200px !important;
  padding-bottom: 200px;
  padding-left: 0px !important;
  padding-right: 0px !important;
  background-position: center !important;
  background-size: cover !important;
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
}
.main section.no-padding {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}
.main section.no-padding-top {
  padding-top: 0px !important;
}
.main section.no-padding-top .vc_row:first-child {
  padding-top: 0px !important;
}
.main section.no-padding-top .vc_row:last-of-type {
  padding-bottom: 0;
}
.main section.no-padding-bottom {
  padding-bottom: 0px !important;
}
.main section.vc_section-has-fill {
  background-position: center !important;
  background-size: cover !important;
}
.main section.header--img {
  position: relative;
  width: 100%;
  height: 400px;
}
.main section.header--img h1, .main section.header--img h2, .main section.header--img h3 {
  font-size: 6rem;
  color: #ffffff !important;
}
.main section.header--img.header--shadow h1, .main section.header--img.header--shadow h2, .main section.header--img.header--shadow h3 {
  text-shadow: 0px 0px 40px #000;
}
.main section.header--img.header--shadow-blue h1, .main section.header--img.header--shadow-blue h2, .main section.header--img.header--shadow-blue h3 {
  text-shadow: 0px 0px 40px #004388;
}
.main section.header--img #background-slider {
  position: absolute !important;
  top: 0px;
  left: 0px;
  width: 100vw;
  max-width: none;
  height: 100%;
}
.main section.header--img #background-slider img {
  width: 100%;
  object-fit: cover;
  object-position: center center;
}
.main section.header--title {
  display: flex;
  align-items: center;
  background-position: center center !important;
  min-height: calc(40vh - 80px);
  width: calc(100vw - 80px) !important;
  margin: 40px !important;
}
.main section.height--50 {
  min-height: 50vh;
}
.main section.height--75 {
  min-height: 75vh;
}
.main section.height--100 {
  min-height: calc(100vh - 80px) !important;
}
.main section.kategory--img {
  background-repeat: no-repeat;
  background-size: auto 100%;
}
.main section.overlay--left {
  background-position: center right !important;
}
.main section.overlay--left::before {
  content: " ";
  position: absolute;
  left: 0px;
  top: 0px;
  width: calc(50vw - 40px);
  height: 100%;
  background: #fff;
}
.main section.overlay--left .vc_row .wpb_column:first-of-type .vc_column-inner {
  padding-right: 80px;
}
.main section.overlay--right {
  background-position: center left !important;
}
.main section.overlay--right::before {
  content: " ";
  position: absolute;
  right: 0px;
  top: 0px;
  width: calc(50vw - 40px);
  height: 100%;
  background: #fff;
}
.main section.overlay--right .vc_row {
  display: flex;
  flex-direction: row-reverse;
}
.main section.overlay--right .vc_row .wpb_column:first-of-type .vc_column-inner {
  padding-left: 80px;
}
.main section.pull-top {
  padding-top: 0px !important;
  margin-top: -100px !important;
  background: none !important;
}
.main section > .vc_row {
  max-width: 1300px;
  width: 100%;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 25px;
  overflow: visible;
  position: relative;
  background-size: cover;
  background-position: center center !important;
}
.main section > .vc_row.pull-top {
  padding-top: 0px !important;
  margin-top: -100px !important;
  background: none !important;
}
.main section > .vc_row.pull-bottom {
  padding-top: 0px !important;
  margin-bottom: -100px !important;
  background: none !important;
}
.main section > .vc_row.no-margin-bottom {
  margin-bottom: 0px;
}
.main section > .vc_row.no-margin-bottom .wpb_content_element {
  margin-bottom: 0px;
}
.main section .vc_row.partner-logos .vc_column-inner .wpb_wrapper {
  background: #fff;
  padding: 20px 20px 5px 20px;
  text-align: center !important;
  border: 1px solid #004388;
}
.main section .vc_row.partner-logos .vc_column-inner .wpb_wrapper.bg-dark {
  background: #585858;
}
.main section .vc_row.partner-logos .vc_column-inner .wpb_wrapper .wpb_single_image {
  width: 100%;
  height: 130px;
  margin-bottom: 15px;
}
.main section .vc_row.partner-logos .vc_column-inner .wpb_wrapper .wpb_single_image .vc_figure {
  width: 100%;
  height: 100%;
  border: none !important;
}
.main section .vc_row.partner-logos .vc_column-inner .wpb_wrapper .wpb_single_image .vc_figure .vc_single_image-wrapper {
  width: 100%;
  height: 100%;
}
.main section .vc_row.partner-logos .vc_column-inner .wpb_wrapper .wpb_single_image .vc_figure .vc_single_image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}
.main section .vc_row.partner-logos .vc_column-inner .wpb_content_element .wpb_wrapper {
  padding: 0px;
}
.main section .vc_row.counter .wpb_column .wpb_text_column {
  text-align: center !important;
}
.main section .vc_row.counter .wpb_column .wpb_text_column:first-of-type {
  margin-bottom: 0px;
}
.main section .vc_row.counter h2, .main section .vc_row.counter h3 {
  font-size: 6rem;
  line-height: 100%;
  margin-bottom: 0px !important;
}
.main section .vc_row.timeline--slider {
  max-width: calc(100vw - 80px);
  border-bottom: 2px dotted #004388;
}
.main section .vc_row.timeline--slider .wpb_wrapper {
  display: flex;
  overflow-x: auto;
  scroll-behavior: smooth;
  white-space: nowrap;
  gap: 40px;
  padding-bottom: 0px;
}
.main section .vc_row.timeline--slider .wpb_wrapper .timeline-element {
  flex: 1 0 25%;
  min-width: 15%;
  max-width: 15%;
  display: flex;
  flex-direction: column;
  text-align: left;
  scroll-snap-align: center;
  border-left: 2px dotted #004388;
  padding-left: 20px;
}
.main section .vc_row.timeline--slider .wpb_wrapper .timeline-element .timeline-year {
  color: #004388;
  font-size: 2.5rem;
  text-align: left;
  margin-bottom: 10px;
}
.main section .vc_row.timeline--slider .wpb_wrapper .timeline-element .timeline-content {
  display: block;
  color: #000000;
}
.main section .vc_row.timeline--slider .wpb_wrapper .timeline-element .timeline-content p {
  max-width: 100%;
  white-space: normal;
  word-wrap: break-word;
  overflow: hidden;
  text-overflow: ellipsis;
}
.main section .vc_row.timeline--slider .timeline-arrow {
  position: absolute;
  display: flex;
  top: calc(50% - 21px);
  width: 42px;
  height: 42px;
  background-color: #004388;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 25px;
  z-index: 300;
  cursor: pointer;
  justify-content: center;
  align-items: center;
}
.main section .vc_row.timeline--slider .timeline-arrow--prev {
  left: 0;
  background-image: url(./assets/img/icon-arrow-left-white.svg);
}
.main section .vc_row.timeline--slider .timeline-arrow--next {
  right: 0;
  background-image: url(./assets/img/icon-arrow-right-white.svg);
}
.main section.bg--grey {
  background: #6f6f6f;
}
.main section.bg--grey h1, .main section.bg--grey h2, .main section.bg--grey h3, .main section.bg--grey h4, .main section.bg--grey h5, .main section.bg--grey h6, .main section.bg--grey p, .main section.bg--grey ul li, .main section.bg--grey a, .main section.bg--grey p a {
  color: #ffffff;
}
.main section.bg--light {
  background: #e6e9f5;
}
.main section.bg--pattern--black h2, .main section.bg--pattern--black h3, .main section.bg--pattern--black h4, .main section.bg--pattern--black h5, .main section.bg--pattern--black h6, .main section.bg--pattern--black p, .main section.bg--pattern--black ul li, .main section.bg--pattern--black a, .main section.bg--pattern--black p a {
  color: #ffffff !important;
}
.main section.bg--pattern--black h2 strong, .main section.bg--pattern--black h3 strong, .main section.bg--pattern--black h4 strong, .main section.bg--pattern--black h5 strong, .main section.bg--pattern--black h6 strong, .main section.bg--pattern--black p strong, .main section.bg--pattern--black ul li strong, .main section.bg--pattern--black a strong, .main section.bg--pattern--black p a strong {
  color: #ffffff;
}
.main section.bg--white h3, .main section.bg--white h4, .main section.bg--white h5, .main section.bg--white h6 {
  color: #004388 !important;
}
.main section.bg--white p, .main section.bg--white ul li, .main section.bg--white a, .main section.bg--white p a {
  color: #000000 !important;
}
.main section.bg--white p strong, .main section.bg--white ul li strong, .main section.bg--white a strong, .main section.bg--white p a strong {
  color: #000000;
}
.main section.bg--black {
  background: #000000;
}
.main section.bg--black h1, .main section.bg--black h2, .main section.bg--black h3, .main section.bg--black h4, .main section.bg--black h5, .main section.bg--black h6, .main section.bg--black p, .main section.bg--black ul li, .main section.bg--black a, .main section.bg--black p a {
  color: #ffffff !important;
}
.main section.bg--black h1 strong, .main section.bg--black h2 strong, .main section.bg--black h3 strong, .main section.bg--black h4 strong, .main section.bg--black h5 strong, .main section.bg--black h6 strong, .main section.bg--black p strong, .main section.bg--black ul li strong, .main section.bg--black a strong, .main section.bg--black p a strong {
  color: #ffffff;
}
.main section.bg--blue {
  background: #004388;
  color: #ffffff !important;
}
.main section.bg--blue h1, .main section.bg--blue h2, .main section.bg--blue h3, .main section.bg--blue h4, .main section.bg--blue h5, .main section.bg--blue h6, .main section.bg--blue p, .main section.bg--blue ul li, .main section.bg--blue a, .main section.bg--blue p a {
  color: #ffffff !important;
}
.main section.bg--blue h1 strong, .main section.bg--blue h2 strong, .main section.bg--blue h3 strong, .main section.bg--blue h4 strong, .main section.bg--blue h5 strong, .main section.bg--blue h6 strong, .main section.bg--blue p strong, .main section.bg--blue ul li strong, .main section.bg--blue a strong, .main section.bg--blue p a strong {
  color: #ffffff;
}
.main section.timeline .vc_row {
  display: flex;
  align-content: center;
  padding-top: 20px;
  padding-bottom: 20px;
  margin-bottom: 0px;
}
.main section.timeline .vc_row:before {
  content: " ";
  width: 3px;
  height: 100%;
  display: block;
  position: absolute;
  left: calc(50% - 1.5px);
  top: 0px;
  background: #004388;
}
.main section.timeline .vc_row:after {
  content: " ";
  width: 30px;
  height: 30px;
  display: block;
  position: absolute;
  left: calc(50% - 15px);
  top: calc(50% - 15px);
  background: #004388;
  border-radius: 50%;
}
.main section.timeline .vc_row.title:before {
  display: none !important;
}
.main section.timeline .vc_row.title:after {
  display: none !important;
}
.main section.timeline .vc_row .wpb_column .wpb_single_image {
  margin-bottom: 0px;
  padding: 20px;
}
.main section.timeline .vc_row .wpb_column .wpb_single_image img {
  border-radius: 50%;
}
.main section.timeline .vc_row .wpb_column:nth-of-type(2) {
  text-align: center;
}
.main .vc_general.vc_cta3.vc_cta3-style-classic {
  background-color: rgba(0, 0, 0, 0);
  border-color: #004388;
}
.main .vc_general.vc_cta3.vc_cta3-style-classic.vc_cta3-style-white {
  background-color: rgba(0, 0, 0, 0);
  border-color: #ffffff !important;
}
.main .video.wpb_content_element {
  margin-bottom: 0px !important;
}
.main .vc_custom_1772455353406 {
  padding-top: 0px !important;
}
.main .vc_row-o-equal-height .teaser-box--border .vc_column-inner .wpb_wrapper {
  height: 100%;
}
.main .oao-kategorybox {
  display: block;
  position: relative;
  width: 100%;
}
.main .oao-kategorybox a {
  display: block;
  width: 100%;
}
.main .oao-kategorybox a:hover {
  opacity: 1 !important;
}
.main .oao-kategorybox .oao-kategorybox--img {
  border-radius: 20px;
  display: block;
}
.main .oao-kategorybox .oao-kategorybox--img img {
  border-radius: 20px;
}
.main .oao-kategorybox .oao-kategorybox--overlay {
  border-radius: 20px;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: rgba(0, 69, 135, 0.8);
  align-items: center;
  padding: 30px;
  transition: all 1s ease;
}
.main .oao-kategorybox .oao-kategorybox--overlay h3 {
  display: block;
  width: 100%;
  color: #ffffff;
  margin-bottom: 10px !important;
  font-weight: 700;
}
.main .oao-kategorybox .oao-kategorybox--overlay p {
  color: #ffffff;
  font-family: "din-2014-light", sans-serif;
  font-weight: 300;
}
.main .oao-kategorybox .oao-kategorybox--overlay:hover {
  background: rgba(0, 69, 135, 0.2);
}
.main .teaser--row {
  max-width: 1300px !important;
  min-height: auto;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 10px !important;
}
.main .teaser--row.height--30 {
  height: 30vh;
  min-height: 30vh !important;
}
.main .teaser--row.height--40 {
  height: 40vh !important;
  min-height: 40vh !important;
}
.main .teaser--row.height--50 {
  height: 50vh !important;
  min-height: 50vh !important;
}
.main .teaser--row.height--60 {
  height: 60vh !important;
  min-height: 60vh !important;
}
.main .teaser--row.height--70 {
  height: 70vh !important;
  min-height: 70vh !important;
}
.main .teaser--row.height--80 {
  height: 80vh !important;
  min-height: 80vh !important;
}
.main .teaser--row.height--90 {
  height: 90vh !important;
  min-height: 90vh !important;
}
.main .teaser--row.teaser--slider {
  position: relative;
  width: 100%;
  overflow: hidden !important;
}
.main .teaser--row.teaser--slider .vc_col-sm-4 {
  flex: 1 0 33.3333333333%;
  aspect-ratio: 1 !important;
  flex-flow: column nowrap;
  display: flex;
  justify-content: center;
  align-items: center;
  scroll-snap-align: center;
}
.main .teaser--row.teaser--slider .vc_col-sm-3 {
  flex: 1 0 25%;
  aspect-ratio: 1;
  flex-flow: column nowrap;
  display: flex;
  justify-content: center;
  align-items: center;
  scroll-snap-align: center;
}
.main .teaser--row.teaser--slider .carousel-wrapper {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory;
  flex-flow: row nowrap;
  scroll-behavior: smooth;
  -ms-overflow-style: none;
  scrollbar-width: none;
  margin-left: 35px;
  margin-right: 35px;
}
.main .teaser--row.teaser--slider .carousel-arrow {
  position: absolute;
  top: calc(50% - 31px);
  width: 70px;
  height: 42px;
  color: rgba(255, 255, 255, 0);
  text-align: center;
  line-height: 42px;
  cursor: pointer;
  z-index: 300;
  display: flex;
  justify-content: center;
  align-items: center;
}
.main .teaser--row.teaser--slider .carousel-arrow--prev {
  left: 0px;
  background: rgba(0, 69, 135, 0.3) url(./assets/img/pfeil-links-white.svg);
  padding: 10px;
  background-size: cover;
  background-repeat: no-repeat;
  background-origin: content-box;
  color: rgba(255, 255, 255, 0);
  transition: background 1s ease;
}
.main .teaser--row.teaser--slider .carousel-arrow--prev:hover, .main .teaser--row.teaser--slider .carousel-arrow--prev:focus {
  background: rgba(0, 69, 135, 0.6) url(./assets/img/pfeil-links-white.svg);
  padding: 10px;
  background-size: cover;
  background-repeat: no-repeat;
  background-origin: content-box;
}
.main .teaser--row.teaser--slider .carousel-arrow--next {
  right: 0px;
  background: rgba(0, 69, 135, 0.3) url(./assets/img/pfeil-rechts-white.svg);
  padding: 10px;
  background-size: cover;
  background-repeat: no-repeat;
  background-origin: content-box;
  background-position-x: -50px;
  color: rgba(255, 255, 255, 0);
}
.main .teaser--row.teaser--slider .carousel-arrow--next:hover, .main .teaser--row.teaser--slider .carousel-arrow--next:focus {
  background: rgba(0, 69, 135, 0.6) url(./assets/img/pfeil-rechts-white.svg);
  padding: 10px;
  background-size: cover;
  background-repeat: no-repeat;
  background-origin: content-box;
  background-position-x: -50px;
}
.main .teaser--row.zertifizierungen--slider .vc_col-sm-4 {
  aspect-ratio: unset !important;
  height: 600px !important;
}
.main .teaser--row.zertifizierungen--slider .teaser--img.zoom {
  width: 100%;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.main .teaser--row.zertifizierungen--slider .teaser--img.zoom img {
  width: auto !important;
  height: 100% !important;
  max-width: 100% !important;
  object-fit: contain !important;
}
.main .teaser--row .wpb_column {
  height: 100% !important;
}
.main .teaser--row .wpb_wrapper, .main .teaser--row .wpb_content_element {
  height: 100% !important;
}
.main .teaser--row .vc_column_container > .vc_column-inner {
  width: 100%;
  height: 100%;
  padding-left: 5px;
  padding-right: 5px;
}
.main .teaser--row .vc_col-sm-4 {
  flex: 1 0 33.3333333333%;
  aspect-ratio: 1;
  flex-flow: column nowrap;
  display: flex;
  justify-content: center;
  align-items: center;
  scroll-snap-align: center;
  margin-bottom: 10px;
}
.main .teaser--row .vc_col-sm-3 {
  flex: 1 0 25%;
  aspect-ratio: 1;
  flex-flow: column nowrap;
  display: flex;
  justify-content: center;
  align-items: center;
  scroll-snap-align: center;
}
.main .teaser--row .teaser--img {
  display: block;
  position: relative;
  height: 100%;
}
.main .teaser--row .teaser--img.height--100 {
  height: 100%;
}
.main .teaser--row .teaser--img.height--60 {
  height: calc(60% - 5px);
}
.main .teaser--row .teaser--img.height--50 {
  height: calc(50% - 5px);
}
.main .teaser--row .teaser--img.height--40 {
  height: calc(40% - 5px);
}
.main .teaser--row .teaser--img.height--quadrat, .main .teaser--row .teaser--img.height--Quadrat {
  aspect-ratio: 1 !important;
}
.main .teaser--row .teaser--img:nth-of-type(1) {
  margin-bottom: 10px;
}
.main .teaser--row .teaser--img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
.main .teaser--row .teaser--img .overlay {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  padding: 350px 40px 40px 40px;
  background: rgba(0, 69, 135, 0.3);
  transition: background 1s ease-in-out;
  z-index: 20;
}
.main .teaser--row .teaser--img .overlay h3, .main .teaser--row .teaser--img .overlay h4 {
  text-transform: none;
  hyphens: auto;
  -moz-hyphens: auto;
}
.main .teaser--row .teaser--img .overlay h3, .main .teaser--row .teaser--img .overlay p, .main .teaser--row .teaser--img .overlay strong, .main .teaser--row .teaser--img .overlay h4, .main .teaser--row .teaser--img .overlay h5, .main .teaser--row .teaser--img .overlay h6 {
  color: rgba(255, 255, 255, 0) !important;
  transition: color 1s ease-in-out;
}
.main .teaser--row .teaser--img .overlay:hover, .main .teaser--row .teaser--img .overlay:focus {
  background: rgba(0, 69, 135, 0.85);
  transition: background 1s ease-in-out;
  z-index: 25 !important;
}
.main .teaser--row .teaser--img .overlay:hover h3, .main .teaser--row .teaser--img .overlay:hover p, .main .teaser--row .teaser--img .overlay:hover strong, .main .teaser--row .teaser--img .overlay:hover h4, .main .teaser--row .teaser--img .overlay:hover h5, .main .teaser--row .teaser--img .overlay:hover h6, .main .teaser--row .teaser--img .overlay:focus h3, .main .teaser--row .teaser--img .overlay:focus p, .main .teaser--row .teaser--img .overlay:focus strong, .main .teaser--row .teaser--img .overlay:focus h4, .main .teaser--row .teaser--img .overlay:focus h5, .main .teaser--row .teaser--img .overlay:focus h6 {
  color: rgb(255, 255, 255) !important;
  transition: color 1s ease-in-out;
}
.main .teaser--row .teaser--img .overlay--single {
  width: 100%;
  height: 100%;
  padding: 40px;
  background: #004388;
}
.main .teaser--row .teaser--img .overlay--single h3, .main .teaser--row .teaser--img .overlay--single p, .main .teaser--row .teaser--img .overlay--single strong {
  color: rgb(255, 255, 255);
  margin-bottom: 15px !important;
}
.main .teaser--row .teaser--img a {
  font-size: 1.6rem;
  position: absolute;
  left: 25px;
  bottom: 25px;
}
.main .teaser--row .teaser--img a.button {
  font-family: "din-2014", sans-serif;
  background: rgba(0, 69, 135, 0.85);
  color: #fff;
  letter-spacing: 0.5px;
  padding: 10px 20px;
  text-transform: uppercase;
  box-shadow: none !important;
  transition: all 1s ease;
}
.main .teaser--row .teaser--img a.button::after {
  content: " ";
  position: absolute;
  right: 0px;
  top: 0px;
  width: 50px;
  height: 42px;
  background: url(./assets/img/icon-arrow-right.svg);
  background-size: 25px;
  background-position: center center;
  background-repeat: no-repeat;
  filter: invert(1);
  -webkit-filter: invert(1);
  opacity: 0;
}
.main .teaser--row .teaser--img a.button:hover, .main .teaser--row .teaser--img a.button:focus {
  background: #004388;
  text-decoration: none !important;
  padding: 10px 50px 10px 20px;
}
.main .teaser--row .teaser--img a.button:hover::after, .main .teaser--row .teaser--img a.button:focus::after {
  content: " ";
  position: absolute;
  right: 0px;
  top: 0px;
  width: 50px;
  height: 50px;
  background: url(./assets/img/icon-arrow-right.svg);
  background-size: 25px;
  background-position: center center;
  background-repeat: no-repeat;
  filter: invert(1);
  -webkit-filter: invert(1);
  opacity: 1;
}
.main .teaser--row .teaser--img .title-wrapper {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  padding: 40px;
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  z-index: 30;
  pointer-events: none;
}
.main .teaser--row .teaser--img label {
  font-size: 2.25rem;
  font-family: "din-2014", sans-serif;
  margin-bottom: 0px !important;
  width: 100%;
  z-index: 25;
}
.main .teaser--row .teaser--img label.title--main {
  color: rgb(255, 255, 255);
  text-shadow: #004388 0px 0px 20px;
  letter-spacing: 0px;
  line-height: 110%;
  box-shadow: none !important;
  transition: all 1s ease;
  text-align: left;
  font-size: 2.7rem;
  font-weight: 600;
  hyphens: auto; /* Silbentrennung aktivieren */
  overflow-wrap: break-word; /* bricht nur wenn nötig */
  word-break: normal; /* keine aggressiven Wortbrüche */
}
.main .teaser--row .teaser--img:hover label.title--main, .main .teaser--row .teaser--img:focus label.title--main {
  color: rgb(255, 255, 255);
  padding-bottom: 120px;
}
.main .vc_tta-panels-container .vc_tta-panels .vc_tta-panel-heading {
  border: none !important;
  border-bottom: 1px solid #6f6f6f !important;
  margin-top: 20px;
  border-radius: 0px;
  background: none !important;
  box-sizing: border-box !important;
}
.main .vc_tta-panels-container .vc_tta-panels .vc_tta-panel-heading h3.vc_tta-panel-title,
.main .vc_tta-panels-container .vc_tta-panels .vc_tta-panel-heading h4.vc_tta-panel-title {
  background: #004388 !important;
  margin-bottom: 0px !important;
}
.main .vc_tta-panels-container .vc_tta-panels .vc_tta-panel-heading h3.vc_tta-panel-title > a,
.main .vc_tta-panels-container .vc_tta-panels .vc_tta-panel-heading h4.vc_tta-panel-title > a {
  color: #fff !important;
  margin-bottom: 0px !important;
}
.main .vc_tta-color-grey.vc_tta-style-classic .vc_tta-panels-container .vc_tta-panels .vc_tta-panel .vc_tta-panel-heading {
  border: none !important;
  border-bottom: 1px solid #6f6f6f !important;
  margin-top: 20px;
  border-radius: 0px;
  background: none !important;
  box-sizing: border-box !important;
}
.main .vc_tta-color-grey.vc_tta-style-classic .vc_tta-panels-container .vc_tta-panels .vc_tta-panel .vc_tta-panel-heading h3.vc_tta-panel-title > a,
.main .vc_tta-color-grey.vc_tta-style-classic .vc_tta-panels-container .vc_tta-panels .vc_tta-panel .vc_tta-panel-heading h4.vc_tta-panel-title > a {
  color: #6f6f6f !important;
  padding: 0px 60px 20px 20px;
}
.main .vc_tta-color-grey.vc_tta-style-classic .vc_tta-panels-container .vc_tta-panels .vc_tta-panel .vc_tta-panel-heading h4.vc_tta-panel-title > a {
  font-size: 1.85rem;
}
.main .vc_tta-color-grey.vc_tta-style-classic .vc_tta-panels-container .vc_tta-panels .vc_tta-panel .vc_tta-panel-heading h4.vc_tta-panel-title > a span {
  font-weight: 700 !important;
}
.main .vc_tta-color-grey.vc_tta-style-classic .vc_tta-panels-container .vc_tta-panels .vc_tta-panel.vc_active .vc_tta-panel-heading {
  border: none !important;
  border-bottom: 1px solid #6f6f6f !important;
  background-color: #6f6f6f !important;
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
}
.main .vc_tta-color-grey.vc_tta-style-classic .vc_tta-panels-container .vc_tta-panels .vc_tta-panel.vc_active .vc_tta-panel-heading h3.vc_tta-panel-title > a,
.main .vc_tta-color-grey.vc_tta-style-classic .vc_tta-panels-container .vc_tta-panels .vc_tta-panel.vc_active .vc_tta-panel-heading h4.vc_tta-panel-title > a {
  color: #ffffff !important;
  padding: 20px 60px 20px 20px;
}
.main .vc_tta-color-grey.vc_tta-style-classic .vc_tta-panels-container .vc_tta-panels .vc_tta-panel.vc_active .vc_tta-panel-heading h3.vc_tta-panel-title > a .vc_tta-controls-icon,
.main .vc_tta-color-grey.vc_tta-style-classic .vc_tta-panels-container .vc_tta-panels .vc_tta-panel.vc_active .vc_tta-panel-heading h4.vc_tta-panel-title > a .vc_tta-controls-icon {
  color: #ffffff !important;
}
.main .vc_tta-color-grey.vc_tta-style-classic .vc_tta-panels-container .vc_tta-panels .vc_tta-panel .vc_tta-panel-body {
  background: #6f6f6f !important;
  margin-bottom: 20px;
  padding: 25px 30px;
  border-bottom-left-radius: 20px !important;
  border-bottom-right-radius: 20px !important;
}

.vc_cta3-container.vc_cta3-size-xl {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}

.vc_btn3-container.vc_btn3-left {
  text-align: right !important;
  float: none !important;
}

.vc_pageable-slide-wrapper .vc_grid-item .vc_grid-item-mini .vc_gitem_row .vc_gitem-col {
  padding: 30px;
}
.vc_pageable-slide-wrapper .vc_grid-item .vc_grid-item-mini .vc_gitem_row .vc_gitem-col h4 {
  font-size: 2rem;
}
.vc_pageable-slide-wrapper .vc_grid-item .vc_grid-item-mini .vc_gitem_row .vc_gitem-col .vc_btn3-container {
  margin-bottom: 0px;
}
.vc_pageable-slide-wrapper .vc_grid-item .vc_grid-item-mini .vc_gitem_row .vc_gitem-col .vc_btn3-container .vc_btn3-left {
  text-align: right !important;
}
.vc_pageable-slide-wrapper .vc_grid-item .vc_grid-item-mini .vc_gitem_row .vc_gitem-col .vc_btn3-container a.vc_btn3-color-juicy-pink {
  border-radius: 0px !important;
  background: transparent;
  color: #004388;
  opacity: 1 !important;
  text-transform: lowercase;
  font-size: 17px;
}
.vc_pageable-slide-wrapper .vc_grid-item .vc_grid-item-mini .vc_gitem_row .vc_gitem-col .vc_btn3-container a.vc_btn3-color-juicy-pink:hover {
  background-color: #004388 !important;
  color: #FFFFFF !important;
  border: 1px solid #004388 !important;
}

.vc_gitem-animated-block {
  max-height: 250px;
}

.page-header.header-small .container .hestia-title,
.page-header.header-small .container .title {
  display: none;
}

.author {
  display: none;
}

.page-header {
  display: none !important;
}

.vc_gitem-post-data h4 {
  font-family: "din-2014-narrow";
  font-weight: 400;
  position: relative;
  padding-bottom: 30px !important;
}
.vc_gitem-post-data h4::after {
  content: "";
  position: absolute;
  width: 76px;
  height: 4px;
  background-color: #004388;
  top: 40px;
  left: 0;
}

@media (max-width: 768px) {
  .owl-carousel .owl-item {
    width: 100% !important;
  }
}
.tablepress > :where(thead, tfoot) > tr > * {
  background-color: #FFFFFF !important;
  color: #004388 !important;
  font-family: "din-2014", sans-serif;
  font-weight: 300;
}

.tablepress > tbody.row-striping > tr:not(.child):not(.dtrg-group):nth-child(even) > * {
  background-color: #FFFFFF;
  color: #004388;
  font-weight: bold !important;
  font-size: 17px !important;
}

.tablepress > :where(tbody.row-striping) > :nth-child(2n+1 of :where(:not(.child, .dtrg-group))) > * {
  background-color: #f0f2fa !important;
  color: #004388 !important;
}

.vc_column-inner:has(.tablepress) {
  padding-top: 15px !important;
}

/* .quicklinks {
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  right: 0px;
  z-index: 1000;
  display: flex;
  flex-direction: column;

  a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 45px;
    background: rgba(0, 0, 0, 0.35);
    margin-bottom: 2px;
    border: solid 1px #FFFFFF;
    border-radius: 0px;
    transition: background 0.3s ease;

    svg {
      width: 20px;
      height: 20px;
      fill: #ffffff !important;
    }

    &:hover {
      background: rgba(0, 69, 135, 0.8);
    }
  }
} */
.hestia-scroll-to-top {
  display: block;
  right: 0px;
  bottom: 50px;
  padding: 10px 12px;
  width: 40px;
  height: 40px;
  background: #6f6f6f;
  margin-bottom: 0px;
  border-radius: 0px;
  line-height: 20px !important;
}
.hestia-scroll-to-top:hover {
  box-shadow: none !important;
}

.footer.footer.footer-black hr {
  border-color: #000000;
}

footer.footer.footer-black {
  position: relative;
  background: #000000 !important;
  padding: 50px 8% 0px 8%;
  margin-top: 0px;
  z-index: 200;
  font-size: 1.6rem;
}
footer.footer.footer-black .copyright {
  display: none;
}
footer.footer.footer-black > .container {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  text-align: left;
  background-color: #000000;
  color: #ffffff;
  padding: 30px;
  margin-bottom: 0px;
  width: 100%;
  max-width: 1200px;
}
footer.footer.footer-black > .container > div {
  z-index: 200;
}
footer.footer.footer-black > .container:before, footer.footer.footer-black > .container:after {
  content: none;
}
footer.footer.footer-black > .container h3 {
  color: #ffffff;
  font-size: 12pt;
  font-weight: 500;
  letter-spacing: 1px;
}
footer.footer.footer-black > .container p, footer.footer.footer-black > .container a {
  color: #ffffff;
  opacity: 1 !important;
  font-size: 1.6rem;
  font-family: "din-2014-light", sans-serif;
  font-weight: 300;
}
footer.footer.footer-black > .container p a {
  color: #ffffff;
  padding-bottom: 3px;
  border-bottom: 2px solid #ffffff;
}
footer.footer.footer-black > .container a.button {
  position: relative;
  display: inline-block;
  padding: 5px 10px 5px 0px;
  border: 1px solid #ffffff;
  border-radius: 5px;
  margin-right: 10px;
}
footer.footer.footer-black > .container a.button i {
  display: inline-block;
  float: left;
  padding: 8px;
  background: #ffffff;
  top: -5px;
  height: 100%;
}
footer.footer.footer-black > .container .footer-col.lg-3 {
  width: calc(33.3333333333% - 20px);
}
footer.footer.footer-black > .container .footer-col.lg-3:first-of-type, footer.footer.footer-black > .container .footer-col.lg-3:last-of-type {
  display: flex;
  flex-direction: row;
  align-items: end;
}
footer.footer.footer-black > .container .footer-col.lg-3:first-of-type p, footer.footer.footer-black > .container .footer-col.lg-3:last-of-type p {
  line-height: 2.25rem;
}
footer.footer.footer-black > .container .footer-col.lg-3:first-of-type p a:hover, footer.footer.footer-black > .container .footer-col.lg-3:first-of-type p a:focus, footer.footer.footer-black > .container .footer-col.lg-3:last-of-type p a:hover, footer.footer.footer-black > .container .footer-col.lg-3:last-of-type p a:focus {
  text-decoration: none !important;
}
footer.footer.footer-black > .container .footer-col.lg-3:last-of-type p {
  width: 100%;
  text-align: right;
}
footer.footer.footer-black > .container .footer-col.lg-3:last-of-type p a {
  margin-right: 0px;
}
footer.footer.footer-black > .container .footer-col.lg-3:nth-of-type(2) {
  text-align: center;
}
footer.footer.footer-black > .container .footer-col i {
  color: #ffffff;
}
footer.footer.footer-black > .container .footer-brand {
  max-width: 225px;
  margin: 0 auto 30px auto;
}
footer.footer.footer-black > .container .footer-menu {
  margin-top: 0px;
  display: flex;
  flex-direction: column;
  justify-content: start;
}
footer.footer.footer-black > .container .footer-menu li.menu-item a {
  padding: 0px;
  color: #ffffff;
  font-size: 14px;
  display: block;
}
footer.footer.footer-black .footer-bottom-row {
  padding: 0 0 100px 0 !important;
}

.widget {
  color: #ffffff !important;
}
.widget p {
  color: #ffffff !important;
}

@media (max-width: 1100px) {
  header .navbar.hestia_left > .container {
    padding: 15px;
  }
  header .navbar.hestia_left .menu-item, header .navbar.hestia_left .menu-item:hover {
    padding: 15px 5px;
  }
  .main .vc_tta-tabs .vc_tta-tabs-list {
    column-gap: 25px;
  }
}
@media (max-width: 991px) {
  .main h1, .main h1 a {
    font-size: 4rem;
  }
  .main h2, .main h2 a {
    font-size: 3rem;
  }
  .main h3, .main h3 a {
    font-size: 2rem;
  }
  .main h4, .main h4 a {
    font-size: 2rem;
  }
  .main .container {
    width: 100%;
    padding-left: 30px;
    padding-right: 30px;
  }
  .main .vc_row .vc_col-sm-4 > .vc_column-inner, .main .vc_row .vc_col-sm-3 > .vc_column-inner {
    padding: 0 10px;
  }
  .main .vc_row .vc_col-sm-6 {
    width: calc(50% - 10px);
  }
  .main .vc_row .vc_col-sm-6:first-child {
    margin-right: 10px;
  }
  .main .vc_row .vc_col-sm-6:last-child {
    margin-left: 10px;
  }
  .main .vc_tta-tabs .vc_tta-tab a {
    font-size: 2rem;
  }
  footer.footer.footer-black > .container {
    width: 100%;
  }
}
footer.footer.footer-black > .container {
  align-items: flex-start !important;
}

@media (max-width: 767px) {
  .main section {
    padding-top: 70px !important;
  }
  .main section.vc_section {
    padding-top: 70px;
    padding-bottom: 50px;
  }
  .main section.header--img {
    display: flex;
    align-items: flex-end !important;
    min-height: 50vh;
  }
  .main section.header--img h1, .main section.header--img h2, .main section.header--img h3 {
    font-size: 3.25rem;
  }
  .main .vc_empty_space {
    display: none;
  }
  .main .vc_col-has-fill {
    min-height: 350px;
  }
  .main .vc_row .vc_col-sm-6, .main .vc_row .vc_col-sm-4, .main .vc_row .vc_col-sm-3 {
    width: calc(100% - 20px);
    margin: 15px 10px;
  }
  .main .vc_row .vc_col-sm-6:first-child, .main .vc_row .vc_col-sm-4:first-child, .main .vc_row .vc_col-sm-3:first-child {
    margin-top: 0;
  }
  .main .vc_row .vc_col-sm-6:last-child, .main .vc_row .vc_col-sm-4:last-child, .main .vc_row .vc_col-sm-3:last-child {
    margin-bottom: 0;
  }
  .main .vc_row.timeline--slider {
    max-width: calc(100vw - 0px) !important;
    border-bottom: 2px dotted #fff;
  }
  .main .vc_row.timeline--slider .wpb_wrapper {
    gap: 40px;
    padding-bottom: 0px;
  }
  .main .vc_row.timeline--slider .wpb_wrapper .timeline-element {
    flex: 1 0 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
  }
  .main .wpb_column .vc-hoverbox-wrapper {
    margin: 0 -15px !important;
  }
  .main .teaser--row {
    max-width: 1400px !important;
    min-height: auto;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 10px !important;
  }
  .main .teaser--row .title--main {
    font-size: 25px !important;
    line-height: 1.1 !important;
  }
  .main .teaser--row .vc_col-sm-4 {
    flex: 1 0 100%;
    aspect-ratio: 2;
    margin: 15px 0px !important;
  }
  .main .teaser--row .vc_col-sm-3 {
    flex: 1 0 100%;
    aspect-ratio: 2;
    margin: 15px 0px !important;
  }
  .main .teaser--row.teaser--slider .vc_col-sm-4 {
    flex: 1 0 100% !important;
  }
  .main .teaser--row.teaser--slider .vc_col-sm-3 {
    flex: 1 0 100% !important;
  }
  .main .teaser--row .teaser--img {
    display: block;
    position: relative;
    height: 100%;
  }
  .main .teaser--row .teaser--img .overlay, .main .teaser--row .teaser--img .overlay--single {
    padding: 30px !important;
    z-index: 20;
  }
  .main .teaser--row .teaser--img .title-wrapper {
    padding: 30px;
  }
  .main .partner .wpb_single_image, .main .partner .vc_grid-item {
    width: calc(50% - 30px);
    margin-left: 15px;
    margin-right: 15px;
    float: left !important;
  }
  .main .partner .vc_grid-item {
    margin: 0;
    width: 33%;
  }
  footer.footer.footer-black > .container {
    width: 100%;
    flex-wrap: wrap;
  }
  footer.footer.footer-black > .container > div {
    width: 100%;
  }
  footer.footer.footer-black > .container .footer-col.lg-3 {
    width: 100%;
  }
}
.service-prozess-grafik {
  max-width: 100vw !important;
  width: 100vw !important;
  margin-left: calc(-50vw + 50%) !important;
  margin-right: calc(-50vw + 50%) !important;
}
.service-prozess-grafik * {
  width: 100% !important;
  max-width: 100% !important;
}
.service-prozess-grafik img {
  height: auto !important;
  display: block !important;
}

/* ---- FORMULAR ---- */
.frm_form_field input, .frm_form_field select, .frm_form_field textarea {
  width: 100% !important;
  box-sizing: border-box !important;
  display: block !important;
  height: auto !important;
  margin: 0 !important;
}
.frm_form_field label {
  display: block;
  margin-bottom: 5px;
  font-size: 1rem;
}

#frm_form_1_container label, #frm_form_1_container .frm_primary_label {
  color: #004388 !important;
}
#frm_form_1_container input, #frm_form_1_container textarea, #frm_form_1_container select {
  color: #004388 !important;
  border: 1px solid #004388 !important;
  border-radius: 0 !important;
}
#frm_form_1_container .frm_fields_container {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  grid-auto-rows: minmax(50px, auto) !important;
  gap: 20px !important;
  align-items: start !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
#frm_form_1_container #frm_field_7_container {
  grid-column: 1 !important;
  grid-row: 1 !important;
}
#frm_form_1_container #frm_field_8_container {
  grid-column: 1 !important;
  grid-row: 2 !important;
}
#frm_form_1_container #frm_field_9_container {
  grid-column: 1 !important;
  grid-row: 3 !important;
}
#frm_form_1_container #frm_field_12_container {
  grid-column: 2 !important;
  grid-row: 1 !important;
}
#frm_form_1_container #frm_field_10_container {
  grid-column: 2 !important;
  grid-row: 2 !important;
}
#frm_form_1_container #frm_field_11_container {
  grid-column: 2 !important;
  grid-row: 3 !important;
}
#frm_form_1_container #frm_field_13_container {
  grid-column: 1/span 2 !important;
}
#frm_form_1_container #frm_field_6_container {
  grid-column: 1/span 2 !important;
  margin-top: 20px !important;
}
#frm_form_1_container .frm_submit.frm_flex {
  display: flex !important;
  justify-content: flex-start !important;
}
#frm_form_1_container .frm_button_submit {
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  background-color: #004388 !important;
  color: #ffffff !important;
  border: 1px solid #004388 !important;
  padding: 10px 20px !important;
}
#frm_form_1_container .frm_button_submit:hover {
  background-color: transparent !important;
  color: #004388 !important;
  border: 1px solid #004388 !important;
}
#frm_form_1_container .frm_button_submit:focus, #frm_form_1_container .frm_button_submit:active {
  box-shadow: none !important;
  outline: none !important;
}

@media (max-width: 768px) {
  #frm_form_1_container .frm_fields_container {
    grid-template-columns: 1fr !important;
  }
  #frm_form_1_container #frm_field_7_container, #frm_form_1_container #frm_field_8_container, #frm_form_1_container #frm_field_9_container,
#frm_form_1_container #frm_field_12_container, #frm_form_1_container #frm_field_10_container, #frm_form_1_container #frm_field_11_container,
#frm_form_1_container #frm_field_13_container, #frm_form_1_container #frm_field_6_container {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
}
/* ---- NIVOSLIDER ---- */
.nivoSlider {
  box-shadow: none !important;
}
.nivoSlider .nivo-caption {
  position: absolute;
  left: 10px;
  bottom: 10px;
  background: rgba(255, 255, 255, 0.8);
  color: #000;
  width: calc(100% - 20px);
  z-index: 8;
  padding: 10px 15px;
  opacity: 1;
  -moz-opacity: 1;
  overflow: hidden;
  display: none;
  box-sizing: border-box;
  font-family: "din-2014-light", sans-serif;
  font-weight: 400;
  font-size: 1.6rem;
}

/* ---- POPUP ---- */
#aktuelles-popup {
  position: fixed;
  bottom: 75px;
  right: 75px;
  z-index: 6000;
  transition: all 1s ease;
  display: flex;
  flex-direction: column;
  max-width: 500px;
  width: 90%;
  overflow-y: scroll !important;
  max-height: calc(100vh - 200px);
}
#aktuelles-popup.hidden {
  right: -1000px;
  transition: all 1s ease;
}
#aktuelles-popup .thumbnail {
  width: 100%;
}
#aktuelles-popup .popup-content {
  background-color: #FFF;
  padding: 40px;
  text-align: left;
  position: relative;
}
#aktuelles-popup .popup-content h3 {
  font-family: "din-2014", sans-serif;
  font-size: 2.5rem;
  font-weight: 700;
  color: #004388;
  margin-top: 0;
}
#aktuelles-popup .popup-content h3 a:hover {
  text-decoration: none;
}
#aktuelles-popup .popup-content h3 strong {
  font-weight: 700;
}
#aktuelles-popup .popup-content p {
  color: #000000;
  font-size: 1.6rem;
  margin-bottom: 20px;
}
#aktuelles-popup .popup-content .vc_btn3-container {
  margin-bottom: 0px !important;
}
#aktuelles-popup .popup-content .vc_btn3-container .vc_btn3 {
  font-family: "din-2014", sans-serif;
  font-size: 1.6rem !important;
  font-weight: 500 !important;
  padding: 10px !important;
  box-shadow: none !important;
  background: #004388 !important;
  color: #ffffff !important;
  letter-spacing: 0.5px;
  text-transform: uppercase !important;
  border-radius: 0px !important;
}
#aktuelles-popup .popup-content .vc_btn3-container .vc_btn3:hover {
  opacity: 1 !important;
  background: #D6DEEF !important;
  color: #ffffff !important;
}

#aktuelles-popup .close-btn {
  position: absolute;
  top: 0px;
  right: 0px;
  font-size: 40px;
  line-height: 40px;
  cursor: pointer;
  padding: 2px 10px 2px 10px;
  background: #004388;
  color: #fff;
  z-index: 20;
}

.hidden {
  display: none;
}

@media (max-width: 600px) {
  #aktuelles-popup {
    position: fixed;
    top: 80px;
    left: 40px;
    right: auto;
    bottom: auto;
    z-index: 6000;
    transition: all 1s ease;
    display: flex;
    flex-direction: column;
    width: calc(100% - 80px);
    max-height: calc(100vh - 160px);
    overflow: scroll;
  }
}
.home .main-raised section:first-of-type {
  border-radius: 0;
}

.related-posts .category a,
.related-posts h4 a,
.related-posts .hestia-title a {
  color: #004388 !important;
}

.entry-categories .label-primary {
  background-color: #004388 !important;
}
.entry-categories .label-primary a {
  color: #ffffff !important;
}

/* Versteckt eventuelle Reste des alten Buttons */
.back-button {
  display: none !important;
}

.km-back-button-final {
  display: inline-block !important;
  background-color: #004388 !important;
  color: #ffffff !important;
  padding: 10px 20px !important;
  text-decoration: none !important;
  font-weight: bold !important;
  font-size: 14px;
  margin-top: 30px !important;
  margin-bottom: 15px !important;
  transition: background-color 0.3s ease;
}
.km-back-button-final:hover {
  background-color: #002a55 !important;
  color: #ffffff !important;
}

.section-related-posts .km-back-button-final,
.related-posts .km-back-button-final {
  display: none !important;
}

.main-raised {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}

body.single-post .main.main-raised {
  box-shadow: none !important;
}
body.single-post .single-post-wrap .wp-block-spacer {
  display: none !important;
}
body.single-post .related-posts {
  background-color: #004388 !important;
}
body.single-post .related-posts .row {
  display: flex !important;
  flex-wrap: wrap !important;
}
body.single-post .related-posts .col-md-4 {
  display: flex !important;
}
body.single-post .related-posts .card, body.single-post .related-posts .card-blog {
  border-radius: 0 !important;
  box-shadow: none !important;
  background-color: #FFFFFF !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
}
body.single-post .related-posts .card .content, body.single-post .related-posts .card-blog .content {
  flex: 1 !important;
}
body.single-post .related-posts .card .content {
  background-color: #ffffff !important;
  border-radius: 0 !important;
  flex-shrink: 0 !important;
}
body.single-post .related-posts .card-image {
  box-shadow: none !important;
  width: 100% !important;
  margin: 0 !important;
}
body.single-post .related-posts .card-image, body.single-post .related-posts .card-image a, body.single-post .related-posts .card-image img {
  border-radius: 0 !important;
}
body.single-post .related-posts img {
  width: 100% !important;
  height: auto !important;
  object-fit: unset !important;
  border-radius: 0 !important;
  transform: none !important;
  top: auto !important;
  position: relative !important;
  margin: 0 !important;
}
body.single-post .related-posts h2, body.single-post .related-posts .hestia-title {
  color: #ffffff !important;
}
body.single-post .related-posts .category a, body.single-post .related-posts h4 a, body.single-post .related-posts .blog-item-title-link {
  color: #004388 !important;
}
body.single-post .related-posts .card-description {
  color: #004388 !important;
}

/* ---- QUICKLINKS ---- */
.quicklinks--scroll {
  display: none;
}

.quicklinks {
  position: fixed;
  top: calc(50vh - 40px);
  right: 0px;
  z-index: 10;
}
.quicklinks a {
  display: block;
  position: relative;
  padding: 10px 12px;
  width: 60px;
  height: 60px;
  background: #004388;
  margin-bottom: 0px;
}
.quicklinks a span {
  position: absolute;
  right: -200px;
  top: 0px;
  width: 200px;
  height: 60px;
  color: #fff;
  background: #004388;
  transition: all 1s ease;
  padding: 20px 20px 20px;
  text-transform: uppercase;
  z-index: -1;
}
.quicklinks a:hover, .quicklinks a:focus {
  opacity: 1 !important;
}
.quicklinks a:hover span, .quicklinks a:focus span {
  right: 40px;
}
.quicklinks a.phone {
  margin-bottom: 20px;
}
.quicklinks a.phone::after {
  content: " ";
  position: absolute;
  right: 0px;
  top: 0px;
  width: 60px;
  height: 60px;
  background: url(./assets/img/icon-phone.svg);
  background-size: 25px;
  background-position: center center;
  background-repeat: no-repeat;
  filter: invert(1);
  -webkit-filter: invert(1);
}
.quicklinks a.mail {
  margin-bottom: 7px;
}
.quicklinks a.mail::after {
  content: " ";
  position: absolute;
  right: 0px;
  top: 0px;
  width: 60px;
  height: 60px;
  background: url(./assets/img/icon-mail.svg);
  background-size: 25px;
  background-position: center center;
  background-repeat: no-repeat;
  filter: invert(1);
  -webkit-filter: invert(1);
}
.quicklinks a.instagram::after {
  content: " ";
  position: absolute;
  right: 0px;
  top: 0px;
  width: 60px;
  height: 60px;
  background: url(./assets/img/instagram.svg);
  background-size: 25px;
  background-position: center center;
  background-repeat: no-repeat;
  filter: invert(1);
  -webkit-filter: invert(1);
}
.quicklinks a.facebook::after {
  content: " ";
  position: absolute;
  right: 0px;
  top: 0px;
  width: 60px;
  height: 60px;
  background: url(./assets/img/facebook.svg);
  background-size: 25px;
  background-position: center center;
  background-repeat: no-repeat;
  filter: invert(1);
  -webkit-filter: invert(1);
}
.quicklinks a.linkedin::after {
  content: " ";
  position: absolute;
  right: 0px;
  top: 0px;
  width: 60px;
  height: 60px;
  background: url(./assets/img/icon-linkedin.svg);
  background-size: 25px;
  background-position: center center;
  background-repeat: no-repeat;
  filter: invert(1);
  -webkit-filter: invert(1);
}

/* ---- POPUP ---- */
#aktuelles-popup {
  position: fixed;
  bottom: 75px;
  right: 75px;
  z-index: 6000;
  transition: all 1s ease;
  display: flex;
  flex-direction: column;
  max-width: 500px;
  width: 90%;
  overflow-y: scroll !important;
  max-height: calc(100vh - 200px);
}
#aktuelles-popup.hidden {
  right: -1000px;
  transition: all 1s ease;
}
#aktuelles-popup .thumbnail {
  width: 100%;
}
#aktuelles-popup .thumbnail img {
  width: 100%;
  display: block;
}
#aktuelles-popup .popup-content {
  background-color: #ffffff;
  padding: 40px;
  text-align: left;
  position: relative;
}
#aktuelles-popup .popup-content h3 {
  font-family: "din-2014", sans-serif;
  font-size: 2.5rem;
  font-weight: 700;
  color: #004388;
  margin-top: 0;
}
#aktuelles-popup .popup-content h3 a:hover {
  text-decoration: none;
}
#aktuelles-popup .popup-content h3 strong {
  font-weight: 700;
}
#aktuelles-popup .popup-content p {
  color: #000000;
  font-size: 1.6rem;
  margin-bottom: 20px;
}
#aktuelles-popup .popup-content a.vc_btn3, #aktuelles-popup .popup-content .vc_btn3 {
  font-family: "din-2014", sans-serif;
  font-size: 1.6rem !important;
  font-weight: 500 !important;
  padding: 10px 20px !important;
  box-shadow: none !important;
  background: #004388 !important;
  color: #ffffff !important;
  letter-spacing: 0.5px;
  text-transform: uppercase !important;
  border-radius: 0px !important;
}
#aktuelles-popup .popup-content a.vc_btn3:hover, #aktuelles-popup .popup-content .vc_btn3:hover {
  opacity: 1 !important;
  background: #D6DEEF !important;
  color: #ffffff !important;
}
#aktuelles-popup .close-btn {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 40px;
  line-height: 40px;
  cursor: pointer;
  padding: 2px 10px;
  background: #004388;
  color: #fff;
  z-index: 20;
}

.hidden {
  display: none;
}

@media (max-width: 600px) {
  #aktuelles-popup {
    position: fixed;
    top: 80px;
    left: 40px;
    right: auto;
    bottom: auto;
    z-index: 6000;
    width: calc(100% - 80px);
    max-height: calc(100vh - 160px);
    overflow: scroll;
  }
}
#km-lightbox {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.85);
  z-index: 99999;
  justify-content: center;
  align-items: center;
}
#km-lightbox.active {
  display: flex;
}
#km-lightbox .km-lightbox-inner {
  position: relative;
  max-width: 90vw;
  max-height: 90vh;
}
#km-lightbox .km-lightbox-inner img {
  max-width: 90vw;
  max-height: 90vh;
  object-fit: contain;
  display: block;
}
#km-lightbox .km-lightbox-close {
  position: absolute;
  top: -40px;
  right: -40px;
  color: #ffffff;
  font-size: 8rem;
  cursor: pointer;
  line-height: 1;
}
#km-lightbox .km-lightbox-close:hover {
  color: #D6DEEF;
}

body {
  font-variant-ligatures: none;
  text-rendering: optimizeSpeed;
}

.header--img {
  position: relative;
  overflow: hidden;
  min-height: 100vh;
}
.header--img .bg-slider-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  transition: opacity 1s ease-in-out;
  z-index: 0;
}
.header--img .vc_row:has(.wpb_text_column) {
  position: relative;
  z-index: 1;
}

/* ---- WORLD-MAP ---- */
.world-map-wrapper {
  width: 100%;
  position: relative;
}

.world-map-stage {
  position: relative;
  width: 100%;
  line-height: 0;
}

.world-map-svg {
  position: relative;
  z-index: 1;
}

.world-map-svg svg {
  display: block;
  width: 100%;
  height: auto;
}

.world-map-markers {
  position: absolute;
  inset: 0;
  z-index: 5;
  pointer-events: none;
}
.world-map-markers .world-marker {
  position: absolute;
  transform: translate(-50%, -100%);
  pointer-events: auto;
  background: transparent;
  border: 0;
  padding: 0;
  margin: 0;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  z-index: 6;
}
.world-map-markers .world-marker[data-title=Deutschland] .world-pin-inner {
  background-color: #888;
}
.world-map-markers button {
  box-shadow: none !important;
}
.world-map-markers button:hover, .world-map-markers button:focus {
  background: none;
}
.world-map-markers button .world-pin {
  position: relative;
  display: block;
  width: 39px;
  height: 39px;
  background: #fff;
  border-radius: 50% 50% 50% 0;
  border: 2px solid #ffffff;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25) !important;
  transform: rotate(-45deg);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  overflow: visible;
}
.world-map-markers button .world-pin .world-pin-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 30px;
  height: 30px;
  background-color: #0b4ea2;
  border-radius: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  background-image: url("https://koenig.oao-entwicklung.de/wp-content/uploads/2026/04/krone.png");
  background-size: 50%;
  background-repeat: no-repeat;
  background-position: center;
}

.world-marker:hover .world-pin,
.world-marker:focus .world-pin {
  transform: rotate(-45deg) scale(1.08);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.32);
}

.world-map-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
}

.world-map-modal.is-active {
  display: block;
}

.world-map-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
}

.world-map-modal__dialog {
  position: relative;
  z-index: 2;
  width: min(92vw, 560px);
  margin: 8vh auto 0;
  background: #ffffff;
  border-radius: 0px;
  padding: 32px 28px 28px;
}

.world-map-modal__close {
  position: absolute;
  top: 12px;
  right: 14px;
  width: 38px;
  height: 38px;
  border: 0;
  background: transparent;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  color: #1c1c1c;
  box-shadow: none !important;
}
.world-map-modal__close:hover, .world-map-modal__close:focus {
  color: #e6e9f5 !important;
  filter: brightness(80%);
  background: none !important;
}

.world-map-modal__eyebrow {
  font-size: 13px;
  line-height: 1.4;
  color: #6a6f76;
  margin-bottom: 8px;
}

.world-map-modal__title {
  margin: 0 0 12px;
  font-size: 28px;
  line-height: 1.2;
  color: #111;
}

.world-map-modal__text {
  font-size: 16px;
  line-height: 1.6;
  color: #3e4650;
  margin-bottom: 20px;
}

.world-map-modal__link {
  display: none;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 18px;
  margin-top: 20px;
  border-radius: 999px;
  background: #0b4ea2;
  color: #fff;
  text-decoration: none;
  font-weight: 600;
}

.world-map-modal__link:hover {
  background: #083b7c;
  color: #fff;
}

body.world-map-modal-open {
  overflow: hidden;
}

.world-map-modal__contact,
.world-map-modal__address {
  font-size: 16px;
  line-height: 1.4;
  color: #3e4650;
  padding-top: 5px;
}

.world-map-modal__contact-label,
.world-map-modal__address-label {
  font-weight: 700;
}

.world-map-modal__contact-email,
.world-map-modal__contact-phone,
.world-map-modal__address-street,
.world-map-modal__address-city,
.world-map-modal__address-country {
  display: flex;
  gap: 6px;
  align-items: center;
}

.world-map-modal__contact-email .contact-label,
.world-map-modal__contact-phone .contact-label {
  min-width: 45px;
}

.world-map-modal__contact-email a,
.world-map-modal__contact-phone a,
.world-map-modal__address-street a,
.world-map-modal__address-city a,
.world-map-modal__address-country a {
  color: #004388;
}

@media (max-width: 767px) {
  .world-pin {
    width: 20px;
    height: 20px;
  }
  .world-pin-inner {
    width: 6px;
    height: 6px;
  }
  .world-map-modal__dialog {
    width: min(94vw, 560px);
    margin-top: 5vh;
    padding: 26px 20px 22px;
  }
  .world-map-modal__title {
    font-size: 24px;
  }
  .world-map-modal__text {
    font-size: 15px;
  }
}

/*# sourceMappingURL=style.css.map */
