.elementor-widget-section .pafe-woocommerce-sales-funnels-add-to-cart-message--success{color:var( --e-global-color-primary );}.elementor-widget-section .pafe-woocommerce-sales-funnels-add-to-cart-message--out-of-stock{color:var( --e-global-color-primary );}.elementor-widget-section .pafe-woocommerce-sales-funnels-add-to-cart-message{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-18 .elementor-element.elementor-element-690cfd76:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-690cfd76 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-690cfd76{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-690cfd76 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-widget-column .pafe-woocommerce-sales-funnels-add-to-cart-message--success{color:var( --e-global-color-primary );}.elementor-widget-column .pafe-woocommerce-sales-funnels-add-to-cart-message--out-of-stock{color:var( --e-global-color-primary );}.elementor-widget-column .pafe-woocommerce-sales-funnels-add-to-cart-message{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-image .pafe-woocommerce-sales-funnels-add-to-cart-message--success{color:var( --e-global-color-primary );}.elementor-widget-image .pafe-woocommerce-sales-funnels-add-to-cart-message--out-of-stock{color:var( --e-global-color-primary );}.elementor-widget-image .pafe-woocommerce-sales-funnels-add-to-cart-message{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.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-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-button .pafe-woocommerce-sales-funnels-add-to-cart-message--success{color:var( --e-global-color-primary );}.elementor-widget-button .pafe-woocommerce-sales-funnels-add-to-cart-message--out-of-stock{color:var( --e-global-color-primary );}.elementor-widget-button .pafe-woocommerce-sales-funnels-add-to-cart-message{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-18 .elementor-element.elementor-element-7d2bdaba:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-7d2bdaba > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-7d2bdaba{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-7d2bdaba > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-18 .elementor-element.elementor-element-6379c790:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-6379c790 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-6379c790{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-6379c790 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-18 .elementor-element.elementor-element-18599519:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-18599519 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-18599519{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-18599519 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-18 .elementor-element.elementor-element-78f35de2:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-78f35de2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-78f35de2{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-78f35de2 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-18 .elementor-element.elementor-element-d5d4975:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-d5d4975 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-d5d4975{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-d5d4975 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-18 .elementor-element.elementor-element-2e8e5fb7:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-2e8e5fb7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-2e8e5fb7{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-2e8e5fb7 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-widget-heading .pafe-woocommerce-sales-funnels-add-to-cart-message--success{color:var( --e-global-color-primary );}.elementor-widget-heading .pafe-woocommerce-sales-funnels-add-to-cart-message--out-of-stock{color:var( --e-global-color-primary );}.elementor-widget-heading .pafe-woocommerce-sales-funnels-add-to-cart-message{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-18 .elementor-element.elementor-element-6ef19ce7{text-align:center;}.elementor-18 .elementor-element.elementor-element-6ef19ce7 .elementor-heading-title{color:#FFFFFF;}.elementor-widget-countdown .pafe-woocommerce-sales-funnels-add-to-cart-message--success{color:var( --e-global-color-primary );}.elementor-widget-countdown .pafe-woocommerce-sales-funnels-add-to-cart-message--out-of-stock{color:var( --e-global-color-primary );}.elementor-widget-countdown .pafe-woocommerce-sales-funnels-add-to-cart-message{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-countdown .elementor-countdown-item{background-color:var( --e-global-color-primary );}.elementor-widget-countdown .elementor-countdown-digits{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-countdown .elementor-countdown-label{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-countdown .elementor-countdown-expire--message{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-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-wrapper{max-width:100%;}body:not(.rtl) .elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-item:not(:first-of-type){margin-left:calc( 10px/2 );}body:not(.rtl) .elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-item:not(:last-of-type){margin-right:calc( 10px/2 );}body.rtl .elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-item:not(:first-of-type){margin-right:calc( 10px/2 );}body.rtl .elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-item:not(:last-of-type){margin-left:calc( 10px/2 );}.elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-digits{font-family:"Poppins", Sans-serif;font-weight:400;}.elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-label{font-family:"Poppins", Sans-serif;font-weight:400;}.elementor-18 .elementor-element.elementor-element-3076cf71:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-3076cf71 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-3076cf71{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-3076cf71 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-18 .elementor-element.elementor-element-21fccef1:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-21fccef1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-21fccef1{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-21fccef1 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-18 .elementor-element.elementor-element-77ba1041{text-align:center;}.elementor-18 .elementor-element.elementor-element-77ba1041 .elementor-heading-title{color:#FFFFFF;}.elementor-widget-progress .pafe-woocommerce-sales-funnels-add-to-cart-message--success{color:var( --e-global-color-primary );}.elementor-widget-progress .pafe-woocommerce-sales-funnels-add-to-cart-message--out-of-stock{color:var( --e-global-color-primary );}.elementor-widget-progress .pafe-woocommerce-sales-funnels-add-to-cart-message{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-progress .elementor-title{color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-progress .elementor-progress-wrapper .elementor-progress-bar{background-color:var( --e-global-color-primary );}.elementor-18 .elementor-element.elementor-element-744af709 .elementor-progress-bar{height:40px;line-height:40px;}.elementor-18 .elementor-element.elementor-element-744af709 .elementor-progress-wrapper{border-radius:11px;overflow:hidden;}.elementor-18 .elementor-element.elementor-element-47ffaf36:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-47ffaf36 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-47ffaf36{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-47ffaf36 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-18 .elementor-element.elementor-element-26191f85:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-26191f85 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-26191f85{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-26191f85 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-18 .elementor-element.elementor-element-467a7de5:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-467a7de5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-467a7de5{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-467a7de5 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-18 .elementor-element.elementor-element-af5fe72:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-af5fe72 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-af5fe72{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-af5fe72 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-18 .elementor-element.elementor-element-2f07f555:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-2f07f555 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-2f07f555{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-2f07f555 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-18 .elementor-element.elementor-element-675ec447:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-675ec447 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-675ec447{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-675ec447 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-widget-image-carousel .pafe-woocommerce-sales-funnels-add-to-cart-message--success{color:var( --e-global-color-primary );}.elementor-widget-image-carousel .pafe-woocommerce-sales-funnels-add-to-cart-message--out-of-stock{color:var( --e-global-color-primary );}.elementor-widget-image-carousel .pafe-woocommerce-sales-funnels-add-to-cart-message{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-image-carousel .pafe-navigation-arrows-icon-arrows{color:var( --e-global-color-primary );}.elementor-18 .elementor-element.elementor-element-4e4ef39{--e-image-carousel-slides-to-show:1;}.elementor-18 .elementor-element.elementor-element-46388b66:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-46388b66 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-46388b66{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-46388b66 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-18 .elementor-element.elementor-element-584323ea:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-584323ea > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-584323ea{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-584323ea > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-18 .elementor-element.elementor-element-27bc998e{text-align:center;}.elementor-18 .elementor-element.elementor-element-27bc998e .elementor-heading-title{color:#FFFFFF;}.elementor-widget-text-editor .pafe-woocommerce-sales-funnels-add-to-cart-message--success{color:var( --e-global-color-primary );}.elementor-widget-text-editor .pafe-woocommerce-sales-funnels-add-to-cart-message--out-of-stock{color:var( --e-global-color-primary );}.elementor-widget-text-editor .pafe-woocommerce-sales-funnels-add-to-cart-message{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.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-18 .elementor-element.elementor-element-504d8dfc{font-family:"Poppins", Sans-serif;font-weight:400;color:#FFFFFF;}.elementor-18 .elementor-element.elementor-element-71fb8afe:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-71fb8afe > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-18 .elementor-element.elementor-element-71fb8afe{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-18 .elementor-element.elementor-element-71fb8afe > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}body.elementor-page-18:not(.elementor-motion-effects-element-type-background), body.elementor-page-18 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}@media(max-width:767px){.elementor-18 .elementor-element.elementor-element-55a98451{border-radius:20px 20px 20px 20px;}.elementor-18 .elementor-element.elementor-element-42ea5356{border-radius:20px 20px 20px 20px;}.elementor-18 .elementor-element.elementor-element-4c3f8fb3{border-radius:20px 20px 20px 20px;}.elementor-18 .elementor-element.elementor-element-6ef19ce7{text-align:center;}.elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-digits{font-size:47px;}.elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-label{font-size:20px;}.elementor-18 .elementor-element.elementor-element-5a5d6947{border-radius:20px 20px 20px 20px;}.elementor-18 .elementor-element.elementor-element-77ba1041{text-align:center;}.elementor-18 .elementor-element.elementor-element-4dc10bcb{border-radius:20px 20px 20px 20px;}.elementor-18 .elementor-element.elementor-element-7c481a5b{border-radius:20px 20px 20px 20px;}.elementor-18 .elementor-element.elementor-element-27bc998e{text-align:center;}}/* Start custom CSS for image, class: .elementor-element-55a98451 *//* ==========================================
   IMAGE FX UNIVERSAL - VERSIÓN MÁS LENTA
   Elementor Custom CSS
========================================== */

.elementor-18 .elementor-element.elementor-element-55a98451{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 16px;
  transform: translate3d(0,0,0);
  -webkit-transform: translate3d(0,0,0);
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Entrada suave + flotación más lenta */
  animation:
    vfxWrapIn .5s cubic-bezier(.22,.8,.26,1) both,
    vfxWrapFloat 5.8s ease-in-out .5s infinite;
}

.elementor-18 .elementor-element.elementor-element-55a98451 img{
  display: block;
  width: 100%;
  height: auto;
  transform: translate3d(0,0,0) scale(1.01);
  -webkit-transform: translate3d(0,0,0) scale(1.01);
  will-change: transform, filter, opacity;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Respiración mucho más calmada */
  animation: vfxBreath 6.4s ease-in-out .5s infinite;
  transition: transform .28s cubic-bezier(.22,.8,.26,1), filter .28s ease;
  filter: contrast(1.03) saturate(1.04);
}

/* Glow más sutil */
.elementor-18 .elementor-element.elementor-element-55a98451::after{
  content: "";
  position: absolute;
  inset: -8%;
  pointer-events: none;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.14), transparent 35%),
    radial-gradient(circle at 80% 78%, rgba(121,54,95,.16), transparent 40%);
  mix-blend-mode: screen;
  opacity: .34;
  transform: translate3d(0,0,0) scale(1);
  animation: vfxGlow 7.2s ease-in-out infinite;
}

/* Shine menos frecuente */
.elementor-18 .elementor-element.elementor-element-55a98451::before{
  content: "";
  position: absolute;
  top: -140%;
  left: -34%;
  width: 28%;
  height: 360%;
  pointer-events: none;
  background: linear-gradient(
    95deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.05) 34%,
    rgba(255,255,255,.18) 50%,
    rgba(255,255,255,.05) 66%,
    rgba(255,255,255,0) 100%
  );
  transform: translateX(-160%) skewX(-18deg);
  animation: vfxShine 8.5s linear 1.2s infinite;
}

@media (hover:hover) and (pointer:fine){
  .elementor-18 .elementor-element.elementor-element-55a98451:hover img{
    transform: translate3d(0,0,0) scale(1.035);
    filter: contrast(1.05) saturate(1.06) brightness(1.01);
  }
  .elementor-18 .elementor-element.elementor-element-55a98451:hover::before{
    animation-duration: 4.2s;
  }
}

@media (hover:none), (pointer:coarse){
  .elementor-18 .elementor-element.elementor-element-55a98451{
    border-radius: 14px;
  }
  .elementor-18 .elementor-element.elementor-element-55a98451 img{
    animation-duration: 6.8s;
  }
  .elementor-18 .elementor-element.elementor-element-55a98451::before{
    animation-duration: 10s;
  }
  .elementor-18 .elementor-element.elementor-element-55a98451::after{
    animation-duration: 8s;
  }
  .elementor-18 .elementor-element.elementor-element-55a98451:active img{
    transform: translate3d(0,0,0) scale(1.025);
    filter: contrast(1.04) saturate(1.05);
  }
}

@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-55a98451::before{
    width: 24%;
    opacity: .75;
  }
  .elementor-18 .elementor-element.elementor-element-55a98451::after{
    opacity: .28;
  }
}

@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-55a98451,
  .elementor-18 .elementor-element.elementor-element-55a98451 img,
  .elementor-18 .elementor-element.elementor-element-55a98451::before,
  .elementor-18 .elementor-element.elementor-element-55a98451::after{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}

@keyframes vfxWrapIn{
  from{ opacity: .0; transform: translate3d(0,8px,0) scale(.992); }
  to  { opacity: 1;   transform: translate3d(0,0,0) scale(1); }
}
@keyframes vfxWrapFloat{
  0%,100%{ transform: translate3d(0,0,0); }
  50%    { transform: translate3d(0,-3px,0); }
}
@keyframes vfxBreath{
  0%,100%{ transform: translate3d(0,0,0) scale(1.01); }
  50%    { transform: translate3d(0,0,0) scale(1.026); }
}
@keyframes vfxGlow{
  0%,100%{ opacity:.28; transform: scale(1); }
  50%    { opacity:.42; transform: scale(1.015); }
}
@keyframes vfxShine{
  0%   { transform: translateX(-160%) skewX(-18deg); }
  100% { transform: translateX(260%) skewX(-18deg); }
}/* End custom CSS */

/* Start custom CSS for button, class: .elementor-element-3bbe8a3f *//* ============================
   BOTÓN DE COMPRA (Elementor)
   Color base: #9E0000
   ============================ */

.elementor-18 .elementor-element.elementor-element-3bbe8a3f .elementor-button{
  --btn-red: #9E0000;
  --btn-red-dark: #7f0000;
  --btn-red-light: #c40000;
  --btn-text: #ffffff;

  position: relative;
  overflow: hidden;
  isolation: isolate; /* asegura que el brillo quede dentro del botón */

  background: linear-gradient(180deg, var(--btn-red-light) 0%, var(--btn-red) 55%, var(--btn-red-dark) 100%);
  color: var(--btn-text) !important;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 14px;

  /* Ajustes visuales */
  font-weight: 700;
  letter-spacing: 0.2px;
  padding: 14px 24px;

  /* Efectos */
  box-shadow:
    0 10px 22px rgba(158, 0, 0, 0.28),
    0 4px 10px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.20);

  transform: translateZ(0);
  transition:
    transform .12s ease,
    box-shadow .12s ease,
    filter .12s ease,
    background .12s ease;

  /* Pulso suave al cargar */
  animation: buyPulseRed 1.1s ease-in-out infinite;
}

/* Brillo diagonal premium */
.elementor-18 .elementor-element.elementor-element-3bbe8a3f .elementor-button::before{
  content: "";
  position: absolute;
  top: -20%;
  left: -35%;
  width: 28%;
  height: 140%;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.16) 45%,
    rgba(255,255,255,0.38) 50%,
    rgba(255,255,255,0.16) 55%,
    rgba(255,255,255,0) 100%
  );
  transform: rotate(18deg) translateX(-180%);
  z-index: 1;
  pointer-events: none;
  animation: buyShineRed 2.8s linear infinite;
}

/* Capa superior para que el texto quede siempre bien */
.elementor-18 .elementor-element.elementor-element-3bbe8a3f .elementor-button .elementor-button-text,
.elementor-18 .elementor-element.elementor-element-3bbe8a3f .elementor-button .elementor-button-icon{
  position: relative;
  z-index: 2;
}

/* Hover (desktop) */
@media (hover: hover){
  .elementor-18 .elementor-element.elementor-element-3bbe8a3f .elementor-button:hover{
    transform: translateY(-2px) scale(1.02);
    filter: saturate(1.06);
    animation: none; /* pausa pulso para evitar conflicto visual */
    box-shadow:
      0 14px 28px rgba(158, 0, 0, 0.34),
      0 6px 14px rgba(0, 0, 0, 0.20),
      inset 0 1px 0 rgba(255, 255, 255, 0.25);
  }

  .elementor-18 .elementor-element.elementor-element-3bbe8a3f .elementor-button:hover::before{
    animation-duration: 1.2s; /* brillo más rápido al hover */
  }
}

/* Click / tap */
.elementor-18 .elementor-element.elementor-element-3bbe8a3f .elementor-button:active{
  transform: translateY(0) scale(0.985);
  box-shadow:
    0 6px 14px rgba(158, 0, 0, 0.22),
    0 2px 6px rgba(0, 0, 0, 0.16),
    inset 0 2px 6px rgba(0, 0, 0, 0.18);
}

/* Focus accesible (teclado) */
.elementor-18 .elementor-element.elementor-element-3bbe8a3f .elementor-button:focus,
.elementor-18 .elementor-element.elementor-element-3bbe8a3f .elementor-button:focus-visible{
  outline: none;
  box-shadow:
    0 0 0 3px rgba(255,255,255,0.75),
    0 0 0 6px rgba(158, 0, 0, 0.30),
    0 10px 22px rgba(158, 0, 0, 0.28);
}

/* Si el botón tiene icono */
.elementor-18 .elementor-element.elementor-element-3bbe8a3f .elementor-button .elementor-button-icon{
  transition: transform .2s ease;
}
@media (hover: hover){
  .elementor-18 .elementor-element.elementor-element-3bbe8a3f .elementor-button:hover .elementor-button-icon{
    transform: translateX(2px);
  }
}

/* Animación de pulso */
@keyframes buyPulseRed{
  0%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 0 rgba(158, 0, 0, 0.22),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
  70%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 14px rgba(158, 0, 0, 0),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
  100%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 0 rgba(158, 0, 0, 0),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
}

/* Animación de brillo */
@keyframes buyShineRed{
  0%{
    transform: rotate(18deg) translateX(-220%);
  }
  100%{
    transform: rotate(18deg) translateX(620%);
  }
}

/* Mobile: más fluido y menos carga visual */
@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-3bbe8a3f .elementor-button{
    border-radius: 12px;
    padding: 13px 18px;
    animation-duration: 1.8s;
    box-shadow:
      0 8px 18px rgba(158, 0, 0, 0.24),
      0 3px 8px rgba(0, 0, 0, 0.16),
      inset 0 1px 0 rgba(255, 255, 255, 0.18);
  }

  .elementor-18 .elementor-element.elementor-element-3bbe8a3f .elementor-button::before{
    animation-duration: 2.2s; /* brillo visible pero liviano */
    opacity: .9;
  }
}

/* Respeta usuarios con menor movimiento */
@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-3bbe8a3f .elementor-button,
  .elementor-18 .elementor-element.elementor-element-3bbe8a3f .elementor-button::before{
    animation: none !important;
    transition: none !important;
  }
}/* End custom CSS */





/* Start custom CSS for image, class: .elementor-element-42ea5356 *//* ==========================================
   IMAGE FX UNIVERSAL - VERSIÓN MÁS LENTA
   Elementor Custom CSS
========================================== */

.elementor-18 .elementor-element.elementor-element-42ea5356{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 16px;
  transform: translate3d(0,0,0);
  -webkit-transform: translate3d(0,0,0);
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Entrada suave + flotación más lenta */
  animation:
    vfxWrapIn .5s cubic-bezier(.22,.8,.26,1) both,
    vfxWrapFloat 5.8s ease-in-out .5s infinite;
}

.elementor-18 .elementor-element.elementor-element-42ea5356 img{
  display: block;
  width: 100%;
  height: auto;
  transform: translate3d(0,0,0) scale(1.01);
  -webkit-transform: translate3d(0,0,0) scale(1.01);
  will-change: transform, filter, opacity;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Respiración mucho más calmada */
  animation: vfxBreath 6.4s ease-in-out .5s infinite;
  transition: transform .28s cubic-bezier(.22,.8,.26,1), filter .28s ease;
  filter: contrast(1.03) saturate(1.04);
}

/* Glow más sutil */
.elementor-18 .elementor-element.elementor-element-42ea5356::after{
  content: "";
  position: absolute;
  inset: -8%;
  pointer-events: none;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.14), transparent 35%),
    radial-gradient(circle at 80% 78%, rgba(121,54,95,.16), transparent 40%);
  mix-blend-mode: screen;
  opacity: .34;
  transform: translate3d(0,0,0) scale(1);
  animation: vfxGlow 7.2s ease-in-out infinite;
}

/* Shine menos frecuente */
.elementor-18 .elementor-element.elementor-element-42ea5356::before{
  content: "";
  position: absolute;
  top: -140%;
  left: -34%;
  width: 28%;
  height: 360%;
  pointer-events: none;
  background: linear-gradient(
    95deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.05) 34%,
    rgba(255,255,255,.18) 50%,
    rgba(255,255,255,.05) 66%,
    rgba(255,255,255,0) 100%
  );
  transform: translateX(-160%) skewX(-18deg);
  animation: vfxShine 8.5s linear 1.2s infinite;
}

@media (hover:hover) and (pointer:fine){
  .elementor-18 .elementor-element.elementor-element-42ea5356:hover img{
    transform: translate3d(0,0,0) scale(1.035);
    filter: contrast(1.05) saturate(1.06) brightness(1.01);
  }
  .elementor-18 .elementor-element.elementor-element-42ea5356:hover::before{
    animation-duration: 4.2s;
  }
}

@media (hover:none), (pointer:coarse){
  .elementor-18 .elementor-element.elementor-element-42ea5356{
    border-radius: 14px;
  }
  .elementor-18 .elementor-element.elementor-element-42ea5356 img{
    animation-duration: 6.8s;
  }
  .elementor-18 .elementor-element.elementor-element-42ea5356::before{
    animation-duration: 10s;
  }
  .elementor-18 .elementor-element.elementor-element-42ea5356::after{
    animation-duration: 8s;
  }
  .elementor-18 .elementor-element.elementor-element-42ea5356:active img{
    transform: translate3d(0,0,0) scale(1.025);
    filter: contrast(1.04) saturate(1.05);
  }
}

@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-42ea5356::before{
    width: 24%;
    opacity: .75;
  }
  .elementor-18 .elementor-element.elementor-element-42ea5356::after{
    opacity: .28;
  }
}

@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-42ea5356,
  .elementor-18 .elementor-element.elementor-element-42ea5356 img,
  .elementor-18 .elementor-element.elementor-element-42ea5356::before,
  .elementor-18 .elementor-element.elementor-element-42ea5356::after{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}

@keyframes vfxWrapIn{
  from{ opacity: .0; transform: translate3d(0,8px,0) scale(.992); }
  to  { opacity: 1;   transform: translate3d(0,0,0) scale(1); }
}
@keyframes vfxWrapFloat{
  0%,100%{ transform: translate3d(0,0,0); }
  50%    { transform: translate3d(0,-3px,0); }
}
@keyframes vfxBreath{
  0%,100%{ transform: translate3d(0,0,0) scale(1.01); }
  50%    { transform: translate3d(0,0,0) scale(1.026); }
}
@keyframes vfxGlow{
  0%,100%{ opacity:.28; transform: scale(1); }
  50%    { opacity:.42; transform: scale(1.015); }
}
@keyframes vfxShine{
  0%   { transform: translateX(-160%) skewX(-18deg); }
  100% { transform: translateX(260%) skewX(-18deg); }
}/* End custom CSS */



/* Start custom CSS for button, class: .elementor-element-4da6b31f *//* ============================
   BOTÓN DE COMPRA (Elementor)
   Color base: #9E0000
   ============================ */

.elementor-18 .elementor-element.elementor-element-4da6b31f .elementor-button{
  --btn-red: #9E0000;
  --btn-red-dark: #7f0000;
  --btn-red-light: #c40000;
  --btn-text: #ffffff;

  position: relative;
  overflow: hidden;
  isolation: isolate; /* asegura que el brillo quede dentro del botón */

  background: linear-gradient(180deg, var(--btn-red-light) 0%, var(--btn-red) 55%, var(--btn-red-dark) 100%);
  color: var(--btn-text) !important;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 14px;

  /* Ajustes visuales */
  font-weight: 700;
  letter-spacing: 0.2px;
  padding: 14px 24px;

  /* Efectos */
  box-shadow:
    0 10px 22px rgba(158, 0, 0, 0.28),
    0 4px 10px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.20);

  transform: translateZ(0);
  transition:
    transform .12s ease,
    box-shadow .12s ease,
    filter .12s ease,
    background .12s ease;

  /* Pulso suave al cargar */
  animation: buyPulseRed 1.1s ease-in-out infinite;
}

/* Brillo diagonal premium */
.elementor-18 .elementor-element.elementor-element-4da6b31f .elementor-button::before{
  content: "";
  position: absolute;
  top: -20%;
  left: -35%;
  width: 28%;
  height: 140%;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.16) 45%,
    rgba(255,255,255,0.38) 50%,
    rgba(255,255,255,0.16) 55%,
    rgba(255,255,255,0) 100%
  );
  transform: rotate(18deg) translateX(-180%);
  z-index: 1;
  pointer-events: none;
  animation: buyShineRed 2.8s linear infinite;
}

/* Capa superior para que el texto quede siempre bien */
.elementor-18 .elementor-element.elementor-element-4da6b31f .elementor-button .elementor-button-text,
.elementor-18 .elementor-element.elementor-element-4da6b31f .elementor-button .elementor-button-icon{
  position: relative;
  z-index: 2;
}

/* Hover (desktop) */
@media (hover: hover){
  .elementor-18 .elementor-element.elementor-element-4da6b31f .elementor-button:hover{
    transform: translateY(-2px) scale(1.02);
    filter: saturate(1.06);
    animation: none; /* pausa pulso para evitar conflicto visual */
    box-shadow:
      0 14px 28px rgba(158, 0, 0, 0.34),
      0 6px 14px rgba(0, 0, 0, 0.20),
      inset 0 1px 0 rgba(255, 255, 255, 0.25);
  }

  .elementor-18 .elementor-element.elementor-element-4da6b31f .elementor-button:hover::before{
    animation-duration: 1.2s; /* brillo más rápido al hover */
  }
}

/* Click / tap */
.elementor-18 .elementor-element.elementor-element-4da6b31f .elementor-button:active{
  transform: translateY(0) scale(0.985);
  box-shadow:
    0 6px 14px rgba(158, 0, 0, 0.22),
    0 2px 6px rgba(0, 0, 0, 0.16),
    inset 0 2px 6px rgba(0, 0, 0, 0.18);
}

/* Focus accesible (teclado) */
.elementor-18 .elementor-element.elementor-element-4da6b31f .elementor-button:focus,
.elementor-18 .elementor-element.elementor-element-4da6b31f .elementor-button:focus-visible{
  outline: none;
  box-shadow:
    0 0 0 3px rgba(255,255,255,0.75),
    0 0 0 6px rgba(158, 0, 0, 0.30),
    0 10px 22px rgba(158, 0, 0, 0.28);
}

/* Si el botón tiene icono */
.elementor-18 .elementor-element.elementor-element-4da6b31f .elementor-button .elementor-button-icon{
  transition: transform .2s ease;
}
@media (hover: hover){
  .elementor-18 .elementor-element.elementor-element-4da6b31f .elementor-button:hover .elementor-button-icon{
    transform: translateX(2px);
  }
}

/* Animación de pulso */
@keyframes buyPulseRed{
  0%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 0 rgba(158, 0, 0, 0.22),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
  70%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 14px rgba(158, 0, 0, 0),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
  100%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 0 rgba(158, 0, 0, 0),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
}

/* Animación de brillo */
@keyframes buyShineRed{
  0%{
    transform: rotate(18deg) translateX(-220%);
  }
  100%{
    transform: rotate(18deg) translateX(620%);
  }
}

/* Mobile: más fluido y menos carga visual */
@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-4da6b31f .elementor-button{
    border-radius: 12px;
    padding: 13px 18px;
    animation-duration: 1.8s;
    box-shadow:
      0 8px 18px rgba(158, 0, 0, 0.24),
      0 3px 8px rgba(0, 0, 0, 0.16),
      inset 0 1px 0 rgba(255, 255, 255, 0.18);
  }

  .elementor-18 .elementor-element.elementor-element-4da6b31f .elementor-button::before{
    animation-duration: 2.2s; /* brillo visible pero liviano */
    opacity: .9;
  }
}

/* Respeta usuarios con menor movimiento */
@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-4da6b31f .elementor-button,
  .elementor-18 .elementor-element.elementor-element-4da6b31f .elementor-button::before{
    animation: none !important;
    transition: none !important;
  }
}/* End custom CSS */



/* Start custom CSS for image, class: .elementor-element-4c3f8fb3 *//* ==========================================
   IMAGE FX UNIVERSAL - VERSIÓN MÁS LENTA
   Elementor Custom CSS
========================================== */

.elementor-18 .elementor-element.elementor-element-4c3f8fb3{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 16px;
  transform: translate3d(0,0,0);
  -webkit-transform: translate3d(0,0,0);
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Entrada suave + flotación más lenta */
  animation:
    vfxWrapIn .5s cubic-bezier(.22,.8,.26,1) both,
    vfxWrapFloat 5.8s ease-in-out .5s infinite;
}

.elementor-18 .elementor-element.elementor-element-4c3f8fb3 img{
  display: block;
  width: 100%;
  height: auto;
  transform: translate3d(0,0,0) scale(1.01);
  -webkit-transform: translate3d(0,0,0) scale(1.01);
  will-change: transform, filter, opacity;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Respiración mucho más calmada */
  animation: vfxBreath 6.4s ease-in-out .5s infinite;
  transition: transform .28s cubic-bezier(.22,.8,.26,1), filter .28s ease;
  filter: contrast(1.03) saturate(1.04);
}

/* Glow más sutil */
.elementor-18 .elementor-element.elementor-element-4c3f8fb3::after{
  content: "";
  position: absolute;
  inset: -8%;
  pointer-events: none;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.14), transparent 35%),
    radial-gradient(circle at 80% 78%, rgba(121,54,95,.16), transparent 40%);
  mix-blend-mode: screen;
  opacity: .34;
  transform: translate3d(0,0,0) scale(1);
  animation: vfxGlow 7.2s ease-in-out infinite;
}

/* Shine menos frecuente */
.elementor-18 .elementor-element.elementor-element-4c3f8fb3::before{
  content: "";
  position: absolute;
  top: -140%;
  left: -34%;
  width: 28%;
  height: 360%;
  pointer-events: none;
  background: linear-gradient(
    95deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.05) 34%,
    rgba(255,255,255,.18) 50%,
    rgba(255,255,255,.05) 66%,
    rgba(255,255,255,0) 100%
  );
  transform: translateX(-160%) skewX(-18deg);
  animation: vfxShine 8.5s linear 1.2s infinite;
}

@media (hover:hover) and (pointer:fine){
  .elementor-18 .elementor-element.elementor-element-4c3f8fb3:hover img{
    transform: translate3d(0,0,0) scale(1.035);
    filter: contrast(1.05) saturate(1.06) brightness(1.01);
  }
  .elementor-18 .elementor-element.elementor-element-4c3f8fb3:hover::before{
    animation-duration: 4.2s;
  }
}

@media (hover:none), (pointer:coarse){
  .elementor-18 .elementor-element.elementor-element-4c3f8fb3{
    border-radius: 14px;
  }
  .elementor-18 .elementor-element.elementor-element-4c3f8fb3 img{
    animation-duration: 6.8s;
  }
  .elementor-18 .elementor-element.elementor-element-4c3f8fb3::before{
    animation-duration: 10s;
  }
  .elementor-18 .elementor-element.elementor-element-4c3f8fb3::after{
    animation-duration: 8s;
  }
  .elementor-18 .elementor-element.elementor-element-4c3f8fb3:active img{
    transform: translate3d(0,0,0) scale(1.025);
    filter: contrast(1.04) saturate(1.05);
  }
}

@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-4c3f8fb3::before{
    width: 24%;
    opacity: .75;
  }
  .elementor-18 .elementor-element.elementor-element-4c3f8fb3::after{
    opacity: .28;
  }
}

@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-4c3f8fb3,
  .elementor-18 .elementor-element.elementor-element-4c3f8fb3 img,
  .elementor-18 .elementor-element.elementor-element-4c3f8fb3::before,
  .elementor-18 .elementor-element.elementor-element-4c3f8fb3::after{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}

@keyframes vfxWrapIn{
  from{ opacity: .0; transform: translate3d(0,8px,0) scale(.992); }
  to  { opacity: 1;   transform: translate3d(0,0,0) scale(1); }
}
@keyframes vfxWrapFloat{
  0%,100%{ transform: translate3d(0,0,0); }
  50%    { transform: translate3d(0,-3px,0); }
}
@keyframes vfxBreath{
  0%,100%{ transform: translate3d(0,0,0) scale(1.01); }
  50%    { transform: translate3d(0,0,0) scale(1.026); }
}
@keyframes vfxGlow{
  0%,100%{ opacity:.28; transform: scale(1); }
  50%    { opacity:.42; transform: scale(1.015); }
}
@keyframes vfxShine{
  0%   { transform: translateX(-160%) skewX(-18deg); }
  100% { transform: translateX(260%) skewX(-18deg); }
}/* End custom CSS */



/* Start custom CSS for button, class: .elementor-element-62b2f36e *//* ============================
   BOTÓN DE COMPRA (Elementor)
   Color base: #9E0000
   ============================ */

.elementor-18 .elementor-element.elementor-element-62b2f36e .elementor-button{
  --btn-red: #9E0000;
  --btn-red-dark: #7f0000;
  --btn-red-light: #c40000;
  --btn-text: #ffffff;

  position: relative;
  overflow: hidden;
  isolation: isolate; /* asegura que el brillo quede dentro del botón */

  background: linear-gradient(180deg, var(--btn-red-light) 0%, var(--btn-red) 55%, var(--btn-red-dark) 100%);
  color: var(--btn-text) !important;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 14px;

  /* Ajustes visuales */
  font-weight: 700;
  letter-spacing: 0.2px;
  padding: 14px 24px;

  /* Efectos */
  box-shadow:
    0 10px 22px rgba(158, 0, 0, 0.28),
    0 4px 10px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.20);

  transform: translateZ(0);
  transition:
    transform .12s ease,
    box-shadow .12s ease,
    filter .12s ease,
    background .12s ease;

  /* Pulso suave al cargar */
  animation: buyPulseRed 1.1s ease-in-out infinite;
}

/* Brillo diagonal premium */
.elementor-18 .elementor-element.elementor-element-62b2f36e .elementor-button::before{
  content: "";
  position: absolute;
  top: -20%;
  left: -35%;
  width: 28%;
  height: 140%;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.16) 45%,
    rgba(255,255,255,0.38) 50%,
    rgba(255,255,255,0.16) 55%,
    rgba(255,255,255,0) 100%
  );
  transform: rotate(18deg) translateX(-180%);
  z-index: 1;
  pointer-events: none;
  animation: buyShineRed 2.8s linear infinite;
}

/* Capa superior para que el texto quede siempre bien */
.elementor-18 .elementor-element.elementor-element-62b2f36e .elementor-button .elementor-button-text,
.elementor-18 .elementor-element.elementor-element-62b2f36e .elementor-button .elementor-button-icon{
  position: relative;
  z-index: 2;
}

/* Hover (desktop) */
@media (hover: hover){
  .elementor-18 .elementor-element.elementor-element-62b2f36e .elementor-button:hover{
    transform: translateY(-2px) scale(1.02);
    filter: saturate(1.06);
    animation: none; /* pausa pulso para evitar conflicto visual */
    box-shadow:
      0 14px 28px rgba(158, 0, 0, 0.34),
      0 6px 14px rgba(0, 0, 0, 0.20),
      inset 0 1px 0 rgba(255, 255, 255, 0.25);
  }

  .elementor-18 .elementor-element.elementor-element-62b2f36e .elementor-button:hover::before{
    animation-duration: 1.2s; /* brillo más rápido al hover */
  }
}

/* Click / tap */
.elementor-18 .elementor-element.elementor-element-62b2f36e .elementor-button:active{
  transform: translateY(0) scale(0.985);
  box-shadow:
    0 6px 14px rgba(158, 0, 0, 0.22),
    0 2px 6px rgba(0, 0, 0, 0.16),
    inset 0 2px 6px rgba(0, 0, 0, 0.18);
}

/* Focus accesible (teclado) */
.elementor-18 .elementor-element.elementor-element-62b2f36e .elementor-button:focus,
.elementor-18 .elementor-element.elementor-element-62b2f36e .elementor-button:focus-visible{
  outline: none;
  box-shadow:
    0 0 0 3px rgba(255,255,255,0.75),
    0 0 0 6px rgba(158, 0, 0, 0.30),
    0 10px 22px rgba(158, 0, 0, 0.28);
}

/* Si el botón tiene icono */
.elementor-18 .elementor-element.elementor-element-62b2f36e .elementor-button .elementor-button-icon{
  transition: transform .2s ease;
}
@media (hover: hover){
  .elementor-18 .elementor-element.elementor-element-62b2f36e .elementor-button:hover .elementor-button-icon{
    transform: translateX(2px);
  }
}

/* Animación de pulso */
@keyframes buyPulseRed{
  0%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 0 rgba(158, 0, 0, 0.22),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
  70%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 14px rgba(158, 0, 0, 0),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
  100%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 0 rgba(158, 0, 0, 0),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
}

/* Animación de brillo */
@keyframes buyShineRed{
  0%{
    transform: rotate(18deg) translateX(-220%);
  }
  100%{
    transform: rotate(18deg) translateX(620%);
  }
}

/* Mobile: más fluido y menos carga visual */
@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-62b2f36e .elementor-button{
    border-radius: 12px;
    padding: 13px 18px;
    animation-duration: 1.8s;
    box-shadow:
      0 8px 18px rgba(158, 0, 0, 0.24),
      0 3px 8px rgba(0, 0, 0, 0.16),
      inset 0 1px 0 rgba(255, 255, 255, 0.18);
  }

  .elementor-18 .elementor-element.elementor-element-62b2f36e .elementor-button::before{
    animation-duration: 2.2s; /* brillo visible pero liviano */
    opacity: .9;
  }
}

/* Respeta usuarios con menor movimiento */
@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-62b2f36e .elementor-button,
  .elementor-18 .elementor-element.elementor-element-62b2f36e .elementor-button::before{
    animation: none !important;
    transition: none !important;
  }
}/* End custom CSS */




/* Start custom CSS for countdown, class: .elementor-element-409b76f5 *//* ==========================================
   COUNTDOWN IMPACTO — ROJO LLAMATIVO
   Elementor Pro
========================================== */

.elementor-18 .elementor-element.elementor-element-409b76f5{
  --cd-red-top: #FF7D7D;
  --cd-red-mid: #F04444;
  --cd-red-bottom: #C81E1E;
  --cd-red-deep: #8F1111;
  --cd-label: #7E1A1A;
  --cd-shell-top: #FFF7F7;
  --cd-shell-bottom: #FFEDED;
}

.elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-wrapper{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
}

.elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-item{
  position: relative;
  overflow: hidden;
  min-width: 92px;
  padding: 16px 12px 12px;
  border-radius: 20px;
  background: linear-gradient(180deg, var(--cd-red-top) 0%, var(--cd-red-mid) 48%, var(--cd-red-bottom) 100%);
  border: 1px solid rgba(255,255,255,.24);
  box-shadow:
    0 16px 30px rgba(200,30,30,.28),
    0 6px 14px rgba(143,17,17,.16),
    inset 0 1px 0 rgba(255,255,255,.28),
    inset 0 -1px 0 rgba(90,0,0,.18);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
  animation: cdImpactPulse 2.8s ease-in-out infinite;
}

.elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-item::before{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(255,255,255,.22) 0%, rgba(255,255,255,.08) 22%, rgba(255,255,255,0) 42%),
    radial-gradient(circle at 20% 18%, rgba(255,255,255,.22), transparent 30%);
}

.elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-item::after{
  content: "";
  position: absolute;
  top: -35%;
  left: -26%;
  width: 22%;
  height: 180%;
  pointer-events: none;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.10) 40%,
    rgba(255,255,255,.28) 50%,
    rgba(255,255,255,.10) 60%,
    rgba(255,255,255,0) 100%
  );
  transform: rotate(16deg) translateX(-240%);
  animation: cdImpactShine 4.2s linear infinite;
}

.elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-digits{
  position: relative;
  z-index: 2;
  display: block;
  color: #FFFFFF;
  font-weight: 900;
  line-height: 1;
  text-shadow:
    0 1px 0 rgba(255,255,255,.10),
    0 2px 8px rgba(127,0,0,.20);
  transform: scale(1);
}

.elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-label{
  position: relative;
  z-index: 2;
  display: block;
  margin-top: 8px;
  color: rgba(255,255,255,.92);
  font-weight: 700;
  letter-spacing: .4px;
  text-transform: uppercase;
}

.elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-separator{
  align-self: center;
  color: #E64545;
  font-weight: 900;
  opacity: .95;
}

@media (hover:hover){
  .elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-item:hover{
    transform: translateY(-3px) scale(1.03);
    filter: saturate(1.05) brightness(1.02);
    box-shadow:
      0 20px 36px rgba(200,30,30,.34),
      0 8px 16px rgba(143,17,17,.18),
      0 0 0 8px rgba(240,68,68,.08),
      inset 0 1px 0 rgba(255,255,255,.34);
  }

  .elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-item:hover::after{
    animation-duration: 2.2s;
  }
}

@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-wrapper{
    gap: 10px;
  }

  .elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-item{
    min-width: 74px;
    padding: 13px 10px 10px;
    border-radius: 16px;
  }

  .elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-item::after{
    animation-duration: 4.8s;
  }
}

@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-item,
  .elementor-18 .elementor-element.elementor-element-409b76f5 .elementor-countdown-item::after{
    animation: none !important;
  }
}

@keyframes cdImpactPulse{
  0%,100%{
    box-shadow:
      0 16px 30px rgba(200,30,30,.28),
      0 6px 14px rgba(143,17,17,.16),
      0 0 0 0 rgba(240,68,68,.18),
      inset 0 1px 0 rgba(255,255,255,.28);
  }
  65%{
    box-shadow:
      0 16px 30px rgba(200,30,30,.28),
      0 6px 14px rgba(143,17,17,.16),
      0 0 0 12px rgba(240,68,68,0),
      inset 0 1px 0 rgba(255,255,255,.28);
  }
}

@keyframes cdImpactShine{
  0%{ transform: rotate(16deg) translateX(-240%); }
  100%{ transform: rotate(16deg) translateX(680%); }
}/* End custom CSS */



/* Start custom CSS for image, class: .elementor-element-5a5d6947 *//* ==========================================
   IMAGE FX UNIVERSAL - VERSIÓN MÁS LENTA
   Elementor Custom CSS
========================================== */

.elementor-18 .elementor-element.elementor-element-5a5d6947{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 16px;
  transform: translate3d(0,0,0);
  -webkit-transform: translate3d(0,0,0);
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Entrada suave + flotación más lenta */
  animation:
    vfxWrapIn .5s cubic-bezier(.22,.8,.26,1) both,
    vfxWrapFloat 5.8s ease-in-out .5s infinite;
}

.elementor-18 .elementor-element.elementor-element-5a5d6947 img{
  display: block;
  width: 100%;
  height: auto;
  transform: translate3d(0,0,0) scale(1.01);
  -webkit-transform: translate3d(0,0,0) scale(1.01);
  will-change: transform, filter, opacity;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Respiración mucho más calmada */
  animation: vfxBreath 6.4s ease-in-out .5s infinite;
  transition: transform .28s cubic-bezier(.22,.8,.26,1), filter .28s ease;
  filter: contrast(1.03) saturate(1.04);
}

/* Glow más sutil */
.elementor-18 .elementor-element.elementor-element-5a5d6947::after{
  content: "";
  position: absolute;
  inset: -8%;
  pointer-events: none;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.14), transparent 35%),
    radial-gradient(circle at 80% 78%, rgba(121,54,95,.16), transparent 40%);
  mix-blend-mode: screen;
  opacity: .34;
  transform: translate3d(0,0,0) scale(1);
  animation: vfxGlow 7.2s ease-in-out infinite;
}

/* Shine menos frecuente */
.elementor-18 .elementor-element.elementor-element-5a5d6947::before{
  content: "";
  position: absolute;
  top: -140%;
  left: -34%;
  width: 28%;
  height: 360%;
  pointer-events: none;
  background: linear-gradient(
    95deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.05) 34%,
    rgba(255,255,255,.18) 50%,
    rgba(255,255,255,.05) 66%,
    rgba(255,255,255,0) 100%
  );
  transform: translateX(-160%) skewX(-18deg);
  animation: vfxShine 8.5s linear 1.2s infinite;
}

@media (hover:hover) and (pointer:fine){
  .elementor-18 .elementor-element.elementor-element-5a5d6947:hover img{
    transform: translate3d(0,0,0) scale(1.035);
    filter: contrast(1.05) saturate(1.06) brightness(1.01);
  }
  .elementor-18 .elementor-element.elementor-element-5a5d6947:hover::before{
    animation-duration: 4.2s;
  }
}

@media (hover:none), (pointer:coarse){
  .elementor-18 .elementor-element.elementor-element-5a5d6947{
    border-radius: 14px;
  }
  .elementor-18 .elementor-element.elementor-element-5a5d6947 img{
    animation-duration: 6.8s;
  }
  .elementor-18 .elementor-element.elementor-element-5a5d6947::before{
    animation-duration: 10s;
  }
  .elementor-18 .elementor-element.elementor-element-5a5d6947::after{
    animation-duration: 8s;
  }
  .elementor-18 .elementor-element.elementor-element-5a5d6947:active img{
    transform: translate3d(0,0,0) scale(1.025);
    filter: contrast(1.04) saturate(1.05);
  }
}

@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-5a5d6947::before{
    width: 24%;
    opacity: .75;
  }
  .elementor-18 .elementor-element.elementor-element-5a5d6947::after{
    opacity: .28;
  }
}

@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-5a5d6947,
  .elementor-18 .elementor-element.elementor-element-5a5d6947 img,
  .elementor-18 .elementor-element.elementor-element-5a5d6947::before,
  .elementor-18 .elementor-element.elementor-element-5a5d6947::after{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}

@keyframes vfxWrapIn{
  from{ opacity: .0; transform: translate3d(0,8px,0) scale(.992); }
  to  { opacity: 1;   transform: translate3d(0,0,0) scale(1); }
}
@keyframes vfxWrapFloat{
  0%,100%{ transform: translate3d(0,0,0); }
  50%    { transform: translate3d(0,-3px,0); }
}
@keyframes vfxBreath{
  0%,100%{ transform: translate3d(0,0,0) scale(1.01); }
  50%    { transform: translate3d(0,0,0) scale(1.026); }
}
@keyframes vfxGlow{
  0%,100%{ opacity:.28; transform: scale(1); }
  50%    { opacity:.42; transform: scale(1.015); }
}
@keyframes vfxShine{
  0%   { transform: translateX(-160%) skewX(-18deg); }
  100% { transform: translateX(260%) skewX(-18deg); }
}/* End custom CSS */




/* Start custom CSS for progress, class: .elementor-element-744af709 *//* ==========================================
   PROGRESS BAR INDIVIDUAL — ROJO URGENCIA
   Elementor Pro
========================================== */

.elementor-18 .elementor-element.elementor-element-744af709{
  --urg-red-1: #FF7A7A;
  --urg-red-2: #E54848;
  --urg-red-3: #B91C1C;
  --urg-bg-1: #FFF9F9;
  --urg-bg-2: #FFF2F2;
}

.elementor-18 .elementor-element.elementor-element-744af709 .elementor-progress-wrapper{
  position: relative;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid rgba(229,72,72,.16);
  background: linear-gradient(180deg, var(--urg-bg-1) 0%, var(--urg-bg-2) 100%);
  box-shadow:
    0 10px 24px rgba(185,28,28,.08),
    inset 0 1px 0 rgba(255,255,255,.75);
  padding: 4px;
}

.elementor-18 .elementor-element.elementor-element-744af709 .elementor-progress-bar{
  position: relative;
  overflow: hidden;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--urg-red-1) 0%, var(--urg-red-2) 45%, var(--urg-red-3) 100%);
  box-shadow:
    0 6px 16px rgba(229,72,72,.24),
    inset 0 1px 0 rgba(255,255,255,.22);
  animation: progressUrgGlow 2.6s ease-in-out infinite;
}

.elementor-18 .elementor-element.elementor-element-744af709 .elementor-progress-bar::before{
  content: "";
  position: absolute;
  top: -40%;
  left: -20%;
  width: 22%;
  height: 180%;
  pointer-events: none;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.10) 40%,
    rgba(255,255,255,.30) 50%,
    rgba(255,255,255,.10) 60%,
    rgba(255,255,255,0) 100%
  );
  transform: rotate(18deg) translateX(-220%);
  animation: progressUrgShine 3.8s linear infinite;
}

.elementor-18 .elementor-element.elementor-element-744af709 .elementor-progress-text{
  color: #ffffff !important;
  font-weight: 700;
  letter-spacing: .2px;
}

@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-744af709 .elementor-progress-wrapper{
    border-radius: 16px;
  }

  .elementor-18 .elementor-element.elementor-element-744af709 .elementor-progress-bar::before{
    animation-duration: 4.4s;
  }
}

@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-744af709 .elementor-progress-bar,
  .elementor-18 .elementor-element.elementor-element-744af709 .elementor-progress-bar::before{
    animation: none !important;
  }
}

@keyframes progressUrgGlow{
  0%,100%{
    box-shadow:
      0 6px 16px rgba(229,72,72,.24),
      0 0 0 0 rgba(229,72,72,.16),
      inset 0 1px 0 rgba(255,255,255,.22);
  }
  60%{
    box-shadow:
      0 6px 16px rgba(229,72,72,.24),
      0 0 0 10px rgba(229,72,72,0),
      inset 0 1px 0 rgba(255,255,255,.22);
  }
}

@keyframes progressUrgShine{
  0%{ transform: rotate(18deg) translateX(-220%); }
  100%{ transform: rotate(18deg) translateX(680%); }
}/* End custom CSS */



/* Start custom CSS for button, class: .elementor-element-6f420707 *//* ============================
   BOTÓN DE COMPRA (Elementor)
   Color base: #9E0000
   ============================ */

.elementor-18 .elementor-element.elementor-element-6f420707 .elementor-button{
  --btn-red: #9E0000;
  --btn-red-dark: #7f0000;
  --btn-red-light: #c40000;
  --btn-text: #ffffff;

  position: relative;
  overflow: hidden;
  isolation: isolate; /* asegura que el brillo quede dentro del botón */

  background: linear-gradient(180deg, var(--btn-red-light) 0%, var(--btn-red) 55%, var(--btn-red-dark) 100%);
  color: var(--btn-text) !important;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 14px;

  /* Ajustes visuales */
  font-weight: 700;
  letter-spacing: 0.2px;
  padding: 14px 24px;

  /* Efectos */
  box-shadow:
    0 10px 22px rgba(158, 0, 0, 0.28),
    0 4px 10px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.20);

  transform: translateZ(0);
  transition:
    transform .12s ease,
    box-shadow .12s ease,
    filter .12s ease,
    background .12s ease;

  /* Pulso suave al cargar */
  animation: buyPulseRed 1.1s ease-in-out infinite;
}

/* Brillo diagonal premium */
.elementor-18 .elementor-element.elementor-element-6f420707 .elementor-button::before{
  content: "";
  position: absolute;
  top: -20%;
  left: -35%;
  width: 28%;
  height: 140%;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.16) 45%,
    rgba(255,255,255,0.38) 50%,
    rgba(255,255,255,0.16) 55%,
    rgba(255,255,255,0) 100%
  );
  transform: rotate(18deg) translateX(-180%);
  z-index: 1;
  pointer-events: none;
  animation: buyShineRed 2.8s linear infinite;
}

/* Capa superior para que el texto quede siempre bien */
.elementor-18 .elementor-element.elementor-element-6f420707 .elementor-button .elementor-button-text,
.elementor-18 .elementor-element.elementor-element-6f420707 .elementor-button .elementor-button-icon{
  position: relative;
  z-index: 2;
}

/* Hover (desktop) */
@media (hover: hover){
  .elementor-18 .elementor-element.elementor-element-6f420707 .elementor-button:hover{
    transform: translateY(-2px) scale(1.02);
    filter: saturate(1.06);
    animation: none; /* pausa pulso para evitar conflicto visual */
    box-shadow:
      0 14px 28px rgba(158, 0, 0, 0.34),
      0 6px 14px rgba(0, 0, 0, 0.20),
      inset 0 1px 0 rgba(255, 255, 255, 0.25);
  }

  .elementor-18 .elementor-element.elementor-element-6f420707 .elementor-button:hover::before{
    animation-duration: 1.2s; /* brillo más rápido al hover */
  }
}

/* Click / tap */
.elementor-18 .elementor-element.elementor-element-6f420707 .elementor-button:active{
  transform: translateY(0) scale(0.985);
  box-shadow:
    0 6px 14px rgba(158, 0, 0, 0.22),
    0 2px 6px rgba(0, 0, 0, 0.16),
    inset 0 2px 6px rgba(0, 0, 0, 0.18);
}

/* Focus accesible (teclado) */
.elementor-18 .elementor-element.elementor-element-6f420707 .elementor-button:focus,
.elementor-18 .elementor-element.elementor-element-6f420707 .elementor-button:focus-visible{
  outline: none;
  box-shadow:
    0 0 0 3px rgba(255,255,255,0.75),
    0 0 0 6px rgba(158, 0, 0, 0.30),
    0 10px 22px rgba(158, 0, 0, 0.28);
}

/* Si el botón tiene icono */
.elementor-18 .elementor-element.elementor-element-6f420707 .elementor-button .elementor-button-icon{
  transition: transform .2s ease;
}
@media (hover: hover){
  .elementor-18 .elementor-element.elementor-element-6f420707 .elementor-button:hover .elementor-button-icon{
    transform: translateX(2px);
  }
}

/* Animación de pulso */
@keyframes buyPulseRed{
  0%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 0 rgba(158, 0, 0, 0.22),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
  70%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 14px rgba(158, 0, 0, 0),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
  100%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 0 rgba(158, 0, 0, 0),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
}

/* Animación de brillo */
@keyframes buyShineRed{
  0%{
    transform: rotate(18deg) translateX(-220%);
  }
  100%{
    transform: rotate(18deg) translateX(620%);
  }
}

/* Mobile: más fluido y menos carga visual */
@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-6f420707 .elementor-button{
    border-radius: 12px;
    padding: 13px 18px;
    animation-duration: 1.8s;
    box-shadow:
      0 8px 18px rgba(158, 0, 0, 0.24),
      0 3px 8px rgba(0, 0, 0, 0.16),
      inset 0 1px 0 rgba(255, 255, 255, 0.18);
  }

  .elementor-18 .elementor-element.elementor-element-6f420707 .elementor-button::before{
    animation-duration: 2.2s; /* brillo visible pero liviano */
    opacity: .9;
  }
}

/* Respeta usuarios con menor movimiento */
@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-6f420707 .elementor-button,
  .elementor-18 .elementor-element.elementor-element-6f420707 .elementor-button::before{
    animation: none !important;
    transition: none !important;
  }
}/* End custom CSS */



/* Start custom CSS for image, class: .elementor-element-4dc10bcb *//* ==========================================
   IMAGE FX UNIVERSAL - VERSIÓN MÁS LENTA
   Elementor Custom CSS
========================================== */

.elementor-18 .elementor-element.elementor-element-4dc10bcb{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 16px;
  transform: translate3d(0,0,0);
  -webkit-transform: translate3d(0,0,0);
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Entrada suave + flotación más lenta */
  animation:
    vfxWrapIn .5s cubic-bezier(.22,.8,.26,1) both,
    vfxWrapFloat 5.8s ease-in-out .5s infinite;
}

.elementor-18 .elementor-element.elementor-element-4dc10bcb img{
  display: block;
  width: 100%;
  height: auto;
  transform: translate3d(0,0,0) scale(1.01);
  -webkit-transform: translate3d(0,0,0) scale(1.01);
  will-change: transform, filter, opacity;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Respiración mucho más calmada */
  animation: vfxBreath 6.4s ease-in-out .5s infinite;
  transition: transform .28s cubic-bezier(.22,.8,.26,1), filter .28s ease;
  filter: contrast(1.03) saturate(1.04);
}

/* Glow más sutil */
.elementor-18 .elementor-element.elementor-element-4dc10bcb::after{
  content: "";
  position: absolute;
  inset: -8%;
  pointer-events: none;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.14), transparent 35%),
    radial-gradient(circle at 80% 78%, rgba(121,54,95,.16), transparent 40%);
  mix-blend-mode: screen;
  opacity: .34;
  transform: translate3d(0,0,0) scale(1);
  animation: vfxGlow 7.2s ease-in-out infinite;
}

/* Shine menos frecuente */
.elementor-18 .elementor-element.elementor-element-4dc10bcb::before{
  content: "";
  position: absolute;
  top: -140%;
  left: -34%;
  width: 28%;
  height: 360%;
  pointer-events: none;
  background: linear-gradient(
    95deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.05) 34%,
    rgba(255,255,255,.18) 50%,
    rgba(255,255,255,.05) 66%,
    rgba(255,255,255,0) 100%
  );
  transform: translateX(-160%) skewX(-18deg);
  animation: vfxShine 8.5s linear 1.2s infinite;
}

@media (hover:hover) and (pointer:fine){
  .elementor-18 .elementor-element.elementor-element-4dc10bcb:hover img{
    transform: translate3d(0,0,0) scale(1.035);
    filter: contrast(1.05) saturate(1.06) brightness(1.01);
  }
  .elementor-18 .elementor-element.elementor-element-4dc10bcb:hover::before{
    animation-duration: 4.2s;
  }
}

@media (hover:none), (pointer:coarse){
  .elementor-18 .elementor-element.elementor-element-4dc10bcb{
    border-radius: 14px;
  }
  .elementor-18 .elementor-element.elementor-element-4dc10bcb img{
    animation-duration: 6.8s;
  }
  .elementor-18 .elementor-element.elementor-element-4dc10bcb::before{
    animation-duration: 10s;
  }
  .elementor-18 .elementor-element.elementor-element-4dc10bcb::after{
    animation-duration: 8s;
  }
  .elementor-18 .elementor-element.elementor-element-4dc10bcb:active img{
    transform: translate3d(0,0,0) scale(1.025);
    filter: contrast(1.04) saturate(1.05);
  }
}

@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-4dc10bcb::before{
    width: 24%;
    opacity: .75;
  }
  .elementor-18 .elementor-element.elementor-element-4dc10bcb::after{
    opacity: .28;
  }
}

@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-4dc10bcb,
  .elementor-18 .elementor-element.elementor-element-4dc10bcb img,
  .elementor-18 .elementor-element.elementor-element-4dc10bcb::before,
  .elementor-18 .elementor-element.elementor-element-4dc10bcb::after{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}

@keyframes vfxWrapIn{
  from{ opacity: .0; transform: translate3d(0,8px,0) scale(.992); }
  to  { opacity: 1;   transform: translate3d(0,0,0) scale(1); }
}
@keyframes vfxWrapFloat{
  0%,100%{ transform: translate3d(0,0,0); }
  50%    { transform: translate3d(0,-3px,0); }
}
@keyframes vfxBreath{
  0%,100%{ transform: translate3d(0,0,0) scale(1.01); }
  50%    { transform: translate3d(0,0,0) scale(1.026); }
}
@keyframes vfxGlow{
  0%,100%{ opacity:.28; transform: scale(1); }
  50%    { opacity:.42; transform: scale(1.015); }
}
@keyframes vfxShine{
  0%   { transform: translateX(-160%) skewX(-18deg); }
  100% { transform: translateX(260%) skewX(-18deg); }
}/* End custom CSS */



/* Start custom CSS for button, class: .elementor-element-7472c8d1 *//* ============================
   BOTÓN DE COMPRA (Elementor)
   Color base: #9E0000
   ============================ */

.elementor-18 .elementor-element.elementor-element-7472c8d1 .elementor-button{
  --btn-red: #9E0000;
  --btn-red-dark: #7f0000;
  --btn-red-light: #c40000;
  --btn-text: #ffffff;

  position: relative;
  overflow: hidden;
  isolation: isolate; /* asegura que el brillo quede dentro del botón */

  background: linear-gradient(180deg, var(--btn-red-light) 0%, var(--btn-red) 55%, var(--btn-red-dark) 100%);
  color: var(--btn-text) !important;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 14px;

  /* Ajustes visuales */
  font-weight: 700;
  letter-spacing: 0.2px;
  padding: 14px 24px;

  /* Efectos */
  box-shadow:
    0 10px 22px rgba(158, 0, 0, 0.28),
    0 4px 10px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.20);

  transform: translateZ(0);
  transition:
    transform .12s ease,
    box-shadow .12s ease,
    filter .12s ease,
    background .12s ease;

  /* Pulso suave al cargar */
  animation: buyPulseRed 1.1s ease-in-out infinite;
}

/* Brillo diagonal premium */
.elementor-18 .elementor-element.elementor-element-7472c8d1 .elementor-button::before{
  content: "";
  position: absolute;
  top: -20%;
  left: -35%;
  width: 28%;
  height: 140%;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.16) 45%,
    rgba(255,255,255,0.38) 50%,
    rgba(255,255,255,0.16) 55%,
    rgba(255,255,255,0) 100%
  );
  transform: rotate(18deg) translateX(-180%);
  z-index: 1;
  pointer-events: none;
  animation: buyShineRed 2.8s linear infinite;
}

/* Capa superior para que el texto quede siempre bien */
.elementor-18 .elementor-element.elementor-element-7472c8d1 .elementor-button .elementor-button-text,
.elementor-18 .elementor-element.elementor-element-7472c8d1 .elementor-button .elementor-button-icon{
  position: relative;
  z-index: 2;
}

/* Hover (desktop) */
@media (hover: hover){
  .elementor-18 .elementor-element.elementor-element-7472c8d1 .elementor-button:hover{
    transform: translateY(-2px) scale(1.02);
    filter: saturate(1.06);
    animation: none; /* pausa pulso para evitar conflicto visual */
    box-shadow:
      0 14px 28px rgba(158, 0, 0, 0.34),
      0 6px 14px rgba(0, 0, 0, 0.20),
      inset 0 1px 0 rgba(255, 255, 255, 0.25);
  }

  .elementor-18 .elementor-element.elementor-element-7472c8d1 .elementor-button:hover::before{
    animation-duration: 1.2s; /* brillo más rápido al hover */
  }
}

/* Click / tap */
.elementor-18 .elementor-element.elementor-element-7472c8d1 .elementor-button:active{
  transform: translateY(0) scale(0.985);
  box-shadow:
    0 6px 14px rgba(158, 0, 0, 0.22),
    0 2px 6px rgba(0, 0, 0, 0.16),
    inset 0 2px 6px rgba(0, 0, 0, 0.18);
}

/* Focus accesible (teclado) */
.elementor-18 .elementor-element.elementor-element-7472c8d1 .elementor-button:focus,
.elementor-18 .elementor-element.elementor-element-7472c8d1 .elementor-button:focus-visible{
  outline: none;
  box-shadow:
    0 0 0 3px rgba(255,255,255,0.75),
    0 0 0 6px rgba(158, 0, 0, 0.30),
    0 10px 22px rgba(158, 0, 0, 0.28);
}

/* Si el botón tiene icono */
.elementor-18 .elementor-element.elementor-element-7472c8d1 .elementor-button .elementor-button-icon{
  transition: transform .2s ease;
}
@media (hover: hover){
  .elementor-18 .elementor-element.elementor-element-7472c8d1 .elementor-button:hover .elementor-button-icon{
    transform: translateX(2px);
  }
}

/* Animación de pulso */
@keyframes buyPulseRed{
  0%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 0 rgba(158, 0, 0, 0.22),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
  70%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 14px rgba(158, 0, 0, 0),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
  100%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 0 rgba(158, 0, 0, 0),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
}

/* Animación de brillo */
@keyframes buyShineRed{
  0%{
    transform: rotate(18deg) translateX(-220%);
  }
  100%{
    transform: rotate(18deg) translateX(620%);
  }
}

/* Mobile: más fluido y menos carga visual */
@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-7472c8d1 .elementor-button{
    border-radius: 12px;
    padding: 13px 18px;
    animation-duration: 1.8s;
    box-shadow:
      0 8px 18px rgba(158, 0, 0, 0.24),
      0 3px 8px rgba(0, 0, 0, 0.16),
      inset 0 1px 0 rgba(255, 255, 255, 0.18);
  }

  .elementor-18 .elementor-element.elementor-element-7472c8d1 .elementor-button::before{
    animation-duration: 2.2s; /* brillo visible pero liviano */
    opacity: .9;
  }
}

/* Respeta usuarios con menor movimiento */
@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-7472c8d1 .elementor-button,
  .elementor-18 .elementor-element.elementor-element-7472c8d1 .elementor-button::before{
    animation: none !important;
    transition: none !important;
  }
}/* End custom CSS */



/* Start custom CSS for image, class: .elementor-element-7c481a5b *//* ==========================================
   IMAGE FX UNIVERSAL - VERSIÓN MÁS LENTA
   Elementor Custom CSS
========================================== */

.elementor-18 .elementor-element.elementor-element-7c481a5b{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 16px;
  transform: translate3d(0,0,0);
  -webkit-transform: translate3d(0,0,0);
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Entrada suave + flotación más lenta */
  animation:
    vfxWrapIn .5s cubic-bezier(.22,.8,.26,1) both,
    vfxWrapFloat 5.8s ease-in-out .5s infinite;
}

.elementor-18 .elementor-element.elementor-element-7c481a5b img{
  display: block;
  width: 100%;
  height: auto;
  transform: translate3d(0,0,0) scale(1.01);
  -webkit-transform: translate3d(0,0,0) scale(1.01);
  will-change: transform, filter, opacity;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Respiración mucho más calmada */
  animation: vfxBreath 6.4s ease-in-out .5s infinite;
  transition: transform .28s cubic-bezier(.22,.8,.26,1), filter .28s ease;
  filter: contrast(1.03) saturate(1.04);
}

/* Glow más sutil */
.elementor-18 .elementor-element.elementor-element-7c481a5b::after{
  content: "";
  position: absolute;
  inset: -8%;
  pointer-events: none;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.14), transparent 35%),
    radial-gradient(circle at 80% 78%, rgba(121,54,95,.16), transparent 40%);
  mix-blend-mode: screen;
  opacity: .34;
  transform: translate3d(0,0,0) scale(1);
  animation: vfxGlow 7.2s ease-in-out infinite;
}

/* Shine menos frecuente */
.elementor-18 .elementor-element.elementor-element-7c481a5b::before{
  content: "";
  position: absolute;
  top: -140%;
  left: -34%;
  width: 28%;
  height: 360%;
  pointer-events: none;
  background: linear-gradient(
    95deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.05) 34%,
    rgba(255,255,255,.18) 50%,
    rgba(255,255,255,.05) 66%,
    rgba(255,255,255,0) 100%
  );
  transform: translateX(-160%) skewX(-18deg);
  animation: vfxShine 8.5s linear 1.2s infinite;
}

@media (hover:hover) and (pointer:fine){
  .elementor-18 .elementor-element.elementor-element-7c481a5b:hover img{
    transform: translate3d(0,0,0) scale(1.035);
    filter: contrast(1.05) saturate(1.06) brightness(1.01);
  }
  .elementor-18 .elementor-element.elementor-element-7c481a5b:hover::before{
    animation-duration: 4.2s;
  }
}

@media (hover:none), (pointer:coarse){
  .elementor-18 .elementor-element.elementor-element-7c481a5b{
    border-radius: 14px;
  }
  .elementor-18 .elementor-element.elementor-element-7c481a5b img{
    animation-duration: 6.8s;
  }
  .elementor-18 .elementor-element.elementor-element-7c481a5b::before{
    animation-duration: 10s;
  }
  .elementor-18 .elementor-element.elementor-element-7c481a5b::after{
    animation-duration: 8s;
  }
  .elementor-18 .elementor-element.elementor-element-7c481a5b:active img{
    transform: translate3d(0,0,0) scale(1.025);
    filter: contrast(1.04) saturate(1.05);
  }
}

@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-7c481a5b::before{
    width: 24%;
    opacity: .75;
  }
  .elementor-18 .elementor-element.elementor-element-7c481a5b::after{
    opacity: .28;
  }
}

@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-7c481a5b,
  .elementor-18 .elementor-element.elementor-element-7c481a5b img,
  .elementor-18 .elementor-element.elementor-element-7c481a5b::before,
  .elementor-18 .elementor-element.elementor-element-7c481a5b::after{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}

@keyframes vfxWrapIn{
  from{ opacity: .0; transform: translate3d(0,8px,0) scale(.992); }
  to  { opacity: 1;   transform: translate3d(0,0,0) scale(1); }
}
@keyframes vfxWrapFloat{
  0%,100%{ transform: translate3d(0,0,0); }
  50%    { transform: translate3d(0,-3px,0); }
}
@keyframes vfxBreath{
  0%,100%{ transform: translate3d(0,0,0) scale(1.01); }
  50%    { transform: translate3d(0,0,0) scale(1.026); }
}
@keyframes vfxGlow{
  0%,100%{ opacity:.28; transform: scale(1); }
  50%    { opacity:.42; transform: scale(1.015); }
}
@keyframes vfxShine{
  0%   { transform: translateX(-160%) skewX(-18deg); }
  100% { transform: translateX(260%) skewX(-18deg); }
}/* End custom CSS */



/* Start custom CSS for button, class: .elementor-element-323fb130 *//* ============================
   BOTÓN DE COMPRA (Elementor)
   Color base: #9E0000
   ============================ */

.elementor-18 .elementor-element.elementor-element-323fb130 .elementor-button{
  --btn-red: #9E0000;
  --btn-red-dark: #7f0000;
  --btn-red-light: #c40000;
  --btn-text: #ffffff;

  position: relative;
  overflow: hidden;
  isolation: isolate; /* asegura que el brillo quede dentro del botón */

  background: linear-gradient(180deg, var(--btn-red-light) 0%, var(--btn-red) 55%, var(--btn-red-dark) 100%);
  color: var(--btn-text) !important;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 14px;

  /* Ajustes visuales */
  font-weight: 700;
  letter-spacing: 0.2px;
  padding: 14px 24px;

  /* Efectos */
  box-shadow:
    0 10px 22px rgba(158, 0, 0, 0.28),
    0 4px 10px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.20);

  transform: translateZ(0);
  transition:
    transform .12s ease,
    box-shadow .12s ease,
    filter .12s ease,
    background .12s ease;

  /* Pulso suave al cargar */
  animation: buyPulseRed 1.1s ease-in-out infinite;
}

/* Brillo diagonal premium */
.elementor-18 .elementor-element.elementor-element-323fb130 .elementor-button::before{
  content: "";
  position: absolute;
  top: -20%;
  left: -35%;
  width: 28%;
  height: 140%;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.16) 45%,
    rgba(255,255,255,0.38) 50%,
    rgba(255,255,255,0.16) 55%,
    rgba(255,255,255,0) 100%
  );
  transform: rotate(18deg) translateX(-180%);
  z-index: 1;
  pointer-events: none;
  animation: buyShineRed 2.8s linear infinite;
}

/* Capa superior para que el texto quede siempre bien */
.elementor-18 .elementor-element.elementor-element-323fb130 .elementor-button .elementor-button-text,
.elementor-18 .elementor-element.elementor-element-323fb130 .elementor-button .elementor-button-icon{
  position: relative;
  z-index: 2;
}

/* Hover (desktop) */
@media (hover: hover){
  .elementor-18 .elementor-element.elementor-element-323fb130 .elementor-button:hover{
    transform: translateY(-2px) scale(1.02);
    filter: saturate(1.06);
    animation: none; /* pausa pulso para evitar conflicto visual */
    box-shadow:
      0 14px 28px rgba(158, 0, 0, 0.34),
      0 6px 14px rgba(0, 0, 0, 0.20),
      inset 0 1px 0 rgba(255, 255, 255, 0.25);
  }

  .elementor-18 .elementor-element.elementor-element-323fb130 .elementor-button:hover::before{
    animation-duration: 1.2s; /* brillo más rápido al hover */
  }
}

/* Click / tap */
.elementor-18 .elementor-element.elementor-element-323fb130 .elementor-button:active{
  transform: translateY(0) scale(0.985);
  box-shadow:
    0 6px 14px rgba(158, 0, 0, 0.22),
    0 2px 6px rgba(0, 0, 0, 0.16),
    inset 0 2px 6px rgba(0, 0, 0, 0.18);
}

/* Focus accesible (teclado) */
.elementor-18 .elementor-element.elementor-element-323fb130 .elementor-button:focus,
.elementor-18 .elementor-element.elementor-element-323fb130 .elementor-button:focus-visible{
  outline: none;
  box-shadow:
    0 0 0 3px rgba(255,255,255,0.75),
    0 0 0 6px rgba(158, 0, 0, 0.30),
    0 10px 22px rgba(158, 0, 0, 0.28);
}

/* Si el botón tiene icono */
.elementor-18 .elementor-element.elementor-element-323fb130 .elementor-button .elementor-button-icon{
  transition: transform .2s ease;
}
@media (hover: hover){
  .elementor-18 .elementor-element.elementor-element-323fb130 .elementor-button:hover .elementor-button-icon{
    transform: translateX(2px);
  }
}

/* Animación de pulso */
@keyframes buyPulseRed{
  0%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 0 rgba(158, 0, 0, 0.22),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
  70%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 14px rgba(158, 0, 0, 0),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
  100%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 0 rgba(158, 0, 0, 0),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
}

/* Animación de brillo */
@keyframes buyShineRed{
  0%{
    transform: rotate(18deg) translateX(-220%);
  }
  100%{
    transform: rotate(18deg) translateX(620%);
  }
}

/* Mobile: más fluido y menos carga visual */
@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-323fb130 .elementor-button{
    border-radius: 12px;
    padding: 13px 18px;
    animation-duration: 1.8s;
    box-shadow:
      0 8px 18px rgba(158, 0, 0, 0.24),
      0 3px 8px rgba(0, 0, 0, 0.16),
      inset 0 1px 0 rgba(255, 255, 255, 0.18);
  }

  .elementor-18 .elementor-element.elementor-element-323fb130 .elementor-button::before{
    animation-duration: 2.2s; /* brillo visible pero liviano */
    opacity: .9;
  }
}

/* Respeta usuarios con menor movimiento */
@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-323fb130 .elementor-button,
  .elementor-18 .elementor-element.elementor-element-323fb130 .elementor-button::before{
    animation: none !important;
    transition: none !important;
  }
}/* End custom CSS */



/* Start custom CSS for image-carousel, class: .elementor-element-4e4ef39 *//* ==========================================
   IMAGE FX UNIVERSAL - VERSIÓN MÁS LENTA
   Elementor Custom CSS
========================================== */

.elementor-18 .elementor-element.elementor-element-4e4ef39{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 16px;
  transform: translate3d(0,0,0);
  -webkit-transform: translate3d(0,0,0);
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Entrada suave + flotación más lenta */
  animation:
    vfxWrapIn .5s cubic-bezier(.22,.8,.26,1) both,
    vfxWrapFloat 5.8s ease-in-out .5s infinite;
}

.elementor-18 .elementor-element.elementor-element-4e4ef39 img{
  display: block;
  width: 100%;
  height: auto;
  transform: translate3d(0,0,0) scale(1.01);
  -webkit-transform: translate3d(0,0,0) scale(1.01);
  will-change: transform, filter, opacity;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Respiración mucho más calmada */
  animation: vfxBreath 6.4s ease-in-out .5s infinite;
  transition: transform .28s cubic-bezier(.22,.8,.26,1), filter .28s ease;
  filter: contrast(1.03) saturate(1.04);
}

/* Glow más sutil */
.elementor-18 .elementor-element.elementor-element-4e4ef39::after{
  content: "";
  position: absolute;
  inset: -8%;
  pointer-events: none;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.14), transparent 35%),
    radial-gradient(circle at 80% 78%, rgba(121,54,95,.16), transparent 40%);
  mix-blend-mode: screen;
  opacity: .34;
  transform: translate3d(0,0,0) scale(1);
  animation: vfxGlow 7.2s ease-in-out infinite;
}

/* Shine menos frecuente */
.elementor-18 .elementor-element.elementor-element-4e4ef39::before{
  content: "";
  position: absolute;
  top: -140%;
  left: -34%;
  width: 28%;
  height: 360%;
  pointer-events: none;
  background: linear-gradient(
    95deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.05) 34%,
    rgba(255,255,255,.18) 50%,
    rgba(255,255,255,.05) 66%,
    rgba(255,255,255,0) 100%
  );
  transform: translateX(-160%) skewX(-18deg);
  animation: vfxShine 8.5s linear 1.2s infinite;
}

@media (hover:hover) and (pointer:fine){
  .elementor-18 .elementor-element.elementor-element-4e4ef39:hover img{
    transform: translate3d(0,0,0) scale(1.035);
    filter: contrast(1.05) saturate(1.06) brightness(1.01);
  }
  .elementor-18 .elementor-element.elementor-element-4e4ef39:hover::before{
    animation-duration: 4.2s;
  }
}

@media (hover:none), (pointer:coarse){
  .elementor-18 .elementor-element.elementor-element-4e4ef39{
    border-radius: 14px;
  }
  .elementor-18 .elementor-element.elementor-element-4e4ef39 img{
    animation-duration: 6.8s;
  }
  .elementor-18 .elementor-element.elementor-element-4e4ef39::before{
    animation-duration: 10s;
  }
  .elementor-18 .elementor-element.elementor-element-4e4ef39::after{
    animation-duration: 8s;
  }
  .elementor-18 .elementor-element.elementor-element-4e4ef39:active img{
    transform: translate3d(0,0,0) scale(1.025);
    filter: contrast(1.04) saturate(1.05);
  }
}

@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-4e4ef39::before{
    width: 24%;
    opacity: .75;
  }
  .elementor-18 .elementor-element.elementor-element-4e4ef39::after{
    opacity: .28;
  }
}

@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-4e4ef39,
  .elementor-18 .elementor-element.elementor-element-4e4ef39 img,
  .elementor-18 .elementor-element.elementor-element-4e4ef39::before,
  .elementor-18 .elementor-element.elementor-element-4e4ef39::after{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}

@keyframes vfxWrapIn{
  from{ opacity: .0; transform: translate3d(0,8px,0) scale(.992); }
  to  { opacity: 1;   transform: translate3d(0,0,0) scale(1); }
}
@keyframes vfxWrapFloat{
  0%,100%{ transform: translate3d(0,0,0); }
  50%    { transform: translate3d(0,-3px,0); }
}
@keyframes vfxBreath{
  0%,100%{ transform: translate3d(0,0,0) scale(1.01); }
  50%    { transform: translate3d(0,0,0) scale(1.026); }
}
@keyframes vfxGlow{
  0%,100%{ opacity:.28; transform: scale(1); }
  50%    { opacity:.42; transform: scale(1.015); }
}
@keyframes vfxShine{
  0%   { transform: translateX(-160%) skewX(-18deg); }
  100% { transform: translateX(260%) skewX(-18deg); }
}/* End custom CSS */



/* Start custom CSS for button, class: .elementor-element-4e8e88f2 *//* ============================
   BOTÓN DE COMPRA (Elementor)
   Color base: #9E0000
   ============================ */

.elementor-18 .elementor-element.elementor-element-4e8e88f2 .elementor-button{
  --btn-red: #9E0000;
  --btn-red-dark: #7f0000;
  --btn-red-light: #c40000;
  --btn-text: #ffffff;

  position: relative;
  overflow: hidden;
  isolation: isolate; /* asegura que el brillo quede dentro del botón */

  background: linear-gradient(180deg, var(--btn-red-light) 0%, var(--btn-red) 55%, var(--btn-red-dark) 100%);
  color: var(--btn-text) !important;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 14px;

  /* Ajustes visuales */
  font-weight: 700;
  letter-spacing: 0.2px;
  padding: 14px 24px;

  /* Efectos */
  box-shadow:
    0 10px 22px rgba(158, 0, 0, 0.28),
    0 4px 10px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.20);

  transform: translateZ(0);
  transition:
    transform .12s ease,
    box-shadow .12s ease,
    filter .12s ease,
    background .12s ease;

  /* Pulso suave al cargar */
  animation: buyPulseRed 1.1s ease-in-out infinite;
}

/* Brillo diagonal premium */
.elementor-18 .elementor-element.elementor-element-4e8e88f2 .elementor-button::before{
  content: "";
  position: absolute;
  top: -20%;
  left: -35%;
  width: 28%;
  height: 140%;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.16) 45%,
    rgba(255,255,255,0.38) 50%,
    rgba(255,255,255,0.16) 55%,
    rgba(255,255,255,0) 100%
  );
  transform: rotate(18deg) translateX(-180%);
  z-index: 1;
  pointer-events: none;
  animation: buyShineRed 2.8s linear infinite;
}

/* Capa superior para que el texto quede siempre bien */
.elementor-18 .elementor-element.elementor-element-4e8e88f2 .elementor-button .elementor-button-text,
.elementor-18 .elementor-element.elementor-element-4e8e88f2 .elementor-button .elementor-button-icon{
  position: relative;
  z-index: 2;
}

/* Hover (desktop) */
@media (hover: hover){
  .elementor-18 .elementor-element.elementor-element-4e8e88f2 .elementor-button:hover{
    transform: translateY(-2px) scale(1.02);
    filter: saturate(1.06);
    animation: none; /* pausa pulso para evitar conflicto visual */
    box-shadow:
      0 14px 28px rgba(158, 0, 0, 0.34),
      0 6px 14px rgba(0, 0, 0, 0.20),
      inset 0 1px 0 rgba(255, 255, 255, 0.25);
  }

  .elementor-18 .elementor-element.elementor-element-4e8e88f2 .elementor-button:hover::before{
    animation-duration: 1.2s; /* brillo más rápido al hover */
  }
}

/* Click / tap */
.elementor-18 .elementor-element.elementor-element-4e8e88f2 .elementor-button:active{
  transform: translateY(0) scale(0.985);
  box-shadow:
    0 6px 14px rgba(158, 0, 0, 0.22),
    0 2px 6px rgba(0, 0, 0, 0.16),
    inset 0 2px 6px rgba(0, 0, 0, 0.18);
}

/* Focus accesible (teclado) */
.elementor-18 .elementor-element.elementor-element-4e8e88f2 .elementor-button:focus,
.elementor-18 .elementor-element.elementor-element-4e8e88f2 .elementor-button:focus-visible{
  outline: none;
  box-shadow:
    0 0 0 3px rgba(255,255,255,0.75),
    0 0 0 6px rgba(158, 0, 0, 0.30),
    0 10px 22px rgba(158, 0, 0, 0.28);
}

/* Si el botón tiene icono */
.elementor-18 .elementor-element.elementor-element-4e8e88f2 .elementor-button .elementor-button-icon{
  transition: transform .2s ease;
}
@media (hover: hover){
  .elementor-18 .elementor-element.elementor-element-4e8e88f2 .elementor-button:hover .elementor-button-icon{
    transform: translateX(2px);
  }
}

/* Animación de pulso */
@keyframes buyPulseRed{
  0%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 0 rgba(158, 0, 0, 0.22),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
  70%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 14px rgba(158, 0, 0, 0),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
  100%{
    box-shadow:
      0 10px 22px rgba(158, 0, 0, 0.28),
      0 4px 10px rgba(0, 0, 0, 0.18),
      0 0 0 0 rgba(158, 0, 0, 0),
      inset 0 1px 0 rgba(255, 255, 255, 0.20);
  }
}

/* Animación de brillo */
@keyframes buyShineRed{
  0%{
    transform: rotate(18deg) translateX(-220%);
  }
  100%{
    transform: rotate(18deg) translateX(620%);
  }
}

/* Mobile: más fluido y menos carga visual */
@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-4e8e88f2 .elementor-button{
    border-radius: 12px;
    padding: 13px 18px;
    animation-duration: 1.8s;
    box-shadow:
      0 8px 18px rgba(158, 0, 0, 0.24),
      0 3px 8px rgba(0, 0, 0, 0.16),
      inset 0 1px 0 rgba(255, 255, 255, 0.18);
  }

  .elementor-18 .elementor-element.elementor-element-4e8e88f2 .elementor-button::before{
    animation-duration: 2.2s; /* brillo visible pero liviano */
    opacity: .9;
  }
}

/* Respeta usuarios con menor movimiento */
@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-4e8e88f2 .elementor-button,
  .elementor-18 .elementor-element.elementor-element-4e8e88f2 .elementor-button::before{
    animation: none !important;
    transition: none !important;
  }
}/* End custom CSS */




/* Start custom CSS for image-carousel, class: .elementor-element-0268cdf *//* ==========================================
   IMAGE FX UNIVERSAL - VERSIÓN MÁS LENTA
   Elementor Custom CSS
========================================== */

.elementor-18 .elementor-element.elementor-element-0268cdf{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 16px;
  transform: translate3d(0,0,0);
  -webkit-transform: translate3d(0,0,0);
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Entrada suave + flotación más lenta */
  animation:
    vfxWrapIn .5s cubic-bezier(.22,.8,.26,1) both,
    vfxWrapFloat 5.8s ease-in-out .5s infinite;
}

.elementor-18 .elementor-element.elementor-element-0268cdf img{
  display: block;
  width: 100%;
  height: auto;
  transform: translate3d(0,0,0) scale(1.01);
  -webkit-transform: translate3d(0,0,0) scale(1.01);
  will-change: transform, filter, opacity;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Respiración mucho más calmada */
  animation: vfxBreath 6.4s ease-in-out .5s infinite;
  transition: transform .28s cubic-bezier(.22,.8,.26,1), filter .28s ease;
  filter: contrast(1.03) saturate(1.04);
}

/* Glow más sutil */
.elementor-18 .elementor-element.elementor-element-0268cdf::after{
  content: "";
  position: absolute;
  inset: -8%;
  pointer-events: none;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.14), transparent 35%),
    radial-gradient(circle at 80% 78%, rgba(121,54,95,.16), transparent 40%);
  mix-blend-mode: screen;
  opacity: .34;
  transform: translate3d(0,0,0) scale(1);
  animation: vfxGlow 7.2s ease-in-out infinite;
}

/* Shine menos frecuente */
.elementor-18 .elementor-element.elementor-element-0268cdf::before{
  content: "";
  position: absolute;
  top: -140%;
  left: -34%;
  width: 28%;
  height: 360%;
  pointer-events: none;
  background: linear-gradient(
    95deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.05) 34%,
    rgba(255,255,255,.18) 50%,
    rgba(255,255,255,.05) 66%,
    rgba(255,255,255,0) 100%
  );
  transform: translateX(-160%) skewX(-18deg);
  animation: vfxShine 8.5s linear 1.2s infinite;
}

@media (hover:hover) and (pointer:fine){
  .elementor-18 .elementor-element.elementor-element-0268cdf:hover img{
    transform: translate3d(0,0,0) scale(1.035);
    filter: contrast(1.05) saturate(1.06) brightness(1.01);
  }
  .elementor-18 .elementor-element.elementor-element-0268cdf:hover::before{
    animation-duration: 4.2s;
  }
}

@media (hover:none), (pointer:coarse){
  .elementor-18 .elementor-element.elementor-element-0268cdf{
    border-radius: 14px;
  }
  .elementor-18 .elementor-element.elementor-element-0268cdf img{
    animation-duration: 6.8s;
  }
  .elementor-18 .elementor-element.elementor-element-0268cdf::before{
    animation-duration: 10s;
  }
  .elementor-18 .elementor-element.elementor-element-0268cdf::after{
    animation-duration: 8s;
  }
  .elementor-18 .elementor-element.elementor-element-0268cdf:active img{
    transform: translate3d(0,0,0) scale(1.025);
    filter: contrast(1.04) saturate(1.05);
  }
}

@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-0268cdf::before{
    width: 24%;
    opacity: .75;
  }
  .elementor-18 .elementor-element.elementor-element-0268cdf::after{
    opacity: .28;
  }
}

@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-0268cdf,
  .elementor-18 .elementor-element.elementor-element-0268cdf img,
  .elementor-18 .elementor-element.elementor-element-0268cdf::before,
  .elementor-18 .elementor-element.elementor-element-0268cdf::after{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}

@keyframes vfxWrapIn{
  from{ opacity: .0; transform: translate3d(0,8px,0) scale(.992); }
  to  { opacity: 1;   transform: translate3d(0,0,0) scale(1); }
}
@keyframes vfxWrapFloat{
  0%,100%{ transform: translate3d(0,0,0); }
  50%    { transform: translate3d(0,-3px,0); }
}
@keyframes vfxBreath{
  0%,100%{ transform: translate3d(0,0,0) scale(1.01); }
  50%    { transform: translate3d(0,0,0) scale(1.026); }
}
@keyframes vfxGlow{
  0%,100%{ opacity:.28; transform: scale(1); }
  50%    { opacity:.42; transform: scale(1.015); }
}
@keyframes vfxShine{
  0%   { transform: translateX(-160%) skewX(-18deg); }
  100% { transform: translateX(260%) skewX(-18deg); }
}/* End custom CSS */




/* Start custom CSS for image, class: .elementor-element-687b2049 *//* ==========================================
   IMAGE FX UNIVERSAL - VERSIÓN MÁS LENTA
   Elementor Custom CSS
========================================== */

.elementor-18 .elementor-element.elementor-element-687b2049{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 16px;
  transform: translate3d(0,0,0);
  -webkit-transform: translate3d(0,0,0);
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Entrada suave + flotación más lenta */
  animation:
    vfxWrapIn .5s cubic-bezier(.22,.8,.26,1) both,
    vfxWrapFloat 5.8s ease-in-out .5s infinite;
}

.elementor-18 .elementor-element.elementor-element-687b2049 img{
  display: block;
  width: 100%;
  height: auto;
  transform: translate3d(0,0,0) scale(1.01);
  -webkit-transform: translate3d(0,0,0) scale(1.01);
  will-change: transform, filter, opacity;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;

  /* Respiración mucho más calmada */
  animation: vfxBreath 6.4s ease-in-out .5s infinite;
  transition: transform .28s cubic-bezier(.22,.8,.26,1), filter .28s ease;
  filter: contrast(1.03) saturate(1.04);
}

/* Glow más sutil */
.elementor-18 .elementor-element.elementor-element-687b2049::after{
  content: "";
  position: absolute;
  inset: -8%;
  pointer-events: none;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,.14), transparent 35%),
    radial-gradient(circle at 80% 78%, rgba(121,54,95,.16), transparent 40%);
  mix-blend-mode: screen;
  opacity: .34;
  transform: translate3d(0,0,0) scale(1);
  animation: vfxGlow 7.2s ease-in-out infinite;
}

/* Shine menos frecuente */
.elementor-18 .elementor-element.elementor-element-687b2049::before{
  content: "";
  position: absolute;
  top: -140%;
  left: -34%;
  width: 28%;
  height: 360%;
  pointer-events: none;
  background: linear-gradient(
    95deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.05) 34%,
    rgba(255,255,255,.18) 50%,
    rgba(255,255,255,.05) 66%,
    rgba(255,255,255,0) 100%
  );
  transform: translateX(-160%) skewX(-18deg);
  animation: vfxShine 8.5s linear 1.2s infinite;
}

@media (hover:hover) and (pointer:fine){
  .elementor-18 .elementor-element.elementor-element-687b2049:hover img{
    transform: translate3d(0,0,0) scale(1.035);
    filter: contrast(1.05) saturate(1.06) brightness(1.01);
  }
  .elementor-18 .elementor-element.elementor-element-687b2049:hover::before{
    animation-duration: 4.2s;
  }
}

@media (hover:none), (pointer:coarse){
  .elementor-18 .elementor-element.elementor-element-687b2049{
    border-radius: 14px;
  }
  .elementor-18 .elementor-element.elementor-element-687b2049 img{
    animation-duration: 6.8s;
  }
  .elementor-18 .elementor-element.elementor-element-687b2049::before{
    animation-duration: 10s;
  }
  .elementor-18 .elementor-element.elementor-element-687b2049::after{
    animation-duration: 8s;
  }
  .elementor-18 .elementor-element.elementor-element-687b2049:active img{
    transform: translate3d(0,0,0) scale(1.025);
    filter: contrast(1.04) saturate(1.05);
  }
}

@media (max-width: 767px){
  .elementor-18 .elementor-element.elementor-element-687b2049::before{
    width: 24%;
    opacity: .75;
  }
  .elementor-18 .elementor-element.elementor-element-687b2049::after{
    opacity: .28;
  }
}

@media (prefers-reduced-motion: reduce){
  .elementor-18 .elementor-element.elementor-element-687b2049,
  .elementor-18 .elementor-element.elementor-element-687b2049 img,
  .elementor-18 .elementor-element.elementor-element-687b2049::before,
  .elementor-18 .elementor-element.elementor-element-687b2049::after{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}

@keyframes vfxWrapIn{
  from{ opacity: .0; transform: translate3d(0,8px,0) scale(.992); }
  to  { opacity: 1;   transform: translate3d(0,0,0) scale(1); }
}
@keyframes vfxWrapFloat{
  0%,100%{ transform: translate3d(0,0,0); }
  50%    { transform: translate3d(0,-3px,0); }
}
@keyframes vfxBreath{
  0%,100%{ transform: translate3d(0,0,0) scale(1.01); }
  50%    { transform: translate3d(0,0,0) scale(1.026); }
}
@keyframes vfxGlow{
  0%,100%{ opacity:.28; transform: scale(1); }
  50%    { opacity:.42; transform: scale(1.015); }
}
@keyframes vfxShine{
  0%   { transform: translateX(-160%) skewX(-18deg); }
  100% { transform: translateX(260%) skewX(-18deg); }
}/* End custom CSS */



