.elementor-359 .elementor-element.elementor-element-2346a29{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-359 .elementor-element.elementor-element-09ac1d2{--display:flex;--border-radius:8px 8px 8px 8px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-359 .elementor-element.elementor-element-09ac1d2:hover{--border-radius:8px 8px 8px 8px;--border-top-left-radius:8px;--border-top-right-radius:8px;--border-bottom-right-radius:8px;--border-bottom-left-radius:8px;}.elementor-359 .elementor-element.elementor-element-09ac1d2, .elementor-359 .elementor-element.elementor-element-09ac1d2::before{--border-transition:0.3s;}.elementor-359 .elementor-element.elementor-element-55b3496 .jet-listing-dynamic-image{justify-content:flex-start;}.elementor-359 .elementor-element.elementor-element-55b3496 .jet-listing-dynamic-image__figure{align-items:flex-start;}.elementor-359 .elementor-element.elementor-element-55b3496 .jet-listing-dynamic-image a{display:flex;justify-content:flex-start;}.elementor-359 .elementor-element.elementor-element-55b3496 .jet-listing-dynamic-image img{border-radius:8px 8px 8px 8px;}.elementor-359 .elementor-element.elementor-element-55b3496 .jet-listing-dynamic-image__caption{text-align:left;}.elementor-359 .elementor-element.elementor-element-82d624a{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 10px;--row-gap:0px;--column-gap:10px;--padding-top:8px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-359 .elementor-element.elementor-element-bf1deda .elementor-button{background-color:#FBF9F9;font-family:"Work Sans", Sans-serif;font-size:23px;font-weight:normal;fill:var( --e-global-color-f4808bc );color:var( --e-global-color-f4808bc );border-radius:12px 12px 12px 12px;padding:12px 12px 12px 12px;}body:not(.rtl) .elementor-359 .elementor-element.elementor-element-bf1deda{right:6%;}body.rtl .elementor-359 .elementor-element.elementor-element-bf1deda{left:6%;}.elementor-359 .elementor-element.elementor-element-bf1deda{bottom:135%;z-index:20;}.elementor-359 .elementor-element.elementor-element-bf1deda .elementor-button:hover, .elementor-359 .elementor-element.elementor-element-bf1deda .elementor-button:focus{color:var( --e-global-color-accent );}.elementor-359 .elementor-element.elementor-element-bf1deda .elementor-button:hover svg, .elementor-359 .elementor-element.elementor-element-bf1deda .elementor-button:focus svg{fill:var( --e-global-color-accent );}.elementor-359 .elementor-element.elementor-element-1157500{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-359 .elementor-element.elementor-element-b028fff .elementor-heading-title{font-family:"Work Sans", Sans-serif;font-size:18px;font-weight:600;text-transform:uppercase;color:var( --e-global-color-e614194 );}.elementor-359 .elementor-element.elementor-element-aa96566{padding:3px 0px 0px 0px;}.elementor-359 .elementor-element.elementor-element-aa96566 .jet-listing-dynamic-field__content{color:var( --e-global-color-text );font-family:"Work Sans", Sans-serif;font-size:13px;font-weight:400;text-transform:uppercase;text-align:left;}.elementor-359 .elementor-element.elementor-element-aa96566 .jet-listing-dynamic-field .jet-listing-dynamic-field__inline-wrap{width:auto;}.elementor-359 .elementor-element.elementor-element-aa96566 .jet-listing-dynamic-field .jet-listing-dynamic-field__content{width:auto;}.elementor-359 .elementor-element.elementor-element-aa96566 .jet-listing-dynamic-field{justify-content:flex-start;}.elementor-359 .elementor-element.elementor-element-8d3c8a7{--display:flex;}.elementor-359 .elementor-element.elementor-element-ad9d47d .jet-listing-dynamic-field__content{color:var( --e-global-color-f4808bc );font-family:"Work Sans", Sans-serif;font-size:18px;font-weight:700;text-align:left;}.elementor-359 .elementor-element.elementor-element-ad9d47d .jet-listing-dynamic-field .jet-listing-dynamic-field__inline-wrap{width:auto;}.elementor-359 .elementor-element.elementor-element-ad9d47d .jet-listing-dynamic-field .jet-listing-dynamic-field__content{width:auto;}.elementor-359 .elementor-element.elementor-element-ad9d47d .jet-listing-dynamic-field{justify-content:flex-end;}.jet-listing-item.single-jet-engine.elementor-page-359 > .elementor{width:378px;margin-left:auto;margin-right:auto;}@media(min-width:768px){.elementor-359 .elementor-element.elementor-element-1157500{--width:60%;}.elementor-359 .elementor-element.elementor-element-8d3c8a7{--width:40%;}}@media(max-width:1366px){.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}@media(max-width:1024px){.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}body:not(.rtl) .elementor-359 .elementor-element.elementor-element-bf1deda{right:6%;}body.rtl .elementor-359 .elementor-element.elementor-element-bf1deda{left:6%;}.elementor-359 .elementor-element.elementor-element-bf1deda{bottom:135%;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}@media(max-width:767px){.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );}body:not(.rtl) .elementor-359 .elementor-element.elementor-element-bf1deda{right:13%;}body.rtl .elementor-359 .elementor-element.elementor-element-bf1deda{left:13%;}.elementor-359 .elementor-element.elementor-element-bf1deda{bottom:127%;}.elementor-359 .elementor-element.elementor-element-1157500{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-359 .elementor-element.elementor-element-1157500.e-con{--order:-99999 /* order start hack */;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-359 .elementor-element.elementor-element-8d3c8a7{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-359 .elementor-element.elementor-element-ad9d47d .jet-listing-dynamic-field__content{font-size:25px;}.elementor-359 .elementor-element.elementor-element-ad9d47d .jet-listing-dynamic-field{justify-content:center;}}/* Start custom CSS for jet-listing-dynamic-image, class: .elementor-element-55b3496 *//*
 * Component: Isolated Image Slow Zoom with Strict Clipping
 * Target: JetEngine Dynamic Image Widget (Apply CSS here)
 * Objective: Force border-radius clipping during hardware-accelerated transforms.
 */

/* 1. Establish strict clipping boundary and masking */
.elementor-359 .elementor-element.elementor-element-55b3496 {
    border-radius: 8px !important; /* Ajustar radio según los parámetros del diseño */
    overflow: hidden !important;
    position: relative !important;
    
    /* Enforce strict border masking in WebKit/Blink engines during scale */
    -webkit-mask-image: -webkit-radial-gradient(white, black);
    mask-image: radial-gradient(white, black);
    
    /* Hardware acceleration base */
    transform: translateZ(0);
}

/* 2. Configure the initial state of the image asset */
.elementor-359 .elementor-element.elementor-element-55b3496 img {
    transition: transform 1.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    will-change: transform;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

/* 3. Trigger spatial scaling ONLY when hovering the image widget */
.elementor-359 .elementor-element.elementor-element-55b3496:hover img {
    transform: scale(1.06) !important;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-bf1deda *//*
 * Component: Native SVG Stabilization
 * Target: Button Widget
 */
.elementor-359 .elementor-element.elementor-element-bf1deda .elementor-button-icon {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 24px !important;
    height: 24px !important;
}

.elementor-359 .elementor-element.elementor-element-bf1deda svg {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    stroke: currentColor !important; /* Hereda el color que le des en la pestaña Estilo */
}


/*
 * Component: Pure CSS Hover Tooltip (Isolated from Layout)
 * Target: Inner Button Element Only
 */

/* 1. Preparamos el ancla interna sin tocar el contenedor exterior */
.elementor-359 .elementor-element.elementor-element-bf1deda .elementor-button {
    overflow: visible !important;
    position: relative !important; 
}

/* 2. La caja del texto (Color #369494) */
.elementor-359 .elementor-element.elementor-element-bf1deda .elementor-button::before {
    content: "Add to Car"; 
    position: absolute;
    right: calc(100% + 12px); /* Se separa del borde del icono */
    top: 50%;
    
    background-color: #369494; 
    color: #ffffff;
    font-size: 12px;
    font-weight: 500;
    padding: 6px 12px;
    border-radius: 6px;
    white-space: nowrap; 
    box-shadow: 0 4px 12px rgba(54, 148, 148, 0.3); 
    
    /* Estado inicial */
    opacity: 0;
    visibility: hidden;
    transform: translateY(-50%) translateX(10px);
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    pointer-events: none; 
}

/* 3. El triángulo apuntando al botón */
.elementor-359 .elementor-element.elementor-element-bf1deda .elementor-button::after {
    content: "";
    position: absolute;
    right: calc(100% + 7px); /* Ubicación exacta de la flecha */
    top: 50%;
    
    border-width: 5px 0 5px 5px;
    border-style: solid;
    border-color: transparent transparent transparent #369494;
    
    /* Estado inicial */
    opacity: 0;
    visibility: hidden;
    transform: translateY(-50%) translateX(10px);
    transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    pointer-events: none;
}

/* 4. Animación exclusiva al hacer hover en el botón interno */
.elementor-359 .elementor-element.elementor-element-bf1deda .elementor-button:hover::before,
.elementor-359 .elementor-element.elementor-element-bf1deda .elementor-button:hover::after {
    opacity: 1;
    visibility: visible;
    transform: translateY(-50%) translateX(0); 
}/* End custom CSS */
/* Start custom CSS for jet-listing-dynamic-field, class: .elementor-element-aa96566 *//*
 * Component: Dynamic Category Link Override
 * Target: JetEngine Dynamic Field Widget (Categories)
 * Objective: Override global theme link colors.
 */

/* 1. Base state for the category link */
.elementor-359 .elementor-element.elementor-element-aa96566 a {
    color: #7A7A7A !important;
    text-decoration: none !important;
    transition: color 0.3s ease !important;
}

/* 2. Hover state for user interaction feedback */
.elementor-359 .elementor-element.elementor-element-aa96566 a:hover {
    color: #333333 !important; /* Gris oscuro / casi negro al pasar el mouse */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2346a29 *//*
 * Component: Top-Down Hover Reveal Logic
 * Target: Master Parent Container -> Child Button
 * Objective: Control absolute button opacity via parent hover.
 */

/* 1. Estado inicial: Botón invisible y desplazado hacia abajo */
.elementor-359 .elementor-element.elementor-element-2346a29 .wp-cart-action-btn {
    opacity: 0;
    transform: scale(0.8) translateY(10px);
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    pointer-events: none; /* Deshabilita la interacción para no interferir con la imagen */
}

/* 2. Estado activo: El cursor entra a la tarjeta y el botón aparece */
.elementor-359 .elementor-element.elementor-element-2346a29:hover .wp-cart-action-btn {
    opacity: 1;
    transform: scale(1) translateY(0);
    pointer-events: auto; /* Reactiva el clic del botón */
}/* End custom CSS */