@import url("font.css");
@import url("header.css");
@import url("footer.css");
@import url("404.css");
@import url("blocks/hero.css");
@import url("blocks/icons_and_text.css");
@import url("blocks/quad_panel_block.css");
@import url("blocks/solutions.css");
@import url("blocks/products.css");
@import url("blocks/cta.css");
@import url("blocks/slider.css");
@import url("blocks/angebote.css");
@import url("blocks/rezensionen.css");
@import url("blocks/subpagehero.css");
@import url("blocks/kontaktformular.css");
@import url("blocks/karte.css");

@import url("blocks/faq.css");
@import url("blocks/tabs.css");

:root {
  --color-white: #ffffff;
  --color-blue: #29235c;
  --color-primary: #e94e1b;

  --color-background: #ccd0f3;

  --font-family-avante_garde: "Avant Garde BQ";
  --font-family-gotham_book: "Gotham Book";

  --font-weight-normal: 400;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;

  --line-height-normal: 1.2em;
  --font-size-28: 1.75rem;
  --font-size-48: 3rem;
}

@media (max-width: 768px) {
  :root {
    --font-size-48: 1.5rem;
  }
}

html,
body {
  overscroll-behavior: none;
}

body {
  background-color: var(--color-background);
  font-size: 20px;
}

.color_white {
  color: var(--color-white);
}

.color_primary {
  color: var(--color-primary);
}

.color_blue {
  color: var(--color-blue);
}

.nav-link {
  text-decoration: none !important;
}

a {
  text-decoration: underline !important;
}

.btn-primary.italic,
.btn-primary i,
.btn-primary em,
.italic {
  font-style: italic !important;
}

.a.italic {
  font-style: italic !important;
}

.btn-primary {
  display: flex;
  color: var(--color-blue);
  border-radius: 60px;
  background: var(--color-primary);
  box-shadow: 2px 4px 10px 0px rgba(41, 35, 92, 0.18);
  padding: 8px 50px !important;
  justify-content: center;
  align-items: center;
  background-color: var(--color-primary);
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  font-size: 3rem;
  line-height: normal;
  border: none;
  text-decoration: none !important;
  font-weight: 400 !important;
}

.btn-primary:hover {
  background-color: var(--color-primary);
}

.btn-primary-blue {
  display: inline-flex;
  color: white;
  border-radius: 60px;
  box-shadow: 2px 4px 10px 0px rgba(41, 35, 92, 0.18);
  padding: 7.5px 50px !important;
  align-items: center;
  justify-content: center;
  background-color: var(--color-blue);
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  font-size: var(--font-size-48);
  font-weight: 400;
  line-height: var(--font-size-48);
  text-decoration: none !important;
}

.btn-primary-blue::after {
  content: "";
  width: 3rem;
  height: 3rem;
  display: flex;
  margin-left: 1rem;
  background: url("/dw/uploads/2025/07/right_arrow.svg") no-repeat center /
    contain;
}

.btn-primary-blue span,
.btn-primary-blue div {
  font-size: var(--font-size-48) !important;
}

.btn-secondary {
  display: inline-flex;
  color: var(--color-black);
  padding: 10px 17px !important;
  justify-content: center;
  align-items: center;
  background-color: transparent;
  border-radius: 3.5rem;
  border: 1px solid var(--color-black);
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  font-family: "DM Sans";
  font-size: var(--font-size-base);
  font-style: normal;
  font-weight: var(--font-weight-bold);
  line-height: normal;
  display: inline-flex !important;
}
.btn-secondary:hover {
  border: 1px solid var(--color-primary);
  color: var(--color-primary);
}

.btn-orange {
  display: inline-flex;
  color: var(--color-blue);
  border-radius: 60px;
  background: var(--color-primary);
  box-shadow: 2px 4px 10px 0px rgba(41, 35, 92, 0.18);
  padding: 8px 50px !important;
  justify-content: center;
  align-items: center;
  background-color: var(--color-primary);
  text-decoration: none !important;
  white-space: nowrap;
  cursor: pointer;
  border: none;
  font-family: var(---font-family);
  font-family: "Avant Garde BQ";
  font-size: 48px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.btn-orange::after {
  content: "";
  width: 3rem;
  height: 3rem;
  display: flex;
  margin-left: 1rem;
  background: url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='31' height='30' viewBox='0 0 31 30' fill='none'%3E%3Cpath d='M17.375 0.75L28.6438 12.8237C29.6689 13.9221 29.6689 15.7029 28.6438 16.8013L17.375 28.875' stroke='%2329235c' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M28.75 14.8125L0.75 14.8125' stroke='%2329235c' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='bevel'/%3E%3C/svg%3E")
    no-repeat center / contain;
  z-index: 3;
}

.dropdown-menu .dropdown-item {
  display: flex;
  align-items: center;
  padding-top: 0.375rem;
  padding-bottom:  0.375rem !important;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  border-color: transparent !important;
  color: #dc3232 !important;
}

/* @-moz-document url-prefix() {
  .ff_btn {
    transform: translateY(15px);
  }

  .ff_btn-2 {
    transform: translateY(12px);
  }

  .current-language-menu-item > a .trp-ls-language-name::after {
    margin-bottom: 16px;
  }

  a:not(.nav-link, .dropdown-item) {
    display: inline-flex;
  }
} */

@media (max-width: 992px) {
  .btn-primary,
  .btn-secondary,
  .btn-primary-blue {
    font-size: 1.5rem !important;
    padding: 8px 20px !important;
  }

  .hero_btn {
    display: none !important;
  }

  /* @-moz-document url-prefix() {
    .ff_btn {
      transform: translateY(9px);
    }

    .ff_btn-2 {
      transform: translateY(7px);
    }

    .current-language-menu-item > a .trp-ls-language-name::after {
      margin-bottom: 16px;
    }
  } */
}

main.blocks {
  overflow-x: hidden;
  background-color: white;
}

.fade_in_element {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.fade-in-up {
  opacity: 1;
  transform: translateY(0);
}

.fixed-buttons {
  position: fixed;
  bottom: 100px;
  right: max(0px, (100% - 1320px)/2);
  gap: 20px;
}

@media (max-width: 768px) {
  .fixed-buttons {
    bottom: 20px;
    right: 20px;
  }

  .btn-primary-blue::after {
    width: 2rem;
  }
}

@media (min-width: 768px) {
  .fixed-buttons {
    bottom: 20px;
    right: 20px;
  }
}

@media (min-width: 1920px) {
  .fixed-buttons {
    right: max(0px, (100% - 1720px)/2);
  }
}

.block-my-none {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.block-my-default {
  padding-top: 2.1875rem !important;
  padding-bottom: 2.1875rem !important;
}

.block-my-80-0 {
  padding-top: 2.1875rem !important;
  padding-bottom: 0rem !important;
}

.block-my-0-80 {
  padding-top: 0rem !important;
  padding-bottom: 2.1875rem !important;
}

@media (min-width: 768px) {
  .block-my-none {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  .block-my-default {
    padding-top: 4.375rem !important;
    padding-bottom: 4.375rem !important;
  }

  .block-my-80-0 {
    padding-top: 4.375rem !important;
    padding-bottom: 0rem !important;
  }

  .block-my-0-80 {
    padding-top: 0rem !important;
    padding-bottom: 4.375rem !important;
  }
}

button {
  background: transparent;
  border: none;
}

@media (min-width: 1920px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: 1720px;
  }
}

a {
  text-decoration: none;
}

.embed-responsive-item {
  width: 100%;
  height: 60vh;
}

.dw_padding_left {
  padding-left: max(0px, (100vw - 1320px)/2);
}

.dw_padding_right {
  padding-right: max(0px, (100vw - 1320px)/2);
}

.dw_margin_left {
  margin-left: max(0px, (100vw - 1320px)/2);
}

.dw_margin_right {
  margin-right: max(0px, (100vw - 1320px)/2);
}

.dw_margin_left_child .has_content:first-child {
  padding-left: max(0px, (100vw - 1320px)/2);
}

.dw_margin_right_child .has_content:last-child {
  margin-right: max(0px, (100vw - 1320px)/2);
}

@media only screen and (min-width: 992px) {
  .dw_padding_left {
    padding-left: max(0px, (100vw - 960px)/2);
  }

  .dw_padding_right {
    padding-right: max(0px, (100vw - 960px)/2);
  }

  .dw_margin_left {
    margin-left: max(0px, (100vw - 960px)/2);
  }

  .dw_margin_right {
    margin-right: max(0px, (100vw - 960px)/2);
  }

  .dw_margin_left_child .has_content:first-child {
    padding-left: max(0px, (100vw - 960px)/2);
  }

  .dw_margin_right_child .has_content:last-child {
    margin-right: max(0px, (100vw - 960px)/2);
  }
}

@media only screen and (min-width: 1140px) {
  .dw_padding_left {
    padding-left: max(0px, (100vw - 960px)/2);
  }

  .dw_padding_right {
    padding-right: max(0px, (100vw - 960px)/2);
  }

  .dw_margin_left {
    margin-left: max(0px, (100vw - 960px)/2);
  }

  .dw_margin_right {
    margin-right: max(0px, (100vw - 960px)/2);
  }

  .dw_margin_left_child .has_content:first-child {
    padding-left: max(0px, (100vw - 960px)/2);
  }

  .dw_margin_right_child .has_content:last-child {
    margin-right: max(0px, (100vw - 960px)/2);
  }
}

@media only screen and (min-width: 1200px) {
  .dw_padding_left {
    padding-left: max(0px, (100vw - 1140px)/2);
  }

  .dw_padding_right {
    padding-right: max(0px, (100vw - 1140px)/2);
  }

  .dw_margin_left {
    margin-left: max(0px, (100vw - 1140px)/2);
  }

  .dw_margin_right {
    margin-right: max(0px, (100vw - 1140px)/2);
  }

  .dw_margin_left_child .has_content:first-child {
    padding-left: max(0px, (100vw - 1140px)/2);
  }

  .dw_margin_right_child .has_content:last-child {
    margin-right: max(0px, (100vw - 1140px)/2);
  }
}

@media only screen and (min-width: 1400px) {
  .dw_padding_left {
    padding-left: max(0px, (100vw - 1320px)/2);
  }

  .dw_padding_right {
    padding-right: max(0px, (100vw - 1320px)/2);
  }

  .dw_margin_left {
    margin-left: max(0px, (100vw - 1320px)/2);
  }

  .dw_margin_right {
    margin-right: max(0px, (100vw - 1320px)/2);
  }

  .dw_margin_left_child .has_content:first-child {
    padding-left: max(0px, (100vw - 1320px)/2);
  }

  .dw_margin_right_child .has_content:last-child {
    margin-right: max(0px, (100vw - 1320px)/2);
  }
}

@media only screen and (min-width: 1920px) {
  .dw_padding_left {
    padding-left: max(0px, (100vw - 1720px)/2);
  }

  .dw_padding_right {
    padding-right: max(0px, (100vw - 1720px)/2);
  }

  .dw_margin_left {
    margin-left: max(0px, (100vw - 1720px)/2);
  }

  .dw_margin_right {
    margin-right: max(0px, (100vw - 1720px)/2);
  }

  .dw_margin_left_child .has_content:first-child {
    padding-left: max(0px, (100vw - 1720px)/2);
  }

  .dw_margin_right_child .has_content:last-child {
    margin-right: max(0px, (100vw - 1720px)/2);
  }
}

@media only screen and (max-width: 992px) {
  .dw_padding_left {
    padding-left: 24px;
    padding-right: 24px;
  }

  .dw_padding_right {
    padding-right: 24px;
    padding-left: 24px;
  }

  .dw_margin_left {
    margin-left: 24px;
  }

  .dw_margin_right {
    margin-right: 24px;
  }

  #offcanvasMenue .btn-close {
    margin-right: 0px;
  }

  .embed-responsive-item {
    width: 100%;
    height: 60vh;
  }
}

.translatepress-zh_CN .hide-zh {
  display: none;
}

.translatepress-ko_KR .hide-ko {
  display: none;
}


span.trp-menu-ls-label{
  display: flex;
  gap: 10px;
}

#menu-main .trp-language-switcher-container .dropdown-item span{
  display: flex;
  gap: 10px;
}

.trp-menu-ls-label .trp-flag-image {
  margin: 0px!important;
}

.dropdown-menu {
  min-width: 1px;
}

.footer-nav li.trp-language-switcher-container {
  display: inline-block;
}

.subtitle_ii{
  min-height: 33.5px;
}

.am-advsc__slots-heading{
  visibility: hidden;
}

.translatepress-de_DE .am-advsc__slots-heading::before {
  content: "Ihr Zeitslot";
  display: block;
  visibility: visible;
  font-weight: bold;
}

.translatepress-de_DE .am-advsc__slots-heading::after {
  content: "Bitte wählen Sie den gewünschten Zeitslot. Die exakte Flugzeit vereinbaren wir persönlich mit Ihnen nach der Buchung.";
  display: block;
  visibility: visible;
}

.translatepress-en_GB .am-advsc__slots-heading::before {
  content: "Your time slot";
  display: block;
  visibility: visible;
  font-weight: bold;
}

.translatepress-en_GB .am-advsc__slots-heading::after {
  content: "Please select your preferred time slot. We will arrange the exact flight time with you personally after booking.";
  display: block;
  visibility: visible;
}

.translatepress-ko_KR .am-advsc__slots-heading::before {
  content: "귀하의 시간대";
  display: block;
  visibility: visible;
  font-weight: bold;
}


.translatepress-ko_KR .am-advsc__slots-heading::after {
  content: "원하시는 시간대를 선택해 주십시오. 정확한 비행 시간은 예약 후 직접 상담을 통해 조정해 드리겠습니다.";
  display: block;
  visibility: visible;
}

.translatepress-zh_CN .am-advsc__slots-heading::before {
  content: "您的時段";
  display: block;
  visibility: visible;
  font-weight: bold;
}

.translatepress-zh_CN .am-advsc__slots-heading::after {
  content: "請選擇您想要的時段。我們將在您預訂後與您親自商定確切的飛行時間。";
  display: block;
  visibility: visible;
}