.elementor-3818 .elementor-element.elementor-element-4d652e9{--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;--overflow:hidden;}.elementor-3818 .elementor-element.elementor-element-dd97303{--display:flex;}.elementor-3818 .elementor-element.elementor-element-3f18b11{--spacer-size:50px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.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-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-3818 .elementor-element.elementor-element-35a7044 .elementor-nav-menu .elementor-item{font-family:"Roboto", Sans-serif;font-size:20px;font-weight:300;line-height:1.05px;letter-spacing:-0.02px;}.elementor-3818 .elementor-element.elementor-element-35a7044 .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-3818 .elementor-element.elementor-element-35a7044 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-3818 .elementor-element.elementor-element-35a7044 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-3818 .elementor-element.elementor-element-35a7044 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-3818 .elementor-element.elementor-element-35a7044 .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-3818 .elementor-element.elementor-element-35a7044 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var( --e-global-color-primary );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-3818 .elementor-element.elementor-element-0e09a67 .elementor-button{background-color:transparent;font-family:"Roboto", Sans-serif;font-size:15px;font-weight:400;fill:#000000E6;color:#000000E6;background-image:linear-gradient(135deg, #1F7AFF2E 0%, #7CF7D42E 100%);border-style:solid;border-width:1px 1px 1px 1px;border-color:#1F7AFFBF;border-radius:100px 100px 100px 100px;}.elementor-3818 .elementor-element.elementor-element-0e09a67 .elementor-button:hover, .elementor-3818 .elementor-element.elementor-element-0e09a67 .elementor-button:focus{background-color:transparent;color:#000000E6;background-image:linear-gradient(135deg, #1F7AFF3D 0%, #7CF7D43D 100%);}.elementor-3818 .elementor-element.elementor-element-0e09a67 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-3818 .elementor-element.elementor-element-0e09a67 .elementor-button:hover svg, .elementor-3818 .elementor-element.elementor-element-0e09a67 .elementor-button:focus svg{fill:#000000E6;}#elementor-popup-modal-3818 .dialog-widget-content{animation-duration:0.5s;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-3818{background-color:#0000002E;justify-content:flex-end;align-items:center;pointer-events:all;}#elementor-popup-modal-3818 .dialog-message{width:300px;height:100vh;align-items:flex-start;}#elementor-popup-modal-3818 .dialog-close-button{display:flex;font-size:20px;}#elementor-popup-modal-3818 .dialog-close-button i{color:var( --e-global-color-text );}#elementor-popup-modal-3818 .dialog-close-button svg{fill:var( --e-global-color-text );}@media(max-width:1024px){.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}.elementor-3818 .elementor-element.elementor-element-35a7044 .elementor-nav-menu .elementor-item{font-size:20px;line-height:1.05em;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}}@media(max-width:767px){.elementor-3818 .elementor-element.elementor-element-4d652e9{--border-radius:21px 21px 21px 21px;}.elementor-3818 .elementor-element.elementor-element-dd97303{--min-height:623px;--padding-top:0px;--padding-bottom:0px;--padding-left:30px;--padding-right:0px;}.elementor-3818 .elementor-element.elementor-element-3f18b11{--spacer-size:138px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );}.elementor-3818 .elementor-element.elementor-element-35a7044 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-3818 .elementor-element.elementor-element-35a7044 .elementor-nav-menu .elementor-item{font-size:17px;line-height:1.05em;letter-spacing:-0.02px;}.elementor-3818 .elementor-element.elementor-element-35a7044 .elementor-nav-menu--main .elementor-item{padding-left:1px;padding-right:1px;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}.elementor-3818 .elementor-element.elementor-element-0e09a67.elementor-element{--align-self:flex-start;}#elementor-popup-modal-3818 .dialog-message{width:416px;}#elementor-popup-modal-3818 .dialog-widget-content{border-radius:29px 29px 29px 29px;margin:0px -35px 0px 0px;}#elementor-popup-modal-3818 .dialog-close-button{top:6.7%;font-size:30px;}body:not(.rtl) #elementor-popup-modal-3818 .dialog-close-button{right:18%;}body.rtl #elementor-popup-modal-3818 .dialog-close-button{left:18%;}}/* Start custom CSS for button, class: .elementor-element-0e09a67 *//* =========================================================
   ¿HABLAMOS? — Apple pill + glass reflection + microinteractions
   (Clase btn-hablamos en el WIDGET de Elementor)
========================================================= */

/* Botón base */
.elementor-widget-button.btn-hablamos a.elementor-button{
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate;            /* blend-mode dentro del botón */
  transform: translateY(0) translateZ(0);
  will-change: transform, box-shadow;

  transition:
    transform 220ms cubic-bezier(.2,.8,.2,1),
    box-shadow 220ms cubic-bezier(.2,.8,.2,1),
    background 220ms cubic-bezier(.2,.8,.2,1),
    border-color 220ms cubic-bezier(.2,.8,.2,1);
}

/* Hover — elevación + drop shadow sutil (Apple) */
.elementor-widget-button.btn-hablamos a.elementor-button:hover{
  transform: translateY(-2px) translateZ(0);
  box-shadow:
    0 10px 30px rgba(0,0,0,0.12),
    0 4px 10px rgba(0,0,0,0.08);
}

/* Active — pequeño “press” */
.elementor-widget-button.btn-hablamos a.elementor-button:active{
  transform: translateY(-1px) translateZ(0);
  box-shadow:
    0 6px 18px rgba(0,0,0,0.10),
    0 2px 6px rgba(0,0,0,0.06);
}

/* Reflejo 1 (barrido diagonal) */
.elementor-widget-button.btn-hablamos a.elementor-button::before{
  content:"";
  position:absolute;
  top:-60%;
  left:-140%;
  width:240%;
  height:220%;

  background: linear-gradient(
    115deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.18) 35%,
    rgba(255,255,255,0.95) 50%,
    rgba(255,255,255,0.18) 65%,
    rgba(255,255,255,0) 100%
  );

  transform: rotate(8deg);
  opacity:0;
  pointer-events:none;
  mix-blend-mode: screen;

  transition:
    left 900ms cubic-bezier(.16,1,.3,1),
    opacity 220ms ease;
}

/* Reflejo 2 (highlight superior) */
.elementor-widget-button.btn-hablamos a.elementor-button::after{
  content:"";
  position:absolute;
  inset:0;

  background: radial-gradient(
    120% 80% at 20% 20%,
    rgba(255,255,255,0.65),
    rgba(255,255,255,0) 55%
  );

  opacity:0;
  pointer-events:none;
  mix-blend-mode: overlay;

  transition: opacity 260ms ease;
}

/* Disparar reflejos en hover */
.elementor-widget-button.btn-hablamos a.elementor-button:hover::before{ left: 20%; opacity: 1; }
.elementor-widget-button.btn-hablamos a.elementor-button:hover::after{ opacity: 1; }

/* Contenido por encima del reflejo */
.elementor-widget-button.btn-hablamos a.elementor-button .elementor-button-content-wrapper{
  position: relative;
  z-index: 1;

  display: inline-flex;
  align-items: center;
  gap: 8px;
}

/* Flecha / icono — anima sin depender del tipo */
.elementor-widget-button.btn-hablamos a.elementor-button
.elementor-button-content-wrapper
.elementor-button-icon,
.elementor-widget-button.btn-hablamos a.elementor-button
.elementor-button-content-wrapper i,
.elementor-widget-button.btn-hablamos a.elementor-button
.elementor-button-content-wrapper svg{
  transform: translateX(0);
  transition: transform 240ms cubic-bezier(.2,.8,.2,1) !important;
  will-change: transform;
}

/* Hover: mueve la flecha */
.elementor-widget-button.btn-hablamos a.elementor-button:hover
.elementor-button-content-wrapper
.elementor-button-icon,
.elementor-widget-button.btn-hablamos a.elementor-button:hover
.elementor-button-content-wrapper i,
.elementor-widget-button.btn-hablamos a.elementor-button:hover
.elementor-button-content-wrapper svg{
  transform: translateX(3px);
}

/* Focus limpio (evita el outline feo de Elementor/navegador) */
.elementor-widget-button.btn-hablamos a.elementor-button:focus,
.elementor-widget-button.btn-hablamos a.elementor-button:focus-visible,
.elementor-button:focus,
.elementor-button:focus-visible{
  outline: none !important;
  box-shadow: none !important;
}

/* =========================================================
   DOT PULSANTE — sin usar ::before/::after del botón
   (evita conflicto con reflejo glass)
========================================================= */

/* Deja espacio al punto */
.elementor-widget-button.btn-dot a.elementor-button{
  padding-left: 34px !important;
}

/* Wrapper como “ancla” del punto */
.elementor-widget-button.btn-dot a.elementor-button .elementor-button-content-wrapper{
  position: relative;
}

/* Punto sólido (visible) */
.elementor-widget-button.btn-dot a.elementor-button
.elementor-button-content-wrapper::before{
  content: "";
  position: absolute;
  left: -18px;                 /* dentro del padding extra */
  top: 50%;
  transform: translateY(-50%);

  width: 8px;
  height: 8px;
  border-radius: 999px;

  background: #1f7aff;         /* punto azul */
  opacity: 1;

  z-index: 3;                  /* por encima del reflejo */
}

/* Halo pulsante */
.elementor-widget-button.btn-dot a.elementor-button
.elementor-button-content-wrapper::after{
  content: "";
  position: absolute;
  left: -18px;
  top: 50%;
  transform: translateY(-50%) scale();

  width: 8px;
  height: 8px;
  border-radius: 999px;

  background: rgba(31,122,255,0.95);

  z-index: 2;

  animation: pulse-dot 2.2s cubic-bezier(.4,0,.2,1) infinite;
}

/* Animación */
@keyframes pulse-dot{
  0%   { transform: translateY(-50%) scale(1);   opacity: .6; }
  60%  { transform: translateY(-50%) scale(3.2); opacity: 0; }
  100% { transform: translateY(-50%) scale(2.2); opacity: 0; }
}/* End custom CSS */
/* Start custom CSS *//* Botón de cerrar — estilo Apple */
.elementor-popup-modal .dialog-close-button{
  top: 40px !important;
  right: 60px !important;

  width: 44px !important;
  height: 44px !important;
  border-radius: 999px !important;

  background: rgba(0,0,0,0.04) !important;
  border: 1px solid rgba(0,0,0,0.08) !important;

  display: grid !important;
  place-items: center !important;

  transition: transform 200ms cubic-bezier(.2,.8,.2,1),
              background 200ms cubic-bezier(.2,.8,.2,1) !important;
}

/* Quita el icono original de Elementor */
.elementor-popup-modal .dialog-close-button i,
.elementor-popup-modal .dialog-close-button svg{
  display: none !important;
}

/* X fina nueva */
.elementor-popup-modal .dialog-close-button::before{
  content: "×";
  font-size: 26px;
  line-height: 1;
  color: rgba(0,0,0,0.55);
  transform: translateY(-1px);
}

/* Hover / Press */
.elementor-popup-modal .dialog-close-button:hover{
  background: rgba(0,0,0,0.06) !important;
  transform: translateY(-1px);
}
.elementor-popup-modal .dialog-close-button:active{
  transform: translateY(0) scale(0.96);
}

/* ===== PANEL GLASS ===== */
.elementor-popup-modal .dialog-widget-content,
.dialog-lightbox-widget .dialog-widget-content{
  background: rgba(255,255,255,0.78) !important;
  backdrop-filter: blur(18px) saturate(140%) !important;
  -webkit-backdrop-filter: blur(18px) saturate(140%) !important;

  border: 1px solid rgba(0,0,0,0.08) !important;
  border-radius: 28px !important;
}

hola@adrianrem.com/* End custom CSS */