.firm-title {
    font-size: 20px;
}

.categories-list .glyphicon {
    font-size: 10px;
}

.firm-menu {
    background: #fefcea;
    background: linear-gradient(to top, #b0a64f, #f1da36);
    margin: 10px -10px;
}

.firm-view {
    box-shadow: 0px 0px 16px 0px #000000;
}

.firm-menu.nav > li > a:hover,
.firm-menu.nav > li > a:focus,
.firm-menu.nav > li.active {
    color: #fff;
    background: linear-gradient(to top, #AB9F54, #d5be11);
    border-radius: 0;
}

.firm-logo-container .logo {
    height: auto;
    width: auto;
    max-height: 32px;
    margin: 0 0 0 0;
    max-width: 100%;
}

.firm-item .logo {
    border-radius: 5px;
}

.firm-item .addresses-list {
    margin-bottom: 0;
}

.firm-item .firm-navigation-link-list {
    padding: 0;
}

.firm-item .logo-container {
    text-align: center;
    position: relative;
    height: 160px;
    width: 160px;
    display: inline-flex;
    flex-basis: 160px;
    padding: 0;
    margin-left: 15px;
}

.firm-item .logo-block {
    max-height: 100%;
    overflow: hidden;
    position: absolute;
    /* left: 0;
    right: 0; */
    border-radius: 5px;
    margin: 0 auto;
    max-width: 160px;
}

.firm-item .logo-block .likes {
    position: absolute;
    bottom: 5px;
    right: 5px;
    text-decoration: none;
    background: rgba(255,255,255,0.2);
    border-radius: 20%;
    padding: 0 2px;
}

.firm-item .logo-block > img {
    width: 100%;
    height: auto;
}

.firm-item .productRate {
    width: 80px;
    height: 16px;
    display: inline-block;
}

.firm-logo-container {
    max-width: 20%;
    margin-right: 20px;
}

.firm-title-container {
    height: 32px;
    /*margin: 5px 15px;*/
    max-width: calc(80% - 35px);
}

.firm-item .titleBlock,
.firm-item .firm_last_sale,
.firm-item .firm-product-block span.firm-product-title{
    position: relative;
    overflow: hidden;
    white-space: nowrap;
}

.firm-item .titleBlock:after,
.firm-item .addresses-list li:after,
.firm-item .categories-list:after,
.firm-item .firm_last_sale:after,
.firm-item .firm-product-block span.firm-product-title:after{
    content: " ";
  //  background: linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
    width: 30px;
    height: 100%;
    top: 0;
    right: 0;
    position: absolute;
}

.firm-item .titleBlock:after {
    width: 60px;
}


.firm-item .addresses-list li,
.firm-item .categories-list{
    display: block;
    position: relative;
    overflow: hidden;
    white-space: nowrap;
}

.firm-item .firm-feedback-container {
    position: absolute;
    right: 0;
    top: 7px;
    z-index: 2;
}

.firm-title-container h4 {
    margin-top: 5px;
}

.firm-feedback-container a {
    margin-top: 5px;
}

.color-box .color-box-item {
    display: inline-block;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    margin-left: 5px;
    border: 1px solid #d7d7d7;
}

.user-name-container {
    margin-bottom: 26px;
}

.firm_last_sale {
    margin-top: 5px;
}

.firm-item .firm-products{
    margin-top: 5px;
}

.firm-item .firm-product-block {
    position: relative;
    overflow: hidden;
    margin: 2px 0;
    display: flex;
    justify-content: space-between;
}

.firm-item .firm-product-block:before {
    content: " ";
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 0;
    border-bottom: 1px dashed #ccc;
}

.firm-item .firm-product-block span {
//    background: #fff;
    overflow: hidden;
    white-space: nowrap;
    display: block;
    position: relative;
}

.firm-item .firm-product-block span.firm-product-title {
    /*float: left;*/
    padding-right: 20px;
    /*max-width: 70%;*/
    margin-right: 20px;
}

.firm-item .firm-product-block span.firm-product-price {
    /*float: right;*/
    /*max-width: 20%;*/
    flex-shrink: 0;
}

.firm-item .logoRow {
    display: flex;
}

/* Vertical Offset Bottom */
.vert-offset-top-12 {
    margin-top: 12em;
}

.vert-offset-top-11 {
    margin-top: 11em;
}

.vert-offset-top-10 {
    margin-top: 10em;
}

.vert-offset-top-9 {
    margin-top: 9em;
}

.vert-offset-top-8 {
    margin-top: 8em;
}

.vert-offset-top-7 {
    margin-top: 7em;
}

.vert-offset-top-6 {
    margin-top: 6em;
}

.vert-offset-top-5 {
    margin-top: 5em;
}

.vert-offset-top-4 {
    margin-top: 4em;
}

.vert-offset-top-3 {
    margin-top: 3em;
}

.vert-offset-top-2 {
    margin-top: 2em;
}

.vert-offset-top-1 {
    margin-top: 1em;
}

.vert-offset-top-0 {
    margin-top: 0;
}

/* Vertical Offset Bottom */
.vert-offset-bottom-12 {
    margin-bottom: 12em;
}

.vert-offset-bottom-11 {
    margin-bottom: 11em;
}

.vert-offset-bottom-10 {
    margin-bottom: 10em;
}

.vert-offset-bottom-9 {
    margin-bottom: 9em;
}

.vert-offset-bottom-8 {
    margin-bottom: 8em;
}

.vert-offset-bottom-7 {
    margin-bottom: 7em;
}

.vert-offset-bottom-6 {
    margin-bottom: 6em;
}

.vert-offset-bottom-5 {
    margin-bottom: 5em;
}

.vert-offset-bottom-4 {
    margin-bottom: 4em;
}

.vert-offset-bottom-3 {
    margin-bottom: 3em;
}

.vert-offset-bottom-2 {
    margin-bottom: 2em;
}

.vert-offset-bottom-1 {
    margin-bottom: 1em;
}

.vert-offset-bottom-0 {
    margin-bottom: 0;
}

.model-gallery .likesContainer {
    position: absolute;
    bottom: 5px;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
}

.model-gallery .likes {
    text-decoration: none;
    background: rgba(255,255,255,0.2);
    border-radius: 20%;
    padding: 0 2px;
}

.ymaps-block {
    width: 300px;
}

.ymaps-block .imgBlock {
    text-align: center;
}

.ymaps-block .imgBlock img {
    /*max-width: 160px;*/
    max-height: 100%;
    width: 200px;
    height: auto;
    border-radius: 5%;
}

.fastBalloon {
    display: flex;
    justify-content: space-between;
    /*max-width: 150px;*/
    white-space: nowrap;
}

.fastBalloon .fastBalloonImg {
    overflow: hidden;
    border-radius: 50%;
    border: 1px solid #000;
    width: 40px;
    height: 40px;
    margin-right: 20px;
}

.fastBalloon .fastBalloonImg img {
    width: auto;
    height: 100%;
}

.fastBalloon .fastBalloonContent {

}

.fastBalloon .fastBalloonContent span {
    color: #999;
}
