.pagefooter {
  background-color: transparent;
  position: relative;
  z-index: 200;
  margin-top: 100vh;
  padding: 10px 17px;
}
.pagefooter .menu-footermenu-container {
  width: 100%;
}
.pagefooter .menu-footermenu-container .menu {
  width: 100%;
  justify-content: space-between;
  display: flex;
}

.content {
  padding: 0;
}
.content:has(.frm_error_style) .kontakt__colophon, .content:has(.frm_message) .kontakt__colophon {
  display: none;
}
.content:has(.frm_message[role=status]) .wp-block-heading, .content:has(.frm_error_style[role=status]) .wp-block-heading {
  display: none;
}
.content:has(.frm_message[role=status]) .frm_forms, .content:has(.frm_error_style[role=status]) .frm_forms {
  margin: 0 !important;
}

.page-id-431 body {
  background: #fff;
}

.is-visible {
  opacity: 1 !important;
}

a:not(.wp-block-button__link):hover {
  letter-spacing: 1.5px;
}

.page-id-380 body {
  background: #000;
}

main {
  opacity: 0;
  transition: opacity 0.35s ease;
}

.page-id-380 .content, .page-id-431 .content {
  position: fixed;
  z-index: 4;
  padding: 0 !important;
}
.page-id-380 .content h1, .page-id-431 .content h1 {
  margin: 0 !important;
}
.page-id-380 .content > div, .page-id-431 .content > div {
  padding: 0 var(--gutter);
}

@media (max-height: 850px) {
  .page-id-431 .content {
    position: relative;
  }
  .page-id-431 .content > div {
    position: relative;
  }
  .page-id-431 .content .pageheader {
    padding: 120px 0;
  }
  .page-id-431 .pagefooter {
    margin-top: 0;
  }
}

main.is-visible {
  opacity: 1;
}

main.is-fading {
  opacity: 0;
}

body main .wp-element-button, body main .frm_button_submit {
  font-variation-settings: "wght" 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 1px 50px 3px 50px;
  transition: 500ms ease-in-out;
}
body main .wp-element-button:active, body main .frm_button_submit:active {
  background-color: #74ffe0 !important;
  border: 2px solid #009792 !important;
  color: #009792 !important;
  transition: 250ms ease-out !important;
}
@media (max-width: 1200px) {
  body main .wp-element-button, body main .frm_button_submit {
    padding: 1px 22px 3px 22px;
  }
}

.frm_button_submit {
  height: 40px !important;
  border-radius: 25px !important;
  font-variation-settings: "wght" 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  transition: 500ms ease-in-out !important;
  background: #fff !important;
  outline: none !important;
  border: 2px solid #000 !important;
  box-shadow: none !important;
  color: #000 !important;
  padding: 1px 50px 3px 50px !important;
}
.frm_button_submit:hover {
  background-color: #000 !important;
  color: #fff !important;
  border: 2px solid #fff !important;
}
.frm_button_submit:active {
  background-color: #74ffe0 !important;
  border: 2px solid #009792 !important;
  color: #009792 !important;
  transition: 250ms ease-out !important;
}
@media (max-width: 1200px) {
  .frm_button_submit {
    padding: 1px 22px 3px 22px !important;
  }
}
@media (max-width: 550px) {
  .frm_button_submit {
    width: 100% !important;
    margin: 0 !important;
  }
}

@media (max-width: 550px) {
  input, textarea {
    border-radius: 10px !important;
  }
}

#app {
  height: 100vh;
  position: fixed;
  z-index: 1;
  width: 100%;
}

.frm_error, .frm_error_style {
  transition: 500ms ease-in-out;
}

@media (min-width: 951px) {
  body.notouchdevice:has(.pageheader__button:hover) #playbutton,
  body.notouchdevice:has(.frm_button_submit:hover) #playbutton,
  body.notouchdevice:has(.homebutton:hover) #playbutton {
    transition: none;
    opacity: 0 !important;
  }
  body.notouchdevice:has(.pageheader__button:hover) .logobar__logo,
  body.notouchdevice:has(.pageheader__button:hover) p,
  body.notouchdevice:has(.pageheader__button:hover) a,
  body.notouchdevice:has(.frm_button_submit:hover) .logobar__logo,
  body.notouchdevice:has(.frm_button_submit:hover) p,
  body.notouchdevice:has(.frm_button_submit:hover) a,
  body.notouchdevice:has(.homebutton:hover) .logobar__logo,
  body.notouchdevice:has(.homebutton:hover) p,
  body.notouchdevice:has(.homebutton:hover) a {
    color: #000 !important;
  }
  body.notouchdevice:has(.pageheader__button:hover) .pageheader,
  body.notouchdevice:has(.frm_button_submit:hover) .pageheader,
  body.notouchdevice:has(.homebutton:hover) .pageheader {
    background-color: #f3f4f7;
  }
  body.notouchdevice:has(.pageheader__button:hover) .pageheader .pageheader__video--dark,
  body.notouchdevice:has(.frm_button_submit:hover) .pageheader .pageheader__video--dark,
  body.notouchdevice:has(.homebutton:hover) .pageheader .pageheader__video--dark {
    opacity: 0;
  }
  body.notouchdevice:has(.pageheader__button:hover) .pageheader .pageheader__top h1,
  body.notouchdevice:has(.frm_button_submit:hover) .pageheader .pageheader__top h1,
  body.notouchdevice:has(.homebutton:hover) .pageheader .pageheader__top h1 {
    color: #000;
  }
  body.notouchdevice:has(.pageheader__button:hover) .with_frm_style .frm_message,
  body.notouchdevice:has(.pageheader__button:hover) .frm_error_style,
  body.notouchdevice:has(.frm_button_submit:hover) .with_frm_style .frm_message,
  body.notouchdevice:has(.frm_button_submit:hover) .frm_error_style,
  body.notouchdevice:has(.homebutton:hover) .with_frm_style .frm_message,
  body.notouchdevice:has(.homebutton:hover) .frm_error_style {
    color: #000 !important;
  }
  body.notouchdevice:has(.pageheader__button:hover) .frm_error,
  body.notouchdevice:has(.frm_button_submit:hover) .frm_error,
  body.notouchdevice:has(.homebutton:hover) .frm_error {
    color: var(--negative) !important;
  }
}

.pageheader {
  min-height: 100vh;
  transition: 500ms ease-in-out;
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  width: 100%;
  z-index: 5;
}
@media (max-width: 950px) {
  .pageheader {
    padding: 120px var(--gutter) !important;
  }
}
.pageheader svg {
  top: -90px;
  width: 160px;
  position: absolute;
}
.pageheader svg .logobar__logo {
  color: #fff;
  transition: 500ms ease-in-out;
}
@media (max-width: 950px) {
  .pageheader svg {
    width: 130px;
    top: -70px;
  }
}
.pageheader__video video {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 100vw;
  height: 100vh;
  object-fit: cover;
  object-position: center center;
  transform: translate(-50%, -50%);
}
.pageheader__video--dark {
  transition: 500ms ease-in-out;
  z-index: 2;
}
.pageheader__video--light {
  transition: 500ms ease-in-out;
  z-index: 1;
}
.pageheader__top {
  position: relative;
  z-index: 3;
  margin-top: 80px !important;
}
@media (max-width: 950px) {
  .pageheader__top {
    margin-top: initial !important;
  }
}
.pageheader__top h1 {
  color: #fff;
  transition: 500ms ease-in-out;
}
@media (max-width: 950px) {
  .pageheader__top h1 {
    max-width: 500px;
    text-align: center;
  }
  .pageheader__top h1 br {
    display: none;
  }
}
.pageheader__button {
  position: absolute;
  right: 19px;
  top: 25px;
  transition: 500ms ease-in-out;
}
@media (max-width: 1500px) {
  .pageheader__button {
    top: 21px;
  }
}
@media (max-width: 1200px) {
  .pageheader__button {
    top: 13px;
    right: 14px;
  }
}
@media (max-width: 950px) {
  .pageheader__button {
    top: 15px;
    right: initial;
    position: relative;
  }
}

.page-id-431 .pageheader .homebutton {
  width: 160px;
}
.page-id-431 .pageheader .homebutton .logobar__logo {
  cursor: pointer;
}

.privacy-policy .content, .page-id-378 .content {
  margin-top: 120px;
}
@media (max-width: 1200px) {
  .privacy-policy .content, .page-id-378 .content {
    margin-top: 40px;
  }
}
.privacy-policy .pagefooter, .page-id-378 .pagefooter {
  margin-top: 20px;
  color: #000;
}

.easteregg {
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 4;
  width: 100%;
  opacity: 0;
}
.easteregg video {
  height: 100%;
  object-fit: cover;
}

#playbutton {
  width: 25px;
  height: 25px;
  z-index: 10;
  position: fixed;
  top: var(--gutter);
  left: var(--gutter);
  color: #000;
  cursor: pointer;
  transition: 1.4s ease-in-out;
}
#playbutton:hover {
  color: #f3f4f7;
}

.frm_forms {
  width: 1055px;
}
@media (max-width: 1500px) {
  .frm_forms {
    width: 986px;
  }
}
@media (max-width: 1200px) {
  .frm_forms {
    width: 772px;
  }
}
@media (max-width: 950px) {
  .frm_forms {
    width: 100%;
  }
}
@media (max-width: 600px) {
  .frm_forms #frm_field_1_container {
    margin: 0 !important;
  }
}

.kontakt__colophon {
  left: var(--half-gutter) !important;
  bottom: -74px;
  position: absolute;
  width: fit-content;
  font-size: var(--small);
}
@media (max-width: 550px) {
  .kontakt__colophon {
    bottom: initial;
    position: relative;
    width: 100%;
    left: 0 !important;
    text-align: center;
  }
}

.with_frm_style .frm_message, .frm_error_style:not([role=alert]) {
  font-size: var(--h1) !important;
  line-height: var(--h1-height) !important;
  font-variation-settings: "wght" 900 !important;
  text-align: center !important;
  background: none !important;
  border: none !important;
  color: #fff !important;
}

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