.articulo{
    padding-bottom: 0px;
}



.articulo .slider{
    width: calc(60% - 60px) !important;
    height: 512px;
    display: flex;
    flex-direction: row-reverse;
    max-width: 630px;
    justify-content: flex-start;
}


.articulo .principal{
    margin: 0;
    text-decoration:none; 
    font-weight: bold;
    font-size: 12px;
    background: white;
}

.articulo .principal .movil{
    display: none;
}

.articulo .principal .nomovil{
    display: block;
}

.articulo .principal .content{
    width: 55%;
    display: table-cell;
    vertical-align: top;
    padding: 0px 20px 0 50px;
}



.articulo h1{
    color: var(--color-h1);
    letter-spacing: 1px;
    font-weight: 600;
    text-transform: uppercase;
    text-align: left;
    margin: 0px 0px 0px 0px;
    font-size: 30px;
    padding: 10px 0px 10px 0px;
}

/* Subtítulo H2 bajo el H1 de la ficha (editable en EditWebSubcatalogosArticulos).
   Selector específico para no heredar el h2 grande/uppercase del resto de la ficha. */
.articulo .principal .content .subtitulo{
    text-transform: none;
    font-weight: 600;
    letter-spacing: 0px;
    margin-top: 25px;
    padding: 0px;
    cursor: pointer;
    color: var(--color-text-light);
    margin-bottom: 15px;
    font-size: 18px !important;
    border-bottom: 1px solid #7b90a7;
    padding-bottom: 5px;
    display: flex;
    justify-content: space-between;
}

.articulo .colorsecundario{
   color: var(--color-catalogo) !important;
}

.articulo .etiquetas{
    padding: 15px;
}

.articulo .principal h2,
.articulo .principal h3,
.articulo .principal h4{
    color: var(--color-text);
    letter-spacing: 1px;
    font-weight: normal;
    text-transform: uppercase;
    text-align: left;
    margin: 0px 0px 0px 0px;
    font-size: 30px;
    padding: 10px 0px 10px 0px;
    font-size: 28px;
}

.articulo .principal h3{
    font-size: 22px !important;
    color: var(--color-text-light);
}

.articulo .principal .composicion{
    padding: 15px;
    font-size: 16px;
    color: var(--color-text);

}
.articulo .principal .composicion span{
    display: block;
    color: var(--color-text-muted);
    font-size: 15px;
}


.articulo .h2familia{
    color: var(--color-h1);
    letter-spacing: 1px;
    font-weight: 600;
    text-transform: uppercase;
    text-align: left;
    margin: 0;
    font-size: 30px;
    padding: 10px 0 10px 0;
    border-bottom: 1px solid #d3d3d3;
    margin-bottom: 60px;
    margin-top: 50px;

}

.articulo .principal span.reference {
    font-weight: 500;
    color: var(--color-principal2);
    font-size: 24px;
    text-transform: uppercase;
}

.articulo .principal span.marca {
    font-weight: 500;
    color: var(--color-principal);
    font-size: 24px;
    display: block;

}

.articulo .principal .content h2,
.articulo .principal .content h3 {
    text-transform: none;
    font-weight: 600;
    letter-spacing: 0px;
    margin-top: 0px;
    padding: 0px;
    cursor: pointer;
    color: var(--color-text-light);
    margin-bottom: 15px;
    font-size: 18px !important;
    padding-bottom: 5px;
    display: flex;
    justify-content: space-between;
}

.articulo .principal .content p{
    letter-spacing: 0px;
    font-size: 16px !important;
    font-weight: 400;
    text-transform: none;
    color: var(--color-text-light);
}

/* Botón Haz tu pedido */
.articulo .principal .hazpedido {
    margin: 20px 0 0 0;
}

.articulo .principal .hazpedido .hazpedido-scroll {
    background: var(--color-button);
    display: inline-block;
    padding: 8px 32px;
    font-size: 16px;
    font-weight: 600;
    /* margin: 10px 0px 10px 10px; */
    color: var(--color-white);
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(97, 97, 97, 0.25);
}

.articulo .principal .hazpedido .hazpedido-scroll:hover {
    opacity: 0.95;
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
    color: #fff;
    text-decoration: none;
}

.articulo .principal .hazpedido .hazpedido-scroll:active {
    transform: translateY(0);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
}

.articulo .principal .hazpedido .hazpedido-flecha {
    flex-shrink: 0;
    color: inherit;
}

/* Vista pública (no logueado): tarjeta "¿Necesitas condiciones comerciales
   adaptadas?" con CTA a atención comercial. */
.articulo .principal .VisualizandoPublica {
    background: var(--color-white, #fff);
    border: 1px solid var(--color-border, #e2e8f0);
    border-radius: 16px;
    padding: 28px 32px;
    margin: 30px 0px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
    text-align: left;
}

.articulo .principal .VisualizandoPublica .vp-titulo {
    display: block;
    font-size: 22px;
    font-weight: 700;
    color: var(--color-text, #1e293b);
    text-transform: none;
    letter-spacing: 0;
    line-height: 1.25;
    margin: 0 0 10px 0;
    padding: 0;
}

.articulo .principal .VisualizandoPublica .vp-texto {
    display: block;
    font-size: 16px;
    color: var(--color-text-light, #64748b);
    line-height: 1.6;
    font-weight: 400;
    text-transform: none;
    margin: 0 0 20px 0;
}

.articulo .principal .VisualizandoPublica .vp-boton {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    background: var(--color-principal2);
    color: var(--color-white, #fff);
    font-weight: 600;
    text-decoration: none;
    padding: 16px 24px;
    border-radius: 10px;
    text-transform: uppercase;
    font-size: 15px;
    letter-spacing: 0.5px;
    transition: all 0.25s ease;
}

.articulo .principal .VisualizandoPublica .vp-boton svg {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    stroke: currentColor;
}

.articulo .principal .VisualizandoPublica .vp-boton:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.2);
    text-decoration: none;
}

.articulo .principal .VisualizandoPublica .vp-boton:active {
    transform: translateY(0);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.articulo .principal .VisualizandoPublica .vp-nota {
    display: block;
    text-align: center;
    font-size: 13px;
    color: var(--color-text-muted, #94a3b8);
    line-height: 1.5;
    font-style: italic;
    text-transform: none;
    margin: 12px 0 0 0;
}
.articulo .principal .content .contendor_talla{
    display: inline-block;
    width: 35%;
    /*border-bottom: 1px solid black;*/
}
.articulo .principal .content .contendor_talla *{
    display: block;
    font-size: medium;
    color: black;
}

.articulo .principal .content .contendor_color{
    display: inline-block;
    width: 220px;
   /*  margin-left: 15px; */
    /*border-bottom: 1px solid black;*/
}

.articulo .principal .content .contendor_color *{
    display: block;
    font-size: medium;
    color: black;
}

.cajaselect {
    margin: 0px;
    border: 1px solid #d9d9d9;
    overflow: hidden;
    width: 215px;
    position: relative;
 }
 
 .cajaselect select {
    background: transparent;
    border: none;
    font-size: 14px;
    height: 30px;
    padding: 5px;
    width: 250px;
    color: #7b7b7b;
    font-weight: normal;
 }
 .cajaselect select:focus{ outline: none;}
 
 .cajaselect::after{
     content:"\025be";
     display:table-cell;
     padding-top:7px;
     text-align:center;
     width:30px;
     height:30px;
     background-color:transparent;
     position:absolute;
     top:0;
     right:0px;	
     pointer-events: none;
 }


.articulo .principal .content .informacion_adicional {
    padding-bottom: 0%;
}
.articulo .principal .content .informacion_adicional .contenedor_imagen {
    display:inline-block;
    width:15%;
}
.articulo .principal .content .informacion_adicional .contenedor_imagen img {
    width: 0px;
    border: 0;
    text-decoration: none;
}

.articulo .principal .content .informacion_adicional .contenedor_texto{
    display:inline-block;
    width: 78%;
}

.articulo .principal .content .informacion_adicional .contenedor_texto p {
    margin:auto;
}

.articulo .principal .content .opciones_carro {
    display: block;
    padding-bottom: 10px;
    border-bottom: 1px solid black;
}

.articulo .principal .content .opciones_carro .buttonaddcarro{
    overflow: hidden;
    transition: height 0.6s;
    margin: 10px 0px 5px 0px;
    height: 0px;
}
.articulo .principal .content .opciones_carro .buttonaddcarrosinstock{
    overflow: hidden;
    transition: height 0.6s;
    height: 0px;
    font-size: 17px;
    color: #a01c09;
    padding-left: 5px;
}

.articulo .principal .content .opciones_carro div{
    vertical-align: top;
}
.articulo .principal  .opciones_carro .divmasmenoscarro{
    display: inline-block;
    box-sizing: border-box;
}
.articulo .principal  .opciones_carro .divmasmenoscarro *{
    display: inline-block;
    box-sizing: border-box;
}
.articulo .principal  .opciones_carro .divmasmenoscarro input{
    box-sizing: border-box;
    height: 32px;
    font-size: 16px;
    width: 50px;
    color: var(--color-text);
    text-align: center;
    background: transparent;
    border: 1px solid #fff;
    margin: 1px -3px;
    position: relative;
    top: 5px;
}

.articulo .principal  .opciones_carro .divmasmenoscarro .botmas {
    background: white;
    color: var(--color-principal);
    border: none;
    display: block;
    padding:10px;
    border-radius: 20px;
    border-style: solid;
    border-color: var(--color-principal);
    border-width: 2px;
    height: 38px;
    width: 40px;
}
.articulo .principal  .opciones_carro .divmasmenoscarro .botmenos {
    background: white;
    color: var(--color-principal);
    border: none;
    display: block;
    padding:10px;
    border-radius: 20px;
    border-style: solid;
    border-color: var(--color-principal);
    border-width: 2px;
    height: 38px;
    width: 40px;
}
.articulo .principal .content .opciones_carro  .anadircarro {
    display: inline-block;
    vertical-align: bottom;
}
.articulo .principal .opciones_carro  #buttoncarro{
    width: 200px;
    margin-left: 10px;
    height: 40px;
    background: var(--color-white);
    color: var(--color-button);
    display: block;
    min-width: 125px;
    border-radius: 25px;
    border-style: solid;
    border-color: var(--color-button);
}

.articulo .principal .opciones_carro  #buttoncarro2{
    width: 50%;
    height: 40px;
    background: var(--color-button);
    color: var(--color-white);
    border: none;
    display: none;
    float: right;
}

.articulo .principal .opciones_carro  .buttoncarro #buttoncarro{font-size: 14px;}

.articulo .principal .content .tallascolores{
    width: 100%;
    margin: -1px 0;
    height: 50px;
    text-align: center;
    table-layout: fixed;
}

.articulo .principal .content .tallascolores tr td{
    border: 1px solid #e7e7e7;
    font-size: 14px;
    color: #494949;
    font-weight: normal;
}

.articulo .principal .content .tallascolores tr td:nth-child(1){
    width: 100px;
    font-weight: bold;
}


.articulo  .principal .content  .precio,
.articulo  .principal .movil  .precio{
    /* display: none; */
    margin: -10px 0px 0px -5px;
    border: none;
    text-decoration: none;
    color: #5a5a5a;
    font-weight: bold;
    font-size: 10px;
    letter-spacing: 1px;
    /* cursor: pointer; */
    transition: background 1s;
}


.articulo .principal .content .precio .pvp,
.articulo .principal .movil .precio .pvp{
    display: inline-block;
    font-size: 35px;
    padding: 4px;
    margin-bottom: 7px;
    font-weight: bold;
    /* background: var(--color-principal); */
    color: var(--color-principal);
}
.articulo .principal .content .precio span,
.articulo .principal .movil .precio span{
    display: inline-block;
    color: var(--color-principal);
    font-size: 25px;
    margin-left: -2px;
}
.articulo  .principal .content .precio .descuento,
.articulo  .principal .movil .precio .descuento{
    display: none;
    font-size: 20px;
    margin-left: 20px;
    background: #515859;
    color: #fff;
    padding: 2px 10px;
    border-radius: 4px;
    }

.articulo   .principal .content  .precio .descuento .pvpant,
.articulo   .principal .movil  .precio .descuento .pvpant{text-decoration: line-through;opacity: 0.7;color: #a6a6a6;}
.articulo  .principal .content   .dtopor,
.articulo  .principal .movil   .dtopor{
    float: right;
    transform: rotate(45deg);
    padding: 31px 54px 0px 44px;
    margin: 1px -78px;
    background: white;
    width: 180px;
    height: 71px;
    font-size: 25px;
    font-weight: bold;
    color: var(--color-text);
    /* border-bottom: 1px solid #ececec; */
}
.articulo  .principal .content  .dtopor span,
.articulo  .principal .movil  .dtopor span{
    font-size: 19px;
}




.articulo .contenedor_descripcion{
    margin: 1% 3%;
}
.articulo .h2articulo{
    letter-spacing: 1px;
    font-weight: bold;
    color: var(--color-principal);
    font-size: 21px;
    margin: 3% 0% 2% 3%;
    text-transform: uppercase;
}

.articulo .particulo{
    color: #6e6e6e;
    font-size: 12px;
    line-height: 19px;
    font-weight: normal;
    margin-bottom: 20px;
    margin: 20px 3% 20px 3%;
}





.articulo .principal .etiqueta {
    display: block;
    position: absolute;
    width: 100%;
    font-weight: bold;
    padding: 6px;
    color: #fff;
    text-align: center;
    margin-top: 7%;
    margin-left: -40%;
    z-index: 1;
    transform: rotate(-45deg);
}
.articulo .principal .etiqueta2 {
    display: block;
    position: absolute;
    float: right;
    width: 100%;
    font-weight: bold;
    font-size: 15px;
    padding: 6px;
    padding-left: 28px;
    color: #fff;
    margin-top: 7%;
    margin-right: -4px;
    margin-left: 85%;
    z-index: 1;
}
    .articulo .principal .agotado {background: #AA0000;}
    .articulo .principal .oferta {background: #43980d;}
    .articulo .principal .novedad {background: #e2a12b;}
    .articulo .principal .destacado {background: var(--color-principal);}
    .articulo .principal .outlet {background: var(--color-principal);}
    .articulo .principal .new {background: #AA0000;}

    .articulo .principal .agotado::after {content: "SIN STOCK"; }
    .articulo .principal .oferta::after {content: "OFERTA"; }
    .articulo .principal .novedad::after {content: "NOVEDAD"; }
    .articulo .principal .destacado::after {content: "RECOMENDADO"; }
    .articulo .principal .outlet::after {content: "OUTLET"; }
    .articulo .principal .new::after {content: "NEW";}


.articulo .principal .descuentoCam,
.articulo .principal .descuentoofe,
.articulo .principal .descuentoliq{margin-bottom: 20px;display: inline-block;}

    .articulo .principal .descuentoCam .preciodescuento,
    .articulo .principal .descuentoofe .preciodescuento,
    .articulo .principal .descuentoliq .preciodescuento{
        display: inline-block;
        background: #43980d;
        padding: 4px 12px;
        border-radius: 3px;
        font-size: 17px;
        color: white;
    }
    .articulo .principal .descuentoCam .textodescuento,
    .articulo .principal .descuentoofe .textodescuento,
    .articulo .principal .descuentoliq .textodescuento{
        display: inline-block;
        vertical-align: bottom;
        padding-left: 5px;
        color: #43980d;
        display: none;
    }
    .articulo .principal .descuentoliq .preciodescuento{background: #e2a12b;}
    .articulo .principal .descuentoliq .textodescuento{color: #e2a12b;}
    .articulo .principal .descuentoCam .preciodescuento{background: #349ea9;}
    .articulo .principal .descuentoCam .textodescuento{color: #349ea9;}
    
    .articulo .principal .destacado,
    .articulo .principal .outlet {
        background: var(--color-principal);
        margin-bottom: 20px;
        display: inline-block;
        padding: 4px 12px;
        border-radius: 3px;
        font-size: 17px;
        color: white;
    }

    .articulo .principal .novedaddesc{
        display: inline-block;
        background: #aa0000;
        padding: 4px 15px;
        border-radius: 3px;
        font-size: 17px;
        color: white;
        margin-bottom: 20px;
    }



    .articulo .catalogotc{
        margin: 30px 20px;
        padding: 25px;
        background: #ffffff;
        border-radius: 8px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    }
    .articulo .catalogotc .catalogotc_group{
        display: block;
        width: 100%;
        margin: 0px 0px 25px 0px;
        vertical-align: top;
    }
    .articulo .catalogotc .catalogotc_group:last-child {
        margin-bottom: 0;
    }
    .articulo .catalogotc .catalogotc_group .catalogotc_elementos {
        display: flex;
        flex-wrap: wrap;
        gap: 12px;
        margin-top: 15px;
    }
    .articulo .catalogotc .catalogotc_group .catalogotc_elementos div{
        border: 1px solid #e0e0e0;
        font-weight: 500;
        padding: 10px 16px;
        font-size: 14px;
        background: #f8f9fa;
        display: inline-block;
        min-width: 120px;
        text-align: center;
        border-radius: 6px;
        transition: all 0.3s ease;
        color: var(--color-text);
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
        cursor: default;
    }
    .articulo .catalogotc .catalogotc_group .catalogotc_elementos div:hover {
        background: var(--color-principal);
        border-color: var(--color-principal);
        transform: translateY(-2px);
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.12);
    }
    
    /* Mejora para el primer grupo (tallas) */
    .articulo .catalogotc .catalogotc_group:first-child .catalogotc_elementos div {
        background: #ffffff;
        border: 1px solid #d0d0d0;
    }
    
    .articulo .catalogotc .catalogotc_group .catalogotc_titulo{
        color: var(--color-principal);
        font-weight: 600;
        font-size: 18px;
        padding: 0px 0px 12px 0px;
        display: block;
        width: 100%;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        border-bottom: 2px solid #e9ecef;
        margin-bottom: 15px;
    }

    .articulo .myCarouselarticulo{
        flex-direction: row-reverse;
    }

    .articulo .descripcion_larga{
        font-size: 15px;
        color: var(--color-text);
        padding: 30px 20px;
        margin: 0px !important;
        font-size: 13px;
        font-weight: normal;
    }
   
    .articulo .descripcion_larga table {
        font-size: 12px;
        /* width: 100%; */
        text-align: left;
        border-collapse: collapse;
    }
    
    .articulo .descripcion_larga th {
        font-size: 14px;
        font-weight: bold;
        padding: 8px 20px 8px 8px;
        background: #eeeeee;
        border-top: 1px solid #ffffff;
        border-bottom: 1px solid #fff;
        color: var(--color-text); 
    }
    
    .articulo .descripcion_larga td {
        padding: 8px;
        background: #f9f9f9;
        border-bottom: 1px solid #fff;
        color: var(--color-text);
        border-top: 1px solid transparent;
        font-weight: 500;
        font-size: 12px;
    }
    
    /* .articulo .descripcion_larga tr:hover td {
        background: #d0dafd;
        color: var(--color-text);
    } */


    .articulo .sliderarticulo {
        width: 55% !important;
    }

@media all and (max-width:900px){ /*Modo movil*/
    .articulo .principal .content {
        width: 100%;
        margin-top: 20px;
    }

    .articulo .slider {
        width: 100% !important;
    }
    .articulo .sliderarticulo {
        width: 100% !important;
        max-width: 100% !important;
    }
    
    .articulo .sliderarticulo .slideshow-container {
        max-width: 100% !important;
    }
    .articulo h1{
        /* text-align: center; */
        padding-top: 10px;
    }

    .articulo .principal .content .precio{
        display: none;
    }
    .articulo .principal .content h2,
    .articulo .principal .content h3 {
        margin-top: 5px;
    }
  
    .articulo .principal .content .informacion_adicional .contenedor_imagen{
        width: 25%;
        vertical-align: top;
        text-align: left;
    }

    .articulo .principal .content .informacion_adicional .contenedor_texto{
        width: 70%;
    }

    .articulo .principal .content .informacion_adicional .contenedor_texto p {
        padding-left: 8%;
        margin-left:2px;
    }

    .articulo .principal .movil{ display:block;}
	.articulo .principal .nomovil{display: none;}


.articulo .principal .movil .contendor_talla select{
    outline: none;
    color: #575757;
    font-size: 12px;
    width: 100%;
    height: 37px;
    padding: 0px 10px;
    border: 1px solid #d9d9d9;
    /*background: #fff;*/
    background: transparent;
}

.articulo .principal .movil .contendor_talla select option{
    font-weight: normal;
    display: block;
    white-space: pre;
    min-height: 1.2em;
    padding: 0px 2px 1px;
}




.articulo .principal .movil .contendor_color select{
    outline: none;
    color: #575757;
    font-size: 12px;
    width: 100%;
    height: 37px;
    padding: 0px 10px;
    border: 1px solid #d9d9d9;
    /*background: #fff*/
    /* background: transparent; */
}

.articulo .principal .movil .contendor_color select option{
    font-weight: normal;
    display: block;
    white-space: pre;
    min-height: 1.2em;
    padding: 0px 2px 1px;
}

    .articulo .principal .movil .contendor_color,
    .articulo .principal .movil .contendor_talla{
        display: inline-block;
        width: 100%;
        padding-bottom: 2%;
    }
    .articulo .principal .movil .contendor_color *,
    .articulo .principal .movil .contendor_talla *{
        display: block;
        width: 100%;
    }

    .articulo .principal .movil .info_usuario ,
    .articulo .principal .movil .info_usuario *{
        display: inline;
    }

    .articulo .principal .movil .opciones_carro{
        display: block;
    }

    .articulo .principal .content .contendor_color,
    .articulo .principal .content .contendor_talla {
        display: none;
    }
    


.articulo .principal .movil .opciones_carro {
     background-color:transparent;  
    width: 100%;
    padding-bottom: 2%;
    /* height: 48px; */
}

.articulo .principal .movil .opciones_carro .buttonaddcarro{
    overflow: hidden;
    transition: height 0.6s;
    height: 0px;
}


.articulo .principal .movil .opciones_carro  .anadircarro {
    display: inline-block;
    margin-left: 2%;
    margin-top: 1%;
    vertical-align: bottom;
}


.articulo .principal .movil .opciones_carro .buttonaddcarrosinstock{
    overflow: hidden;
    transition: height 0.6s;
    height: 0px;
    font-size: 17px;
    color: #a01c09;
    padding-left: 5px;
}


.articulo .principal .content .opciones_carro{
    display: none;
}
    .articulo .principal .novedaddesc {
        display: none;
    }

    .cajaselect::after{
        top:2px;
        right:-7px;	
    }
   
}


#descargarimagenes {
    cursor: pointer;
    background: var(--color-principal2);
    border: none;
    color: #fff;
    padding: 15px 27px;
    font-size: 13px;
    text-transform: uppercase;
    font-weight: 400;
}

@media all and (max-width:900px){
    /* Móvil: subir el H1 por encima de los colores manteniendo UN SOLO <h1>
       real y visible en el DOM (sin duplicar ni ocultar texto → 100% seguro
       para SEO; solo cambia el orden visual, que Google respeta).
       Como `order` solo aplica a hijos flex DIRECTOS y el <h1> está anidado en
       .content > div, aplanamos esos dos contenedores con display:contents:
       su caja desaparece pero siguen en el árbol DOM, así que los selectores
       .content .x y sus estilos se conservan. Pasamos de column-reverse a
       column y colocamos solo H1 (arriba), colores e imagen con `order`; el
       resto de la ficha queda en order:0 (debajo de la imagen, como hasta ahora). */
    .articulo .myCarouselarticulo{
        flex-direction: column !important;
    }
    /* .principal añade especificidad para ganar a las reglas posteriores
       `.articulo .principal .content{display:block}` de este mismo @media. */
    .articulo .principal .myCarouselarticulo > .content,
    .articulo .principal .myCarouselarticulo > .content > div{
        display: contents;
    }
    .articulo .myCarouselarticulo > .content h1{ order: -3; } /* H1 arriba del todo */
    .articulo .miniaturas-movil-wrapper{ order: -2; }         /* colores */
    .articulo .myCarouselarticulo > .articulo-media{ order: -1; } /* imágenes */

    .articulo {padding-left: 0px;}

    .articulo .slider {
        max-width: none;
    }
    .articulo .sliderarticulo {
        max-width: 100% !important;
        width: 100% !important;
    }
    
    .articulo .sliderarticulo .slideshow-container {
        max-width: 100% !important;
    }
    
    
    .galeria-colores-content {
        order: -1;
        margin-bottom: 15px;
    }


    .articulo .principal .gridcompra{
        width: calc(100% - 20px);
        margin: 10px;
    }

    .articulo .listadoteasers{
        width: calc(100% - 40px);
        margin: 20px;
    }


    .articulo .principal .content{
        display: block;
    }

    .articulo .principal .content {
        padding: 0;
    }


    .articulo .h2articulo {
        margin: 12% 0% 2% 3%;
    }

    .articulo .principal .content h2,
    .articulo .principal .content h3 {
        margin-top: 20px;
    }

    .articulo .descripcion_larga {
        padding: 30px 3px;
        overflow-y: auto;
    }
    .articulo .descripcion_larga th {
        padding: 8px 5px;
    }

    /* Estilos responsive para vista pública (no logueado) */
    .articulo .principal .VisualizandoPublica {
        padding: 28px 20px;
        margin: 20px 10px;
        border-radius: 12px;
    }

    .articulo .principal .VisualizandoPublica .vp-titulo {
        font-size: 19px;
    }

    .articulo .principal .VisualizandoPublica .vp-texto {
        font-size: 15px;
    }

    .articulo .principal .VisualizandoPublica .vp-boton {
        padding: 14px 18px;
        font-size: 14px;
    }

    .articulo .catalogotc {
        margin: 20px 10px;
        padding: 20px 15px;
    }

    .articulo .catalogotc .catalogotc_group .catalogotc_elementos {
        gap: 10px;
    }

    .articulo .catalogotc .catalogotc_group .catalogotc_elementos div {
        min-width: 100px;
        padding: 8px 12px;
        font-size: 13px;
        flex: 1 1 calc(50% - 10px);
        max-width: calc(50% - 10px);
    }

    .articulo .catalogotc .catalogotc_group .catalogotc_titulo {
        font-size: 16px;
    }

}

/* === Iconos de confianza bajo la imagen (Experiencia, Calidad, Atención, Envíos, Stock) === */
.articulo .principal .articulo-media {
    display: flex;
    flex-direction: column;
    align-items: center;
    /* Mismo footprint que tenía .sliderarticulo cuando era hijo flex directo: sin esto,
       el wrapper colapsa a su contenido y el slider sale pequeño en escritorio. */
    width: 100%;
    max-width: 600px;
}
/* El slider ahora vive DENTRO de .articulo-media, que ya controla el ancho (~max-600).
   Hay una regla '.articulo .sliderarticulo{width:55% !important}' pensada para cuando el
   slider era hijo flex directo; dentro del wrapper ese 55% lo dejaba a ~330px (pequeño).
   Aquí lo forzamos al 100% del wrapper. */
.articulo .principal .articulo-media .sliderarticulo { width: 100% !important; max-width: 100% !important; }
.articulo .principal .articulo-iconos {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px 18px;
    width: 100%;
    max-width: 600px;
    margin: 20px 0 4px;
    padding-top: 18px;
    border-top: 1px solid var(--color-border, #e2e8f0);
}
.articulo .principal .articulo-icono {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 6px;
    flex: 1 1 80px;
    max-width: 110px;
}
.articulo .principal .articulo-icono svg,
.articulo .principal .articulo-icono img {
    width: 46px;
    height: 46px;
    display: block;
}
.articulo .principal .articulo-icono span {
    font-size: 12px;
    font-weight: 600;
    line-height: 1.25;
    color: var(--color-nav, #334155);
    letter-spacing: .3px;
}
@media all and (max-width: 480px) {
    .articulo .principal .articulo-iconos { gap: 10px 8px; }
    .articulo .principal .articulo-icono { flex-basis: 60px; }
    .articulo .principal .articulo-icono svg,
    .articulo .principal .articulo-icono img { width: 38px; height: 38px; }
    .articulo .principal .articulo-icono span { font-size: 11px; }
}

/* Plazo de salida de almacén del producto (o el general del catálogo). */
.diaspreparacion {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 12px 0;
    padding: 10px 14px;
    border-radius: var(--radius-md, 6px);
    background: var(--color-bg, #f8fafc);
    border: 1px solid var(--color-border, #e2e8f0);
    font-size: 14px;
    color: var(--color-text, #334155);
}
.diaspreparacion-icono { font-size: 16px; line-height: 1; }
