body{
    overflow-y:scroll;
    font-family: var(--font-body-family);
    font-size: var(--body-txt-font-size);
}
.bs-main.bs-main{
    padding:0;
}


/******************
        Sucursales 
*******************/

.bs-table {
    display:flex;
    flex-wrap:wrap;
}

.bs-table table {
    width: 100%;
    margin-bottom: 1rem;
    color: #212529;
}

.bs-table table td{
    vertical-align: top;
    border-top:1px solid var(--gray-500);
}

.bs-table div {
    width:50%;
}


/**********************
    Alert
***********************/
.alert{
    color:var(--primary-contrast);
    background:var(--primary-color);
    border-color:var(--primary-color);
}
/*************************
    Inputs
**************************/
.form-control{
    border-radius: var(--default-border-radius);
    border-color: var(--input-border-color);
    color: var(--input-txt-color);
    background: var(--input-bg-color);
}
.form-control option:hover{
    background: var(--primary-color);
}

.custom-control-input:checked~.custom-control-label::before{
    background-color: var(--primary-color);
    border-color: var(--primary-color);
    color: var(--primary-contrast);
    box-shadow:none;
}

.form-grid form{
    display:grid;
    grid-template-columns: auto auto auto
}
.form-grid div:not(.form-group){
    grid-row: 2/3;
    grid-column: 1/-1;
}
.form-grid .form-group{
    grid-row: 1/2
}
.form-grid form .form-group .form-control{
    border-radius:0;
    margin-right: -1px;
}

.form-grid form .form-group .form-control{
    border-radius:var(--default-border-radius) 0 0 var(--default-border-radius);
    background:transparent;
    border-color:var(--primary-color);
}

.form-grid form .form-group .btn{
    border-radius: 0 var(--default-border-radius) var(--default-border-radius) 0;
    padding-top:5px;
    padding-bottom:5px;
}


.custom-control-input.is-invalid~.custom-control-label, .was-validated .custom-control-input:invalid~.custom-control-label{
    font-weight:var(--font-bold);
}
.custom-control-input.is-invalid~.custom-control-label::before, .was-validated .custom-control-input:invalid~.custom-control-label::before{
    border-width:2px;
}
.custom-control-input.is-invalid~.custom-control-label a, .was-validated .custom-control-input:invalid~.custom-control-label a{
    text-decoration:underline;
    color:#dc3545;
}

/***************************
    Filter
****************************/
.bs-collection-filter .panel-collapse{
    max-height:200px;
    overflow-y:auto;
}
/**************************
Pagination
***************************/
.page-link{
    border:0px none;
    border-radius:var(--default-border-radius);
    margin:0 .25rem;
    background:var(--footer-bg-color);
}
.page-link:hover{
    color:var(--primary-color);
}
/***************************
    Badge
****************************/
.badge-primary{
    background: var(--primary-color);
    color: var(--primary-txt-color);
}
.badge-secondary{
    background: var(--secondary-color);
    color: var(--secondary-contrast);
}
/**********************************
    TITULOS
***********************************/
 h1 ,h2 ,h3, h4, h5, h6,
.h1,.h2,.h3,.h4,.h5,.h6{
    font-family: var(--font-title-family);
}
.bs-title-home{
    font-weight:var(--font-regular);
    color:var(--title-color);
    text-align:center;
    margin-top:2rem;
}
.bs-title,.bs-title:hover{
    color: var(--home-title-color);
    text-transform: var(--title-transform);
    font-weight: var(--title-weight);
    display:flex;
    align-items:center;
    text-align:center;
    justify-content:center;
    padding: 2rem 0 1rem;
    white-space: nowrap; /*texto en 1 linea*/
}


/**********************************
    Migas de Pan
***********************************/
.breadcrumb, .bs-breadcrumb{background: var(--breadcrumb-bg-color, --element-bg);}



/*****************************
    Imagenes medios de pago
******************************/
.bs-pay-method{
    opacity:0.5;
}

/***********************
    Blog
************************/
.bs-blog-article{
    text-align:center;
    padding:1rem;
    display:block;
}
.bs-blog-article__img{
    border-radius: var(--default-border-radius);
    overflow: hidden;
    
}
.bs-blog-article__title{
    padding:1rem 0 0;
    font-size: 14px;
    font-weight: var(--font-regular);
}
.bs-blog-article__content{
    color:var(--body-txt-default-color);
    font-size: 12px;
}
.bs-blog-article:hover{
    background: var(--element-bg);
}

/**********************
    Banners
***********************/

.bs-banners{
    margin:2rem 0;
    
}

.bs-banners .bs-img-square picture {
    border-radius: var(--product-border-radius);  
}

.bs-banners__title {
    font-family: var(--font-title-info-home);
    font-size: 1.4rem;
    padding: .5rem 1rem;
    text-align: center;
    color: var(--lv1-txt-color);
    text-transform: capitalize;
    font-family: 'Lemo';
}
.bs-banner__img:hover::before{
    content:"Ver Ahora";
    text-align:center;
    padding:1rem;
    z-index:10;
    position:absolute;
    bottom:0;
    width:100%;
    background: #00c2d699;
    color:var(--primary-contrast);
} 

    
/**********************
footer
***********************/
.bs-footer__site-description{
    background: url(textura.jpg);
    border-radius: 10px;
}
@media screen and (min-width:768px){
    .bs-footer__site-description{
        background:none;
        margin-top: 46px;
    }   
}
/* media queries */ 

@media screen and (min-width:768px){
    
    .bs-article-title::before,
    .bs-article-title::after,
    .bs-home-title::before,
    .bs-home-title::after{
        max-width:100px;
        min-width:40px;
    }
}

@media screen and (min-width:1400px){
    .container-xxl, .container{
        max-width:1320px;
    }
}
/*****************************
    PARCHE ASPECT RATIO
    --aspect-ratio= alto/ancho
****************************/
.bs-img-squeare{display: block;}
.bs-img-square picture img {
    object-fit: var(--img-square-fit, contain);
    border-radius: var(--product-border-radius);
}
.bs-img-square::after{padding-bottom: calc( var(--aspect-ratio,1) * 100%);}

/*******************************
    Marcas
*******************************/
.bs-brands__item{
        background:transparent;
        display:block;
        padding: var(--slider-margin);
        border-radius: var(--default-border-radius);
        position:relative;
    }
    .bs-brands__item::after{
        transition:all .25s ease;
        content:"";
        position:absolute;
        top:0;
        bottom:0;
        left:0;
        right:0;
        background:rgba(0,0,0,0.125);
        opacity:0;
    }
    .bs-brands__item:hover::after{
        opacity:1
    }