/* ==========================================================================
   1. Contenedores generales de Swiper y blindaje
   ========================================================================== */
.cpt-loop-swiper,
.cpt-single-swiper {
    position: relative;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    padding-bottom: 40px !important;
    box-sizing: border-box !important;
}

.cpt-loop-swiper .swiper-wrapper,
.cpt-single-swiper .swiper-wrapper {
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.cpt-loop-swiper .swiper-slide,
.cpt-single-swiper .swiper-slide {
    height: auto !important;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* ==========================================================================
   2. CAJA CUADRADA HOMOGÉNEA (Container Lock)
   Obliga a que TODAS las imágenes midan exactamente lo mismo (Cuadradas)
   ========================================================================== */
.cpt-media-box {
    position: relative !important;
    width: 100% !important;
    aspect-ratio: 1 / 1 !important; /* Fuerza proporción cuadrada 1:1 */
    height: auto !important;
    margin: 0 0 15px 0 !important;
    overflow: hidden !important;
    border-radius: 8px !important;
    display: block !important;
    background-color: #f4f4f4;
}

/* ==========================================================================
   3. AJUSTE DE IMAGEN
   Cubre todo el recuadro cuadrado sin deformar la foto
   ========================================================================== */
.cpt-media-box img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important; /* Recorta la foto proporcionalmente */
    object-position: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    display: block !important;
}

/* ==========================================================================
   4. CANDADOS DE CONTENEDORES
   ========================================================================== */
.elementor-column .elementor-widget-wrap,
.e-con,
.e-con-inner {
    min-width: 0 !important;
}

.elementor-widget-cpt_loop_image {
    width: 100% !important;
    display: block !important;
}

.cpt-sub-item-box:hover {
    background: #e4e4e4 !important;
    transform: translateY(-2px);
}