/* Xtreme-Servers – Popup-Layout wie auf der aktuell laufenden Website.
   Elementor übernimmt die eigentliche Popup-Darstellung; diese Regeln sichern
   dieselbe Geometrie auch im statischen Fallback. */

/* Formular-Popups: zentriert, 800px */
#elementor-popup-modal-238 .dialog-message,
#elementor-popup-modal-293 .dialog-message,
#elementor-popup-modal-337 .dialog-message,
#elementor-popup-modal-894 .dialog-message{width:800px;height:auto}

/* Ansprechpartner-Popups über das Männchen: rechtsbündig, 320px */
#elementor-popup-modal-1055,
#elementor-popup-modal-1072,
#elementor-popup-modal-1067,
#elementor-popup-modal-1086{justify-content:flex-end;align-items:center}

#elementor-popup-modal-1055 .dialog-message,
#elementor-popup-modal-1072 .dialog-message,
#elementor-popup-modal-1067 .dialog-message,
#elementor-popup-modal-1086 .dialog-message{width:320px;height:auto}

/* Fallback, falls Elementor Pro beim statischen Aufruf nicht verfügbar ist. */
body.xtreme-popup-fallback-active{overflow:hidden!important}
.xtreme-popup-fallback-open{
  position:fixed!important;
  top:50%!important;
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  z-index:999999!important;
  max-height:calc(100vh - 30px)!important;
  overflow:auto!important;
  box-sizing:border-box!important;
  background:#fff!important;
}
.xtreme-popup-fallback-open[data-elementor-id="1055"],
.xtreme-popup-fallback-open[data-elementor-id="1072"],
.xtreme-popup-fallback-open[data-elementor-id="1067"],
.xtreme-popup-fallback-open[data-elementor-id="1086"]{
  right:0!important;
  left:auto!important;
  transform:translateY(-50%)!important;
  width:320px!important;
  max-width:320px!important;
}
.xtreme-popup-fallback-open[data-elementor-id="238"],
.xtreme-popup-fallback-open[data-elementor-id="293"],
.xtreme-popup-fallback-open[data-elementor-id="337"],
.xtreme-popup-fallback-open[data-elementor-id="894"]{
  left:50%!important;
  right:auto!important;
  transform:translate(-50%,-50%)!important;
  width:800px!important;
  max-width:calc(100vw - 30px)!important;
}
.xtreme-fallback-close{
  position:absolute!important;
  right:12px!important;
  top:10px!important;
  width:34px!important;
  height:34px!important;
  border:0!important;
  background:transparent!important;
  color:#333!important;
  font-size:28px!important;
  line-height:34px!important;
  text-align:center!important;
  cursor:pointer!important;
  z-index:1000001!important;
  padding:0!important;
}
@media(max-width:767px){
  .xtreme-popup-fallback-open[data-elementor-id="1055"],
  .xtreme-popup-fallback-open[data-elementor-id="1072"],
  .xtreme-popup-fallback-open[data-elementor-id="1067"],
  .xtreme-popup-fallback-open[data-elementor-id="1086"]{
    width:min(320px,calc(100vw - 20px))!important;
    max-width:calc(100vw - 20px)!important;
  }
  .xtreme-popup-fallback-open[data-elementor-id="238"],
  .xtreme-popup-fallback-open[data-elementor-id="293"],
  .xtreme-popup-fallback-open[data-elementor-id="337"],
  .xtreme-popup-fallback-open[data-elementor-id="894"]{
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
    max-height:92vh!important;
  }
}
/* On phones the chat launcher must not cover form controls or the submit button. */
@media (max-width:767px){
body.xtreme-form-popup-open iframe[title*="chat" i],
body.xtreme-form-popup-open iframe[src*="tawk.to" i],
body.xtreme-form-popup-open [id*="tawk" i]{display:none!important;visibility:hidden!important;pointer-events:none!important}
body.xtreme-form-popup-open .elementor-popup-modal form.elementor-form,
body.xtreme-form-popup-open .xtreme-popup-fallback-open form.elementor-form{padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))!important}
}
