.products_row {
    display: flex;
    flex-wrap: wrap;
}

.product_description {
    font-size:0.7em; 
    text-align:justify;
    word-break: break-all;
}
.product_container_client {
    background-color:rgba(255, 255, 255, 0.5);
    box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.3);
    position:relative;
    width: 32.3%;
    margin:0.4%;
    display: flex; 
    flex-direction: column;
    /*overflow: hidden;*/
}
.old_product_price,
.old_product_price+.product_currency {
    color:#4E4E4E;
}
.old_product_price{
    font-size: .9em;
}
.product_price {
    color:#000;
    font-size:1.1em;
    font-weight:bold;
}
.product_currency {
    font-size:0.7em;
}
.basket, .basket-info {
    /*background-color:rgba(255, 255, 200, 1);*/
}
.product_images{
    margin: 25px 0 0 0;
    height: 30%;
}
.product_images img{
    max-height:100%;
}
.total-row {
    /*background-color:rgba(255, 255, 255, 0.5);*/
    font-size: 1.3em !important;
}
.discount-badge{
    position: absolute;
    width: 100px;
    height: 50px;
    line-height: 75px;
    color: #fff;
    background: #D93325;
    text-align: center;
    top: -8px;
    left: -32px;
    font-size: 0.75em;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
}
.discount-badge-long {
    position: absolute;
    top:0;
    left:1em;
    width:97%;
    color: #fff;
    background: #D93325;
    text-align: center;
    font-size: 0.75em;
    background: -moz-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(217,51,37,1) 10%, rgba(217,51,37,1) 51%, rgba(217,51,37,1) 52%, rgba(217,51,37,1) 89%, rgba(255,255,255,0) 100%);
    background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%,rgba(217,51,37,1) 10%,rgba(217,51,37,1) 51%,rgba(217,51,37,1) 52%,rgba(217,51,37,1) 89%,rgba(255,255,255,0) 100%);
    background: linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(217,51,37,1) 10%,rgba(217,51,37,1) 51%,rgba(217,51,37,1) 52%,rgba(217,51,37,1) 89%,rgba(255,255,255,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#00ffffff',GradientType=1 );
    z-index: 2; /* It should be over possibly appeared gift-voucher badge (see .ribbon class). */
}
.line{
    position: absolute;
    width: 75px;
    border: 1px solid #636363;
    transform: rotate(-7deg);
    -webkit-transform: rotate(-7deg);
    -mos-transform: rotate(-7deg);
    -ms-transform: rotate(-7deg);
    -o-transform: rotate(-7deg);
    right: -5px;
    top: 10px;
} 
#bigProductImage{
    /*position: relative;*/
    z-index: -1;
    margin-top: auto;
}
div#thumbs {
    max-height: 520px;
    overflow: auto;
}
.thumb-wrap {
    width: 100px;
    height: 100px;
    border: 2px solid #ddd;
    float: left;
    overflow: hidden;
    margin: 5px 5px 0 0;
    position: relative;
    cursor: pointer;
    transition: all, 400ms;
}
.thumb-wrap:hover{
    border: 2px solid #009FE2;
}
.thumb-wrap.active {
    border: 2px solid #429E09;
}
.thumb-wrap img{
    max-width: 100%;
    max-height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto !important;
}
.popup-content{
    height: 95%;
}
.popup-content .row, .popup-content .col-md-9{
    height: 100%;
}
.popup-window{
    box-shadow: rgba(0, 0, 0, 0.5) 0px 5px 10px 1000px;
}

.product_data {
    width:100%;
    padding-bottom: 20px;
}
.product_data input[type='text'][name="q"] {
    max-width:30px;
    min-width:10px;
}
.shop-category {
    display: block;
    padding: 5px;
    background: rgba(255, 255, 255, 0.5);
    margin: 1px 0;
    box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.3);
    font-size: .9em;
    cursor: pointer;
}
.shop-category:hover{
    background: #fff;
}
.shop-category:active{
    box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.1);
    background: rgba(255, 255, 255, 0.8);
}
.shop-category.active{
    box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.1);
    background: rgba(255, 255, 255, 0.8);
    cursor: default;
}
button{
    box-shadow: none;
}
button.close:hover{
    background: transparent;
}
.basket-row table td{
    font-size: .8em;
    color: #333;
}
tr.product_in_basket {
    display: table-row;
}
.basket-row .table>tbody>tr>td,
.basket-row .table>tbody>tr>th,
.basket-row .table>tfoot>tr>td,
.basket-row .table>tfoot>tr>th, 
.basket-row .table>thead>tr>td, 
.basket-row .table>thead>tr>th{
    border-top: 0;
    border-bottom: 1px solid #ddd; 
}
.test{
    box-shadow: none;
}
button.close:hover{
    background: transparent;
}
.basket-row table td{
    font-size: .8em;
    color: #333;
}
tr.product_in_basket {
    display: table-row;
}
.basket-row .table>tbody>tr>td,
.basket-row .table>tbody>tr>th,
.basket-row .table>tfoot>tr>td,
.basket-row .table>tfoot>tr>th, 
.basket-row .table>thead>tr>td, 
.basket-row .table>thead>tr>th{
    border-top: 0;
    border-bottom: 1px solid #ddd; 
}

.shop-category {
    display: block;
    padding: 5px;
    background: rgba(255, 255, 255, 0.5);
    .shop-category{
        padding:15px;
    }
    .shop-category-list{
        margin: 15px 0 !important;
    }
    background: #fff;
}
.shop-category:active{
    box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.1);
    background: rgba(255, 255, 255, 0.8);
}
.shop-category.active{
    box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.1);
    background: rgba(255, 255, 255, 0.8);
    cursor: default;
}
[data-name="quantity"]{
    padding-right: 25px;
    min-width: 35px !important;
    padding: 2px 5px !important;
    font-size: .85em !important;
    color: #000;
    font-weight: 700;
    text-align: center !important;
}
.good-info{
    color: #13549a;
    position: absolute;
    left: 15px;
    bottom: -1px;
    cursor: pointer;
}
.good-info .popover{
    width:200px !important;
}
.product-image-wrap{
    overflow: hidden;
    position: relative;
}
@media screen and (max-width: 992px){
    .thumb-wrap{
        width:65px;
        height: 65px;
    }
    .popup-content{
        height: 85%;
    }
    .shop-category{
        padding:15px;
    }
    .shop-category-list{
        margin: 15px 0 !important;
    }
}
.animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    animation-iteration-count: infinite;
} 

@-webkit-keyframes bounce {
    0%, 20%, 53%, 80%, 100% {
        -webkit-transition-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
        transition-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }

    40%, 43% {
        -webkit-transition-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
        transition-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
        -webkit-transform: translate3d(0, -30px, 0);
        transform: translate3d(0, -30px, 0);
    }

    70% {
        -webkit-transition-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
        transition-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
        -webkit-transform: translate3d(0, -15px, 0);
        transform: translate3d(0, -15px, 0);
    }

    90% {
        -webkit-transform: translate3d(0, -4px, 0);
        transform: translate3d(0, -4px, 0);
    }
}

@keyframes bounce {
    0%, 20%, 53%, 80%, 100% {
        -webkit-transition-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
        transition-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
        -webkit-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }

    40%, 43% {
        -webkit-transition-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
        transition-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
        -webkit-transform: translate3d(0, -30px, 0);
        -ms-transform: translate3d(0, -30px, 0);
        transform: translate3d(0, -30px, 0);
    }

    70% {
        -webkit-transition-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
        transition-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
        -webkit-transform: translate3d(0, -15px, 0);
        -ms-transform: translate3d(0, -15px, 0);
        transform: translate3d(0, -15px, 0);
    }

    90% {
        -webkit-transform: translate3d(0, -4px, 0);
        -ms-transform: translate3d(0, -4px, 0);
        transform: translate3d(0, -4px, 0);
    }
}

.bounce {
    -webkit-animation-name: bounce;
    animation-name: bounce;
    -webkit-transform-origin: center bottom;
    -ms-transform-origin: center bottom;
    transform-origin: center bottom;
}
.product_name {
    word-break: break-all;
    hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    font-size:0.9em !important;
}

.basket-button {
    position: fixed;
    top:-1px;
    border-radius:0px 0px 0px 3px;
    right: 0;
    z-index: 1;
    width:160px;
    height: 50px;
    font-size: 1.4em;
}

.basket-price-label {
    position: fixed;
    top:48px;
    right:0;
    border-radius: 0px 0px 3px 3px;
    z-index: 1;
}

@media (max-width: 768px) {
    .basket-button {
        position: fixed;
        top:50px;
        border-radius:0px 0px 0px 3px;
        right: 4px;
        z-index: 1;
        width:160px;
        height: 50px;
        font-size: 1.4em;
    }
    .basket-price-label {
        position: fixed;
        top:98px;
        right:5px;
        border-radius: 0px 0px 3px 3px;
        z-index: 1;
    }
}
@media (max-width: 600px) {
    .product_container_client {
        background-color:rgba(255, 255, 255, 0.5);
        box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.3);
        position:relative;
        width: 99%;
        margin-top:4px;
        /*overflow: hidden;*/
    }
}