.elementor-5248 .elementor-element.elementor-element-0138e6e{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:32px;--padding-bottom:32px;--padding-left:10px;--padding-right:10px;}.elementor-5248 .elementor-element.elementor-element-9c3c17b{--display:flex;}.elementor-5248 .elementor-element.elementor-element-0da3c53{text-align:left;font-family:"Ebrima", Sans-serif;font-size:16px;font-weight:normal;color:var( --e-global-color-5105a36 );}.elementor-5248 .elementor-element.elementor-element-94e702d{--display:flex;}.elementor-5248 .elementor-element.elementor-element-3e194da .elementor-icon-wrapper{text-align:center;}.elementor-5248 .elementor-element.elementor-element-3e194da.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-5105a36 );}.elementor-5248 .elementor-element.elementor-element-3e194da.elementor-view-framed .elementor-icon, .elementor-5248 .elementor-element.elementor-element-3e194da.elementor-view-default .elementor-icon{color:var( --e-global-color-5105a36 );border-color:var( --e-global-color-5105a36 );}.elementor-5248 .elementor-element.elementor-element-3e194da.elementor-view-framed .elementor-icon, .elementor-5248 .elementor-element.elementor-element-3e194da.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-5105a36 );}.elementor-5248 .elementor-element.elementor-element-3e194da .elementor-icon{font-size:18px;}.elementor-5248 .elementor-element.elementor-element-3e194da .elementor-icon svg{height:18px;}.elementor-5248 .elementor-element.elementor-element-32a821a{--display:flex;}.elementor-5248 .elementor-element.elementor-element-9e37222 .elementor-nav-menu .elementor-item{font-family:"Ebrima", Sans-serif;font-size:16px;font-weight:normal;}.elementor-5248 .elementor-element.elementor-element-9e37222 .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-5105a36 );fill:var( --e-global-color-5105a36 );padding-left:0px;padding-right:0px;padding-top:0px;padding-bottom:0px;}.elementor-5248 .elementor-element.elementor-element-9e37222 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-5248 .elementor-element.elementor-element-9e37222 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-5248 .elementor-element.elementor-element-9e37222 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-5248 .elementor-element.elementor-element-9e37222 .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-5105a36 );fill:var( --e-global-color-5105a36 );}.elementor-5248 .elementor-element.elementor-element-9e37222 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var( --e-global-color-5105a36 );}.elementor-5248 .elementor-element.elementor-element-9e37222{--e-nav-menu-horizontal-menu-item-margin:calc( 20px / 2 );}.elementor-5248 .elementor-element.elementor-element-9e37222 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:20px;}.elementor-5248 .elementor-element.elementor-element-53b54edc{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-5248 .elementor-element.elementor-element-1714f2c7{--display:flex;}.elementor-5248 .elementor-element.elementor-element-3e4a3098{--display:flex;--gap:14px 14px;--row-gap:14px;--column-gap:14px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-primary );--border-color:var( --e-global-color-primary );box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);--margin-top:20px;--margin-bottom:20px;--margin-left:20px;--margin-right:20px;--padding-top:24px;--padding-bottom:24px;--padding-left:24px;--padding-right:24px;}.elementor-5248 .elementor-element.elementor-element-3e4a3098:not(.elementor-motion-effects-element-type-background), .elementor-5248 .elementor-element.elementor-element-3e4a3098 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0A0A0F;}.elementor-5248 .elementor-element.elementor-element-2d62ad7d .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-5248 .elementor-element.elementor-element-1387fbff{font-family:"Ebrima", Sans-serif;font-size:18px;line-height:25px;color:var( --e-global-color-5105a36 );}.elementor-5248 .elementor-element.elementor-element-5a154568{--display:flex;--gap:20px 0px;--row-gap:20px;--column-gap:0px;}.elementor-5248 .elementor-element.elementor-element-3593df9 .elementor-button-content-wrapper{flex-direction:row;}.elementor-5248 .elementor-element.elementor-element-3593df9 .elementor-button .elementor-button-content-wrapper{gap:10px;}.elementor-5248 .elementor-element.elementor-element-3593df9 .elementor-button{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:600;fill:var( --e-global-color-5105a36 );color:var( --e-global-color-5105a36 );}.elementor-5248 .elementor-element.elementor-element-3593df9 .elementor-button:hover, .elementor-5248 .elementor-element.elementor-element-3593df9 .elementor-button:focus{color:var( --e-global-color-5105a36 );box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-5248 .elementor-element.elementor-element-3593df9 .elementor-button:hover svg, .elementor-5248 .elementor-element.elementor-element-3593df9 .elementor-button:focus svg{fill:var( --e-global-color-5105a36 );}.elementor-5248 .elementor-element.elementor-element-20d2423e .elementor-button-content-wrapper{flex-direction:row;}.elementor-5248 .elementor-element.elementor-element-20d2423e .elementor-button .elementor-button-content-wrapper{gap:10px;}.elementor-5248 .elementor-element.elementor-element-20d2423e .elementor-button{font-family:"Poppins", Sans-serif;font-weight:600;fill:var( --e-global-color-5105a36 );color:var( --e-global-color-5105a36 );}.elementor-5248 .elementor-element.elementor-element-20d2423e .elementor-button:hover, .elementor-5248 .elementor-element.elementor-element-20d2423e .elementor-button:focus{color:var( --e-global-color-5105a36 );box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-5248 .elementor-element.elementor-element-20d2423e .elementor-button:hover svg, .elementor-5248 .elementor-element.elementor-element-20d2423e .elementor-button:focus svg{fill:var( --e-global-color-5105a36 );}.elementor-5248 .elementor-element.elementor-element-63d43695{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-5248 .elementor-element.elementor-element-314cb5fd > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5248 .elementor-element.elementor-element-314cb5fd{font-family:"Poppins", Sans-serif;font-size:18px;font-weight:600;line-height:20px;color:var( --e-global-color-5105a36 );}.elementor-5248 .elementor-element.elementor-element-2ed13693 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-5248 .elementor-element.elementor-element-2ed13693{font-family:"Ebrima", Sans-serif;font-size:16px;line-height:20px;color:var( --e-global-color-5105a36 );}.elementor-5248 .elementor-element.elementor-element-4bdb5b17{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-5248:not(.elementor-motion-effects-element-type-background), .elementor-5248 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0A0A0F;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-5248 .elementor-element.elementor-element-0138e6e{--justify-content:center;}.elementor-5248 .elementor-element.elementor-element-0da3c53{font-size:14px;}.elementor-5248 .elementor-element.elementor-element-9e37222 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-5248 .elementor-element.elementor-element-9e37222 .elementor-nav-menu .elementor-item{font-size:14px;}.elementor-5248 .elementor-element.elementor-element-9e37222 .elementor-nav-menu--main .elementor-item{padding-left:0px;padding-right:0px;padding-top:0px;padding-bottom:0px;}.elementor-5248 .elementor-element.elementor-element-9e37222{--e-nav-menu-horizontal-menu-item-margin:calc( 0px / 2 );}.elementor-5248 .elementor-element.elementor-element-9e37222 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:0px;}}@media(max-width:767px){.elementor-5248 .elementor-element.elementor-element-0138e6e{--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-5248 .elementor-element.elementor-element-0da3c53{text-align:center;}.elementor-5248 .elementor-element.elementor-element-94e702d{--width:30%;}.elementor-5248 .elementor-element.elementor-element-3e194da .elementor-icon-wrapper{text-align:center;}.elementor-5248 .elementor-element.elementor-element-32a821a{--width:60%;}}/* Start custom CSS *//* =====================================================
   Kontakt-Flyout – FINALER GESAMT-CSS
   Voraussetzung: Struktur mit contact-actions
   und contact-person Containern
   ===================================================== */

/* ---------- Wrapper: fixiert unten rechts ---------- */
.contact-flyout{
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 9999;

  width: 56px;
  height: 56px;
}

/* ---------- Avatar ---------- */
.contact-avatar{
  position: absolute;
  right: 0;
  bottom: 0;
  line-height: 0;
  cursor: pointer;
}

.contact-avatar img{
  width: 56px;
  height: 56px;
  display: block;
  border-radius: 999px;
  transition: transform 0.15s ease;
}

/* Hover-Effekt */
.contact-avatar:hover img,
.contact-flyout.is-open .contact-avatar img{
  transform: scale(1.06);
}

/* ---------- Box (öffnet per JS via .is-open) ---------- */
.contact-box{
  position: absolute;
  right: 0 !important;
  left: auto !important;
  bottom: 72px;

  width: 315px;
  max-width: calc(100vw - 24px);

  background: #ffffff;
  border-radius: 22px;
  box-shadow: 0 12px 40px rgba(0,0,0,0.18);

  /* Sichtbarkeit */
  opacity: 0;
  transform: translateY(10px);
  pointer-events: none;
  transition: opacity 0.18s ease, transform 0.18s ease;

  /* WICHTIG: eigene Layout-Kontrolle */
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

/* Sichtbar nach Klick */
.contact-flyout.is-open .contact-box{
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* =====================================================
   BUTTON-GRUPPE
   ===================================================== */

.contact-box .contact-actions{
  display: flex !important;
  flex-direction: column !important;

  gap: 12px !important;        /* Abstand zwischen Buttons */
  margin-top: 6px !important; /* Luft nach Intro-Text */
}

/* =====================================================
   PERSONENBLOCK (Name + Rolle)
   ===================================================== */

.contact-box .contact-person{
  display: flex !important;
  flex-direction: column !important;

  gap: 4px !important;          /* Name ↔ Rolle eng */
  margin-top: 14px !important; /* DEUTLICHER Abstand nach Buttons */
}

/* Absätze im Texteditor neutralisieren */
.contact-box .contact-person p{
  margin: 0 !important;
}

/* =====================================================
   ELEMENTOR-SICHERHEITSNETZ
   ===================================================== */

.contact-flyout .elementor-widget,
.contact-flyout .elementor-widget-container{
  margin: 0 !important;
}

/* =====================================================
   MOBILE
   ===================================================== */

@media (max-width: 767px){
  .contact-box{
    width: 290px;
  }
}/* End custom CSS */