.elementor-5054 .elementor-element.elementor-element-94172b2{--spacer-size:6px;}.elementor-5054 .elementor-element.elementor-element-1864190{--spacer-size:12px;}.elementor-5054 .elementor-element.elementor-element-0ea41ae .cart button, .elementor-5054 .elementor-element.elementor-element-0ea41ae .cart .button{transition:all 0.2s;}.elementor-5054 .elementor-element.elementor-element-0ea41ae .quantity .qty{transition:all 0.2s;}.elementor-5054 .elementor-element.elementor-element-52dd8ff.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-5054 .elementor-element.elementor-element-52dd8ff.elementor-wc-products ul.products li.product span.onsale{display:block;}@media(max-width:1024px){.elementor-5054 .elementor-element.elementor-element-52dd8ff.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}@media(max-width:767px){.elementor-5054 .elementor-element.elementor-element-52dd8ff.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}}/* Start custom CSS for woocommerce-product-images, class: .elementor-element-084330d *//* ============================================================
   TEOFILMS — GALERÍA PRODUCTO FINAL
   - Cambio de imágenes funcional
   - Sin zoom molesto
   - Imagen principal más pequeña
   - Miniaturas premium
   - Responsive
============================================================ */

.elementor-5054 .elementor-element.elementor-element-084330d{
    width:100%;
    min-width:0;
    box-sizing:border-box;
}


/* ============================================================
   GALERÍA GENERAL
============================================================ */

.elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery{
    width:100% !important;
    max-width:760px !important;

    margin:0 auto !important;
    padding:16px !important;

    background:#ffffff !important;

    border:1px solid #ececec !important;
    border-radius:16px !important;

    box-shadow:
        0 10px 30px rgba(0,0,0,.045) !important;

    box-sizing:border-box !important;
}


/* ============================================================
   IMPORTANTE:
   NO MODIFICAR EL TRANSFORM DEL WRAPPER
   WooCommerce lo necesita para cambiar de imagen
============================================================ */

.elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__wrapper{
    margin:0 !important;
}


/* ============================================================
   VIEWPORT PRINCIPAL
============================================================ */

.elementor-5054 .elementor-element.elementor-element-084330d .flex-viewport{
    width:100% !important;

    background:#ffffff !important;

    border:1px solid #eeeeee !important;
    border-radius:13px !important;

    overflow:hidden !important;
}


/* ============================================================
   CADA SLIDE
   No tocamos width, float ni transform
============================================================ */

.elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image{
    margin:0 !important;

    background:#ffffff !important;
}


/* ============================================================
   ENLACE INTERNO
============================================================ */

.elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image > a{
    min-height:540px;

    display:flex !important;

    align-items:center !important;
    justify-content:center !important;

    padding:30px !important;

    text-align:center !important;

    box-sizing:border-box !important;
}


/* ============================================================
   IMAGEN PRINCIPAL
============================================================ */

.elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image img:not(.zoomImg){
    display:block !important;

    width:auto !important;
    height:auto !important;

    max-width:520px !important;
    max-height:500px !important;

    margin:0 auto !important;

    object-fit:contain !important;
    object-position:center center !important;

    transition:none !important;
    animation:none !important;
}


/* ============================================================
   SIN MOVIMIENTO / ZOOM AL PASAR EL MOUSE
============================================================ */

/* imagen que genera WooCommerce para zoom */
.elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image .zoomImg{
    display:none !important;
}


/* evita escalados visuales */
.elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image:hover img:not(.zoomImg){
    transform:none !important;
}


/* ============================================================
   LUPA
   La mantenemos pequeña y elegante
============================================================ */

.elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__trigger{
    top:18px !important;
    right:18px !important;

    width:38px !important;
    height:38px !important;

    display:flex !important;

    align-items:center !important;
    justify-content:center !important;

    background:#ffffff !important;

    border:1px solid #e7e7e7 !important;
    border-radius:50% !important;

    box-shadow:
        0 5px 16px rgba(0,0,0,.06) !important;

    z-index:10 !important;
}


/* ============================================================
   MINIATURAS
============================================================ */

.elementor-5054 .elementor-element.elementor-element-084330d .flex-control-thumbs{
    display:grid !important;

    grid-template-columns:
        repeat(4,minmax(0,1fr)) !important;

    gap:12px !important;

    width:100% !important;

    margin:14px 0 0 !important;
    padding:0 !important;

    list-style:none !important;

    box-sizing:border-box !important;
}


/* ============================================================
   ITEM MINIATURA
============================================================ */

.elementor-5054 .elementor-element.elementor-element-084330d .flex-control-thumbs li{
    width:auto !important;

    margin:0 !important;
    padding:0 !important;

    float:none !important;

    overflow:visible !important;
}


/* ============================================================
   FOTO MINIATURA
============================================================ */

.elementor-5054 .elementor-element.elementor-element-084330d .flex-control-thumbs li img{
    display:block !important;

    width:100% !important;
    height:110px !important;

    margin:0 !important;
    padding:8px !important;

    object-fit:contain !important;
    object-position:center center !important;

    background:#ffffff !important;

    border:1px solid #e4e4e4 !important;
    border-radius:10px !important;

    opacity:1 !important;

    cursor:pointer !important;

    box-shadow:
        0 4px 12px rgba(0,0,0,.025) !important;

    transition:
        border-color .2s ease,
        box-shadow .2s ease,
        background .2s ease !important;
}


/* ============================================================
   HOVER MINIATURA
============================================================ */

.elementor-5054 .elementor-element.elementor-element-084330d .flex-control-thumbs li img:hover{
    border-color:#bdbdbd !important;

    box-shadow:
        0 7px 18px rgba(0,0,0,.07) !important;
}


/* ============================================================
   MINIATURA ACTIVA
============================================================ */

.elementor-5054 .elementor-element.elementor-element-084330d .flex-control-thumbs li img.flex-active{
    border:2px solid #E30613 !important;

    background:#ffffff !important;

    box-shadow:
        0 7px 20px rgba(227,6,19,.14) !important;
}


/* ============================================================
   NOTEBOOK
============================================================ */

@media (max-width:1280px){

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery{
        max-width:700px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image > a{
        min-height:480px;
        padding:25px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image img:not(.zoomImg){
        max-width:450px !important;
        max-height:440px !important;
    }

}


/* ============================================================
   TABLET
============================================================ */

@media (max-width:1024px){

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery{
        max-width:620px !important;

        padding:13px !important;

        border-radius:14px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image > a{
        min-height:420px;

        padding:22px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image img:not(.zoomImg){
        max-width:390px !important;
        max-height:380px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .flex-control-thumbs{
        gap:9px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .flex-control-thumbs li img{
        height:92px !important;

        padding:6px !important;
    }

}


/* ============================================================
   TABLET VERTICAL
============================================================ */

@media (max-width:820px){

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery{
        max-width:560px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image > a{
        min-height:380px;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image img:not(.zoomImg){
        max-width:350px !important;
        max-height:340px !important;
    }

}


/* ============================================================
   MOBILE
============================================================ */

@media (max-width:767px){

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery{
        width:100% !important;
        max-width:100% !important;

        padding:8px !important;

        border-radius:11px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .flex-viewport{
        border-radius:9px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image > a{
        min-height:320px;

        padding:15px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image img:not(.zoomImg){
        max-width:290px !important;
        max-height:290px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__trigger{
        top:10px !important;
        right:10px !important;

        width:34px !important;
        height:34px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .flex-control-thumbs{
        grid-template-columns:
            repeat(4,minmax(0,1fr)) !important;

        gap:6px !important;

        margin-top:8px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .flex-control-thumbs li img{
        height:70px !important;

        padding:4px !important;

        border-radius:7px !important;
    }

}


/* ============================================================
   MOBILE PEQUEÑO
============================================================ */

@media (max-width:430px){

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image > a{
        min-height:280px;

        padding:12px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image img:not(.zoomImg){
        max-width:250px !important;
        max-height:250px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .flex-control-thumbs{
        gap:5px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .flex-control-thumbs li img{
        height:60px !important;

        padding:3px !important;
    }

}


/* ============================================================
   MOBILE MUY PEQUEÑO
============================================================ */

@media (max-width:360px){

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image > a{
        min-height:250px;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .woocommerce-product-gallery__image img:not(.zoomImg){
        max-width:220px !important;
        max-height:220px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-084330d .flex-control-thumbs li img{
        height:54px !important;
    }

}/* End custom CSS */
/* Start custom CSS for woocommerce-product-title, class: .elementor-element-8566d78 *//* =========================================
   TÍTULO PRODUCTO · TEOFILMS COMPACTO
   ========================================= */

.elementor-5054 .elementor-element.elementor-element-8566d78{
    position: relative;

    margin: 0 0 10px 0 !important;
    padding: 2px 0 2px 14px !important;

    color: #111111;

    font-size: 36px;
    line-height: 1.12;

    font-weight: 700;

    letter-spacing: -0.7px;

    text-transform: none;
}


/* ACENTO ROJO LATERAL */
.elementor-5054 .elementor-element.elementor-element-8566d78::before{
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 4px;
    height: 60%;

    background: #d2232a;

    border-radius: 10px;

    transform: translateY(-50%);
}


/* TABLET */
@media (max-width:1024px){

    .elementor-5054 .elementor-element.elementor-element-8566d78{
        font-size: 32px;
        margin-bottom: 8px !important;
        padding-left: 12px !important;
    }

}


/* MOBILE */
@media (max-width:767px){

    .elementor-5054 .elementor-element.elementor-element-8566d78{
        font-size: 26px;
        line-height: 1.15;

        margin-bottom: 7px !important;
        padding-left: 10px !important;

        letter-spacing: -0.4px;
    }

    .elementor-5054 .elementor-element.elementor-element-8566d78::before{
        width: 3px;
        height: 55%;
    }

}/* End custom CSS */
/* Start custom CSS for woocommerce-product-price, class: .elementor-element-60469fb *//* =========================================================
   TEOFILMS · PRECIO PREMIUM COMPACTO
   Negro + Rojo + Blanco
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-60469fb{
    position: relative;
    width: 100%;
    overflow: hidden;

    margin: 4px 0 12px !important;
    padding: 12px 16px !important;

    background:
        linear-gradient(
            135deg,
            #0f0f0f 0%,
            #151515 100%
        ) !important;

    border: 1px solid rgba(255,255,255,.06) !important;
    border-left: 4px solid #d2232a !important;

    border-radius: 5px !important;

    box-shadow:
        0 5px 14px rgba(0,0,0,.10) !important;

    transition:
        border-color .2s ease,
        box-shadow .2s ease;
}


/* =========================================================
   DETALLE ROJO SUPERIOR
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-60469fb::before{
    content: "";

    position: absolute;

    top: 0;
    right: 0;

    width: 48px;
    height: 2px;

    background: #d2232a;

    pointer-events: none;
}


/* SIN DECORACIÓN INFERIOR */
.elementor-5054 .elementor-element.elementor-element-60469fb::after{
    content: none !important;
    display: none !important;
}


/* =========================================================
   CONTENEDOR PRECIO
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-60469fb .price{
    position: relative;
    z-index: 2;

    display: flex !important;
    align-items: baseline !important;
    flex-wrap: wrap !important;

    gap: 4px 8px !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #ffffff !important;

    font-size: 29px !important;
    line-height: 1 !important;

    font-weight: 750 !important;

    letter-spacing: -.6px !important;
}


/* =========================================================
   PRECIO NORMAL
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-60469fb .price > .woocommerce-Price-amount,
.elementor-5054 .elementor-element.elementor-element-60469fb .price > span,
.elementor-5054 .elementor-element.elementor-element-60469fb .woocommerce-Price-amount,
.elementor-5054 .elementor-element.elementor-element-60469fb .woocommerce-Price-amount bdi{
    color: #ffffff !important;
    font-weight: 750 !important;
}


/* SÍMBOLO $ */
.elementor-5054 .elementor-element.elementor-element-60469fb .woocommerce-Price-currencySymbol{
    color: #ffffff !important;

    font-size: .78em !important;

    font-weight: 700 !important;
}


/* =========================================================
   PRECIO ANTERIOR
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-60469fb del{
    color: #7e7e7e !important;

    font-size: 15px !important;
    line-height: 1 !important;

    font-weight: 500 !important;

    opacity: 1 !important;

    text-decoration-line: line-through !important;
    text-decoration-color: #d2232a !important;
    text-decoration-thickness: 1.5px !important;
}


.elementor-5054 .elementor-element.elementor-element-60469fb del .woocommerce-Price-amount,
.elementor-5054 .elementor-element.elementor-element-60469fb del .woocommerce-Price-amount bdi,
.elementor-5054 .elementor-element.elementor-element-60469fb del .woocommerce-Price-currencySymbol{
    color: #7e7e7e !important;
    font-weight: 500 !important;
}


/* =========================================================
   PRECIO OFERTA
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-60469fb ins{
    display: inline-flex !important;
    align-items: baseline !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    text-decoration: none !important;

    color: #ffffff !important;

    font-size: 29px !important;
    line-height: 1 !important;

    font-weight: 750 !important;

    letter-spacing: -.6px !important;
}


.elementor-5054 .elementor-element.elementor-element-60469fb ins .woocommerce-Price-amount,
.elementor-5054 .elementor-element.elementor-element-60469fb ins .woocommerce-Price-amount bdi,
.elementor-5054 .elementor-element.elementor-element-60469fb ins .woocommerce-Price-currencySymbol{
    color: #ffffff !important;
    font-weight: 750 !important;
}


/* =========================================================
   + IVA / TEXTO EXTRA
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-60469fb .price{
    color: #ffffff !important;
}


/* =========================================================
   HOVER DESKTOP
   ========================================================= */

@media (min-width:1025px){

    .elementor-5054 .elementor-element.elementor-element-60469fb:hover{
        border-left-color: #ef2d35 !important;

        box-shadow:
            0 7px 18px rgba(0,0,0,.14) !important;
    }

}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width:1024px){

    .elementor-5054 .elementor-element.elementor-element-60469fb{
        margin: 4px 0 10px !important;
        padding: 11px 14px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-60469fb .price,
    .elementor-5054 .elementor-element.elementor-element-60469fb ins{
        font-size: 27px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-60469fb del{
        font-size: 14px !important;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width:767px){

    .elementor-5054 .elementor-element.elementor-element-60469fb{
        margin: 3px 0 9px !important;

        padding: 10px 12px !important;

        border-left-width: 3px !important;

        border-radius: 4px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-60469fb .price{
        gap: 4px 7px !important;

        font-size: 24px !important;

        letter-spacing: -.35px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-60469fb ins{
        font-size: 24px !important;

        letter-spacing: -.35px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-60469fb del{
        font-size: 13px !important;
    }

}/* End custom CSS */
/* Start custom CSS for woocommerce-product-short-description, class: .elementor-element-e21695b *//* =========================================================
   TEOFILMS · DESCRIPCIÓN DE PRODUCTO PRO
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-e21695b{
    position: relative;

    margin: 14px 0 0 !important;
    padding: 24px 26px !important;

    background: #ffffff;

    border: 1px solid #e8e8e8;
    border-radius: 7px;

    color: #424242;

    font-size: 16px;
    line-height: 1.75;

    box-shadow: 0 5px 18px rgba(0,0,0,.04);
}


/* =========================================================
   DETALLE SUPERIOR ROJO
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-e21695b::before{
    content: "";

    position: absolute;

    top: -1px;
    left: 26px;

    width: 60px;
    height: 3px;

    background: #d2232a;

    border-radius: 0 0 4px 4px;
}


/* =========================================================
   PÁRRAFOS
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-e21695b p{
    margin: 0 0 14px !important;

    color: #4b4b4b;

    font-size: 16px;
    line-height: 1.75;
}

.elementor-5054 .elementor-element.elementor-element-e21695b p:last-child{
    margin-bottom: 0 !important;
}


/* =========================================================
   TÍTULOS
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-e21695b h2,
.elementor-5054 .elementor-element.elementor-element-e21695b h3,
.elementor-5054 .elementor-element.elementor-element-e21695b h4{
    color: #111111;

    font-weight: 700;

    line-height: 1.25;

    letter-spacing: -.3px;

    margin-top: 24px;
    margin-bottom: 10px;
}


/* H2 */
.elementor-5054 .elementor-element.elementor-element-e21695b h2{
    font-size: 25px;

    padding-left: 12px;

    border-left: 4px solid #d2232a;
}


/* H3 */
.elementor-5054 .elementor-element.elementor-element-e21695b h3{
    font-size: 21px;
}


/* H4 */
.elementor-5054 .elementor-element.elementor-element-e21695b h4{
    font-size: 18px;
}


/* PRIMER TÍTULO SIN ESPACIO EXTRA */
.elementor-5054 .elementor-element.elementor-element-e21695b h2:first-child,
.elementor-5054 .elementor-element.elementor-element-e21695b h3:first-child,
.elementor-5054 .elementor-element.elementor-element-e21695b h4:first-child{
    margin-top: 0;
}


/* =========================================================
   TEXTO DESTACADO
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-e21695b strong,
.elementor-5054 .elementor-element.elementor-element-e21695b b{
    color: #161616;

    font-weight: 700;
}


/* =========================================================
   LISTAS
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-e21695b ul,
.elementor-5054 .elementor-element.elementor-element-e21695b ol{
    margin: 12px 0 18px !important;

    padding-left: 22px !important;
}


.elementor-5054 .elementor-element.elementor-element-e21695b li{
    position: relative;

    margin-bottom: 8px;

    color: #444;

    line-height: 1.6;
}


/* VIÑETAS ROJAS */
.elementor-5054 .elementor-element.elementor-element-e21695b ul li::marker{
    color: #d2232a;

    font-size: .9em;
}


/* =========================================================
   LINKS
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-e21695b a{
    color: #d2232a;

    font-weight: 600;

    text-decoration: none;

    transition: opacity .2s ease;
}

.elementor-5054 .elementor-element.elementor-element-e21695b a:hover{
    opacity: .75;
}


/* =========================================================
   SEPARADORES
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-e21695b hr{
    border: 0;

    height: 1px;

    background: #e8e8e8;

    margin: 24px 0;
}


/* =========================================================
   TABLAS / ESPECIFICACIONES
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-e21695b table{
    width: 100%;

    margin: 18px 0;

    border-collapse: collapse;

    border: 1px solid #e3e3e3;

    font-size: 14px;
}


.elementor-5054 .elementor-element.elementor-element-e21695b table th{
    padding: 11px 14px;

    background: #111111;

    color: #ffffff;

    font-weight: 600;

    text-align: left;

    border: 1px solid #222;
}


.elementor-5054 .elementor-element.elementor-element-e21695b table td{
    padding: 11px 14px;

    color: #444;

    background: #ffffff;

    border: 1px solid #e5e5e5;
}


.elementor-5054 .elementor-element.elementor-element-e21695b table tr:nth-child(even) td{
    background: #f8f8f8;
}


/* =========================================================
   IMÁGENES
   ========================================================= */

.elementor-5054 .elementor-element.elementor-element-e21695b img{
    max-width: 100%;
    height: auto;

    border-radius: 6px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width:1024px){

    .elementor-5054 .elementor-element.elementor-element-e21695b{
        padding: 21px 22px !important;

        font-size: 15.5px;
    }

    .elementor-5054 .elementor-element.elementor-element-e21695b p{
        font-size: 15.5px;
    }

    .elementor-5054 .elementor-element.elementor-element-e21695b h2{
        font-size: 23px;
    }

    .elementor-5054 .elementor-element.elementor-element-e21695b h3{
        font-size: 20px;
    }

    .elementor-5054 .elementor-element.elementor-element-e21695b::before{
        left: 22px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width:767px){

    .elementor-5054 .elementor-element.elementor-element-e21695b{
        margin-top: 10px !important;

        padding: 18px 16px !important;

        border-radius: 5px;

        font-size: 15px;
        line-height: 1.65;
    }

    .elementor-5054 .elementor-element.elementor-element-e21695b::before{
        left: 16px;

        width: 45px;
    }

    .elementor-5054 .elementor-element.elementor-element-e21695b p{
        font-size: 15px;

        line-height: 1.65;

        margin-bottom: 12px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-e21695b h2{
        font-size: 21px;

        margin-top: 20px;

        padding-left: 10px;

        border-left-width: 3px;
    }

    .elementor-5054 .elementor-element.elementor-element-e21695b h3{
        font-size: 19px;
    }

    .elementor-5054 .elementor-element.elementor-element-e21695b h4{
        font-size: 17px;
    }

    .elementor-5054 .elementor-element.elementor-element-e21695b ul,
    .elementor-5054 .elementor-element.elementor-element-e21695b ol{
        padding-left: 19px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-e21695b table{
        display: block;

        overflow-x: auto;

        white-space: nowrap;
    }

}/* End custom CSS */
/* Start custom CSS for woocommerce-product-add-to-cart, class: .elementor-element-0ea41ae *//* ============================================================
   TEOFILMS - PRODUCTO VARIABLE PREMIUM
   WooCommerce + Elementor + Variation Swatches
   Desktop + Tablet + Mobile
   ============================================================ */


/* ============================================================
   1. CONTENEDOR GENERAL
   ============================================================ */

body.single-product form.variations_form {
    width: 100% !important;
    margin: 20px 0 0 !important;
    padding: 22px !important;

    background: #ffffff !important;

    border: 1px solid #e7e7e7 !important;
    border-radius: 14px !important;

    box-shadow:
        0 8px 30px rgba(0,0,0,0.055) !important;
}


/* ============================================================
   2. RESET TABLA WOOCOMMERCE
   ============================================================ */

body.single-product form.variations_form table.variations {
    display: block !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-spacing: 0 !important;
    border-collapse: collapse !important;

    background: transparent !important;
}


body.single-product form.variations_form table.variations tbody {
    display: flex !important;
    flex-direction: column !important;

    width: 100% !important;

    gap: 20px !important;
}


body.single-product form.variations_form table.variations tr {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;

    background: transparent !important;
}


body.single-product form.variations_form table.variations th,
body.single-product form.variations_form table.variations td {
    display: block !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;

    background: transparent !important;
}


/* ============================================================
   3. TITULOS
   MEDIDA DE CORTE / TONALIDAD
   ============================================================ */

body.single-product form.variations_form table.variations th.label {
    margin: 0 0 10px !important;
}


body.single-product form.variations_form table.variations th.label label {
    display: block !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #161616 !important;

    font-size: 12px !important;
    line-height: 1.25 !important;

    font-weight: 800 !important;

    text-transform: uppercase !important;

    letter-spacing: .55px !important;
}


/* ============================================================
   4. CONTENEDOR DE CADA GRUPO
   ============================================================ */

body.single-product form.variations_form td.value {
    width: 100% !important;
}


/* ============================================================
   5. WRAPPER DE BOTONES
   ============================================================ */

body.single-product
.woo-variation-swatches
.variable-items-wrapper,

body.single-product
ul.variable-items-wrapper,

body.single-product
.variable-items-wrapper {

    display: flex !important;

    flex-direction: row !important;
    flex-wrap: wrap !important;

    align-items: center !important;

    gap: 9px !important;

    width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
}


/* ============================================================
   6. BOTONES DE VARIACIONES
   ============================================================ */

body.single-product
.woo-variation-swatches
.variable-items-wrapper
.variable-item,

body.single-product
.woo-variation-swatches
.variable-items-wrapper
.variable-item.button-variable-item,

body.single-product
ul.variable-items-wrapper
li.variable-item {

    display: inline-flex !important;

    align-items: center !important;
    justify-content: center !important;

    flex: 0 0 auto !important;

    width: auto !important;

    min-width: 58px !important;
    height: 40px !important;

    margin: 0 !important;
    padding: 0 16px !important;

    background: #c9252d !important;

    color: #ffffff !important;

    border: 1px solid #c9252d !important;
    border-radius: 8px !important;

    font-size: 12px !important;
    line-height: 1 !important;

    font-weight: 700 !important;

    box-shadow:
        0 5px 12px rgba(201,37,45,.17) !important;

    cursor: pointer !important;

    outline: none !important;

    transition:
        background-color .22s ease,
        border-color .22s ease,
        color .22s ease,
        transform .22s ease,
        box-shadow .22s ease !important;
}


/* ============================================================
   7. TEXTO INTERIOR DEL BOTON
   MUY IMPORTANTE PARA EL PLUGIN
   ============================================================ */

body.single-product
.variable-item
.variable-item-span,

body.single-product
.variable-item
.variable-item-span-button,

body.single-product
.button-variable-item
.variable-item-span,

body.single-product
.button-variable-item
.variable-item-span-button {

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    height: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    color: #ffffff !important;

    border: 0 !important;

    font-size: inherit !important;
    line-height: 1 !important;

    font-weight: 700 !important;

    box-shadow: none !important;
}


/* ============================================================
   8. HOVER
   ============================================================ */

body.single-product
.woo-variation-swatches
.variable-items-wrapper
.variable-item:hover,

body.single-product
.woo-variation-swatches
.variable-items-wrapper
.variable-item.button-variable-item:hover {

    background: #a91d24 !important;

    border-color: #a91d24 !important;

    color: #ffffff !important;

    transform: translateY(-2px) !important;

    box-shadow:
        0 8px 18px rgba(201,37,45,.26) !important;
}


/* TEXTO HOVER */

body.single-product
.variable-item:hover
.variable-item-span,

body.single-product
.variable-item:hover
.variable-item-span-button {

    color: #ffffff !important;
}


/* ============================================================
   9. BOTON SELECCIONADO
   NEGRO PREMIUM
   ============================================================ */

body.single-product
.woo-variation-swatches
.variable-items-wrapper
.variable-item.selected,

body.single-product
.woo-variation-swatches
.variable-items-wrapper
.variable-item.button-variable-item.selected,

body.single-product
.variable-items-wrapper
.variable-item[aria-checked="true"] {

    background: #151515 !important;

    color: #ffffff !important;

    border-color: #151515 !important;

    transform: translateY(-1px) !important;

    box-shadow:
        0 7px 18px rgba(0,0,0,.22) !important;
}


/* TEXTO DEL SELECCIONADO */

body.single-product
.variable-item.selected
.variable-item-span,

body.single-product
.variable-item.selected
.variable-item-span-button,

body.single-product
.variable-item[aria-checked="true"]
.variable-item-span,

body.single-product
.variable-item[aria-checked="true"]
.variable-item-span-button {

    color: #ffffff !important;

    background: transparent !important;
}


/* ============================================================
   10. BOTONES MEDIDA DE CORTE
   ============================================================ */

body.single-product
.variable-items-wrapper[data-attribute_name*="medida"]
.variable-item,

body.single-product
.variable-items-wrapper[data-attribute_name*="corte"]
.variable-item {

    min-width: 110px !important;
}


/* ============================================================
   11. TRANSPARENTE
   ============================================================ */

body.single-product
.variable-item[data-value="transparente"],

body.single-product
.variable-item[data-value*="transparente"] {

    min-width: 110px !important;
}


/* ============================================================
   12. OPCIONES NO DISPONIBLES
   ============================================================ */

body.single-product
.variable-item.disabled,

body.single-product
.variable-item.out-of-stock {

    opacity: .35 !important;

    pointer-events: none !important;

    cursor: not-allowed !important;
}


body.single-product
.variable-item.disabled
.variable-item-span,

body.single-product
.variable-item.disabled
.variable-item-span-button {

    text-decoration: line-through !important;
}


/* ============================================================
   13. LIMPIAR
   ============================================================ */

body.single-product .reset_variations {

    display: inline-flex !important;

    align-items: center !important;

    margin: 11px 0 0 !important;
    padding: 0 !important;

    color: #c9252d !important;

    font-size: 10px !important;
    line-height: 1 !important;

    font-weight: 800 !important;

    text-transform: uppercase !important;

    letter-spacing: .45px !important;

    text-decoration: none !important;
}


body.single-product .reset_variations:hover {

    color: #98191f !important;

    text-decoration: underline !important;
}


/* ============================================================
   14. SEPARADOR COMPRA
   ============================================================ */

body.single-product .single_variation_wrap {

    width: 100% !important;

    margin-top: 20px !important;

    padding-top: 18px !important;

    border-top: 1px solid #ededed !important;
}


/* ============================================================
   15. PRECIO DE VARIACION
   ============================================================ */

body.single-product .woocommerce-variation-price {

    margin: 0 0 14px !important;
}


body.single-product
.woocommerce-variation-price
.price {

    color: #151515 !important;

    font-size: 24px !important;
    line-height: 1.2 !important;

    font-weight: 800 !important;
}


/* ============================================================
   16. STOCK
   ============================================================ */

body.single-product
.woocommerce-variation-availability {

    margin: 0 0 12px !important;
}


body.single-product
.woocommerce-variation-availability p,

body.single-product .stock {

    margin: 0 !important;

    color: #29823d !important;

    font-size: 12px !important;

    font-weight: 700 !important;
}


/* ============================================================
   17. CANTIDAD + CARRITO
   ============================================================ */

body.single-product
.woocommerce-variation-add-to-cart,

body.single-product
.woocommerce-variation-add-to-cart-enabled {

    display: flex !important;

    flex-direction: row !important;

    align-items: center !important;

    gap: 11px !important;

    width: 100% !important;

    margin: 0 !important;
}


/* ============================================================
   18. CANTIDAD
   ============================================================ */

body.single-product .quantity {

    margin: 0 !important;
}


body.single-product .quantity .qty {

    width: 70px !important;
    height: 46px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;

    color: #151515 !important;

    border: 1px solid #d9d9d9 !important;

    border-radius: 8px !important;

    text-align: center !important;

    font-size: 15px !important;

    font-weight: 800 !important;

    outline: none !important;

    box-shadow: none !important;

    transition:
        border-color .2s ease,
        box-shadow .2s ease !important;
}


body.single-product .quantity .qty:focus {

    border-color: #c9252d !important;

    box-shadow:
        0 0 0 3px rgba(201,37,45,.10) !important;
}


/* ============================================================
   19. BOTON AÑADIR AL CARRITO
   ============================================================ */

body.single-product
.single_add_to_cart_button,

body.single-product
button.single_add_to_cart_button,

body.single-product
.elementor-widget-woocommerce-product-add-to-cart
.single_add_to_cart_button {

    display: inline-flex !important;

    align-items: center !important;
    justify-content: center !important;

    min-width: 180px !important;
    height: 46px !important;

    margin: 0 !important;

    padding: 0 25px !important;

    background: #c9252d !important;

    color: #ffffff !important;

    border: 0 !important;

    border-radius: 8px !important;

    font-size: 12px !important;
    line-height: 1 !important;

    font-weight: 800 !important;

    text-transform: uppercase !important;

    letter-spacing: .35px !important;

    box-shadow:
        0 7px 18px rgba(201,37,45,.22) !important;

    cursor: pointer !important;

    transition:
        background-color .2s ease,
        transform .2s ease,
        box-shadow .2s ease !important;
}


body.single-product
.single_add_to_cart_button:hover,

body.single-product
button.single_add_to_cart_button:hover {

    background: #a91d24 !important;

    color: #ffffff !important;

    transform: translateY(-1px) !important;

    box-shadow:
        0 10px 23px rgba(201,37,45,.30) !important;
}


/* BOTON DESACTIVADO */

body.single-product
.single_add_to_cart_button.disabled,

body.single-product
.single_add_to_cart_button:disabled {

    opacity: .45 !important;

    cursor: not-allowed !important;

    transform: none !important;

    box-shadow: none !important;
}


/* ============================================================
   20. ELEMENTOR FIX
   ============================================================ */

body.single-product
.elementor-widget-woocommerce-product-add-to-cart,

body.single-product
.elementor-widget-woocommerce-product-add-to-cart
.elementor-widget-container {

    width: 100% !important;
}


body.single-product
.elementor-widget-woocommerce-product-add-to-cart
form.cart {

    width: 100% !important;
}


/* ============================================================
   21. TABLET
   ============================================================ */

@media (max-width: 1024px) {

    body.single-product form.variations_form {

        padding: 18px !important;
    }


    body.single-product
    form.variations_form
    table.variations tbody {

        gap: 18px !important;
    }


    body.single-product
    .variable-items-wrapper {

        gap: 8px !important;
    }


    body.single-product
    .variable-item {

        min-width: 55px !important;

        height: 39px !important;

        padding-left: 13px !important;
        padding-right: 13px !important;
    }

}


/* ============================================================
   22. MOBILE
   ============================================================ */

@media (max-width: 767px) {

    body.single-product form.variations_form {

        margin-top: 14px !important;

        padding: 15px !important;

        border-radius: 11px !important;
    }


    body.single-product
    form.variations_form
    table.variations tbody {

        gap: 18px !important;
    }


    body.single-product
    form.variations_form
    table.variations th.label {

        margin-bottom: 9px !important;
    }


    /* BOTONES SE ACOMODAN AUTOMATICAMENTE */

    body.single-product
    .variable-items-wrapper {

        display: flex !important;

        flex-wrap: wrap !important;

        gap: 7px !important;
    }


    body.single-product
    .woo-variation-swatches
    .variable-items-wrapper
    .variable-item {

        min-width: 50px !important;

        height: 38px !important;

        padding: 0 10px !important;

        font-size: 11px !important;
    }


    /* MEDIDA */

    body.single-product
    .variable-items-wrapper[data-attribute_name*="medida"]
    .variable-item,

    body.single-product
    .variable-items-wrapper[data-attribute_name*="corte"]
    .variable-item {

        min-width: 94px !important;
    }


    /* TRANSPARENTE */

    body.single-product
    .variable-item[data-value*="transparente"] {

        min-width: 96px !important;
    }


    /* CARRITO */

    body.single-product
    .woocommerce-variation-add-to-cart {

        display: grid !important;

        grid-template-columns: 70px 1fr !important;

        gap: 9px !important;
    }


    body.single-product
    .quantity,

    body.single-product
    .quantity .qty {

        width: 70px !important;
    }


    body.single-product
    .single_add_to_cart_button {

        width: 100% !important;

        min-width: 0 !important;

        padding: 0 12px !important;
    }

}


/* ============================================================
   23. MOBILE PEQUEÑO
   ============================================================ */

@media (max-width: 420px) {

    body.single-product form.variations_form {

        padding: 13px !important;
    }


    body.single-product
    .woo-variation-swatches
    .variable-items-wrapper
    .variable-item {

        min-width: 47px !important;

        height: 37px !important;

        padding: 0 8px !important;
    }


    body.single-product
    .variable-items-wrapper[data-attribute_name*="medida"]
    .variable-item,

    body.single-product
    .variable-items-wrapper[data-attribute_name*="corte"]
    .variable-item {

        min-width: 88px !important;
    }


    body.single-product
    .woocommerce-variation-add-to-cart {

        grid-template-columns: 64px 1fr !important;
    }


    body.single-product
    .quantity,

    body.single-product
    .quantity .qty {

        width: 64px !important;
    }

}/* End custom CSS */
/* Start custom CSS for woocommerce-product-meta, class: .elementor-element-356c97c *//* =========================================
   META PRODUCTO · TEOFILMS
   COMPACTO / DISCRETO / PREMIUM
   ========================================= */

.elementor-5054 .elementor-element.elementor-element-356c97c{
    margin: 0 0 10px 0 !important;
    padding: 0 !important;

    font-size: 12px;
    line-height: 1.5;

    color: #999;
}


/* =========================================
   CONTENEDOR GENERAL
   ========================================= */

.elementor-5054 .elementor-element.elementor-element-356c97c .product_meta{
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;

    gap: 3px;

    width: 100%;

    margin: 0 !important;
    padding: 0 !important;
}


/* =========================================
   CADA FILA DE INFORMACIÓN
   SKU / CATEGORÍA / ETIQUETAS / MARCA
   ========================================= */

.elementor-5054 .elementor-element.elementor-element-356c97c .product_meta > span{
    display: block;

    width: 100%;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 12px !important;
    line-height: 1.5 !important;

    font-weight: 400 !important;

    color: #999 !important;
}


/* =========================================
   LINKS
   ========================================= */

.elementor-5054 .elementor-element.elementor-element-356c97c .product_meta a{
    color: #666 !important;

    font-size: inherit !important;
    font-weight: 400 !important;

    text-decoration: none !important;

    transition: color .2s ease;
}


/* CATEGORÍA UN POCO MÁS VISIBLE */
.elementor-5054 .elementor-element.elementor-element-356c97c .posted_in a{
    color: #555 !important;
}


/* HOVER */
.elementor-5054 .elementor-element.elementor-element-356c97c .product_meta a:hover{
    color: #d2232a !important;
}


/* =========================================
   ETIQUETAS
   EVITAR BLOQUES ENORMES
   ========================================= */

.elementor-5054 .elementor-element.elementor-element-356c97c .tagged_as{
    max-width: 100%;

    color: #a0a0a0 !important;

    /* máximo 2 líneas */
    max-height: 3em;
    overflow: hidden;

    line-height: 1.5 !important;
}

.elementor-5054 .elementor-element.elementor-element-356c97c .tagged_as a{
    color: #858585 !important;
    font-weight: 400 !important;
}


/* =========================================
   SKU
   MUY SECUNDARIO
   ========================================= */

.elementor-5054 .elementor-element.elementor-element-356c97c .sku_wrapper{
    color: #aaa !important;
}

.elementor-5054 .elementor-element.elementor-element-356c97c .sku{
    color: #888 !important;
    font-weight: 400 !important;
}


/* =========================================
   ELIMINAR SEPARADORES / BORDES ANTERIORES
   ========================================= */

.elementor-5054 .elementor-element.elementor-element-356c97c .posted_in,
.elementor-5054 .elementor-element.elementor-element-356c97c .tagged_as{
    margin-left: 0 !important;
    padding-left: 0 !important;

    border: 0 !important;
}


/* ELIMINAR PSEUDOELEMENTOS */
.elementor-5054 .elementor-element.elementor-element-356c97c::before,
.elementor-5054 .elementor-element.elementor-element-356c97c::after,
.elementor-5054 .elementor-element.elementor-element-356c97c .product_meta::before,
.elementor-5054 .elementor-element.elementor-element-356c97c .product_meta::after,
.elementor-5054 .elementor-element.elementor-element-356c97c .product_meta > span::before,
.elementor-5054 .elementor-element.elementor-element-356c97c .product_meta > span::after{
    content: none !important;
    display: none !important;
}


/* =========================================
   TABLET
   ========================================= */

@media (max-width:1024px){

    .elementor-5054 .elementor-element.elementor-element-356c97c,
    .elementor-5054 .elementor-element.elementor-element-356c97c .product_meta > span{
        font-size: 11.5px !important;
    }

}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width:767px){

    .elementor-5054 .elementor-element.elementor-element-356c97c{
        margin-bottom: 8px !important;
    }

    .elementor-5054 .elementor-element.elementor-element-356c97c .product_meta{
        gap: 2px;
    }

    .elementor-5054 .elementor-element.elementor-element-356c97c .product_meta > span{
        font-size: 11px !important;
        line-height: 1.45 !important;
    }

    .elementor-5054 .elementor-element.elementor-element-356c97c .tagged_as{
        max-height: 2.9em;
        line-height: 1.45 !important;
    }

}/* End custom CSS */
/* Start custom CSS for woocommerce-product-content, class: .elementor-element-6ea5109 */.elementor-5054 .elementor-element.elementor-element-6ea5109{
  --red:#e30613;
  --cerrado:170px;          /* alto visible antes de abrir (computador) */

  position:relative;
  max-height:var(--cerrado);
  overflow:hidden;
  padding:18px 22px 50px;
  background:#fff;
  border:1px solid #e6e6e6;
  border-radius:12px;
  color:#4a4a4a;
  font-size:14px;
  line-height:1.6;
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;

  /* "memoria" del clic: al soltar, vuelve a cerrarse recién en ~27 horas */
  transition:max-height 0s 99999s,padding 0s 99999s,box-shadow 0s 99999s;
}

/* ---------- ABIERTA: al hacer clic ---------- */
.elementor-5054 .elementor-element.elementor-element-6ea5109:active{
  max-height:4000px;
  padding-bottom:20px;
  cursor:auto;
  box-shadow:0 14px 34px rgba(0,0,0,.06);
  transition:max-height 0s,padding 0s,box-shadow 0s;
}

/* Pantallas táctiles: el toque también la abre y queda abierta */
@media(hover:none){
  .elementor-5054 .elementor-element.elementor-element-6ea5109:hover{
    max-height:4000px;
    padding-bottom:20px;
    box-shadow:0 14px 34px rgba(0,0,0,.06);
    transition:max-height 0s,padding 0s,box-shadow 0s;
  }
}

/* Acento rojo superior, igual que la descripción corta */
.elementor-5054 .elementor-element.elementor-element-6ea5109:before{
  content:"";
  position:absolute;
  top:-1px;left:22px;
  width:52px;height:3px;
  background:var(--red);
  border-radius:0 0 3px 3px;
  z-index:2;
}

/* Cerrada: degradado + "Ver descripción completa" */
.elementor-5054 .elementor-element.elementor-element-6ea5109:after{
  content:"Ver descripción completa  +";
  white-space:pre;
  position:absolute;
  left:0;right:0;bottom:0;
  z-index:3;
  height:96px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding-bottom:14px;
  background:linear-gradient(to bottom,rgba(255,255,255,0) 0%,#fff 58%);
  color:var(--red);
  font-family:Inter,Arial,sans-serif;
  font-size:10.5px;
  font-weight:800;
  letter-spacing:1.4px;
  text-transform:uppercase;
  pointer-events:none;
  transition:opacity 0s 99999s,visibility 0s 99999s;
}
.elementor-5054 .elementor-element.elementor-element-6ea5109:hover:after{color:#b8050f}

/* al abrir, el aviso desaparece y no vuelve */
.elementor-5054 .elementor-element.elementor-element-6ea5109:active:after{
  opacity:0;
  visibility:hidden;
  transition:opacity 0s,visibility 0s;
}
@media(hover:none){
  .elementor-5054 .elementor-element.elementor-element-6ea5109:hover:after{
    opacity:0;
    visibility:hidden;
    transition:opacity 0s,visibility 0s;
  }
}

/* ---------- Texto ---------- */
.elementor-5054 .elementor-element.elementor-element-6ea5109 p{margin:0 0 10px}
.elementor-5054 .elementor-element.elementor-element-6ea5109 p:last-child{margin-bottom:0}
.elementor-5054 .elementor-element.elementor-element-6ea5109 strong{color:#111}

/* =========================================================
   DESCRIPCIONES CON LISTA (ej. PPF Nanoceramic)
   ========================================================= */

/* Título antes de una lista ("Características:") en rojo */
.elementor-5054 .elementor-element.elementor-element-6ea5109 p:has(+ ul){
  margin:16px 0 8px;
  padding-top:14px;
  border-top:1px solid #ececec;
  font-family:Inter,Arial,sans-serif;
  font-size:10.5px;
  font-weight:800;
  letter-spacing:1.6px;
  text-transform:uppercase;
}
.elementor-5054 .elementor-element.elementor-element-6ea5109 p:has(+ ul) strong{color:var(--red)}

/* Lista con checks rojos */
.elementor-5054 .elementor-element.elementor-element-6ea5109 ul{
  display:grid;
  gap:6px;
  margin:0 0 10px !important;
  padding:0 !important;
  list-style:none !important;
}
.elementor-5054 .elementor-element.elementor-element-6ea5109 ul li{
  position:relative;
  margin:0 !important;
  padding-left:26px;
  list-style:none !important;
}
.elementor-5054 .elementor-element.elementor-element-6ea5109 ul li:before{
  content:"✓";
  position:absolute;
  left:0;top:3px;
  width:18px;height:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(227,6,19,.10);
  color:var(--red);
  font-size:10px;
  font-weight:800;
  line-height:1;
}

/* =========================================================
   DESCRIPCIONES CON LÍNEAS SUELTAS (ej. Film Polarizado Premium)
   Cada bloque de líneas se convierte en una ficha destacada.
   ========================================================= */
.elementor-5054 .elementor-element.elementor-element-6ea5109 p:has(br){
  margin:14px 0 !important;
  padding:12px 14px 12px 16px;
  background:#fafafa;
  border:1px solid #ececec;
  border-left:3px solid var(--red);
  border-radius:8px;
  color:#333;
  line-height:1.85;
}
/* primera línea del primer bloque ("Características destacadas:") como título */
.elementor-5054 .elementor-element.elementor-element-6ea5109 p:has(br)::first-line{
  color:var(--red);
  font-family:Inter,Arial,sans-serif;
  font-size:10.5px;
  font-weight:800;
  letter-spacing:1.6px;
  text-transform:uppercase;
}
/* en los bloques siguientes la primera línea es contenido normal */
.elementor-5054 .elementor-element.elementor-element-6ea5109 p:has(br) ~ p:has(br)::first-line{
  color:inherit;
  font-family:inherit;
  font-size:inherit;
  font-weight:inherit;
  letter-spacing:normal;
  text-transform:none;
}

/* =========================================================
   TABLET (768px – 1024px)
   ========================================================= */
@media(max-width:1024px){
  .elementor-5054 .elementor-element.elementor-element-6ea5109{
    --cerrado:160px;
    padding:16px 18px 50px;
    font-size:14px;
  }
  .elementor-5054 .elementor-element.elementor-element-6ea5109:before{left:18px}
}

/* =========================================================
   CELULAR (hasta 767px)
   ========================================================= */
@media(max-width:767px){
  .elementor-5054 .elementor-element.elementor-element-6ea5109{
    --cerrado:150px;
    padding:14px 14px 54px;
    border-radius:10px;
    font-size:13.5px;
    line-height:1.55;
  }
  .elementor-5054 .elementor-element.elementor-element-6ea5109:before{left:14px;width:44px}

  /* franja del aviso más alta: fácil de tocar con el dedo */
  .elementor-5054 .elementor-element.elementor-element-6ea5109:after{
    height:100px;
    padding-bottom:18px;
    font-size:10.5px;
    letter-spacing:1.2px;
  }

  .elementor-5054 .elementor-element.elementor-element-6ea5109 p{margin-bottom:8px}
  .elementor-5054 .elementor-element.elementor-element-6ea5109 p:has(+ ul){margin:12px 0 6px;padding-top:10px;font-size:10px}
  .elementor-5054 .elementor-element.elementor-element-6ea5109 ul{gap:5px}
  .elementor-5054 .elementor-element.elementor-element-6ea5109 ul li{padding-left:22px}
  .elementor-5054 .elementor-element.elementor-element-6ea5109 ul li:before{width:16px;height:16px;top:2px;font-size:9px}

  .elementor-5054 .elementor-element.elementor-element-6ea5109 p:has(br){
    margin:12px 0 !important;
    padding:10px 12px 10px 13px;
    line-height:1.75;
  }
  .elementor-5054 .elementor-element.elementor-element-6ea5109 p:has(br)::first-line{font-size:10px}
}/* End custom CSS */