

@media screen AND (max-width: 1200px) {

  :root , html {
    font-size: 19px;
  }

  #main-content .et_pb_section > .et_pb_row.sticky-float-bts {
    max-width: 200px !important;
  }

  html body #page-container > * .sticky-float-bts .et_pb_button {
    padding: 0.4rem !important
  }

  body .et_pb_button.bt-ticket::before ,
  body .et_pb_button.et_button_no_icon.bt-ticket::before ,
  body .et_pb_button.bt-contact::before ,
  body .et_pb_button.et_button_no_icon.bt-contact::before {
    min-width: 48px !important;
    width: 2.1em !important;
    height: 1.32em !important;
  }

  #main-content .et_pb_section > .et_pb_row.sticky-float-bts ,
  #sticky-float-bts-mobile {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -moz-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-pack: stretch;
    -webkit-justify-content: stretch;
       -moz-box-pack: stretch;
        -ms-flex-pack: stretch;
            justify-content: stretch;
    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    opacity: 0.95;
    -webkit-transform: none !important;
       -moz-transform: none !important;
        -ms-transform: none !important;
         -o-transform: none !important;
            transform: none !important;
    position: static !important;
    inset: auto 0 0 0;
    max-width: 100% !important;
    margin-top: 40px !important;
    padding: 0 20px !important;
    gap: 20px;
  }

  #main-content .et_pb_section > .et_pb_row.sticky-float-bts {
    display: none !important;
    width: 0;
    height: 0;
    visibility: hidden;
  }

  #sticky-float-bts-mobile {
    /* JS clone of the other */
    z-index: 500;
    position: fixed !important;
    -webkit-transform: translateY(0) !important;
       -moz-transform: translateY(0) !important;
        -ms-transform: translateY(0) !important;
         -o-transform: translateY(0) !important;
            transform: translateY(0) !important;
    -webkit-transition: -webkit-transform 0.2s linear;
    transition: -webkit-transform 0.2s linear;
    -o-transition: -o-transform 0.2s linear;
    -moz-transition: transform 0.2s linear, -moz-transform 0.2s linear;
    transition: transform 0.2s linear;
    transition: transform 0.2s linear, -webkit-transform 0.2s linear, -moz-transform 0.2s linear, -o-transform 0.2s linear;
    width: 100%;
    max-width: 100%;
    margin-top: 40px !important;
    padding: 0 !important;
    gap: 0 !important;
  }

  html body #page-container > * #sticky-float-bts-mobile .et_pb_button {
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
       -moz-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }

  html body #page-container > * #sticky-float-bts-mobile .et_pb_button:before {
    margin: 0 !important;
  }

  #sticky-float-bts-mobile.hidden ,
  #page-container:has( #main-header .mobile_nav.opened ) #sticky-float-bts-mobile {
    -webkit-transform: translateY(100%) !important;
       -moz-transform: translateY(100%) !important;
        -ms-transform: translateY(100%) !important;
         -o-transform: translateY(100%) !important;
            transform: translateY(100%) !important;
  }

  #main-content .et_pb_section > .et_pb_row.sticky-float-bts > .et_pb_column {
    width: 100% !important;
    max-width: 300px !important;
  }

  #sticky-float-bts-mobile .et_pb_column {
    width: 50% !important;
  }

  body.home #hero .et_pb_slide:before {
    background-position-x: 30% !important;
    -webkit-background-size: cover;
       -moz-background-size: cover;
         -o-background-size: cover;
            background-size: cover;
  }

  body.home #hero #hero .et_pb_slide:after {
    width: 220px;
    height: 238px;
  }

  #section-orgs .et_pb_module_heading {
    padding-bottom: 20px !important;
  }




  .prog-nav.et_pb_row {
    margin-top: 60px !important;
  }

}


@media screen AND (max-width: 980px) {

  h1 , h2 , h3 , h4 , h5 , h6 {
    hyphens: auto !important;
  }

  #main-content p ,
  footer * {
    text-align: center !important;
  }

  #main-content .et_pb_section > .et_pb_row ,
  footer .et_pb_section > .et_pb_row {
    padding: 0 20px !important;
  }

  #main-content:not( :has( #hero:first-child ) ) {
    margin-top: 90px !important;
  }

  footer .et_pb_section > .et_pb_row + .et_pb_row {
    margin-top: 40px !important;
  }

  footer .et_pb_social_media_follow {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }

  footer .et_pb_menu__menu {
    margin: 0 auto !important;
  }

  #menu-footer {
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
       -moz-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }

  #main-content #section-orgs > .et_pb_row.et_pb_row_4col {
    padding: 0 40px !important;
  }

  #section-intro {
    padding-top: 120px !important;
  }

  
  html body #page-container > * .bt-cta > a ,
  html body #page-container > * .bt-cta > button ,
  html body #page-container > * a.bt-cta ,
  html body #page-container > * button.bt-cta ,
  html body #page-container #hero .et_pb_button {
    padding: 0.5em !important;
    line-height: 120% !important;
  }

  body:not( .page-id-69598 ) #hero .et_pb_slide:before {
    display: none !important;
    content: none !important;
  }

  #main-header , .et_fixed_nav #main-header {
    position: fixed !important;
    inset: 0 0 auto 0 !important;
    height: 66px !important;
  }

  #main-header:before {
    opacity: 1 !important;
  }

  #main-header .et_menu_container {
    padding: 10px !important;
  }

  #main-header #top-menu-nav ,
  footer .et_mobile_nav_menu {
    display: none !important;
  }


  .page-id-69598 #hero ,
  .page-id-69598 #hero .et_pb_module ,
  .page-id-69598 #hero .et_pb_slides ,
  .page-id-69598 #hero .et_pb_slide ,
  .page-id-69598 #hero .et_pb_slider_container ,
  .page-id-69598 #hero .et_pb_slider_container_inner {
    height: 340px;
  }

  #hero .et_pb_slide {
    background-size: cover !important;
    background-position: 73.5% 100% !important;
  }

  footer .et_pb_menu__menu {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -moz-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }

  #main-header #et_mobile_nav_menu > .mobile_nav > #mobile_menu {
    z-index: 501 !important;
    position: fixed !important;
    inset: 0 !important;
    background: none !important;
  }

  #main-header .et_menu_container #et-top-navigation ul {
    pointer-events: none;
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -moz-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: column !important;
       -moz-box-orient: vertical !important;
       -moz-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important;
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
       -moz-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
    -webkit-box-align: center !important;
    -webkit-align-items: center !important;
       -moz-box-align: center !important;
        -ms-flex-align: center !important;
            align-items: center !important;
    /* inset: auto 100% 100% auto !important; */
    inset: auto 0 0 auto !important;
    width: 100vw !important;
    height: 100vh !important;
    overflow: hidden auto !important;
    opacity: 1;
    -webkit-clip-path: polygon(
      0 0,
      -webkit-calc(100% - calc( ( 32vw + 32vh ) * 0.5 )) 0, 
      100% calc( ( 32vw + 32vh ) * 0.5 ),
      100% 100%,
      calc( ( 32vw + 32vh ) * 0.5 ) 100%, 
      0 -webkit-calc(100% - calc( ( 32vw + 32vh ) * 0.5 ))
    );
            clip-path: polygon(
      0 0,
      -moz-calc(100% - calc( ( 32vw + 32vh ) * 0.5 )) 0, 
      100% calc( ( 32vw + 32vh ) * 0.5 ),
      100% 100%,
      calc( ( 32vw + 32vh ) * 0.5 ) 100%, 
      0 -moz-calc(100% - calc( ( 32vw + 32vh ) * 0.5 ))
    );
            clip-path: polygon(
      0 0,
      calc(100% - calc( ( 32vw + 32vh ) * 0.5 )) 0, 
      100% calc( ( 32vw + 32vh ) * 0.5 ),
      100% 100%,
      calc( ( 32vw + 32vh ) * 0.5 ) 100%, 
      0 calc(100% - calc( ( 32vw + 32vh ) * 0.5 ))
    );
    -webkit-backdrop-filter: var(--nav-bg-vfx-off);
            backdrop-filter: var(--nav-bg-vfx-off);
    -webkit-transition: all 0.25s ease-in-out 0.2s;
    -o-transition: all 0.25s ease-in-out 0.2s;
    -moz-transition: all 0.25s ease-in-out 0.2s;
    transition: all 0.25s ease-in-out 0.2s;
  }

  #main-header .et_menu_container #et-top-navigation ul:before {
    content: '';
    display: block;
    z-index: 503;
    position: absolute;
    inset: 0;
    opacity: 0;
    background-color: #ff8b4e;
    background-image: var(--bg-grad);
    -webkit-transform: translate( -100vw, -100vw );
       -moz-transform: translate( -100vw, -100vw );
        -ms-transform: translate( -100vw, -100vw );
         -o-transform: translate( -100vw, -100vw );
            transform: translate( -100vw, -100vw );
    -webkit-transition: all 0.25s linear;
    -o-transition: all 0.25s linear;
    -moz-transition: all 0.25s linear;
    transition: all 0.25s linear;
  }

  #main-header .et_menu_container #et-top-navigation .mobile_nav.opened ul {
    pointer-events: auto;
    -webkit-backdrop-filter: var(--nav-bg-vfx-on);
            backdrop-filter: var(--nav-bg-vfx-on);
  }

  #main-header .et_menu_container #et-top-navigation .mobile_nav.opened ul:before {
    -webkit-transform: translate(0, 0);
       -moz-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
         -o-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }

  #main-header:has( .mobile_nav.opened ) .et_menu_container #et-top-navigation ul {
    -webkit-backdrop-filter: var(--nav-bg-vfx-on);
            backdrop-filter: var(--nav-bg-vfx-on);
  }

  #main-header:has( .mobile_nav.opened ) .et_menu_container #et-top-navigation ul:before {
    opacity: 0.8;
  }

  #main-header .et_menu_container #et-top-navigation ul > li {
    z-index: 504;
    position: relative;
    opacity: 0;
    -webkit-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }

  #main-header .et_menu_container #et-top-navigation .mobile_nav.opened ul > li {
    opacity: 1;
  }

  #main-header #et_mobile_nav_menu > .mobile_nav ,
  #main-header .mobile_menu_bar::before {
    z-index: 502;
  }

  #main-header .mobile_menu_bar.mobile_menu_bar_toggle {
    padding: 0 !important;
    cursor: pointer;
  }

  #main-header #et-top-navigation {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
       -moz-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }

  #main-header .mobile_menu_bar::before {
    font-size: 3.6rem !important;
    color: #fff;
    text-shadow: 0 0 0 rgba(0,0,0,0.6);
    -webkit-transition: text-shadow 0.4s;
    -o-transition: text-shadow 0.4s;
    -moz-transition: text-shadow 0.4s;
    transition: text-shadow 0.4s;
  }

  #main-header .mobile_nav.opened .mobile_menu_bar::before {
    text-shadow: 0 0 0.075em rgba(0,0,0,0.6);
    /* content: 'M'; */
  }

  #main-header .et_menu_container #et-top-navigation ul li a {
    font-size: 1.5rem !important;
  }

  #main-header .et_menu_container #et-top-navigation ul li.bt-cta a {
    font-size: 1.15rem !important;
  }

  #main-header .logo_container ,
  #main-header .logo_container > a ,
  #main-header .logo_container > a > svg ,
  #main-header.et-fixed-header .logo_container ,
  #main-header.et-fixed-header .logo_container > a ,
  #main-header.et-fixed-header .logo_container > a > svg ,
  #page-container:not( :has(  #hero:first-child ) ) #main-header .logo_container ,
  #page-container:not( :has(  #hero:first-child ) ) #main-header .logo_container > a ,
  #page-container:not( :has(  #hero:first-child ) ) #main-header .logo_container > a > svg {
    width: 180px !important;
    max-width: 100% !important;
    height: auto !important;
  }

  #main-header .logo_container svg .text {
    opacity: 0 !important;
    -webkit-transition-duration: 0.4s !important;
       -moz-transition-duration: 0.4s !important;
         -o-transition-duration: 0.4s !important;
            transition-duration: 0.4s !important;
    -webkit-transition-delay: 0s !important;
       -moz-transition-delay: 0s !important;
         -o-transition-delay: 0s !important;
            transition-delay: 0s !important;
  }

  #main-header::before {
    -webkit-transition-duration: 0.15s !important;
       -moz-transition-duration: 0.15s !important;
         -o-transition-duration: 0.15s !important;
            transition-duration: 0.15s !important;
    -webkit-transition-delay: 0.2s !important;
       -moz-transition-delay: 0.2s !important;
         -o-transition-delay: 0.2s !important;
            transition-delay: 0.2s !important;
  }

  #main-header:has( .mobile_nav.opened ) .logo_container svg .text ,
  #main-header.et-fixed-header:has( .mobile_nav.opened ) .logo_container svg .text {
    opacity: 1 !important;
  }

  body.page #main-header .logo_container ,
  body.page #main-header.et-fixed-header .logo_container ,
  body.page #page-container:not( :has(  #hero:first-child ) ) #main-header .logo_container ,
  body.page #page-container:not( :has(  #hero:first-child ) ) #main-header.et-fixed-header .logo_container {
    z-index: 504 !important;
    inset: 10px 20px auto 10px !important;
  }

  #main-header:has( .mobile_nav.opened ):before {
    opacity: 0 !important;
  }

  #page-container #main-header:has( .mobile_nav.opened ) {
    -webkit-backdrop-filter: var(--nav-bg-vfx-off);
            backdrop-filter: var(--nav-bg-vfx-off);
  }

  html:has( #main-header .mobile_nav.opened ) {
    overflow: hidden !important;
  }


  #hero .et_pb_slide .et_parallax_bg_wrap {
    -webkit-background-size: cover !important;
       -moz-background-size: cover !important;
         -o-background-size: cover !important;
            background-size: cover !important;
  }

  #hero .et_pb_slides .et_pb_slide_description {
    padding-top: 66px !important;
  }

  #hero .et_pb_slides .et_pb_slide_description .et_pb_button_wrapper {
    inset: auto 0 100px 0 !important;
  }

  body:not( .page-id-69598 ) #hero .et_pb_slide:before {
    display: none !important;
  }

  #hero .et_pb_slides .et_pb_slide_description .et_pb_button ,
  #hero .et_pb_slides .et_pb_slide_description .et_pb_button * {
    font-size: 1.2rem !important;
  }

  .et-l #section-intro :not(h1, h2) {
    font-size: 1.5rem !important;
  }

  .section-contacts.et_section_specialty .et_pb_row ,
  .section-contacts.et_section_specialty .et_pb_row_inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 20px;
  }

  .section-contacts.et_section_specialty .et_pb_column ,
  .section-contacts.et_section_specialty .et_pb_column_inner {
    margin-bottom: 0 !important;
  }

  .section-contacts.et_section_specialty > .et_pb_row > * {
    width: 100% !important;
  }

  .section-contacts.et_section_specialty > .et_pb_row .et_pb_column_inner ,
  .section-contacts.et_section_specialty .et_pb_heading ,
  .section-contacts.et_section_specialty .et_pb_module_heading ,
  .section-contacts.et_section_specialty .et_pb_heading_container {
    width: auto !important;
  }

  .section-contacts.et_section_specialty > .et_pb_row > .et_pb_column > * ,
  .section-contacts.et_section_specialty > .et_pb_row > .et_pb_column > * > * ,
  .section-contacts.et_section_specialty .et_pb_module ,
  .section-contacts.et_section_specialty .et_pb_module > * {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-right: 0 !important;
  }

  .section-contacts.et_section_specialty .et_pb_column  + .et_pb_column .et_pb_heading {
    margin-top: 60px !important;
  }

  .section-contacts.et_section_specialty > .et_pb_row > * > * + * {
    margin-top: 20px !important;
  }

  .section-contacts.et_section_specialty .et_pb_module_heading {
    width: 300px !important;
    max-width: 100%;
  }

  .section-contacts.et_section_specialty .kontaktbox {
    max-width: 300px !important;
    padding-top: 20px !important;
  }

  .section-contacts.et_section_specialty .kontaktbox .kontaktbild {
    margin-bottom: 15px !important;
  }

  .section-contacts.et_section_specialty .kontaktbox * {
    font-size: 1.1rem !important
  }

  .section-contacts.et_section_specialty .kontaktbox *.name {
    font-size: 1.45rem !important
  }

  .section-contacts.et_section_specialty > .et_pb_row > * > :only-child {
    margin-top: 0 !important;
  }

  .et_pb_row_inner::after {
    content: none;
  }




  .prog-nav.et_pb_row {
    grid-template-columns: 1fr;
  }

  .prog-nav .et_pb_column {
    padding: 0.6em !important
  }





  #top-sponsors > .et_pb_row {
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
  }

  #main-content #top-sponsors .et_pb_column {
    flex-basis: 100%;
    max-width: 600px !important;
    margin: 0 !important;
  }




  .section-contacts.et_section_regular::before {
    left: 0;
    right: 0;
    width: 100vw;
  }
  
}


@media screen AND ( max-width: 900px ) {

  .et-l h1 , .et-l h2 {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  #section-facts .et_pb_row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }

  #section-facts .et_pb_column .et_pb_text * {
    font-size: 1.1rem;
  }

  #section-facts .et_pb_column .et_pb_code * {
    font-size: 1.2rem !important;
  }

  #section-facts .et_pb_column .et_pb_code .num {
    font-size: 3rem !important;
  }

  #section-facts .et_pb_column .et_pb_text {
    padding-top: 0 !important;
  }

  #section-facts .et_pb_column .et_pb_image {
    margin-bottom: 20px !important;
  }

  #section-facts img {
    aspect-ratio: 13 / 10;
    height: 130px !important;
  }
}