body.nav-active {
  height: 100vh !important;
  overflow: hidden;
}

@media (min-width: 576px) {
  .d-lg-none {
    display: none !important;
  }
}

.mt-0 {
  margin-top: 0 !important;
}

.main-block {
  margin-top: 0 !important;
}

.logo a {
  display: initial;
  width: initial;
  height: initial;
  overflow: visible;
  background: initial;
}

.bg-white {
  background: #fff;
}

/** header */
#header {
  border: 0;
  z-index: 30;
}

#header .logo {
  background-color: initial;
}

/** /header **/

/** nav **/
#nav li .drop-holder .drop-holder {
  position: static;
  margin-left: -22px;
  padding: 0;
}

#nav .drop-holder .has-drop-down-a::after {
  content: "\276f";
  position: absolute;
  right: -2px;
  color: #7bb7e2;
}

#nav .drop-holder .has-drop.hover > .has-drop-down-a::after {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

#nav a {
  -webkit-transition: all 0.3s linear;
  -o-transition: all 0.3s linear;
  transition: all 0.3s linear;
}

#nav ul ul li.hover .drop-holder {
  display: block;
}

#nav ul ul li.hover > .drop-holder {
  display: block;
}

#nav .drop-holder ul {
  padding: 15px 0;
}

#nav li .drop-holder .drop-holder ul a::after {
  color: #fff;
}

/** /nav ***/

/** tabs **/

.tabs {
  position: relative;
  z-index: 20;
}

.tabs .wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -10px;
}

.tabs nav a {
  transition: all 0.2s linear;
}

.tabs .wrapper * {
  margin: 0 10px;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.tabs .ship-details {
  padding-bottom: 55px;
}

.tabs nav a {
  padding: 25px;
  text-align: center;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  -webkit-box-shadow: 0px 4px 22px 0px rgb(33 35 38 / 20%);
  box-shadow: 0px 4px 22px 0px rgb(33 35 38 / 20%);
  color: #172c42;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  font-family: "ralewaybold", Arial, Helvetica, sans-serif;
}

.tabs nav a.active {
  -webkit-box-shadow: none;
  box-shadow: none;
  background-color: #172c42;
  color: #fff;
}

.tabs nav a:hover {
  text-decoration: none;
}

.tab-pane {
  display: none;
}

.tab-pane.active {
  display: block;
}

/** tabs */

/** footer **/
.footer-holder {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#footer .logo-footer {
  float: none;
}

#footer .links-block {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  margin-left: 100px;
}

#footer .col-holder {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: initial;
}

#footer .links-block .col {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
#footer {
  padding: 50px 0;
}

#footer .footer-holder {
  padding: 0 25px 0;
}

#footer .logo-footer {
  border: 0;
  position: relative;
  margin: 0;
  margin-bottom: 30px;
  display: block;
  padding-bottom: 25px;
}

#footer .logo-footer::after {
  content: "";
  width: 88px;
  height: 2px;
  bottom: 0;
  left: 0;
  background-color: rgb(255 255 255 / 20%);
  position: absolute;
}

#footer .copyright {
  font-size: 12px;
  color: rgb(255 255 255 / 50%);
  line-height: calc(14 / 12);
  font-family: "Work Sans", sans-serif;
  font-weight: 400;
}

#footer .links-block li a {
  color: rgb(255 255 255 / 70%);
  font-weight: 600;
  font-family: "ralewaysemibold", Arial, Helvetica, sans-serif;
  font-size: 12px;
  -webkit-transition: all 0.3s linear;
  -o-transition: all 0.3s linear;
  transition: all 0.3s linear;
}
#footer .links-block li a:hover {
  color: #7ba3c2;
  text-decoration: none;
}

#footer .links-block .col:first-child {
  margin-right: 0;
}

/** /footer **/

/** banner  **/

.banner .content-holder {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  height: initial;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  padding: 0 26px;
}

.banner .content-holder .description {
  max-width: 464px;
}

.banner .slider-content {
  text-align: left;
}

.banner img {
  margin: 0 !important;
  min-height: 480px;
  height: calc(100vh - 45px) !important;
  -o-object-fit: cover;
  object-fit: cover;
}

.banner .slider-content h1,
.banner .slider-content h2 {
  border: 0;
  font-size: 44px;
  font-weight: 700;
  padding-top: 0;
  padding-bottom: 0;
  line-height: calc(50 / 44);
  font-family: "ralewaybold", Arial, Helvetica, sans-serif;
}

.banner .slider-content p {
  font-size: 18px;
  font-weight: 500;
  font-family: "ralewaymedium", Arial, Helvetica, sans-serif;
}

.banner .pagination {
  top: initial !important;
  right: initial !important;
  bottom: 95px !important;
}

.banner .slideset > .slide {
  height: 100% !important;
}

.banner .button {
  min-width: 225px;
  text-align: center;
  background-color: rgb(123 183 226 / 70%);
  margin-right: 20px;
  font-size: 14px;
  padding: 10px;
  display: inline-block;
  color: #fff;
  letter-spacing: 2px;
  text-transform: uppercase;
  text-shadow: none;
  margin-bottom: 10px;
  font-weight: 700;
  font-family: "ralewaybold", Arial, Helvetica, sans-serif;
  -webkit-transition: all 0.3s linear;
  -o-transition: all 0.3s linear;
  transition: all 0.3s linear;
}

.banner .button:hover {
  background-color: rgb(123 183 226);
  text-decoration: none;
}

.cycle-gallery.shape {
  min-height: 480px;
}

.banner .mask {
  min-height: 480px;
  height: calc(100vh - 45px);
  max-height: initial !important;
}

.banner .slider-content {
  margin-top: 0 !important;
}

.banner .content-holder,
.banner .slider-content {
  text-align: center;
}

/** /banner **/

/** pattern **/

.pattern::before,
.pattern::after {
  content: "";
  height: 39px;
  position: absolute;
  bottom: 0;
  background-image: initial !important;
  background-color: #fff;
  z-index: 3;
}

.pattern .shape::before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  bottom: 0;
  right: -9999px;
  left: 50%;
  margin-left: -119px;
  z-index: 3;
  border-left: 119px solid #fff;
  border-right: 119px solid #fff;
  border-top: 39px solid transparent;
  background-image: initial !important;
}

.pattern:before {
  left: -9999px;
  right: 50%;
  margin-right: 119px;
}

.pattern::after {
  right: -9999px;
  left: 50%;
  margin-left: 119px;
}

.pattern.blue::before,
.pattern.blue::after {
  background-color: #172c42 !important;
}

.pattern.blue .shape::before {
  border-left: 119px solid #172c42;
  border-right: 119px solid #172c42;
  border-top: 39px solid transparent;
}

/** pattern **/

@media (min-width: 1000px) {
  .scroll-header .logo {
    background-color: initial;
  }

  .logo > span,
  .logo:after {
    content: none;
  }

  /** header **/

  #header {
    position: absolute;
    top: 20px;
    width: 100%;
    -webkit-box-shadow: none;
    box-shadow: none;
    background-color: initial !important;
    -webkit-box-shadow: initial !important;
    box-shadow: initial !important;
    -webkit-transition: initial !important;
    -o-transition: initial !important;
    transition: initial !important;
  }

  #header .header-holder {
    max-width: 100%;
  }

  #header .logo {
    left: 0;
    border: 0;
    margin: 0;
    padding: 0;
    height: initial;
    margin-left: 70px;
    width: initial;
  }

  #header .logo::before {
    content: none;
  }

  /** /header **/

  /** nav **/

  #nav {
    float: right;
    padding-left: 15px;
    padding-right: 35px;
  }

  #nav::after {
    content: none;
  }

  #nav li {
    padding: 0 !important;
    margin: 0 !important;
  }

  #nav a {
    border: 0 !important;
    letter-spacing: 2px !important;
    padding: 15px !important;
    text-transform: uppercase !important;
    color: #66788b !important;
    font-size: 12px;
    font-weight: 700;
    font-family: "ralewaybold", Arial, Helvetica, sans-serif !important;
  }

  #nav a:hover,
  #nav li.active a {
    color: #7bb7e2 !important;
  }

  #nav {
    background-color: #fff;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    -webkit-box-shadow: 0px 4px 22px rgba(33, 35, 38, 0.13) !important;
    box-shadow: 0px 4px 22px rgba(33, 35, 38, 0.13) !important;
  }

  #nav li > a {
    position: relative !important;
  }

  #nav li.active > a::after {
    content: "";
    position: absolute;
    width: 100%;
    bottom: -1px;
    left: 0%;
    height: 3px;
    border-radius: 3px;
    background-color: #7bb7e2;
  }

  #nav .drop ul li {
    border: 0;
  }

  #nav .drop-holder {
    -webkit-box-shadow: none;
    box-shadow: none;
    min-width: 241px;
    background-color: transparent;
    padding-top: 12px;
    overflow: hidden;
  }

  #nav .drop-holder ul {
    border-radius: 5px;
  }

  #nav .drop-holder .drop-holder ul {
    border-radius: 0;
  }

  #nav .drop-holder::after {
    content: none;
  }

  #nav .drop-holder a {
    line-height: calc(24 / 12);
  }

  #nav .drop-holder ul {
    border-radius: 5px;
  }

  #nav .drop-holder li {
    padding: 0 22px !important;
    margin-bottom: 10px !important;
  }

  #nav .drop-holder li:last-child {
    margin-bottom: 0 !important;
  }

  #nav li .drop-holder .drop-holder ul {
    background-color: #7bb7e2;
  }

  #nav li .drop-holder .drop-holder ul a {
    color: #fff !important;
  }

  #nav li.has-drop.active > a::after {
    content: none;
    color: inherit;
  }

  #nav li.has-drop.active > .drop-holder {
    display: block;
  }

  #nav .inner-drop > ul > li:last-child .drop-holder {
    right: 0 !important;
    left: auto !important;
  }

  /** /nav **/

  .mt-lg-0 {
    margin: 0 !important;
  }
}

@media (max-width: 999px) {
  .footer-holder {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    padding: 0 10px;
  }

  #footer .links-block {
    margin: 0;
  }

  #footer .col-holder {
    padding-left: 0;
  }

  #nav li {
    border: 0 !important;
  }

  #nav li {
    text-align: left !important;
  }

  #nav a {
    padding-left: 50px !important;
  }

  #nav ul {
    margin-left: 0 !important;
  }

  #nav ul ul li a {
    padding-left: 50px !important;
  }

  #nav ul ul li {
    background: #7bb7e2;
  }

  #nav li .drop-holder .drop-holder {
    margin-left: 0 !important;
  }

  #nav .has-drop-down::after {
    background: initial !important;
    content: "\276f" !important;
    color: #7bb7e2;
    position: absolute !important;
    top: 10px !important;
    right: 36px !important;
    width: auto !important;
    height: auto !important;
  }

  #nav .has-drop .has-drop-down::after {
    content: none !important;
  }

  #nav .has-drop.hover::after {
    -webkit-transform: rotate(90deg) !important;
    -ms-transform: rotate(90deg) !important;
    transform: rotate(90deg) !important;
  }

  #nav .drop-holder .has-drop-down-a::after {
    color: #fff;
    right: 35px;
  }

  #nav a {
    color: #66788b !important;
  }

  #nav a:hover {
    color: #7bb7e2 !important;
  }

  #nav .has-drop .drop-holder a {
    color: #fff !important;
  }

  #nav .drop {
    top: 0px !important;
  }

  #nav .inner-drop {
    padding-top: 80px !important;
    background: #fff;
    height: 100%;
  }

  #nav .inner-drop > ul {
    height: 100%;
    overflow-y: scroll;
  }

  .nav-opener::before,
  .nav-opener::after,
  .nav-opener span {
    background-color: #fff !important;
  }

  .nav-active .nav-opener::before,
  .nav-active .nav-opener::after,
  .nav-active .nav-opener span {
    background-color: #7bb7e2 !important;
  }

  #nav .drop-holder ul {
    padding: 0;
  }

  #nav .drop-holder .drop-holder ul::after {
    width: 217px;
    height: 2px;
    background-color: #fff;
    position: absolute;
    bottom: 0;
    left: 50px;
  }

  .banner .slider-content h1,
  .banner .slider-content h2 {
    font-size: 34px;
  }

  .banner .img-holder {
    margin: 0 !important;
  }
}

@media (max-width: 768px) {
  #footer .col-holder {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-top: 22px;
  }

  .banner .button {
    margin: 0 5px 15px;
  }
}

@media (max-width: 575px) {
  #header .logo img {
    width: 130px;
    height: auto;
  }

  #footer {
    text-align: center;
  }

  .banner .slider-content h1,
  .banner .slider-content h2 {
    font-size: 30px;
  }

  .banner .slider-content {
    text-align: left;
  }

  .banner .button {
    display: block;
  }

  #footer .links-block .col {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
  }

  #footer .links-block ul {
    margin-bottom: 30px;
  }

  #footer .logo-footer {
    display: inline-block;
  }

  #footer .logo-footer::after {
    content: none;
  }

  #footer .col-holder {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-top: 22px;
  }

  #footer .col-holder ul {
    position: relative;
    padding-bottom: 12px;
    margin-bottom: 23px;
  }

  #footer .col-holder ul::after {
    content: "";
    width: 88px;
    height: 2px;
    bottom: 0;
    left: 50%;
    background-color: rgb(255 255 255 / 20%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    position: absolute;
  }

  #footer .footer-note .copyright {
    display: none;
  }

  #footer .logo-footer {
    padding-bottom: 0;
  }

  #footer .col-holder {
    margin-bottom: 0;
  }

  #footer .links-block {
    padding-bottom: 0;
  }

  #footer .copyright {
    margin-top: 0;
  }
}
/* HB wg white space von der Zusammenfassung und Browserfenster beim Runterscrollen - 18.8.2021 */
.fixed.main-bar {
  top: 0;
}
@media (min-width: 1256px) {
  .top-fix1 + .main-block.participant,
  .top-fix1 + .main-block.request-sent,
  .top-fix1 + .main-block {
    margin-top: calc(100vh - 45px) !important;
  }
}

.top-fix {
  position: static;
  margin: 0;
  height: initial;
}

.top-fix1 {
  margin-top: 0 !important;
}

@media (min-width: 768px) {
  .fixed.main-bar {
    top: 0;
  }
}

@media (max-width: 575px) {
  #footer .social li {
    float: none;
    display: inline-block;
  }
}

@media (max-width: 767px) {
  #footer ul.social {
    margin-bottom: 20px;
  }
}

.home .banner .content-holder {
  top: initial;
  -webkit-transform: initial;
  -ms-transform: initial;
  transform: initial;
  bottom: 120px;
}

.home .banner .slider-content {
  text-align: left;
}
.home .banner .description {
  max-width: 545px;
}

.home .banner img {
  height: 100% !important;
}

.home .banner:after,
.home .banner:before {
  background: initial !important;
  background-color: #fff !important;
}
