.elementor-29 .elementor-element.elementor-element-f363699{--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-29 .elementor-element.elementor-element-56fea890{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:wrap;}.elementor-29 .elementor-element.elementor-element-56fea890:not(.elementor-motion-effects-element-type-background), .elementor-29 .elementor-element.elementor-element-56fea890 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-29 .elementor-element.elementor-element-5e15b48{--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-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-29 .elementor-element.elementor-element-6a52d979{text-align:start;}.elementor-29 .elementor-element.elementor-element-6a52d979 img{width:50%;}.elementor-29 .elementor-element.elementor-element-1daaf3bc{--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;--justify-content:space-between;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-29 .elementor-element.elementor-element-c808baf .elementor-nav-menu .elementor-item{font-family:"Poppins", Sans-serif;font-size:15px;font-weight:400;}.elementor-29 .elementor-element.elementor-element-c808baf .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;}.elementor-29 .elementor-element.elementor-element-2a7b92bc .elementor-nav-menu .elementor-item{font-family:"Poppins", Sans-serif;font-size:15px;font-weight:400;}.elementor-29 .elementor-element.elementor-element-2a7b92bc .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;}.elementor-29 .elementor-element.elementor-element-d3e041d .elementor-nav-menu .elementor-item{font-family:"Poppins", Sans-serif;font-size:15px;font-weight:400;}.elementor-29 .elementor-element.elementor-element-d3e041d .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;}.elementor-29 .elementor-element.elementor-element-18688350 .elementor-nav-menu .elementor-item{font-family:"Poppins", Sans-serif;font-size:15px;font-weight:400;}.elementor-29 .elementor-element.elementor-element-18688350 .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;}.elementor-29 .elementor-element.elementor-element-4b22a103{--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;--justify-content:space-between;--align-items:center;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-29 .elementor-element.elementor-element-3308ca10{font-family:"Poppins", Sans-serif;font-size:12px;font-weight:400;color:#FFFFFF;}.elementor-29 .elementor-element.elementor-element-2454bfd6{--grid-template-columns:repeat(0, auto);text-align:center;--icon-size:25px;--grid-column-gap:5px;--grid-row-gap:0px;}.elementor-29 .elementor-element.elementor-element-2454bfd6 .elementor-social-icon{background-color:#FFFFFF00;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-29 .elementor-element.elementor-element-5e15b48{--width:20%;}.elementor-29 .elementor-element.elementor-element-1daaf3bc{--width:80%;}.elementor-29 .elementor-element.elementor-element-4b22a103{--width:100%;}}/* Start custom CSS for html, class: .elementor-element-1d2d5e08 *//* ... (existing body, floating-container styles from previous answer) ... */
.floating-container {
  position: fixed; 
  bottom: 80px;    
  right:5px;     
  max-width: 200px; 
  z-index: 1000;   
  /* Usaremos flexbox para alinear los elementos verticalmente */
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px; /* Espacio entre la burbuja, el menú y el botón FAB */
}

/* Estilos de la burbuja (se mantienen igual, solo la hace flotar por encima) */
.chat-bubble-wrapper {
  opacity: 0; 
  transition: opacity 0.5s ease-in-out; 
  margin-right: 50px
}
.chat-bubble-wrapper.is-visible {
    opacity: 1;
}
.chat-bubble {
  /* ... (existing bubble styles: position: relative, padding, border-radius, background, etc.) ... */
  position: relative;
  padding: 10px 15px;
  border-radius: 20px 20px 20px 20px; 
  background: #fff; 
  color: #000;
  margin-left: auto;
  word-wrap: break-word; 
  box-shadow: 0 4px 8px rgba(0,0,0,0.2);
  border: 2px solid #000;
}
.chat-bubble::after {
  /* ... (existing bubble tail styles) ... */
  content: "";
  position: absolute;
  bottom: 0;
  right: -5px; 
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-left-color: #fff;
  border-bottom-color: #fff;
  border-radius: 0 0 0 5px; 
}


/* Estilos para el menú de redes sociales (oculto por defecto) */
.social-media-menu {
    display: none; /* Oculto por defecto */
    flex-direction: column;
    gap: 10px;
    align-items: flex-end;
}

.social-media-menu.is-open {
    display: flex; /* Mostrar cuando la clase is-open esté activa */
}

.social-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    background-color: #555;
    color: white;
    text-decoration: none;
    border-radius: 50%;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
}

/* Estilo para el botón principal (Floating Action Button - FAB) */
.main-fab {
        width: 90px;
    height: 70px;
    border-radius: 50%;
    background-color: #000077;
    color: white;
    border: none;
    font-size: 24px;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(0,0,0,0.4);
    transition: transform 0.3s ease;
}

/* Rotar el botón principal cuando el menú está abierto */
.main-fab.is-open {
     background-color: #000077;
}

#main-fab:hover, #main-fab:focus{
     background-color: #FFC718!important;
}
.elementor-social-icons-wrapper {
    display: inline-block;
    margin-bottom: calc(-1 * var(--grid-row-gap));
    width: 100%;
    word-spacing: var(--grid-column-gap);
}    
.elementor-social-icon-facebook, .elementor-social-icon-facebook-f, .elementor-social-icon-instagram, .elementor-social-icon-tiktok{
    background-color: #69727d;
    border-radius: 50%;
}/* End custom CSS */