.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-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-13507 .elementor-element.elementor-element-7a091a3 .elementor-button{background-color:#E31B23;}.elementor-13507 .elementor-element.elementor-element-8427757 .elementor-button{background-color:#E31B23;}.elementor-13507 .elementor-element.elementor-element-29ebcb8 .elementor-button{background-color:#E31B23;}.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-13507 .elementor-element.elementor-element-cf666bd{text-align:center;}.elementor-13507 .elementor-element.elementor-element-cf666bd .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-13507 .elementor-element.elementor-element-5f8c24f .elementor-countdown-wrapper{max-width:60%;}body:not(.rtl) .elementor-13507 .elementor-element.elementor-element-5f8c24f .elementor-countdown-item:not(:first-of-type){margin-left:calc( 56px/2 );}body:not(.rtl) .elementor-13507 .elementor-element.elementor-element-5f8c24f .elementor-countdown-item:not(:last-of-type){margin-right:calc( 56px/2 );}body.rtl .elementor-13507 .elementor-element.elementor-element-5f8c24f .elementor-countdown-item:not(:first-of-type){margin-right:calc( 56px/2 );}body.rtl .elementor-13507 .elementor-element.elementor-element-5f8c24f .elementor-countdown-item:not(:last-of-type){margin-left:calc( 56px/2 );}.elementor-13507 .elementor-element.elementor-element-5f8c24f .elementor-countdown-item{background-color:#E31B23;border-radius:20px 20px 20px 20px;}.elementor-13507 .elementor-element.elementor-element-5f8c24f .elementor-countdown-digits{font-family:"Poppins", Sans-serif;font-weight:400;}.elementor-13507 .elementor-element.elementor-element-5f8c24f .elementor-countdown-label{font-family:"Poppins", Sans-serif;font-weight:400;}.elementor-13507 .elementor-element.elementor-element-c061af1{text-align:center;}.elementor-13507 .elementor-element.elementor-element-c061af1 .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-13507 .elementor-element.elementor-element-63316f0 .elementor-progress-wrapper .elementor-progress-bar{background-color:#E31B23;}.elementor-13507 .elementor-element.elementor-element-63316f0 .elementor-progress-bar{height:50px;line-height:50px;font-family:"Poppins", Sans-serif;}.elementor-13507 .elementor-element.elementor-element-63316f0 .elementor-progress-wrapper{border-radius:25px;overflow:hidden;}.elementor-13507 .elementor-element.elementor-element-38c9e83 .elementor-button{background-color:#E31B23;}.elementor-13507 .elementor-element.elementor-element-b1a08b8 .elementor-button{background-color:#E31B23;}.elementor-13507 .elementor-element.elementor-element-432ae68 .elementor-button{background-color:#E31B23;}.elementor-13507 .elementor-element.elementor-element-bad1e34 .elementor-button{background-color:#E31B23;}.elementor-13507 .elementor-element.elementor-element-271e00a3{text-align:center;}.elementor-13507 .elementor-element.elementor-element-271e00a3 .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-13507 .elementor-element.elementor-element-56c2e3db{text-align:center;font-family:"Montserrat", Sans-serif;font-size:25px;font-weight:400;color:#FFFFFF;}@media(max-width:767px){.elementor-13507 .elementor-element.elementor-element-626b2f > .elementor-widget-container{border-radius:20px 20px 20px 20px;}.elementor-13507 .elementor-element.elementor-element-616e9333 > .elementor-widget-container{border-radius:20px 20px 20px 20px;}.elementor-13507 .elementor-element.elementor-element-77e4b224 > .elementor-widget-container{border-radius:20px 20px 20px 20px;}.elementor-13507 .elementor-element.elementor-element-5f8c24f .elementor-countdown-wrapper{max-width:84%;}body:not(.rtl) .elementor-13507 .elementor-element.elementor-element-5f8c24f .elementor-countdown-item:not(:first-of-type){margin-left:calc( 41px/2 );}body:not(.rtl) .elementor-13507 .elementor-element.elementor-element-5f8c24f .elementor-countdown-item:not(:last-of-type){margin-right:calc( 41px/2 );}body.rtl .elementor-13507 .elementor-element.elementor-element-5f8c24f .elementor-countdown-item:not(:first-of-type){margin-right:calc( 41px/2 );}body.rtl .elementor-13507 .elementor-element.elementor-element-5f8c24f .elementor-countdown-item:not(:last-of-type){margin-left:calc( 41px/2 );}.elementor-13507 .elementor-element.elementor-element-5f8c24f .elementor-countdown-digits{font-size:34px;}.elementor-13507 .elementor-element.elementor-element-5f8c24f .elementor-countdown-label{font-size:18px;}.elementor-13507 .elementor-element.elementor-element-19f9ba46 > .elementor-widget-container{border-radius:20px 20px 20px 20px;}.elementor-13507 .elementor-element.elementor-element-1d36bcf5 > .elementor-widget-container{border-radius:20px 20px 20px 20px;}.elementor-13507 .elementor-element.elementor-element-4fa069eb > .elementor-widget-container{border-radius:20px 20px 20px 20px;}.elementor-13507 .elementor-element.elementor-element-4ceea0fc > .elementor-widget-container{border-radius:20px 20px 20px 20px;}.elementor-13507 .elementor-element.elementor-element-271e00a3{text-align:center;}.elementor-13507 .elementor-element.elementor-element-63ba772 > .elementor-widget-container{border-radius:20px 20px 20px 20px;}.elementor-13507 .elementor-element.elementor-element-56c2e3db{font-size:13px;}body.elementor-page-13507:not(.elementor-motion-effects-element-type-background), body.elementor-page-13507 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://mancuernas3en1.com/wp-content/uploads/2026/02/fondo_2_11zon-scaled.webp");}}/* Start custom CSS for image, class: .elementor-element-626b2f *//* ===== S1 IMAGEN (desktop + móvil) ===== */
.elementor-13507 .elementor-element.elementor-element-626b2f{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 18px;
  box-shadow: 0 10px 28px rgba(0,0,0,.22);
  transform: translateZ(0);
  animation: s1_wrap_float 6.8s ease-in-out infinite;
}

.elementor-13507 .elementor-element.elementor-element-626b2f img{
  display: block;
  width: 100%;
  height: auto;
  backface-visibility: hidden;
  transform: translateZ(0);
  will-change: transform, filter;
  transition: transform .55s cubic-bezier(.22,.61,.36,1), filter .4s ease;
  filter: contrast(1.02) saturate(1.03);
}

/* Vignette */
.elementor-13507 .elementor-element.elementor-element-626b2f::after{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 50% 45%,
    rgba(0,0,0,0) 35%,
    rgba(0,0,0,.14) 70%,
    rgba(0,0,0,.28) 100%);
}

/* Shine */
.elementor-13507 .elementor-element.elementor-element-626b2f::before{
  content: "";
  position: absolute;
  top: -130%;
  left: -34%;
  width: 38%;
  height: 320%;
  pointer-events: none;
  background: linear-gradient(
    95deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.10) 38%,
    rgba(255,255,255,.26) 50%,
    rgba(255,255,255,.10) 62%,
    rgba(255,255,255,0) 100%
  );
  transform: translateX(-145%) skewX(-18deg);
}

/* Hover real solo en dispositivos con hover */
@media (hover: hover) and (pointer: fine){
  .elementor-13507 .elementor-element.elementor-element-626b2f:hover img{
    transform: scale(1.05);
    filter: contrast(1.06) saturate(1.06) brightness(1.02);
  }
  .elementor-13507 .elementor-element.elementor-element-626b2f:hover::before{
    animation: s1_img_shine .9s ease forwards;
  }
}

/* Móvil / touch */
@media (hover: none), (pointer: coarse){
  .elementor-13507 .elementor-element.elementor-element-626b2f{
    border-radius: 14px;
    animation-duration: 9s; /* más suave en móvil */
  }

  /* feedback táctil */
  .elementor-13507 .elementor-element.elementor-element-626b2f:active img{
    transform: scale(1.02);
    filter: contrast(1.04) saturate(1.04);
  }
}

/* Breakpoint Elementor móvil */
@media (max-width: 767px){
  .elementor-13507 .elementor-element.elementor-element-626b2f{ box-shadow: 0 8px 20px rgba(0,0,0,.2); }
}

@keyframes s1_wrap_float{
  0%,100% { transform: translateY(0); }
  50%     { transform: translateY(-5px); }
}
@keyframes s1_img_shine{
  0%   { transform: translateX(-145%) skewX(-18deg); }
  100% { transform: translateX(235%) skewX(-18deg); }
}

@media (prefers-reduced-motion: reduce){
  .elementor-13507 .elementor-element.elementor-element-626b2f, .elementor-13507 .elementor-element.elementor-element-626b2f img{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}/* End custom CSS */



/* Start custom CSS for button, class: .elementor-element-7a091a3 *//* ===== S1 BOTÓN (desktop + móvil) ===== */
.elementor-13507 .elementor-element.elementor-element-7a091a3 .elementor-button{
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.18);
  background: linear-gradient(135deg, #E31B23 0%, #7f2d5d 100%);
  color: #fff;
  min-height: 52px;              /* mejor tap target móvil */
  padding: 14px 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;

  transition: transform .22s ease, filter .25s ease, box-shadow .3s ease;
  box-shadow: 0 10px 24px rgba(102,30,71,.28);
  animation: s1_btn_pulse 2.4s infinite;
}

/* Shine */
.elementor-13507 .elementor-element.elementor-element-7a091a3 .elementor-button::before{
  content: "";
  position: absolute;
  top: -120%;
  left: -30%;
  width: 28%;
  height: 340%;
  background: rgba(255,255,255,.22);
  transform: translateX(-145%) skewX(-18deg);
  pointer-events: none;
}

/* Hover desktop */
@media (hover: hover) and (pointer: fine){
  .elementor-13507 .elementor-element.elementor-element-7a091a3 .elementor-button:hover{
    transform: translateY(-2px) scale(1.04);
    filter: brightness(1.08);
  }
  .elementor-13507 .elementor-element.elementor-element-7a091a3 .elementor-button:hover::before{
    animation: s1_btn_shine .85s ease forwards;
  }
}

/* Touch feedback */
@media (hover: none), (pointer: coarse){
  .elementor-13507 .elementor-element.elementor-element-7a091a3 .elementor-button{
    animation-duration: 3.2s; /* menos invasivo en móvil */
  }
  .elementor-13507 .elementor-element.elementor-element-7a091a3 .elementor-button:active{
    transform: scale(.98);
    filter: brightness(1.06);
  }
}

/* foco accesible */
.elementor-13507 .elementor-element.elementor-element-7a091a3 .elementor-button:focus-visible{
  outline: 2px solid rgba(227, 27, 35, 1);
  outline-offset: 2px;
}

@keyframes s1_btn_pulse{
  0%   { transform: scale(.97); box-shadow: 0 0 0 0 rgba(227, 27, 35, 1); }
  70%  { transform: scale(1);   box-shadow: 0 0 0 14px rgba(227, 27, 35, 1); }
  100% { transform: scale(.97); box-shadow: 0 0 0 0 rgba(227, 27, 35, 1); }
}
@keyframes s1_btn_shine{
  0%   { transform: translateX(-145%) skewX(-18deg); }
  100% { transform: translateX(235%) skewX(-18deg); }
}

@media (prefers-reduced-motion: reduce){
  .elementor-13507 .elementor-element.elementor-element-7a091a3 .elementor-button{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}/* End custom CSS */



/* Start custom CSS for image, class: .elementor-element-616e9333 *//* ===== S2 IMAGEN (desktop + móvil) ===== */
.elementor-13507 .elementor-element.elementor-element-616e9333{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 18px;
  box-shadow: 0 12px 30px rgba(0,0,0,.24);
  transform: translateZ(0);
  animation: s2_wrap_drift 8.5s ease-in-out infinite;
}

.elementor-13507 .elementor-element.elementor-element-616e9333 img{
  display: block;
  width: 100%;
  height: auto;
  backface-visibility: hidden;
  transform: translateZ(0);
  will-change: transform, filter;
  transition: transform .6s cubic-bezier(.22,.61,.36,1), filter .4s ease;
  filter: brightness(.98) contrast(1.03) saturate(1.03);
}

/* Overlay premium */
.elementor-13507 .elementor-element.elementor-element-616e9333::after{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 52% 44%,
    rgba(0,0,0,0) 34%,
    rgba(0,0,0,.16) 72%,
    rgba(0,0,0,.30) 100%);
}

/* Hover desktop */
@media (hover: hover) and (pointer: fine){
  .elementor-13507 .elementor-element.elementor-element-616e9333:hover img{
    transform: scale(1.05);
    filter: brightness(1.02) contrast(1.07) saturate(1.06);
  }
}

/* Móvil/touch */
@media (hover: none), (pointer: coarse){
  .elementor-13507 .elementor-element.elementor-element-616e9333{
    border-radius: 14px;
    animation-duration: 10s;
  }
  .elementor-13507 .elementor-element.elementor-element-616e9333:active img{
    transform: scale(1.02);
    filter: brightness(1.01) contrast(1.04);
  }
}

@media (max-width: 767px){
  .elementor-13507 .elementor-element.elementor-element-616e9333{ box-shadow: 0 8px 20px rgba(0,0,0,.2); }
}

@keyframes s2_wrap_drift{
  0%,100% { transform: translateY(0) translateX(0); }
  50%     { transform: translateY(-4px) translateX(-1px); }
}

@media (prefers-reduced-motion: reduce){
  .elementor-13507 .elementor-element.elementor-element-616e9333, .elementor-13507 .elementor-element.elementor-element-616e9333 img{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}/* End custom CSS */



/* Start custom CSS for button, class: .elementor-element-8427757 *//* ===== S1 BOTÓN (desktop + móvil) ===== */
.elementor-13507 .elementor-element.elementor-element-8427757 .elementor-button{
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.18);
  background: linear-gradient(135deg, #E31B23 0%, #7f2d5d 100%);
  color: #fff;
  min-height: 52px;              /* mejor tap target móvil */
  padding: 14px 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;

  transition: transform .22s ease, filter .25s ease, box-shadow .3s ease;
  box-shadow: 0 10px 24px rgba(102,30,71,.28);
  animation: s1_btn_pulse 2.4s infinite;
}

/* Shine */
.elementor-13507 .elementor-element.elementor-element-8427757 .elementor-button::before{
  content: "";
  position: absolute;
  top: -120%;
  left: -30%;
  width: 28%;
  height: 340%;
  background: rgba(255,255,255,.22);
  transform: translateX(-145%) skewX(-18deg);
  pointer-events: none;
}

/* Hover desktop */
@media (hover: hover) and (pointer: fine){
  .elementor-13507 .elementor-element.elementor-element-8427757 .elementor-button:hover{
    transform: translateY(-2px) scale(1.04);
    filter: brightness(1.08);
  }
  .elementor-13507 .elementor-element.elementor-element-8427757 .elementor-button:hover::before{
    animation: s1_btn_shine .85s ease forwards;
  }
}

/* Touch feedback */
@media (hover: none), (pointer: coarse){
  .elementor-13507 .elementor-element.elementor-element-8427757 .elementor-button{
    animation-duration: 3.2s; /* menos invasivo en móvil */
  }
  .elementor-13507 .elementor-element.elementor-element-8427757 .elementor-button:active{
    transform: scale(.98);
    filter: brightness(1.06);
  }
}

/* foco accesible */
.elementor-13507 .elementor-element.elementor-element-8427757 .elementor-button:focus-visible{
  outline: 2px solid rgba(227, 27, 35, 1);
  outline-offset: 2px;
}

@keyframes s1_btn_pulse{
  0%   { transform: scale(.97); box-shadow: 0 0 0 0 rgba(227, 27, 35, 1); }
  70%  { transform: scale(1);   box-shadow: 0 0 0 14px rgba(227, 27, 35, 1); }
  100% { transform: scale(.97); box-shadow: 0 0 0 0 rgba(227, 27, 35, 1); }
}
@keyframes s1_btn_shine{
  0%   { transform: translateX(-145%) skewX(-18deg); }
  100% { transform: translateX(235%) skewX(-18deg); }
}

@media (prefers-reduced-motion: reduce){
  .elementor-13507 .elementor-element.elementor-element-8427757 .elementor-button{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}/* End custom CSS */



/* Start custom CSS for image, class: .elementor-element-77e4b224 *//* ===== S2 IMAGEN (desktop + móvil) ===== */
.elementor-13507 .elementor-element.elementor-element-77e4b224{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 18px;
  box-shadow: 0 12px 30px rgba(0,0,0,.24);
  transform: translateZ(0);
  animation: s2_wrap_drift 8.5s ease-in-out infinite;
}

.elementor-13507 .elementor-element.elementor-element-77e4b224 img{
  display: block;
  width: 100%;
  height: auto;
  backface-visibility: hidden;
  transform: translateZ(0);
  will-change: transform, filter;
  transition: transform .6s cubic-bezier(.22,.61,.36,1), filter .4s ease;
  filter: brightness(.98) contrast(1.03) saturate(1.03);
}

/* Overlay premium */
.elementor-13507 .elementor-element.elementor-element-77e4b224::after{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 52% 44%,
    rgba(0,0,0,0) 34%,
    rgba(0,0,0,.16) 72%,
    rgba(0,0,0,.30) 100%);
}

/* Hover desktop */
@media (hover: hover) and (pointer: fine){
  .elementor-13507 .elementor-element.elementor-element-77e4b224:hover img{
    transform: scale(1.05);
    filter: brightness(1.02) contrast(1.07) saturate(1.06);
  }
}

/* Móvil/touch */
@media (hover: none), (pointer: coarse){
  .elementor-13507 .elementor-element.elementor-element-77e4b224{
    border-radius: 14px;
    animation-duration: 10s;
  }
  .elementor-13507 .elementor-element.elementor-element-77e4b224:active img{
    transform: scale(1.02);
    filter: brightness(1.01) contrast(1.04);
  }
}

@media (max-width: 767px){
  .elementor-13507 .elementor-element.elementor-element-77e4b224{ box-shadow: 0 8px 20px rgba(0,0,0,.2); }
}

@keyframes s2_wrap_drift{
  0%,100% { transform: translateY(0) translateX(0); }
  50%     { transform: translateY(-4px) translateX(-1px); }
}

@media (prefers-reduced-motion: reduce){
  .elementor-13507 .elementor-element.elementor-element-77e4b224, .elementor-13507 .elementor-element.elementor-element-77e4b224 img{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}/* End custom CSS */



/* Start custom CSS for button, class: .elementor-element-29ebcb8 *//* ===== S1 BOTÓN (desktop + móvil) ===== */
.elementor-13507 .elementor-element.elementor-element-29ebcb8 .elementor-button{
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.18);
  background: linear-gradient(135deg, #E31B23 0%, #7f2d5d 100%);
  color: #fff;
  min-height: 52px;              /* mejor tap target móvil */
  padding: 14px 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;

  transition: transform .22s ease, filter .25s ease, box-shadow .3s ease;
  box-shadow: 0 10px 24px rgba(102,30,71,.28);
  animation: s1_btn_pulse 2.4s infinite;
}

/* Shine */
.elementor-13507 .elementor-element.elementor-element-29ebcb8 .elementor-button::before{
  content: "";
  position: absolute;
  top: -120%;
  left: -30%;
  width: 28%;
  height: 340%;
  background: rgba(255,255,255,.22);
  transform: translateX(-145%) skewX(-18deg);
  pointer-events: none;
}

/* Hover desktop */
@media (hover: hover) and (pointer: fine){
  .elementor-13507 .elementor-element.elementor-element-29ebcb8 .elementor-button:hover{
    transform: translateY(-2px) scale(1.04);
    filter: brightness(1.08);
  }
  .elementor-13507 .elementor-element.elementor-element-29ebcb8 .elementor-button:hover::before{
    animation: s1_btn_shine .85s ease forwards;
  }
}

/* Touch feedback */
@media (hover: none), (pointer: coarse){
  .elementor-13507 .elementor-element.elementor-element-29ebcb8 .elementor-button{
    animation-duration: 3.2s; /* menos invasivo en móvil */
  }
  .elementor-13507 .elementor-element.elementor-element-29ebcb8 .elementor-button:active{
    transform: scale(.98);
    filter: brightness(1.06);
  }
}

/* foco accesible */
.elementor-13507 .elementor-element.elementor-element-29ebcb8 .elementor-button:focus-visible{
  outline: 2px solid rgba(227, 27, 35, 1);
  outline-offset: 2px;
}

@keyframes s1_btn_pulse{
  0%   { transform: scale(.97); box-shadow: 0 0 0 0 rgba(227, 27, 35, 1); }
  70%  { transform: scale(1);   box-shadow: 0 0 0 14px rgba(227, 27, 35, 1); }
  100% { transform: scale(.97); box-shadow: 0 0 0 0 rgba(227, 27, 35, 1); }
}
@keyframes s1_btn_shine{
  0%   { transform: translateX(-145%) skewX(-18deg); }
  100% { transform: translateX(235%) skewX(-18deg); }
}

@media (prefers-reduced-motion: reduce){
  .elementor-13507 .elementor-element.elementor-element-29ebcb8 .elementor-button{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}/* End custom CSS */







/* Start custom CSS for image, class: .elementor-element-19f9ba46 *//* ===== S2 IMAGEN (desktop + móvil) ===== */
.elementor-13507 .elementor-element.elementor-element-19f9ba46{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 18px;
  box-shadow: 0 12px 30px rgba(0,0,0,.24);
  transform: translateZ(0);
  animation: s2_wrap_drift 8.5s ease-in-out infinite;
}

.elementor-13507 .elementor-element.elementor-element-19f9ba46 img{
  display: block;
  width: 100%;
  height: auto;
  backface-visibility: hidden;
  transform: translateZ(0);
  will-change: transform, filter;
  transition: transform .6s cubic-bezier(.22,.61,.36,1), filter .4s ease;
  filter: brightness(.98) contrast(1.03) saturate(1.03);
}

/* Overlay premium */
.elementor-13507 .elementor-element.elementor-element-19f9ba46::after{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 52% 44%,
    rgba(0,0,0,0) 34%,
    rgba(0,0,0,.16) 72%,
    rgba(0,0,0,.30) 100%);
}

/* Hover desktop */
@media (hover: hover) and (pointer: fine){
  .elementor-13507 .elementor-element.elementor-element-19f9ba46:hover img{
    transform: scale(1.05);
    filter: brightness(1.02) contrast(1.07) saturate(1.06);
  }
}

/* Móvil/touch */
@media (hover: none), (pointer: coarse){
  .elementor-13507 .elementor-element.elementor-element-19f9ba46{
    border-radius: 14px;
    animation-duration: 10s;
  }
  .elementor-13507 .elementor-element.elementor-element-19f9ba46:active img{
    transform: scale(1.02);
    filter: brightness(1.01) contrast(1.04);
  }
}

@media (max-width: 767px){
  .elementor-13507 .elementor-element.elementor-element-19f9ba46{ box-shadow: 0 8px 20px rgba(0,0,0,.2); }
}

@keyframes s2_wrap_drift{
  0%,100% { transform: translateY(0) translateX(0); }
  50%     { transform: translateY(-4px) translateX(-1px); }
}

@media (prefers-reduced-motion: reduce){
  .elementor-13507 .elementor-element.elementor-element-19f9ba46, .elementor-13507 .elementor-element.elementor-element-19f9ba46 img{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}/* End custom CSS */







/* Start custom CSS for button, class: .elementor-element-38c9e83 *//* ===== S1 BOTÓN (desktop + móvil) ===== */
.elementor-13507 .elementor-element.elementor-element-38c9e83 .elementor-button{
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.18);
  background: linear-gradient(135deg, #E31B23 0%, #7f2d5d 100%);
  color: #fff;
  min-height: 52px;              /* mejor tap target móvil */
  padding: 14px 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;

  transition: transform .22s ease, filter .25s ease, box-shadow .3s ease;
  box-shadow: 0 10px 24px rgba(102,30,71,.28);
  animation: s1_btn_pulse 2.4s infinite;
}

/* Shine */
.elementor-13507 .elementor-element.elementor-element-38c9e83 .elementor-button::before{
  content: "";
  position: absolute;
  top: -120%;
  left: -30%;
  width: 28%;
  height: 340%;
  background: rgba(255,255,255,.22);
  transform: translateX(-145%) skewX(-18deg);
  pointer-events: none;
}

/* Hover desktop */
@media (hover: hover) and (pointer: fine){
  .elementor-13507 .elementor-element.elementor-element-38c9e83 .elementor-button:hover{
    transform: translateY(-2px) scale(1.04);
    filter: brightness(1.08);
  }
  .elementor-13507 .elementor-element.elementor-element-38c9e83 .elementor-button:hover::before{
    animation: s1_btn_shine .85s ease forwards;
  }
}

/* Touch feedback */
@media (hover: none), (pointer: coarse){
  .elementor-13507 .elementor-element.elementor-element-38c9e83 .elementor-button{
    animation-duration: 3.2s; /* menos invasivo en móvil */
  }
  .elementor-13507 .elementor-element.elementor-element-38c9e83 .elementor-button:active{
    transform: scale(.98);
    filter: brightness(1.06);
  }
}

/* foco accesible */
.elementor-13507 .elementor-element.elementor-element-38c9e83 .elementor-button:focus-visible{
  outline: 2px solid rgba(227, 27, 35, 1);
  outline-offset: 2px;
}

@keyframes s1_btn_pulse{
  0%   { transform: scale(.97); box-shadow: 0 0 0 0 rgba(227, 27, 35, 1); }
  70%  { transform: scale(1);   box-shadow: 0 0 0 14px rgba(227, 27, 35, 1); }
  100% { transform: scale(.97); box-shadow: 0 0 0 0 rgba(227, 27, 35, 1); }
}
@keyframes s1_btn_shine{
  0%   { transform: translateX(-145%) skewX(-18deg); }
  100% { transform: translateX(235%) skewX(-18deg); }
}

@media (prefers-reduced-motion: reduce){
  .elementor-13507 .elementor-element.elementor-element-38c9e83 .elementor-button{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}/* End custom CSS */



/* Start custom CSS for image, class: .elementor-element-1d36bcf5 *//* ===== S2 IMAGEN (desktop + móvil) ===== */
.elementor-13507 .elementor-element.elementor-element-1d36bcf5{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 18px;
  box-shadow: 0 12px 30px rgba(0,0,0,.24);
  transform: translateZ(0);
  animation: s2_wrap_drift 8.5s ease-in-out infinite;
}

.elementor-13507 .elementor-element.elementor-element-1d36bcf5 img{
  display: block;
  width: 100%;
  height: auto;
  backface-visibility: hidden;
  transform: translateZ(0);
  will-change: transform, filter;
  transition: transform .6s cubic-bezier(.22,.61,.36,1), filter .4s ease;
  filter: brightness(.98) contrast(1.03) saturate(1.03);
}

/* Overlay premium */
.elementor-13507 .elementor-element.elementor-element-1d36bcf5::after{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 52% 44%,
    rgba(0,0,0,0) 34%,
    rgba(0,0,0,.16) 72%,
    rgba(0,0,0,.30) 100%);
}

/* Hover desktop */
@media (hover: hover) and (pointer: fine){
  .elementor-13507 .elementor-element.elementor-element-1d36bcf5:hover img{
    transform: scale(1.05);
    filter: brightness(1.02) contrast(1.07) saturate(1.06);
  }
}

/* Móvil/touch */
@media (hover: none), (pointer: coarse){
  .elementor-13507 .elementor-element.elementor-element-1d36bcf5{
    border-radius: 14px;
    animation-duration: 10s;
  }
  .elementor-13507 .elementor-element.elementor-element-1d36bcf5:active img{
    transform: scale(1.02);
    filter: brightness(1.01) contrast(1.04);
  }
}

@media (max-width: 767px){
  .elementor-13507 .elementor-element.elementor-element-1d36bcf5{ box-shadow: 0 8px 20px rgba(0,0,0,.2); }
}

@keyframes s2_wrap_drift{
  0%,100% { transform: translateY(0) translateX(0); }
  50%     { transform: translateY(-4px) translateX(-1px); }
}

@media (prefers-reduced-motion: reduce){
  .elementor-13507 .elementor-element.elementor-element-1d36bcf5, .elementor-13507 .elementor-element.elementor-element-1d36bcf5 img{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}/* End custom CSS */



/* Start custom CSS for button, class: .elementor-element-b1a08b8 *//* ===== S1 BOTÓN (desktop + móvil) ===== */
.elementor-13507 .elementor-element.elementor-element-b1a08b8 .elementor-button{
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.18);
  background: linear-gradient(135deg, #E31B23 0%, #7f2d5d 100%);
  color: #fff;
  min-height: 52px;              /* mejor tap target móvil */
  padding: 14px 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;

  transition: transform .22s ease, filter .25s ease, box-shadow .3s ease;
  box-shadow: 0 10px 24px rgba(102,30,71,.28);
  animation: s1_btn_pulse 2.4s infinite;
}

/* Shine */
.elementor-13507 .elementor-element.elementor-element-b1a08b8 .elementor-button::before{
  content: "";
  position: absolute;
  top: -120%;
  left: -30%;
  width: 28%;
  height: 340%;
  background: rgba(255,255,255,.22);
  transform: translateX(-145%) skewX(-18deg);
  pointer-events: none;
}

/* Hover desktop */
@media (hover: hover) and (pointer: fine){
  .elementor-13507 .elementor-element.elementor-element-b1a08b8 .elementor-button:hover{
    transform: translateY(-2px) scale(1.04);
    filter: brightness(1.08);
  }
  .elementor-13507 .elementor-element.elementor-element-b1a08b8 .elementor-button:hover::before{
    animation: s1_btn_shine .85s ease forwards;
  }
}

/* Touch feedback */
@media (hover: none), (pointer: coarse){
  .elementor-13507 .elementor-element.elementor-element-b1a08b8 .elementor-button{
    animation-duration: 3.2s; /* menos invasivo en móvil */
  }
  .elementor-13507 .elementor-element.elementor-element-b1a08b8 .elementor-button:active{
    transform: scale(.98);
    filter: brightness(1.06);
  }
}

/* foco accesible */
.elementor-13507 .elementor-element.elementor-element-b1a08b8 .elementor-button:focus-visible{
  outline: 2px solid rgba(227, 27, 35, 1);
  outline-offset: 2px;
}

@keyframes s1_btn_pulse{
  0%   { transform: scale(.97); box-shadow: 0 0 0 0 rgba(227, 27, 35, 1); }
  70%  { transform: scale(1);   box-shadow: 0 0 0 14px rgba(227, 27, 35, 1); }
  100% { transform: scale(.97); box-shadow: 0 0 0 0 rgba(227, 27, 35, 1); }
}
@keyframes s1_btn_shine{
  0%   { transform: translateX(-145%) skewX(-18deg); }
  100% { transform: translateX(235%) skewX(-18deg); }
}

@media (prefers-reduced-motion: reduce){
  .elementor-13507 .elementor-element.elementor-element-b1a08b8 .elementor-button{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}/* End custom CSS */



/* Start custom CSS for image, class: .elementor-element-4fa069eb *//* ===== S2 IMAGEN (desktop + móvil) ===== */
.elementor-13507 .elementor-element.elementor-element-4fa069eb{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 18px;
  box-shadow: 0 12px 30px rgba(0,0,0,.24);
  transform: translateZ(0);
  animation: s2_wrap_drift 8.5s ease-in-out infinite;
}

.elementor-13507 .elementor-element.elementor-element-4fa069eb img{
  display: block;
  width: 100%;
  height: auto;
  backface-visibility: hidden;
  transform: translateZ(0);
  will-change: transform, filter;
  transition: transform .6s cubic-bezier(.22,.61,.36,1), filter .4s ease;
  filter: brightness(.98) contrast(1.03) saturate(1.03);
}

/* Overlay premium */
.elementor-13507 .elementor-element.elementor-element-4fa069eb::after{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 52% 44%,
    rgba(0,0,0,0) 34%,
    rgba(0,0,0,.16) 72%,
    rgba(0,0,0,.30) 100%);
}

/* Hover desktop */
@media (hover: hover) and (pointer: fine){
  .elementor-13507 .elementor-element.elementor-element-4fa069eb:hover img{
    transform: scale(1.05);
    filter: brightness(1.02) contrast(1.07) saturate(1.06);
  }
}

/* Móvil/touch */
@media (hover: none), (pointer: coarse){
  .elementor-13507 .elementor-element.elementor-element-4fa069eb{
    border-radius: 14px;
    animation-duration: 10s;
  }
  .elementor-13507 .elementor-element.elementor-element-4fa069eb:active img{
    transform: scale(1.02);
    filter: brightness(1.01) contrast(1.04);
  }
}

@media (max-width: 767px){
  .elementor-13507 .elementor-element.elementor-element-4fa069eb{ box-shadow: 0 8px 20px rgba(0,0,0,.2); }
}

@keyframes s2_wrap_drift{
  0%,100% { transform: translateY(0) translateX(0); }
  50%     { transform: translateY(-4px) translateX(-1px); }
}

@media (prefers-reduced-motion: reduce){
  .elementor-13507 .elementor-element.elementor-element-4fa069eb, .elementor-13507 .elementor-element.elementor-element-4fa069eb img{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}/* End custom CSS */



/* Start custom CSS for button, class: .elementor-element-432ae68 *//* ===== S1 BOTÓN (desktop + móvil) ===== */
.elementor-13507 .elementor-element.elementor-element-432ae68 .elementor-button{
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.18);
  background: linear-gradient(135deg, #E31B23 0%, #7f2d5d 100%);
  color: #fff;
  min-height: 52px;              /* mejor tap target móvil */
  padding: 14px 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;

  transition: transform .22s ease, filter .25s ease, box-shadow .3s ease;
  box-shadow: 0 10px 24px rgba(102,30,71,.28);
  animation: s1_btn_pulse 2.4s infinite;
}

/* Shine */
.elementor-13507 .elementor-element.elementor-element-432ae68 .elementor-button::before{
  content: "";
  position: absolute;
  top: -120%;
  left: -30%;
  width: 28%;
  height: 340%;
  background: rgba(255,255,255,.22);
  transform: translateX(-145%) skewX(-18deg);
  pointer-events: none;
}

/* Hover desktop */
@media (hover: hover) and (pointer: fine){
  .elementor-13507 .elementor-element.elementor-element-432ae68 .elementor-button:hover{
    transform: translateY(-2px) scale(1.04);
    filter: brightness(1.08);
  }
  .elementor-13507 .elementor-element.elementor-element-432ae68 .elementor-button:hover::before{
    animation: s1_btn_shine .85s ease forwards;
  }
}

/* Touch feedback */
@media (hover: none), (pointer: coarse){
  .elementor-13507 .elementor-element.elementor-element-432ae68 .elementor-button{
    animation-duration: 3.2s; /* menos invasivo en móvil */
  }
  .elementor-13507 .elementor-element.elementor-element-432ae68 .elementor-button:active{
    transform: scale(.98);
    filter: brightness(1.06);
  }
}

/* foco accesible */
.elementor-13507 .elementor-element.elementor-element-432ae68 .elementor-button:focus-visible{
  outline: 2px solid rgba(227, 27, 35, 1);
  outline-offset: 2px;
}

@keyframes s1_btn_pulse{
  0%   { transform: scale(.97); box-shadow: 0 0 0 0 rgba(227, 27, 35, 1); }
  70%  { transform: scale(1);   box-shadow: 0 0 0 14px rgba(227, 27, 35, 1); }
  100% { transform: scale(.97); box-shadow: 0 0 0 0 rgba(227, 27, 35, 1); }
}
@keyframes s1_btn_shine{
  0%   { transform: translateX(-145%) skewX(-18deg); }
  100% { transform: translateX(235%) skewX(-18deg); }
}

@media (prefers-reduced-motion: reduce){
  .elementor-13507 .elementor-element.elementor-element-432ae68 .elementor-button{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}/* End custom CSS */



/* Start custom CSS for image, class: .elementor-element-4ceea0fc *//* ===== S2 IMAGEN (desktop + móvil) ===== */
.elementor-13507 .elementor-element.elementor-element-4ceea0fc{
  position: relative;
  overflow: hidden;
  isolation: isolate;
  border-radius: 18px;
  box-shadow: 0 12px 30px rgba(0,0,0,.24);
  transform: translateZ(0);
  animation: s2_wrap_drift 8.5s ease-in-out infinite;
}

.elementor-13507 .elementor-element.elementor-element-4ceea0fc img{
  display: block;
  width: 100%;
  height: auto;
  backface-visibility: hidden;
  transform: translateZ(0);
  will-change: transform, filter;
  transition: transform .6s cubic-bezier(.22,.61,.36,1), filter .4s ease;
  filter: brightness(.98) contrast(1.03) saturate(1.03);
}

/* Overlay premium */
.elementor-13507 .elementor-element.elementor-element-4ceea0fc::after{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 52% 44%,
    rgba(0,0,0,0) 34%,
    rgba(0,0,0,.16) 72%,
    rgba(0,0,0,.30) 100%);
}

/* Hover desktop */
@media (hover: hover) and (pointer: fine){
  .elementor-13507 .elementor-element.elementor-element-4ceea0fc:hover img{
    transform: scale(1.05);
    filter: brightness(1.02) contrast(1.07) saturate(1.06);
  }
}

/* Móvil/touch */
@media (hover: none), (pointer: coarse){
  .elementor-13507 .elementor-element.elementor-element-4ceea0fc{
    border-radius: 14px;
    animation-duration: 10s;
  }
  .elementor-13507 .elementor-element.elementor-element-4ceea0fc:active img{
    transform: scale(1.02);
    filter: brightness(1.01) contrast(1.04);
  }
}

@media (max-width: 767px){
  .elementor-13507 .elementor-element.elementor-element-4ceea0fc{ box-shadow: 0 8px 20px rgba(0,0,0,.2); }
}

@keyframes s2_wrap_drift{
  0%,100% { transform: translateY(0) translateX(0); }
  50%     { transform: translateY(-4px) translateX(-1px); }
}

@media (prefers-reduced-motion: reduce){
  .elementor-13507 .elementor-element.elementor-element-4ceea0fc, .elementor-13507 .elementor-element.elementor-element-4ceea0fc img{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}/* End custom CSS */



/* Start custom CSS for button, class: .elementor-element-bad1e34 *//* ===== S1 BOTÓN (desktop + móvil) ===== */
.elementor-13507 .elementor-element.elementor-element-bad1e34 .elementor-button{
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.18);
  background: linear-gradient(135deg, #E31B23 0%, #7f2d5d 100%);
  color: #fff;
  min-height: 52px;              /* mejor tap target móvil */
  padding: 14px 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;

  transition: transform .22s ease, filter .25s ease, box-shadow .3s ease;
  box-shadow: 0 10px 24px rgba(102,30,71,.28);
  animation: s1_btn_pulse 2.4s infinite;
}

/* Shine */
.elementor-13507 .elementor-element.elementor-element-bad1e34 .elementor-button::before{
  content: "";
  position: absolute;
  top: -120%;
  left: -30%;
  width: 28%;
  height: 340%;
  background: rgba(255,255,255,.22);
  transform: translateX(-145%) skewX(-18deg);
  pointer-events: none;
}

/* Hover desktop */
@media (hover: hover) and (pointer: fine){
  .elementor-13507 .elementor-element.elementor-element-bad1e34 .elementor-button:hover{
    transform: translateY(-2px) scale(1.04);
    filter: brightness(1.08);
  }
  .elementor-13507 .elementor-element.elementor-element-bad1e34 .elementor-button:hover::before{
    animation: s1_btn_shine .85s ease forwards;
  }
}

/* Touch feedback */
@media (hover: none), (pointer: coarse){
  .elementor-13507 .elementor-element.elementor-element-bad1e34 .elementor-button{
    animation-duration: 3.2s; /* menos invasivo en móvil */
  }
  .elementor-13507 .elementor-element.elementor-element-bad1e34 .elementor-button:active{
    transform: scale(.98);
    filter: brightness(1.06);
  }
}

/* foco accesible */
.elementor-13507 .elementor-element.elementor-element-bad1e34 .elementor-button:focus-visible{
  outline: 2px solid rgba(227, 27, 35, 1);
  outline-offset: 2px;
}

@keyframes s1_btn_pulse{
  0%   { transform: scale(.97); box-shadow: 0 0 0 0 rgba(227, 27, 35, 1); }
  70%  { transform: scale(1);   box-shadow: 0 0 0 14px rgba(227, 27, 35, 1); }
  100% { transform: scale(.97); box-shadow: 0 0 0 0 rgba(227, 27, 35, 1); }
}
@keyframes s1_btn_shine{
  0%   { transform: translateX(-145%) skewX(-18deg); }
  100% { transform: translateX(235%) skewX(-18deg); }
}

@media (prefers-reduced-motion: reduce){
  .elementor-13507 .elementor-element.elementor-element-bad1e34 .elementor-button{
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}/* End custom CSS */











