/* STYLE TIENDA ONLINE */

@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400&display=swap');
/* @import url('https://fonts.googleapis.com/css2?family=Antonio:wght@100;200;300;400;500;600;700&display=swap'); */
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200;300;400;500;600&display=swap');

/* @font-face {
    font-family: 'roboto';
    src: url('../fonts/roboto/Roboto-Regular.ttf') format('truetype');
} */

@font-face {
    font-family: 'Effra';
    src: url('../fonts/subset-EffraHeavy-Italic.woff2') format('woff2'),
        url('../fonts/subset-EffraHeavy-Italic.woff') format('woff');
    font-weight: 900;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'VAG Rounded';
    src: url('../fonts/subset-VAGRoundedBT-Regular.woff2') format('woff2'),
        url('../fonts/subset-VAGRoundedBT-Regular.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

:root{
    --rojo: #EE1d23;
    --rojo2: #b0252a;
    --verde: #23b24b;
    --verde2: #25944c;
    --turquesa: #4fc4cc;
    --gris1: #ebebeb;
    --gris2: #e3e3e3;
    --amarillo1: #fecc2b;
    --amarillo2: #ffcb21;
}

/* --bs-danger: #dc3545; */
/* --bs-success: #198754; */

.font_vag{font-family: 'VAG Rounded'; font-weight: 600; font-style: normal;}
.font_effra{font-family: 'Effra'; font-weight: 900; font-style: italic; }

.font_arial{font-family: 'arial'; font-weight: 400; }

.ls1{letter-spacing: 0.09em;}

.bg_rojo{background-color: var(--rojo) !important;}
.bg_rojo2{background-color: var(--rojo2) !important;}
.bg_verde{background-color: var(--verde) !important;}
.bg_verde2{background-color: var(--verde2) !important;}
.bg_turquesa{background-color: var(--turquesa) !important;}
.bg_gris1{background-color: var(--gris1) !important;}
.bg_gris2{background-color: var(--gris2) !important;}
.bg_amarillo1{background-color: var(--amarillo1) !important;}
.bg_amarillo2{background-color: var(--amarillo2) !important;}

.border_rojo{border-color: var(--rojo) !important;}

.btn-primary{
    background-color: var(--rojo) !important;
    border-color: var(--rojo) !important;
}

.btn-success{
    background-color: var(--verde) !important;
    border-color: var(--verde) !important;
}

.outline1{
    outline-style: solid;
    outline-width:1px;
    outline-color:lightgrey;
}

.a_:hover{
    color: white !important;
}

.w_full{width:100% !important}
.h_full{height:100% !important}

._small{font-size:0.75em}
/* .mt-5{margin-top: 2rem !important;}
.mb-5{margin-bottom: 2rem !important;}
.mt-5{
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
}

.pt-5{padding-top: 2rem !important;}
.pb-5{padding-bottom: 2rem !important;}
.pt-5{
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
} */
/* ***************************************************************************** */

body{
    
    margin: auto !important;
    /* padding: 0 10px !important; */

    /* font-family: 'Antonio', sans-serif; */
    
    font-family: 'Oswald', sans-serif;

    /* font-family: 'Effra'; font-weight: 900; font-style: italic; */
    /* font-family: 'VAG Rounded'; font-weight: 600; font-style: normal; */
}

.m_1200{
    max-width: 1200px;
    margin: auto;
}

.mw_1200{
    max-width: 1200px;
    margin: auto;
}

.mw_900{
    max-width: 900px !important;
    margin: auto;
}

.w_full{width:100%}

@media print {
    
    .no_print {visibility: hidden;}

    body * {
      /* visibility: hidden; */
    }

    .print, .print * {
        visibility: visible;
    }

    .print {
      position: absolute;
      left: 0;
      top: 0;
    }

}

.img1{width: 100%;}

.img_large{display: none}

@media screen and (min-width: 768px){
    .img_small{display: none !important}
    .img_large{display: block !important}
}

/* ******************************************************* */
/* FOLLETO */

/* ******************************************************* */
/* afecta a todos los placeholders, ppalmente para "buscar" */
::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: lightgrey !important;
  opacity: 1; /* Firefox */
}

/* afecta a todos los dropdown-menu */
.dropdown {position: relative !important;}

/* afecta a todos los input */
input:hover {
    outline: none !important;
    border-color: grey !important;
    -webkit-box-shadow: 0 0 10px grey !important;
            box-shadow: 0 0 10px grey !important;
}
input:focus {
    outline: none !important;
    border-color: var(--rojo) !important;
    -webkit-box-shadow: 0 0 10px var(--rojo) !important;
            box-shadow: 0 0 10px var(--rojo) !important;
}
/* 
#cargando{
    width: 100%;
    height: 100vh;
    left: 0%;
    top: 0%;
    position: absolute;
    background-color: rgba(0, 0, 0, 0.938);
    z-index: 100;
    text-align: center;
    
    
}
.cargando_title{
    position: relative;
    left: 50%;
    top: 30%;
    transform: translate(-50%);
    color: white;
    letter-spacing: 0.1em;
}
.cargando_title_spinner{
    position: relative;
    margin-top:60px;
} */

/* afecta a todos los dropdown */
.dropdown-menu {
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15)!important;
    margin-top: 0px !important;
    /* width: 100% !important; */
    max-width: 1200px !important;
}

/* afecta a todos los anchor */
a {
    text-decoration: none;
    color: inherit;
}

.page-link{
    cursor: default;
}

.cursor-pointer{cursor:pointer}
.cp{cursor:pointer}

.btn_shadow:hover {
    outline: none !important;
    border-color: grey !important;
    -webkit-box-shadow: 0 0 10px grey !important;
            box-shadow: 0 0 10px grey !important;
}

.btn_shadow:active {
    outline: none !important;
    border-color: var(--rojo) !important;
    -webkit-box-shadow: 0 0 10px var(--rojo) !important;
            box-shadow: 0 0 10px var(--rojo) !important;
}

.btn_green:hover {
    outline: none !important;
    background-color: green;
    color: white;
    border-color: rgb(0, 0, 0) !important;
    -webkit-box-shadow: 0 0 10px grey !important;
            box-shadow: 0 0 10px grey !important;
}

.hover_text_red:hover {
    outline: none !important;
    color: red;
    border-color: rgb(255, 0, 0) !important;
    -webkit-box-shadow: 0 0 10px grey !important;
            box-shadow: 0 0 10px grey !important;
}

.va-bottom{vertical-align: bottom;}
.va-middle{vertical-align: middle;}

.hover-dark:hover{
    color:#000 !important;
}

.bl_color1{
    /* border-left: 4px solid rgb(89, 180, 255) !important; */
    border-left: 4px solid var(--rojo) !important;
}
/* modif para los inputs type number */
.input_num{padding:0.375rem 0.3rem;}

/* textarea {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
} */

/* .border_green{border-color: green !important ;} */
/* .bg_green{background-color: green !important; color: #fff;} */

/* .bg_color_cel{background-color: #a8caff !important;} */
.bg_color_cel{background-color: var(--rojo) !important; color: white !important;}
/* ******************************************************* */
/* NAVBAR */
.navbar{
    font-family: roboto;
    font-size: 0.8em;
}


/* rayita de separación items de navbar */
.n_item:after {
    content: "";
    /* border-left: #CCC 1px solid; */
    position: absolute;
    margin-left: 8px;
    top: 25px;
    bottom: 25px;
}


/* afecta a todos los nav-link */
.nav-link{
    cursor: pointer;
    color:white !important;
    margin-bottom: 10px;
}

.nav-link:hover {
    /* background-color: white; */
    color: black !important;
}

.navbar_t2{
    display: none;
    font-size: 0.6em;
}



@media screen and (max-width: 768px){
    .n_item:after {
        border-left: none;
    }

    .navbar_t1{display: none;}
    /* .navbar_t2{display: block;} */
}
/* ******************************************************* */
/* HEADER LOGO - BUSCAR - CARRITO */

/* header top que se muestra si no está logueado: */
.header_no_login{
    width:100%;
    /* height:52.22px; */
    background-color: var(--rojo);
    padding: 0.75em;
    position: fixed;
    top: 0px;
    z-index: 100;

}

.header_buscar{
    /* margin: 30px 0 20px; */
    font-family: 'Roboto', sans-serif;
    position: fixed;
    top: 51px;
    /* top: 85px; */
    width: 100%;
    padding-bottom: 10px;
    z-index: 1000;
}

.header_buscar_navbar{
    font-family: 'Roboto', sans-serif;
    /* position: fixed; */
    /* top: 51px; */
    /* top: 85px; */
    width: 100%;
    /* padding-bottom: 10px; */
    /* z-index: 1000; */
}

.img_logo{
    width: 100%;
    object-fit: contain;
    /* overflow: visible; */
    /* cursor: pointer; */
    max-height: 80px;
}

.img_logo_navbar{
    object-fit: contain;
    cursor: pointer;
    /* max-height: 35px; */
    /* max-height: 70px; */
    max-height: 80px;
}

.img_logo_navbar_no_login{
    object-fit: contain;
    cursor: pointer;
    max-height: 70px;
}

.img_logo_footer{
    /* width: 100%; */
    object-fit: contain;
    max-height: 100px;
}

.icono1{
    transition: transform .1s; /* Animation */
}
.icono1:hover{
    transform: scale(1.2);
}

@media screen and (max-width: 768px){

    /* .img_logo{
        display: none;
    } */

    .carrito_header{
        display: none;
    }
}

.header_buscar_barra{
     vertical-align: middle;
}

.header_buscar h2{
    line-height: 1em;
    cursor: pointer;
}

.header_btns{
    text-align: right;
}

.header_btns button:focus {
    outline: none !important;
    border-color: var(--rojo) !important;
    -webkit-box-shadow: 0 0 10px var(--rojo) !important;
            box-shadow: 0 0 10px var(--rojo) !important;
}

.cant_carrito{
    background-color: #fff;
    color: var(--rojo) !important;
    font-size: 0.8em;
    font-weight: bold;
    padding: 3px 4px;
    border-radius: 50%;
    position: relative;
    right: 15px;
    bottom: 15px;
    z-index: 10;
    cursor: pointer;
    color: white;
}


@media screen and (max-width: 575px){
    
    .header_buscar{
        text-align: center;
    }

    .header_btns{
        text-align: center;
    }
    .header_btns button{
        margin: auto;
    }
}

@media screen and (max-width: 383px){

    #btn_registrarse{
        padding-left: 4px !important;
        padding-right: 4px !important;
    }
    #btn_ingresar{
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
}

/* ***************************************** */
/* CARRITO BUTTON FLOTANTE */
.carr_wrapper{
    position: fixed;
    bottom: 50px;
    right: 40px;
    width: 60px;
    height: 60px;
    color: #fff !important;
    background-color: #fff;
    /* border: 1px solid #000; */
    border-radius: 50% 50% 45% 50%;
    z-index: 100;
    text-align: center;
    /* clip-path: polygon(100% 0, 100% 53%, 85% 100%, 0 100%, 0 0); */
    /* -webkit-box-shadow: 0 0 10px 10px var(--verde) !important; */
            /* box-shadow: 0 0 10px 10px var(--verde) !important; */
  }

  .carr{
    object-fit: contain;
    width: 100%;
    cursor: pointer;
  }

.cant_carrito2{
    position: absolute;
    bottom: 40px;
    right: -15px;
    width: 35px;
    height: 35px;
    border: 3px solid white;
    background-color: var(--verde);
    font-size: 1em;
    font-weight: bold;
    padding: 3px 3px;
    border-radius: 50%;
    z-index: 10;
    cursor: pointer;
    color: white;
}
  
.precio_carrito2{
    bottom: 2px;
    right: 15px;
    width: 90px;
    height: 35px;
    border: 3px solid white;
    background-color: var(--verde);
    font-size: 1em;
    font-weight: bold;
    padding: 3px 3px;
    border-radius: 5%;
    position: relative;
    z-index: 10;
    cursor: pointer;
    color: white;
}
/* ******************************************************* */

.no_hover input:hover{
    outline: none !important;
    border-color: none !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
}
/* ******************************************************* */
/* CATEGORIAS */

.categorias {
    /* margin: 20px 0 30px; */
    /* margin: 58px 0 30px; */
    margin: 1px 0 30px;
    background-color: var(--rojo);
    text-align: center;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 2fr));
}

.categorias button {
    border: none;
    /* min-width: 2em; */
    padding: 8px 10px;
    background-color: var(--rojo);
    background-color: var(--rojo);
    color: white;
    font-size: 1em;
    text-transform: uppercase;
    letter-spacing: 1px;
    cursor: pointer;
    transition: 0.3s;
    border:1px solid white;
}


.categorias button:hover{
    /* background-color: rgb(180, 117, 0); */
    background-color: white;
    color: black;
}

.categorias button:focus{
    /* background-color: rgb(180, 117, 0); */
    background-color: white;
    color: black;
    -webkit-box-shadow: 0 0 10px var(--rojo) !important;
            box-shadow: 0 0 10px var(--rojo) !important;
}

@media screen and (max-width: 1100px){
    .categorias button {font-size: 1em;}
}

.dropdown-toggle::after {
    display: none !important;
}

/* ******************************************************* */
/* MENU SUBCATEGORIAS */

.menu_subcat{
    margin-right: 10px;
    letter-spacing: 0.1em;
}

.menu_subcat_title{
    background-color: black;
    color: white;
    padding: 5px 10px;
    letter-spacing: 0.2em;
    text-align: center;

}

.menu_subcat button{
    padding: 5px 15px;
    border-bottom: 1px solid lightgrey;
    background-color: white;
    color: black;
    transition: 0.3s;
    width: 100%;
    border: none;
    border-bottom: 1px solid lightgrey;
    text-align: left;
    font-size: 1.2em;
}

.menu_subcat button:hover{
    background-color: lightgrey;
    /* color: var(--rojo); */
    transform: scale(1);
    cursor: pointer;
}
.menu_subcat button:focus{
    /* background-color: grey; */
    background-color: var(--rojo);
    /* color: var(--rojo); */
    color: white;
    transform: scale(1);
    cursor: pointer;
}

/* ******************************************************* */
/* productos */

.grid_gral{
    display: grid;
    grid-template-columns: 2fr 10fr;
}


@media screen and (max-width: 575px){
    .menu_subcat{
        display: none;
    }

    .subcat_dropdown{
        display: block !important;
    }

    .grid_gral{
        grid-template-columns: 1fr
    }
}


.grid_prod{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    grid-auto-rows: 365px;
    gap: 0.5em;
    row-gap: 0.5em;
    margin-bottom: 30px;
}


.grid_prod_vacia h2{
    background-color: rgba(228, 228, 228, 0.76);
    color: white;
    text-align: center;
    font-size: 2.5em;
    letter-spacing: 0.1em;
    padding: 10px 0;
    margin-top: 20%;
}

.prod{
    position: relative;
    border: 1px solid lightgrey;
    padding: 10px;
    height: 365px;
    justify-self: center;
    width: 100%;
    /* max-width: 230px; */
    /* max-width: 165px; */
    max-width: 180px;
}

.prod:hover{
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.prod_lista{
    width: 100%;
}

.prod_pag{
    grid-column: 1/1;
}

.prod_promo{
    border-right: 1px solid lightgrey;
    /* border-radius: 5px; */
    padding: 10px;
    height: 340px;
    justify-self: center;
    /* max-width: 300px; */
    text-align: center;
    margin: auto;
}
.prod_promo_name_wrapper{
    height: 80px;
}
.prod_promo_name{
    text-align: center;
    font-size: 1.3em;
    margin-bottom: 1em;
}

.prod_precio{
    /* color: green; */
    color: rgb(17, 17, 17);
    font-weight: bold;
    padding: 5px 0;
    margin-bottom: 5px;
    text-align: center;
}


.prod_promo_precio_wrapper{
    padding: 5px 0;
    margin-bottom: 5px;
    text-align: center;
}

.prod_promo_precio{
    /* font-size: 1.1em; */
    font-weight: 500;
    padding: 5px 5px;
    margin-bottom: 5px;
    text-align: center;
    color: white;
    /* background-color: var(--verde2); */
    background-color: var(--rojo);
    display: block;
}

.prod_promo2_precio_wrapper{
    /* padding: 5px 0; */
    /* margin-bottom: 5px; */
    text-align: center;
}

.prod_promo2_precio{
    font-weight: 500;
    font-size: 0.9em;
    padding: 1px 0px 2px;
    /* margin-bottom: 5px; */
    text-align: center;
    color: white;
    background-color: var(--rojo);
    /* border-radius: 5px; */
}


.prod_promo_precio2{
    text-align: center;
    color: white;
    /* background-color: yellow; */
    background-color: var(--rojo);
    border-radius: 5px;
}
/* .prod_rojo{
    background-color: rgb(253, 165, 165);
    border-radius: 5px;
} */


/* ********************************** */
/* CARTEL PROMO OFERTA */
.prod_promo_oferta_wrapper{
    position: absolute;
    display: flex;
    flex-flow: row-reverse;
    top:-5px;
    right:-5px;
    /* width: 100%; */
    z-index:100;
} 

.prod_promo_oferta{
    background: red;
    text-align: center;
    font-size: 1rem;
    padding: 5px 10px;
    border-radius: 50%;
    color:white;
}

.prod_promo_oferta_wrapper_cont{
    position: absolute;
    display: flex;
    flex-flow: row-reverse;
    top: 16px;
    right: 17px;
    width: 100%;
    z-index:100;
    color: white;
    font-size: 0.8em;
    /* font-weight: bold; */
    text-align: center;
}

/* ********************************** */
/* OTROS CARTELITOS SOBRE PRODUCTO */
.prod_flags_wrapper{
    position: absolute;
    display: flex;
    flex-flow: row-reverse;
    /* width: 100%; */
    z-index:100;
}

.prod_flags_wrapper_importado{
    position: absolute;
    display: flex;
    flex-flow: row-reverse;
    /* width: 100%; */
    z-index:100;
    border: none;
}

.pfw1{top: 85px; left: -2px} /*precios cuidados*/
.pfw2{top: 50px; left: 8px} /*precios nuestros 110 2*/ 
.pfw3{top: 6px; left: 40px} /*producto importado top 70 right 5*/
.pfw4{top: 108px; right: 2px} /*sin tacc*/
.pfw5{top: 110px; left: -2px} /*precios justos*/

.prod_flag1{width: 45px;} /*precios cuidados*/
.prod_flag2{width: 25px;} /*precios nuestros*/
.prod_flag_importado{width: 25px !important;} /*producto importado*/
.prod_flag_importado2{width: 30px !important;} /*producto importado*/
.prod_flag4{width: 25px;} /*sin tacc*/


/* ********************************** */


/* .prod:hover{
    box-shadow: 0 0 20px rgba(78, 78, 78, 0.397);
} */
.prod button:hover{
    box-shadow: 0 0 10px rgba(78, 78, 78, 0.397);
}

.prod_img{
    /* border: 1px solid blue; */
    height: 150px;
    /* min-width: 170px; */
    min-width: 130px;
    text-align: center;
}

.prod_img img{
    position:relative;
    object-fit:contain;
    max-width: 100%;
    max-height: 140px;
}

.prod_info{
    /* border: 1px solid red; */
    height: 180px;
    cursor: default;
}

.prod_name{
    overflow: hidden;
    height: 80px;
    max-width: 180px;
    /* background-color: cadetblue; */
  
    /* These are technically the same, but use both */
  overflow-wrap: break-word;
  word-wrap: break-word;

  -ms-word-break: break-all;
  /* This is the dangerous one in WebKit, as it breaks things wherever */
  word-break: break-all;
  /* Instead use this non-standard one: */
  word-break: break-word;

  /* Adds a hyphen where the word breaks, if supported (No Blink) */
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}

.prod_descrip{
    text-align: center;
    /* height: 25px; */
    padding: 5px 0;
    /* font-size: 0.8em; */
    vertical-align: -10px;
}

.prod_descrip2{
    text-align: center;
    padding: 0;
    vertical-align: -10px;
}

.oferta{
    background-color: rgb(255, 45, 45);
    text-align: center;
    font-weight: 400;
    height: 30px;
    color: white;
    font-size: 1.2em;
    letter-spacing: 0.1em;
}

/* .prod_precio{
    color: rgb(17, 17, 17);
    font-weight: bold;
    padding: 5px 0;
    margin-bottom: 5px;
    text-align: center;
} */

.btn_group{
    /* border: solid red 1px; */
    display: inherit;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

.btn_agregar{
    /* padding: 0 0 0 20px; */
    text-align: center;
    margin: auto;
}

.btn_agregar_carr{
    text-align: center;
    margin: auto;
    border-top-right-radius: 0.25rem !important;
    border-bottom-right-radius: 0.25rem !important;
}

.btn_quitar_carr{
    /* text-align: center; */
    /* margin: auto; */
    border-top-left-radius: 0.25rem !important;
    border-bottom-left-radius: 0.25rem !important;
}

.btn_agregar button{
    /* padding: 8px 12px; */
    /* padding: 8px 0px ; */
    /* font-family: roboto; */
    /* font-size: 1em; */
    /* letter-spacing: 0.05em; */
    /* color: white; */
    /* background-color: rgb(68, 128, 240) !important; */
    /* background-color: var(--rojo) !important; */
    /* margin: auto; */
}

.btn_agregar_cant{
    /* padding: 8px 12px; */
    /* padding: 8px 10px; */
    min-width: 20px;
    height: 100%;
    font-family: roboto;
    font-size: 1em;
    letter-spacing: 0.05em;
    color: white;
    background-color: rgb(255, 255, 255) !important;
}


.deseado{
    padding: 6px 5px 5px 8px;
    position: absolute;
    top: 0px;
    left: 0px;
}

.heart:hover{
    -webkit-filter: drop-shadow( 0px 0px 2px rgb(255, 0, 0));
    filter: drop-shadow( 0px 0px 2px rgb(255, 0, 0));
}
.shadow1 {
    -webkit-filter: drop-shadow( 3px 3px 2px rgba(0, 0, 0, .7));
    filter: drop-shadow( 3px 3px 2px rgba(0, 0, 0, .7));
    /* Similar syntax to box-shadow */
  }
.sin_foto{
    margin: auto;
    position: relative;
    top: 10px;
    text-align: center;
    /* height: 150px; */
    color: lightgrey;
    font-size: 1em;
  }

  .img_mini{
      max-width: 50px;
  }
/* ******************************************************* */
/* CARRITO LISTA */

.table_1{
    font-size: 0.8em;
    max-width: 100vw !important;
}

.td-precio-linea{
    padding-right: 10px;
    width: 150px;
}

.carrito_descuento{display:inline-block}
.carrito_dto{display:none}

@media screen and (max-width: 768px){
    .td-imagen{
        display: none;
    }

    .td-precio-unidad{
        padding: 5px !important;
        min-width: 80px;
    }

    .td-precio-linea{
        width: 80px;
        padding: 10px !important;
        /* width: auto; */
    }
    
    .td-borrar{
        padding: 3px !important;
    }

    .td-borrar button{
        padding: 6px 2px;
    }

    .sm_display_none{
        display:none;
    }

    .sm_pe_5{
        padding-right: 5px !important;
    }

    
    .carrito_descuento{display:none}
    .carrito_dto{display:inline-block}

}

@media screen and (min-width: 576px){
    .nosm_display_none{
        display:none;
    }
}
/* ******************************************************* */
/* TOAST */

.toast_wrapper{
    top:5px; 
    z-index: 1500;
}

.toast{
    margin: 1px 5px;
}
/* ******************************************************* */
footer{
    max-width: 1200px;
    margin: auto;
    font-family: roboto;
    font-size: 0.8em;
    cursor: default;
    color: white;
    letter-spacing: 1px;
}

.foot_s1, .foot_s2{
    border-right: 1px solid lightgrey;
}

.footer_title{
    text-transform: uppercase;
    font-size: 1.2em !important;
}

footer .badge{
    /* background-color: var(--rojo); */
    background-color: var(--rojo);
    color: white !important;
    text-align: start !important;
}

.v_align1{vertical-align: -2px;}


@media screen and (max-width: 575px){

    footer{
        padding: 0 10px;
    }
    .foot_s1, .foot_s2{
        border-right: none;
        border-bottom: 1px solid lightgrey;
        padding: 20px 0;
    }
    .foot_s1{
        padding: 0 0 20px;
    }
    .foot_s3{
        padding: 20px 0 10px;
    }
}

/* *********************************************************************** */
/* INICIO */
/* ****************************** */
/* aparecer */
.appear {
    animation-name: appear;
    animation-duration: 0.3s;
}
@keyframes appear {
    from {opacity: 0;}
    to {opacity: 1;}
}
/* ****************************** */
/* SLICKS carousel*/
.slick_promo1{
    width: 100%;
    /* max-height:400px; */
    margin-top: 60px;
    /* border-radius: 5px; */
}

.slick_promo1 img{
    position:relative;
    object-fit:cover;
    object-position: top;
    width:100%;
    /* max-height: 400px; */
}


.promo2{
    margin: 60px 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 2em;
}

.promo2a{
    width: 100%;
    min-height: 200px;
    border: 1px solid var(--rojo);
    border-radius: 5px;
    background-color: var(--rojo);
}

.pos_rel{
    overflow: hidden;
    position: relative;
}

.at_bottom{
    position: absolute !important;
    bottom: 0;
    left: 0px;
}

@media screen and (max-width: 575px){
    .at_bottom{
        position: relative !important;
        margin-bottom: 0.75rem !important;
    }
}
.centered{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.slick_promo3{
    width: 100%;
    min-height:200px;
    border: 1px solid lightgrey;
    /* margin: 100px 0; */
}

.table_wrapper{
    /* max-height: 75vh; */
    overflow-y: auto;
}


/* *********************************************************************** */
/* SLICK MARCAS */
.slick_marcas{
    height: 100px;
    background-color: white;
    margin: 40px 0;
}

.slick_marcas img{
    position:relative;
    object-fit:contain; 
    width:100%;
    max-height: 100px;
    padding: 3px 0;
}

.img1_promo{
    position:relative;
    object-fit:cover; 
    width:100%;
    /* padding: 3px 0; */
    
}

.br1{border-radius: 30px;}

/* *********************************************************************** */
/* LOGIN */
.login_error_wrapper{
    height:100px;
    text-align: center;
}

/* *********************************************************************** */
/* REGISTRARSE */
/** SPINNER EN INPUT NUMBER *************************/
/* Chrome, Safari, Edge, Opera */
.no_spin_button::-webkit-outer-spin-button,
.no_spin_button::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
.no_spin_button[type=number] {
  -moz-appearance: textfield;
}
/* *********************************************************** */
.back_spinner_gral {
    display: none;
    position: fixed;
    z-index: 200;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0,0.4);
  }
/* *********************************************************************** */
/* MODAL */
/* The Modal (background) */
.modal {
    display: none;
    position: fixed;
    z-index: 200;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0,0.4);
  }
  
/* Modal Content/Box */
.modal-content {
    background-color: #fefefe;
    margin: 10% auto;
    padding: 0 0 10px 0;
    border: 1px solid #888;
    max-width: 600px;
    overflow: hidden;
    text-align: center;
}

.modal-content img{
    width: 100%;
    position: relative;
}

#contenido{margin-top: 45px;}

/* The Close Button */
.close {
    color: #aaa;
    padding-right: 10px;
    font-size: 3em;
    line-height: 0.8em;
    font-weight: bold;
}

.close:hover,
.close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}
/* ******************************** */
/* MODAL PRODUCTOS NUEVO */

.m_icon{
    position: relative;
    object-fit: contain;
    max-width: 80px;
    max-height: 40px;
}

.m_icon1{
    position: relative;
    object-fit: contain;
    max-width: 80px;
    max-height: 50px;
}

/* *********************************************************************** */
/* DROPDOWN CATEGORIAS ESTILO PROPIO*/
.dropdown-menu {
    overflow: hidden;
    overflow-y: auto;
    max-height: calc(100vh - 180px);
  }

  
/* width */
.col_dropdown::-webkit-scrollbar {
    width: 8px;
  }
  
  /* Track */
  .col_dropdown::-webkit-scrollbar-track {
    /* box-shadow: inset 0 0 2px grey; */
    background-color: rgb(233, 231, 231);
    border-radius: 5px;
  }
  
  /* Handle */
  .col_dropdown::-webkit-scrollbar-thumb {
    background: var(--rojo);
    border-radius: 5px;
  }

/* *************************************************** */
/* VER SOLO EL PRIMER SLIDE HASTA QUE CARGA */

.slick_header .slick-slide{
    /* display: none; */
    opacity: 0;
}

.slick_header .slick-slide:first-child{
    display: block;
    opacity: 1;
}

.slick-initialized .slick_header .slick-slide,
.slick-initialized .slick_header .slick-slide:first-child{
    display: block;
    opacity: 1;
}

.slick_header_lg{
    display: none !important;
}

@media screen and (min-width: 768px){

    .slick_header_sm{
        display: none !important;
    }

    .slick_header_lg{
        display: block !important;
    }

}
  
/* *********************************************************************** */
.dw{
    color: #b44343;
    font-weight: 200;
}

.dw:hover{
    color: #888;
}

.dw a:hover{
    color: #888 !important;
}

/* *********************************************************************** */
 /* AVISO INICIAL */
.aviso {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1010; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* aviso Content/Box */
.aviso-content {
  background-color: #fefefe;
  margin: 200px auto; /* 15% from the top and centered */
  padding: 20px;
  border: 1px solid #888;
  width: 80%; /* Could be more or less, depending on screen size */
}

/* The Close Button */
.aviso_cerrar {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.aviso_cerrar:hover,
.aviso_cerrar:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
} 

/* *********************************************************************** */

  .slick-prev {
    left: 1%;
  }
  .slick-next {
    right: 1%;
  }

  .slick-prev:before {
    color: var(--rojo);
  }
  .slick-next:before {
    color: var(--rojo);
  }

  
/* *********************************************************************** */
/* SPINNER */

#fondo{
    background-color: rgba(0,0,0,0.4);
    position: fixed;
    left: 0px; top: 0px;
    width: 100%;
    height: 100vh;
    display: none;
    z-index: 200;
}

#fondo2{
    background-color: rgba(0,0,0,0.4);
    position: relative;
    /* left: 0px; top: 0px; */
    width: 100%;
    height: 100%;
    display: none;
    margin: auto;
    text-align: center;
}

#spinner2{
    /* position: fixed; */
    /* left: 50%; */
    margin-top: 300px;
    /* transform-origin: -40px -40px; */
    display: none;
    z-index: 999;
}

#spinner{
    position: fixed;
    left: 50%; top:50%;
    /* transform-origin: -40px -40px; */
    translate: -50%;
    display: none;
    z-index: 999;
}

.lds-spinner {
    color: official;
    display: inline-block;
    position: relative;
    width: 80px;
    height: 80px;
  }
  .lds-spinner div {
    transform-origin: 40px 40px;
    animation: lds-spinner 1.2s linear infinite;
  }
  .lds-spinner div:after {
    content: " ";
    display: block;
    position: absolute;
    top: 3px;
    left: 37px;
    width: 6px;
    height: 18px;
    border-radius: 20%;
    background: #fff;
  }
  .lds-spinner div:nth-child(1) {
    transform: rotate(0deg);
    animation-delay: -1.1s;
  }
  .lds-spinner div:nth-child(2) {
    transform: rotate(30deg);
    animation-delay: -1s;
  }
  .lds-spinner div:nth-child(3) {
    transform: rotate(60deg);
    animation-delay: -0.9s;
  }
  .lds-spinner div:nth-child(4) {
    transform: rotate(90deg);
    animation-delay: -0.8s;
  }
  .lds-spinner div:nth-child(5) {
    transform: rotate(120deg);
    animation-delay: -0.7s;
  }
  .lds-spinner div:nth-child(6) {
    transform: rotate(150deg);
    animation-delay: -0.6s;
  }
  .lds-spinner div:nth-child(7) {
    transform: rotate(180deg);
    animation-delay: -0.5s;
  }
  .lds-spinner div:nth-child(8) {
    transform: rotate(210deg);
    animation-delay: -0.4s;
  }
  .lds-spinner div:nth-child(9) {
    transform: rotate(240deg);
    animation-delay: -0.3s;
  }
  .lds-spinner div:nth-child(10) {
    transform: rotate(270deg);
    animation-delay: -0.2s;
  }
  .lds-spinner div:nth-child(11) {
    transform: rotate(300deg);
    animation-delay: -0.1s;
  }
  .lds-spinner div:nth-child(12) {
    transform: rotate(330deg);
    animation-delay: 0s;
  }
  @keyframes lds-spinner {
    0% {
      opacity: 1;
    }
    100% {
      opacity: 0;
    }
  }
  