*{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    text-decoration:none;
    font-family: 'Lato', sans-serif;
}

:root {
    --color-principal: #982428;
    --color-principal-hover: #811e21;
}

body.modocatalogoagente .linetop,
body.modocatalogocliente .linetop{
    border-top: 2px solid var(--color-principal);
    position: fixed;
    top: 0px;
    left: 1px;
    width: 100%;
    z-index: 9999999;
}

#toast-container{
    bottom: 20px !important;
    top: auto !important;
}

.movil{display:none;}

a {
    color: var(--color-principal);
    text-decoration: none;
}
a:focus, a:hover {
    color: var(--color-principal-hover);
    text-decoration: underline;
}

h3, .h3{font-size: 17px !important;}

#container{
    transition: opacity 2s;
}

.ajuste{
    max-width: 1800px;
    margin:auto;
}

.ajuste2{
    max-width: 1400px;
    margin:auto;
}



.titlemodocatalogo{
    font-size: 35px;
    font-weight: bold;
    text-decoration: none;
    color: #f6f6f6;
}
.titlemodocatalogo:hover,
.titlemodocatalogo:active{text-decoration: none;color: #515859;}

.bordertopmodocatalogo{
    border-top: 2px solid var(--color-principal);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
}

.mensajes {
    width: 94%;
    padding-left: 300px;
    margin: 3%;
    margin-bottom: -2%;
}
    .mensajes .msg{
        font-size: 16px;
        font-weight: bold;
        padding: 5px;
        text-align: center;
    }
    .mensajes .msg_ok{
        border: 1px solid #3ca01370;
        color: #ffffff;
        background: #82b760de;
        border-radius: 4px;
    }
    .mensajes .msg_info_header{
        border: 1px solid #a4af0070;
        color: #484400d4;
        background: #e9f774de;
    }
    .mensajes .msg_error{
        border: 1px solid #670000c7;
        color: #ffffffd4;
        background: #941414b8;
    }


#fondoblancotransparente{
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: black;
    opacity: 0.6;
    z-index: 99999;
}

header{
    width: 100%;
}


/*-------------------------------AGENTE---------------------------------*/
header .agentetopespacio{
    height: 35px;
}
header .agentetop{
    display: flex;
    justify-content: space-between;
    background: #3e3e3e;
    color: white;
    padding: 5px 5px;
    position: fixed;
    top: 0px;
    right: 0px;
    left: 0px;
    width: 100%;
    z-index: 999999;
    height: 35px;
    overflow: hidden;
}
header .agentetop .ajuste{
    width: 100%;
}
header .agentetop .informacion{
    display: flex;
    justify-content: space-between;
}
header .nombrecliente:hover,
header .nombrecliente{
    cursor: pointer;
    color: white;
    text-decoration: none;
    font-weight: normal;
    line-height: 17px;
    display: inline-block;
}
/*-----------------------------FIN AGENTE--------------------------------*/


.cabecera{
    overflow: hidden;
    width: 100%;
    height: 80px;
    background: #ffffff;
    position: relative;
    z-index: 99999;
    padding: 17px;
    text-align: center;
}
.cabecera #logo_header{
    width: 260px;
    display: inline-block;
    margin-top: -5px;
}
.cabecera #logo_header a{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 56px;
    max-height: 100%;
}
.cabecera #logo_header a img{
    max-width: 100%;
    max-height: 56px;
}

.cabecera .buttonmenu{
    display: none;
    margin: 10px 10px 10px 5px;
    padding-bottom: 0px;
    width: 45px;
    cursor: pointer;
    vertical-align: top;
}

.cabecera .buttonofertas{
    background: rgb(152 36 40);
    padding: 4px 10px;
    border-radius: 5px;
    color: #ffffff !important;
    font-weight: bold;
    text-decoration: none;
}

.cabecera #Burguer{
    width: 100%;
}

.cabecera .buscar_logued,
.cabecera .buscar{
    height: 45px;
    width: calc(100% - 690px);
    padding: 0px 5px;
    display: inline-block;
    background-color: #f3f3f3;
    margin-left: 30px;
    vertical-align: top;

}


.cabecera .buscar .imglupa{
    padding: 8px 3px 8px 8px;
    width: 40px;
}
.cabecera .listabuscar{
    list-style-type: none;
    margin: 8px 0px 0px -7px;
    width: 270px;
    overflow: visible;
}
.cabecera .listabuscar a{
    color: #4d4d4d;
}
.cabecera .listabuscar li{
    display: inline;
    padding: 0px 13px 0px 0px;
    font-size: 14px;
    color: #4b4b4b;
}

.cabecera .buscar .inputbuscar{
    width: calc(100% - 45px);
    height: 40px;
    border: none;
    color: var(--color-principal);
    font-weight: bold;
    font-size: 13px;
    outline: 0px;
    letter-spacing: 1px;
    padding-left: 10px;
    /* margin-top: 2px; */
    background: transparent;
    vertical-align: top;
}


.cabecera .textocabecera{
    float: right;
    text-transform: uppercase;
    overflow: hidden;
    max-width: 225px;
    text-align: center;
}

.cabecera #textocabecera{
    display: block;
    color: #a4a4a4;
    font-weight: bold;
    font-size: 12px;
    height: 15px;
    overflow: hidden;
    margin-bottom: 0px;
    max-width: 110px;
}

.cabecera #textocabecera a{
    color: #a4a4a4;
}

.cabecera .cabeceralogin .cabeceralogin_container .idioma{
    display: inline-block;
} 

.cabecera .cabeceralogin .cabeceralogin_container label{
    width: 125px;
    height: 17px;
    overflow: hidden;
    text-align: center;
    color: #ffffff;
    font-weight: bold;
    cursor: pointer;
    margin: 10px 0px 0px 0px;
    padding: 0px 5px;
} 

.cabecera .cabeceralogin_logued .cabeceralogin_container label{
    width: 200px;
}

.cabecera .cabeceralogin .cabeceralogin_container .content-select select{
    display: inline-block;
    width: 100%;
    cursor: pointer;
    outline: 0;
    border: 0;
    border-radius: 0;
    background: #ffffff;
    font-size: 1em;
    font-weight: bold;
    color: rgb(135, 135, 135);
    position: relative;
    transition: all 0.25s ease;
}
.cabecera .cabeceralogin .idioma  {
    padding: 14px 0px;
}

.cabecera .cabeceralogin .cabeceralogin_container .idiomacabaezera{
    display: inline-block;
    text-transform: uppercase;
    overflow: hidden;
    text-align: left;
    width: 100%;
}

.cabecera .cabeceralogin .cabeceralogin_container .acesso_b2b  .idiomacabaezera {
    display: block;
    text-transform: uppercase;
    overflow: hidden;
    text-align: left;
}

.cabecera .cabeceralogin .cabeceralogin_container .idiomacabaezera .cabecera_selecion{
    display: inline-block;
    color: #8d8d8d;
    font-weight: bold;
}

.cabecera .cabeceralogin .cabeceralogin_container .idiomacabaezera .cabecera_selecion a{
    color: #ffffff;  
    text-decoration:none; 
}
.cabecera .cabeceralogin .idiomacabaezera span{
    color: #8d8d8d;
}

.cabecera .cabeceralogin .cabeceralogin_container {
    display: inline-block;
    margin: 10px 15px 7px 0px;
    vertical-align: text-top;
    height: 33px;
    position: relative;
    top: -5px;
}

.cabecera .cabeceralogin .cabeceralogin_container  .info_header{
    display: inline-block;
}
 .expanded{
    height: 255px!important;
 }

 .expanded::after{
     opacity: 1!important;
 }
 
.panel-carro{
    transition: height 0.6s;
    height: 0px;
    background-color: #4c5759;
    color: white;
    width: 20%;
    position: absolute;
    top: 67px;
    right: 10px;
    z-index: 99999;
    border-radius: 25px;
}

.panel-carro .titular{
    display: block;
    overflow: hidden;
    font-size: 24px;
    padding-left: 15px; 
    padding-top:8px;
    height: 15%;
    box-sizing: content-box;
}

.panel-carro .titular h2{
    margin:0;
}

.panel-carro::after{
    display: block;
    overflow: hidden;
    background-color: #4c5759;
    float: left;
    content: "";
    height: 12px;
    width: 12px;
    transform: rotate(45deg);
    position: absolute;
    top:-6px;
    left: 50%;
    opacity: 0;
}

.panel-carro .divTable {
    display: block;
    overflow: hidden; 
    overflow-y: auto;
    background-color: #ffffff;
    color: #000000;
    height: 45%;
    width: 96%;
    max-height: 155px;
    margin: 8px;    
    box-sizing: border-box;
}

.panel-carro .divTable table{
    width: 100%;
}

.panel-carro .divRow .divCell {
    padding: 2px;
}

.panel-carro .divRow:hover{
    background-color: #e4e4e4;
} 

.panel-carro .divRow .divCell * {
    text-align: center;
    box-shadow: 0px 3px 9px #d4d4d4;
}


.panel-carro .datos-generales {
    display: block;
    overflow: hidden; 
    height: 25%;
    max-height: 35%;
    position: relative;
}

.panel-carro .datos-generales form{
  float: right;
  padding-right: 32px;
}

.panel-carro .datos-generales form *{
    display: block;
    text-align: right;  
}

.panel-carro .datos-generales form span{
    font-size: 14px;
    text-align: center;
}

.panel-carro .datos-generales form #formcarro {
    border: none;
    background: var(--color-principal);
    color: white;
    width: 165px;
    font-weight: bold;
    font-size: 11px;
    height: 40%;
    text-align: center;
    cursor: pointer;
    margin-top: 3px;
    padding: 3%;
}

.cabecera .cabeceralogin{
    display: inline-block;
    /*width: 360px;*/
    max-width: 240px;
    vertical-align: top;
    background-color: rgb(152 36 40);
    position: relative;
    height: 45px;
}

.cabecera .cabeceralogin_logued{
    max-width: 370px;
}

.cabecera .selectidioma{
    margin: 7px 0;
    background: transparent;
    color: white;
    font-size: 15px;
    text-decoration: none;
    border: none;
    outline: none;
}
.cabecera .selectidioma option {
    color: black;
}

.cabecera .cabeceralogin .imglogin{
    height: 31px;
    padding-top: 2px;
    padding-right: 5px;
    padding-left: 2px;
    vertical-align: bottom;
}

.cabecera .cabeceralogin .textologin{
    display: flex;
    color: #0097a8;
    font-size: 12px;
    letter-spacing: 1px;
    text-transform: uppercase;
}
.cabecera .cabeceralogin .textologin span { margin-left: 10px;}


.cabecera .cabeceralogin .textologin:hover{
    color: #0097a8;
    text-decoration: none;
}
.cabecera .cabeceralogin .textologinusuario:hover{
    color: #000000;
}
.cabecera .cabeceralogin .textologinusuario .imgcarro{
    height: 33px;
    padding-right: 4px;
    padding-top: 2px;
}

.cabecera .cabeceralogin .textologinusuario .numbercarro{
    position: absolute;
    background: transparent;
    width: 50%;
    /* height: 20px; */
    border-radius: 20px;
    top: 9px;
    /* padding-right: 4px; */
    vertical-align: middle;
    text-align: center;
    font-size: 12px;
    letter-spacing: 0px;
    /* z-index: 999; */
    color: #ffffff;
    left: 10px;
}


.cuerpo{
    overflow: hidden;
    transition: opacity 1s;
    min-height: 1335px;
    background-color: #ffffff;
    min-height: calc(100vh - 337px);
    /*box-shadow: 0px 3px 9px #d4d4d4;*/
}

/* #popup {
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 99999;
    width: 100%;
    height: 100%;
} */

.content-popup {
    margin: 5% 20%;
    position: relative;
    width: 60%;
    height: 75%;
    background-color:#FFFFFF;
    box-shadow: 0 2px 5px #666666;
    padding: 10px 25px 25px 25px;
    overflow: hidden;
}

.content-popup .h_1 {
    border-bottom: 1px solid #dddddd;
    margin-top: 5px;
    padding-bottom: 12px;
    color: #515859;
    font-weight: bold;
    font-size: 20px;
    letter-spacing: 1px;
}

.content-popup .popupcontent{
    text-align: left;
    overflow-y: auto;
    height: 90%;
}

.content-popup .popupcontent h2{
    padding-bottom: 7px;
    color: var(--color-principal);
    font-weight: bold;
    font-size: 15px;
    letter-spacing: 1px;
}

.content-popup .popupcontent p{
    color: #6e6e6e;
    font-size: 11px;
}

.close {
    position: absolute;
    right: 15px;
    margin-top: 2px;
}


.linkmenutop {
    width: 100%;
    margin: 10px;
    text-decoration: none;
    outline: 0px;
    text-transform: uppercase;
    color: var(--color-principal);
}

.linkmenutop a,
.linkmenutop span{
    color: var(--color-principal);
    font-weight: bold;
    outline: 0px;
    margin: 0 5px;
    font-size: 13px;
}
.linkmenutop span{
    color: #858585;
}
.linkmenutop a:hover{
    color: var(--color-principal);
}

.linkmenutop:active{text-decoration: none;color: #959595;}

.descripcionfinal{    
    margin: 5% 3% 3% 5%;
    width: 92%;
}
.descripcionfinal h2{margin-left: -25px !important;}

.descripcion_larga{color: #696868; margin-left: 3% !important;}
.descripcion_larga h2{ margin-left: 0% !important;}


/* -------------------------------------  VisualizandoPublica ----------------------------------------------*/
.VisualizandoPublica{
    margin: 50px auto 70px auto;
    max-width: 850px;
    padding: 20px 50px;
    background: #ffffff;
    text-align: center;
    box-shadow: 0px 3px 7px 0px rgba(59, 59, 59, 0.5);
}
.VisualizandoPublica .publicalinea1{
    text-transform: uppercase;
    font-weight: bold;
    font-size: 23px;
    color: #515859;
    letter-spacing: 1px;
}
.VisualizandoPublica .publicalinea2{
    font-weight: bold;
    font-size: 17px;
    color: var(--color-principal);
    letter-spacing: 1px;
    margin-top: 10px;
}
.VisualizandoPublica .publicalinea2 a{
    color: var(--color-principal);
    text-decoration: underline;
    display: inline-block !important;
}


/* -------------------------------------  buscaprod ----------------------------------------------*/
#bP_buscaprod .marges{
    padding-top: 0px !important;
}
#bP_buscaprod #bP_resultados{
    text-align: center;
    border-top: 1px solid rgb(224, 224, 224) !important;
    color: #ffffff !important;
}
#bP_buscaprod input[type=text]#bp_cerrar {
    background: none !important;
    border: none !important;
    border-bottom: 2px solid #ffffff !important;
    font-weight: bold;
    color: #ffffff !important;
}
#bP_buscaprod input[type=text]#bP_info_header {
    border-bottom: 2px solid #ffffff !important;
    font-weight: bold;
}
#bP_buscaprod .marges {
    background: rgba(115, 115, 115, 0.79) !important;
}

#bP_buscaprod  .teaser {
    box-shadow: 0px 0px 10px -2px rgba(0,0,0,0.75);
}
#bP_buscaprod  .teaser:hover {
    transition: none !important;
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.75);
}
#bP_buscaprod input[type=text]#bP_info {
    color: #ffffff !important;
    border-bottom: 2px solid #ffffff !important;
}

.textmodocatalogo{
    font-size: 22px;
    color: #515859;
    font-weight: bold;
    display: inline-block;
    margin-left: 15px;
}
/* ------------------------------------- FIN buscaprod ----------------------------------------------*/

/* ------------------------------------- Scroll ----------------------------------------------*/
/**/
/* width */
::-webkit-scrollbar {
  width: 6px;
}

/* Track */
::-webkit-scrollbar-track {
  background: #f1f1f1; 
}
 
/* Handle */
::-webkit-scrollbar-thumb {
  background: #888; 
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #555; 
}
/* ------------------------------------- Fin Scroll ----------------------------------------------*/








/* ------------------------------------- checkbox ----------------------------------------------*/

/* The container */
.container-checkbox {
    display: block;
    position: relative;
    padding-left: 27px;
    margin-bottom: 13px;
    cursor: pointer;
    color: #6e6e6e;
    font-size: 13px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
  }

  .container-checkbox a{
    color: var(--color-principal);
    font-weight: bold;
  }
  
  /* Hide the browser's default checkbox */
  .container-checkbox input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
  }
  
  /* Create a custom checkbox */
  .container-checkbox .checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 20px;
    width: 20px;
    background-color: #eee;
  }
  
  /* On mouse-over, add a grey background color */
  /* .container-checkbox:hover input ~ .checkmark {
    background-color: #ccc;
  } */
  
  /* When the checkbox is checked, add a blue background */
  .container-checkbox input ~ .checkmark {
    background-color: #ffffff;
    border: 1px solid #d9d9d9;
  }
  
  /* Create the checkmark/indicator (hidden when not checked) */
  .container-checkbox .checkmark:after {
    content: "";
    position: absolute;
    display: none;
  }
  
  /* Show the checkmark when checked */
  .container-checkbox input:checked ~ .checkmark:after {
    display: block;
  }
  
  /* Style the checkmark/indicator */
  .container-checkbox .checkmark:after {
    left: 5px;
    top: 1px;
    width: 6px;
    height: 11px;
    border: solid #5a5a5a;
    border-width: 0 3px 3px 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }
/* ------------------------------------- FIN checkbox ----------------------------------------------*/






/* ------------------------------------- POPUP ----------------------------------------------*/

#divpopup{position: absolute;top: 100px;z-index: 99999999;right: 0px;background-color: #178720;margin: 10px;padding: 11px 20px;font-weight: bold;    
	min-width: 200px;border-radius: 6px 6px 0px 6px;opacity: 0.7;color: white;text-align: center;transition: opacity 0.5s;opacity: 0;display: none;
    }
    
/* ------------------------------------- FIN POPUP ----------------------------------------------*/

footer{
    background: #f3f3f3;
} 

/*@media all and (max-width:1400px){
    .cabecera .proxtemp{
        margin-top: 33px;
        font-size: 13px;
    }
}*/

/* ------------------------------------- RecaptchaPUP ----------------------------------------------*/

.grecaptcha-badge{
    z-index: 9;
}

@media all and (max-width:1185px){ /*Modo tablet*/
    section {
        margin-left: 0px;
        margin-top: 80px;
        -webkit-box-shadow: inset 0px 0px 0px 0px rgba(86, 86, 86, 0.75);
        -moz-box-shadow: inset 0px 0px 0px 0px rgba(86, 86, 86, 0.75);
        box-shadow: inset 0px 0px 0px 0px rgba(86, 86, 86, 0.75);
    }

    
    .cabecera {
        overflow: hidden;
        height: 80px;
        /* background: #f6f6f6; */
        position: relative;
        z-index: 99999;
        padding: 17px;
        text-align: center;
        position: fixed;
        top: 0px;
        left: 0px;
        right: 0px;
        box-shadow: 0px 0px 10px -3px #9c9c9c;
    }

    .cabeceraagente{
        top: 35px;
    }
    
    .cabecera .cabeceralogin {
        width: 160px;
    }
    .cabecera .cabeceralogin .cabeceralogin_container label{
        display: none;
    }
    .cabecera .buttonmenu{
        display: inline-block ;
    }

    .cabecera .buscar_logued,
    .cabecera .buscar{
        width: calc(100% - 530px);

    }

    .cabecera .cabeceralogin .cabeceralogin_container{
        margin: 10px 10px 5px 0px;
    }

    .cabecera .cabeceralogin .idioma {
        margin-right: 0;
    }
}

@media all and (max-width:800px){ /*Modo movil*/
    .movil{display:block;}
    
    section {
        margin-top: 95px;
    }

    header .agentetop{
        padding: 0px 5px;
    }
    header .agentetop .info{
        flex-direction: column;
        font-size: 13px;
    }
    header .agentetop .info div{
        height: 16px;
    }
    header .agentetop .informacion {
        font-size: 12px;
        flex-direction: column;
    }
    header .agentetop .nombrecliente{
        height: 16px;
        display: block;
    }
    
    .cabecera{
        padding: 0px;
        height: 95px;
    }
    .cabecera .buscar{
        display: none;
    }
    .cabecera .movil .buscar {
        display: block;
        width: 100%;
        margin: 0px 0px;
    }
    .cabecera .cabeceralogin{
        width: 165px;
        padding: 2px 7px;
        height: 50px;
        float: right;
    }
    .cabecera #logo_header {
        width: 200px;
        height: 50px;
        margin-top: 0px;
    }
    .cabecera .buttonmenu {
        margin: 11px 20px;
        float: left;
    }
}

@media all and (max-width:450px){
    .cabecera .cabeceralogin {
        width: 160px;
        padding: 2px 0px;
    }
    .cabecera .buttonmenu {
        margin: 10px 10px;
    }

    .cabecera #logo_header {
        max-width: 134px;
    }
}


@media all and (max-width:360px){
    .cabecera .cabeceralogin {
        width: 110px;
    }
}
