.elementor-11004 .elementor-element.elementor-element-588a9889{--display:flex;}.elementor-11004 .elementor-element.elementor-element-b24e3fe .e-contact-buttons{--e-contact-buttons-button-icon:var( --e-global-color-astglobalcolor5 );--e-contact-buttons-button-bg:var( --e-global-color-884dd4e );--e-contact-buttons-button-icon-hover:#FFFFFF;--e-contact-buttons-button-bg-hover:var( --e-global-color-adc486b );--e-contact-buttons-active-button-color:var( --e-global-color-884dd4e );--e-contact-buttons-contact-button-icon:#FFFFFF;--e-contact-buttons-contact-button-bg:var( --e-global-color-884dd4e );--e-contact-buttons-contact-button-icon-hover:#FFFFFF;--e-contact-buttons-contact-button-bg-hover:var( --e-global-color-adc486b );--e-contact-buttons-tooltip-text:var( --e-global-color-astglobalcolor5 );--e-contact-buttons-tooltip-bg:var( --e-global-color-884dd4e );--e-contact-buttons-horizontal-offset:0px;--e-contact-buttons-vertical-offset:15px;}/* Start custom CSS for contact-buttons-var-4, class: .elementor-element-b24e3fe *//*
* positions of chat-button depending on browser size
*/


/* Desktop boxed layout */
.e-contact-buttons,
.e-contact-buttons__chat-button-container {
    right: calc(((100vw - 1350px) / 2)) !important;
    left: auto !important;
}

/* Tablet + smaller screens */
@media (max-width: 1350px) {
    .e-contact-buttons,
    .e-contact-buttons__chat-button-container {
        right: 5px !important;
    }
}

/*
* Display chat botton only after scrolling
* works together with elementor custom JS code:
*  "floating button scroll blend in"
*/
.e-contact-buttons,
.e-contact-buttons__chat-button-container {
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px);
    transition: opacity 0.4s ease, transform 0.4s ease, visibility 0.4s;
}

.e-contact-buttons.is-visible,
.e-contact-buttons__chat-button-container.is-visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/*
*  focus rahmen ausblenden ipad
*/

/* Entfernt den blauen Fokus-Rahmen auf iOS / iPad */
.e-contact-buttons__content-wrapper {
  outline: none !important;               /* kein Standard-Fokus-Rahmen */
  -webkit-tap-highlight-color: transparent; /* Tap Highlight entfernen */
  box-shadow: none !important;            /* falls Schatten entsteht */
}

/* Optional: wenn tabindex gebraucht wird, aber Focus nicht sichtbar sein soll */
.e-contact-buttons__content-wrapper:focus {
  outline: none !important;
  box-shadow: none !important;
}
/*
*  focus rahmen entfernen nachdem link besucht wure
*/
/* Entfernt den Focus-Rahmen auf allen Kontakt-Links */
.e-contact-buttons__contact-icon-link:focus,
.e-contact-buttons__contact-icon-link:active {
    outline: none !important;           /* klassische Outline weg */
    box-shadow: none !important;        /* ggf. vorhandenes Shadow entfernen */
}

/* Optional: für iOS Tap Highlight */
.e-contact-buttons__contact-icon-link {
    -webkit-tap-highlight-color: transparent;
}



/*
* 
*/

/* Tooltip hover state */
.e-contact-buttons__contact-tooltip:hover {
     background-color: #F4A51E;
}


/* Hover parent <a> (icon or link) */
.e-contact-buttons__contact-icon-link:hover 
.e-contact-buttons__contact-tooltip {
    background-color: #F4A51E;           
}
/* on hower parent link-icon, change also "arrow (:after)" color  */
.e-contact-buttons__contact-icon-link:hover 
.e-contact-buttons__contact-tooltip:after {
   border-inline-start-color: #F4A51E;           
}


/* Das eigentliche "Hintergrund-Layer" */
.elementor-location-floating_buttons .e-contact-buttons::before {
  content: "";
  position: absolute;

  inset: 0; /*füllt gesamten Container */
  background: rgba(244, 235, 235, 0.5);
  border: 1px solid #E45C35;
  border-radius: 8px;
  opacity: 0;
  transition: opacity 0.8s ease-in-out;

  pointer-events: none; /* wichtig, damit Button klickbar bleibt */
  z-index: 0; /* hinter allem */
}

.elementor-location-floating_buttons .e-contact-buttons {
  padding: 8px;       /* distance from border to inner elements */
}

/* Inhalt/Icons/Button über Layer legen */
.elementor-location-floating_buttons .e-contact-buttons > * {

  z-index: 1;
}

/* Aktivierter Zustand: fade-in Hintergrund */
.elementor-location-floating_buttons 
.e-contact-buttons:has(.e-contact-buttons__content-wrapper[aria-hidden="false"])::before {
  opacity: 1;
}


/* link icon/tooltiop container background and border */
/*.e-contact-buttons-var-4 .e-contact-buttons__content{*/




/* 
 * chat button flaoting/breathing
 */


/* subtle floating/bouncing also when not selected */
@keyframes idleFloat {
    0%, 100% { transform: translateY(0); }
    50%      { transform: translateY(-4px); }
}

@keyframes breathe {
    0%,100% { transform: scale(1); }
    50%     { transform: scale(1.04); }
}

@keyframes floatBreathe {
    0%, 100% {
        transform: translateY(0) scale(1);
    }
    50% {
        transform: translateY(-2px) scale(1.03);
    }
}

.e-contact-buttons.is-visible,
.e-contact-buttons__chat-button-container.is-visible {
    animation: floatBreathe 4s ease-in-out infinite;
}

/* 
 * Tooltip for chat button 
 */
.e-contact-buttons__chat-button::after {
    content: "Please click";
    position: absolute;
    right: 65px; 
    top: 50%;
    transform: translateY(-50%) translateX(10px);
    
    background: #ffffff;
    color: #F4A51E;
    padding: 2px 6px; /* smaller top/bottom, same left/right */
    font-size: 11px;
    font-weight: 500;
    white-space: nowrap;

    border-radius: 20px;
    box-shadow: 0 4px 12px rgba(244, 165, 30, 0.35);

    opacity: 0;
    pointer-events: none;
    transition: all 0.25s ease;
}

/* Show tooltip on hover */
.e-contact-buttons__chat-button:hover::after {
    opacity: 1;
}

/* Hide tooltip when chat panel is open */
.e-contact-buttons__chat-button[aria-expanded="true"]::after,
.e-contact-buttons__content-wrapper[aria-expanded="true"] ~ .e-contact-buttons__chat-button::after {
    opacity: 0 !important;
    pointer-events: none;
}

/* Optional: prevent showing tooltip if hovering icon links */
.e-contact-buttons__contact-icon-link:hover ~ .e-contact-buttons__chat-button::after {
    opacity: 0 !important;
}/* End custom CSS */