@font-face {
    font-family: "OpenSans";
    src: url(../fonts/OpenSans/OpenSans-Regular.ttf);
    font-weight: 400;
}
@font-face {
    font-family: "OpenSans";
    src: url(../fonts/OpenSans/OpenSans-Bold.ttf);
    font-weight: 700;
}
@font-face {
    font-family: "OpenSans";
    src: url(../fonts/OpenSans/OpenSans-Light.ttf);
    font-weight: 300;
}
*{
    font-family: 'OpenSans';
    padding: 0;
    margin: 0;
    font-weight: 400;
    box-sizing: border-box;
}
html{
    background: #f2f2f2;
}
.container{
    max-width: 1128px;
    width: 100%;
    margin: 0 auto;
    padding: 0 16px;
}
.header__wrapper{
    margin-bottom: 20px;
    background-color: #fff;
    margin-bottom: 25px;
}
.header-topline__wrapper{
    background-color: #212121;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    
}
.header-topline__a{
    color: #ccc;
    transition: all 0.35s;
    text-decoration: none;
    line-height: 32px;
    font-size: 12px;
    font-weight: 300;
}
.header-topline__a:hover{
    color: #fff;
}
.header-topline__inner{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.header-topline__s-m{
    list-style: none;
    width: 100%;
    max-width: 150px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.header-topline__s-m li{
    margin: 0;
    padding: 0;
}
.header-topline__s-m li a{
    width: 24px;
    height: 24px;
    margin: 4px 0;
    font-size: 12px;
    line-height: 1;
    display: -ms-flexbox;
    display: flex;
    color: #ccc;
    border: 1px solid;
    border-radius: 100%;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.35s;
}
.header-topline__s-m li a.linkedin:hover{
    background-color: #006193;
    color: #fff;
}   
.header-topline__s-m li a.facebook:hover{
    background-color: #3b5998;
    color: #fff;
}
.header-topline__s-m li a.twitter:hover{
    background-color: #00aced;
    color: #fff;
}
.header-main__inner{
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 25px;
    padding-bottom: 25px;
}
.header-main__logo{
    transition: all 0.35s;
    color: #212121;
    text-decoration: none;
}
.header-main__logo:hover{
    opacity: 0.8;
}
.header-main__logo-h{
    display: flex;
    align-items: center;
}
.header-main__logo-h i{
    font-size: 24px;
    display: inline-block;
    margin-right: 4px;
    color: red;
}
.header-main__logo-h span{
    font-size: 18px;
    font-weight: 700;
}
.header-main__logo-desc{
    font-size: 14px;
    display: block;
    color: #7e7e7e;
    font-weight: 400;
    margin-top: 5px;
}
.header-main__search{
    display: flex;
    align-items: center;
}
.header-main__search-input{
    border: 1px solid #998899;
    background: #fff;
    width: 350px;
    padding: 5px 9px;
    font-size: 16px;
    margin-right: 12px;
}
.header-main__search-btn{
    font-size: 0;
    padding: 6px 27px;
    width: auto;
    vertical-align: middle;
    border: 1px solid #FF0000;
    border-radius: 2px;
    background-color: #FF0000;
    cursor: pointer;
    transition: all 0.35s;
}
.header-main__search-btn:hover{
    background-color: #ed0000;
    border-color: #ed0000;
}
.header-main__search-btn img{
    filter: invert(100%) sepia(31%) saturate(884%) hue-rotate(205deg) brightness(122%) contrast(108%);
}
.page-h__wrapper{
    padding-bottom: 48px;
    background-color: #fff;
    margin-bottom: 16px;
    padding-top: 32px;
    position: relative;
}
.page-h__wrapper::before{
    content: "";
    position: absolute;
    bottom: 0;
    display: block;
    width: 100%;
    height: 32px;
    content: '';
    background-color: #f2f2f2;
}
.page-h__wrapper::after{
    content: "";
    border-right: 548px solid transparent;
    border-left: 548px solid transparent;
    left: 50%;
    width: 0;
    height: 0;
    margin-right: -50%;
    -ms-transform: translate(-50%,0);
    transform: translate(-50%,0);
    border-top: 32px solid #fff;
    background-color: #f2f2f2;
    position: absolute;
    bottom: 0;
    display: block;
}
.page-h__inner h1{
    font-size: 40px;
    font-weight: 400;
    margin: 0;
    color: #212121;
}
.page-h__inner p{
    font-size: 16px;
    font-weight: 400;
    line-height: 1.4;
    color: #212121;
    margin: 16px 0;
}
.cards__wrapper{
    margin-top: 30px;
}
.section-h2{
    font-size: 32px;
    font-weight: 400;
    margin: 0 0 16px;
}
.cards__list{
    display: flex;
    list-style: none;
    flex-wrap: wrap;
    margin-bottom: 32px;
}
.cards__item {
    width: calc(100% / 3 - 20px);
    margin: 10px;
    position: relative;
    box-shadow: 0 3px 6px rgba(0,0,0,.16),0 3px 6px rgba(0,0,0,.23);
    transition: all 0.35s;
    height: 200px;
}
.cards__item:hover{
    opacity: .75;
    box-shadow: 0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);
}
.cards__item a{
    font-size: 20px;
    text-decoration: none;
    color: #212121;
    background: transparent;

}
.cards__item a img{
    width: 100%;
    height: 200px;
    object-fit: cover;
}
.cards__item a span{
    position: absolute;
    bottom: 0;
    display: block;
    overflow: hidden;
    width: 100%;
    padding: 8px;
    white-space: nowrap;
    text-overflow: ellipsis;
    background-color: rgba(255,255,255,.8);
    font-size: 20px;
    font-weight: 400;
}
.specialists__item{
    position: relative;
    display: flex;
    width: 100%;
    padding: 16px;
    background-color: #fff;
    transition: all 0.35s;
    box-shadow: 0 3px 6px rgba(0,0,0,.16),0 3px 6px rgba(0,0,0,.23);
    margin: 0 0 24px;
    transition: all 0.35s;
}
.specialists__item:hover{
    box-shadow: 0 1px 3px rgba(0,0,0,.12),0 1px 2px rgba(0,0,0,.24);
}
.specialists__item__logo img{
    width: 146px;
    height: 146px;
    margin-right: 16px;
    margin-bottom: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    object-fit: cover;
}
.specialists__item__info{
    width: 100%;
}
.specialists__info__h{
    font-size: 18px;
    font-weight: 700;
    display: block;
    overflow: hidden;
    width: 100%;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: #212121;
    transition: all 0.35s;
    text-decoration: none;
}
.specialists__info__h:hover{
    color: red;
}
.specialists__info__location{
    font-size: 14px;
    margin-top: 4px;
    color: #7e7e7e;
}
.specialists__info__location i{
    margin-right: 4px;
}
.specialists__info__location a{
    text-decoration: underline;
    color: #7e7e7e;
    font-weight: 400;
}
.specialists__info__location a:hover{
    text-decoration: none;
}
.specialists__info__categories{
    font-size: 12px;
    line-height: 1;
    display: block;
    margin-top: 12px;
    margin-right: 8px;
    padding: 4px 8px;
    color: #7e7e7e;
    border: 1px solid #7e7e7e;
    border-radius: 2px;
    width: fit-content;
    text-decoration: none;
    transition: all 0.35s;
}
.specialists__info__categories:hover{
    color: red;
    border-color: red;
}
.specialists__info__desc{
    display: flex;
    justify-content: space-between;
    font-size: 14px;
    position: relative;
    width: 100%;
    margin-top: 16px;
    color: #7e7e7e;
}
.specialists__info__desc p{
    font-weight: 400;
}
.specialists__info__desc p b{
    font-weight: 700;
}
.specialists__info__desc .red-btn{
    font-size: 14px;
    font-weight: 700;
    display: block;
    float: right;
    margin: 0 0 16px 16px;
    padding: 8px 16px;
    text-decoration: none;
    color: red;
    border: 1px solid;
    border-radius: 2px;
    transition: all 0.35s;
    height: fit-content;
}
.specialists__info__desc .red-btn:hover{
    color: #fff !important;
    border: 1px solid red !important;
    background-color: red !important;
}
.specialists__item__stars{
    position: absolute;
    top: -8px;
    right: 0;
    padding: 0 8px;
    font-size: 16px;
    line-height: 30px;
    color: #fff;
    background-color: red;
}
.specialists__item__stars::before{
    content: "";
    top: 0;
    border-top: 16px solid red;
    position: absolute;
    left: -16px;
    display: block;
    width: 0;
    height: 0;
    border-left: 16px solid transparent;
}
.specialists__item__stars::after{
    position: absolute;
    left: -16px;
    display: block;
    width: 0;
    height: 0;
    content: '';
    border-left: 16px solid transparent;
    bottom: 0;
    border-bottom: 16px solid red;
}
.specialists__item__stars span{
    position: absolute;
    top: 0;
    right: -4px;
    display: block;
    overflow: hidden;
    width: 4px;
    height: 38px;
}
.specialists__item__stars span::before{
    position: absolute;
    right: 0;
    display: block;
    width: 8px;
    height: 38px;
    content: '';
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    background-color: red;
}
.specialists__item__stars span::after{
    position: absolute;
    right: 0;
    bottom: 0;
    display: block;
    width: 8px;
    height: 8px;
    content: '';
    opacity: .5;
    border-radius: 4px;
    background-color: #7e7e7e;
}
.home-locations__wrapper{
    padding: 32px 0 16px 0;
}
.home-locations__list{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0;
}
.home-locations__item{
    width: 23%;
    margin: 0 0 24px 0;
}
.home-locations__item a{
    font-size: 20px;
    display: block;
    text-decoration: underline;
    color: #212121;
    transition: all 0.35s;
}
.home-locations__item a:hover{
    text-decoration: none;
    color: red;
}
.reviews__wrapper{
    padding: 32px 0 16px;
    margin-bottom: 16px;
}
.reviews__list{
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    padding: 0;
    list-style: none;
    flex-direction: column;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.reviews__item{
    border-bottom: 1px solid #c5c5c5;
    margin: 0 0 24px;
    padding: 0 0 24px;
}
.reviews__item__h{
    font-weight: 700;
    display: block;
    margin-bottom: 16px;
    color: #212121;
    font-size: 16px;
    text-decoration: none;
    line-height: 1.4;
    transition: all 0.35s;
}
.reviews__item__h:hover{
    color: red;
}
.reviews__item__info{
    display: flex;
    margin-bottom: 16px;
    font-size: 12px;
}
.reviews__item__info .stars{
    margin-right: 16px;
    color: #7e7e7e;
}
.reviews__item__info .stars b{
    color: red;
}
.reviews__item__info .date{
    margin-right: 16px;
    color: #7e7e7e;
}
.reviews__item__info .txt{
    font-weight: 700;
    color: #212121;
}
.reviews__item__text{
    font-size: 14px;
    color: #7e7e7e;
}
.reviews__item__link{
    font-size: 14px;
    font-weight: 700;
    display: inline-block;
    margin-top: 16px;
    text-transform: uppercase;
    color: red;
    border-bottom: 2px solid;
    transition: all 0.35s;
    text-decoration: none;
}
.reviews__item__link:hover{
    border-bottom: 2px solid transparent;
}
.footer-up__wrapper{
    position: relative;
    padding-top: 80px;
    background-color: #fff;
}
.footer-up__wrapper::before{
    position: absolute;
    top: 0;
    bottom: 0;
    display: block;
    width: 100%;
    height: 32px;
    content: '';
    background-color: #fff;
}
.footer-up__wrapper::after{
    position: absolute;
    top: 0;
    bottom: 0;
    content: '';
    background-color: #fff;
    left: 50%;
    width: 0;
    height: 0;
    margin-right: -50%;
    -ms-transform: translate(-50%,0);
    transform: translate(-50%,0);
    border-top: 32px solid #f2f2f2;
    border-right: 548px solid transparent;
    border-left: 548px solid transparent;
}
.footer-up__inner{
    display: flex;
    justify-content: space-between;
}
.footer-up__side{
    width: 48%;
    margin-bottom: 48px;
}
.footer-up__h{
    font-size: 24px;
    font-weight: 400;
    margin: 24px 0;
}
.footer-up__list{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    list-style: none;
}
.footer-up__item{
    width: 48%;
    margin-bottom: 16px;
}

.footer-up__item a{
    font-size: 16px;
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: #212121;
    transition: all 0.35s;
    text-decoration: none;
    display: flex;
    flex-direction: column;
}
.footer-up__item a:hover{
    color: red;
}
.footer__wrapper{
    font-size: 12px;
    line-height: 2;
    padding: 16px 0;
    color: #ccc;
    background-color: #212121;
}
.footer__inner p{
    margin: 12px 0;
}
.footer__inner p a{
    color: #ccc;
}
.footer__inner p a:hover{
    text-decoration: none;
}
.main-divided__inner{
    display: flex;
    justify-content: space-between;
}
.main-divided__side-b{
    max-width: 728px;
    width: 100%;
}
.main-divided__side-sm{
    max-width: 336px;
    width: 100%;
	
	
}
.main-divided__side-sm2{
    max-width: 900px;
    width: 100%;
	
	
}
.main-divided__img{
    width: 100%;
    height: 300px;
    box-shadow: 0 3px 6px rgba(0,0,0,.16),0 3px 6px rgba(0,0,0,.23);
    object-fit: cover;
    margin-bottom: 16px;
}

.cards-side-sm__list a img{
    height: 120px;
    width: 100%;
}
.cards-side-sm__list .cards__item{
    height: 120px;
    width: 100%;  
}
.breadcrumb__wrapper{
    width: 100%;
    background-color: #fff;
}
.breadcrumb__inner p{
    padding-top: 8px;
}
.breadcrumb__inner p{
    font-size: 12px;
    text-transform: uppercase;
}
.breadcrumb__inner p a{
    text-transform: uppercase;
    color: #212121;
    text-decoration: none;
    transition: all 0.35s;
}
.breadcrumb__inner p a:hover{
    color: red;
}
.breadcrumb__inner p span{
    text-transform: uppercase;
    color: #7e7e7e;
}
.main-divided__side-sm .specialists__info__desc p{
    width: 200px;
}
.listing__img{
    width: 100%;
    margin-bottom: 16px;
    padding-top: 32px;
}
.section-p{
    font-size: 16px;
    line-height: 1.4;
    color: #212121;
    margin: 16px 0;
}
.listing__p-link-a{
    transition: all 0.35s;
    color: #25b;
    text-decoration: none;
}
.listing__p-link-a:hover{
    color: red;
}
.section-p b{
    font-weight: 700;
}
.listing__p-link{
    margin-bottom: 16px;
    padding-bottom: 16px;
}
.listing__table__wrapper{
    padding-top: 32px;
    margin-bottom: 16px;
    padding-bottom: 16px;
}
.listing__table{
    display: flex;
    border: 0.5px solid #c5c5c5;
}
.listing__column{
    max-width: 50%;
    width: 100%;
    display: flex;
    flex-direction: column;
}
.listing__item{
    padding: 8px 16px;
    text-align: center;
    border: 0.5px solid #c5c5c5;
    width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.listing__item a{
    text-decoration: none;
    transition: all 0.35s;
    color: #25b;
    
}
.listing__item a:hover{
    color: red;
}
.red-btn{
    display: inline-block;
    margin: 16px 16px 0 0;
    padding: 8px 16px;
    border-radius: 2px;
    color: red;
    border: 2px solid;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.35s;
}
.red-btn:hover{
    color: #fff !important;
    border-color: red !important;
    background-color: red !important;
}
.reviews__item-no-border{
    border-bottom: 0;
    margin-bottom: 0;
}
.h-contacts-sp{
    padding-top: 32px;
}
.adress-p-sp{
    padding-bottom: 32px;
}
.a-view-full{
    color: #25b;
    text-decoration: none;
    transition: all 0.35s;
}
.a-view-full:hover{
    color: red;
}
.form{
    margin-bottom: 16px;
    padding-top: 32px;
    padding-bottom: 16px;
}
.form__label{
    display: block;
    margin-bottom: 16px;
}
.form__input-txt{
    line-height: 1;
    height: 36px;
    padding: 10px;
    font-size: 16px;
    line-height: 1;
    position: relative;
    display: -ms-flexbox;
    display: flex;
    box-sizing: border-box;
    width: 100%;
    color: #7e7e7e;
    border: 1px solid #c5c5c5;
    border-radius: 4px;
    background-color: #fff;
    -ms-flex-align: center;
    align-items: center;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.form__label .red-btn{
    background-color: #fff;
}
.form__input--select {
    padding: 0 0 0 10px;
    line-height: 1.2;
}
.form__label--select{
    position: relative;
}
.form__label--select::after{
    content: "";
    z-index: 101;
    position: absolute;
    bottom: 12px;
    right: 10px;
    display: block;
    width: 0;
    height: 0;
    border-top: 9px solid #212121;
    border-right: 7px solid transparent;
    border-left: 7px solid transparent;
}
.form__label--select::before{
    z-index: 100;
    position: absolute;
    right: 1px;
    bottom: 1px;
    display: block;
    width: 34px;
    height: 34px;
    content: '';
    background-color: #e5e5e5;
    border-radius: 4px;
}










@media screen and (max-width: 1128px) {
    .page-h__wrapper::after, .footer-up__wrapper::after{
        border-right: 364px solid transparent;
        border-left: 364px solid transparent;
    }
    .main-divided__side-sm .specialists__info__desc p{
        width: 100%;
    }
    .container{
        max-width: 750px;
    }
    .cards__item{
        width: calc(100% / 2 - 20px);
    }
    .home-locations__item{
        width: 31%;
    }
    .main-divided__inner{
        flex-direction: column;
    }
    .main-divided__side-sm{
        max-width: 100%;
    }
    .main-divided__side-b{
        max-width: 100%;
    }
}
@media screen and (max-width: 760px) {
    .page-h__wrapper::after, .footer-up__wrapper::after{
        border-right: 234px solid transparent;
        border-left: 234px solid transparent;
    }
    .header-main__inner{
        flex-direction: column;
    }
    .header-main__search{
        margin-top: 16px;
        width: 100%;
    }
    .header-main__search-input {
        width: 100%;
    }
    .cards__item{
        height: 120px;
    }
    .cards__item a img{
        height: 120px;
    }
    .specialists__item{
        flex-direction: column;
    }
    .specialists__item__logo img{
        height: 240px;
        width: 100%;
        max-width: 450px;
        margin-bottom: 20px;
    }
    .home-locations__item{
        width: 48.7%;
    }
    .footer-up__inner{
        flex-direction: column;
    }
    .footer-up__side{
        width: 100%;
        margin-bottom: 32px;
    }
    
}
@media screen and (max-width: 500px) {
    .header-topline__a{
        display: none;
    }
    .header-topline__s-m{
        max-width: 100%;
    }
    .header-topline__s-m li a{
        width: 30px;
        height: 30px;
        font-size: 12px;
    }
    .page-h__wrapper::after, .footer-up__wrapper::after{
        border-right: 160px solid transparent;
        border-left: 160px solid transparent;
    }
    .cards__item{
        width: 100%;
    }
    .home-locations__item{
        width: 100%;
    }
    .footer-up__list{
        flex-direction: column;
    }
    .footer-up__item{
        width: 100%;
    }
    .header-main__logo-desc{
        display: none;
    }
    .header-main__logo {
        margin-bottom: 6px;
    }
}

/* admin panel start */
.admin-panel{
        padding-right: 15px;
        padding-left: 15px;
        margin-right: auto;
        margin-left: auto;
        font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;

}


@media (min-width: 768px){
.admin-panel {
    width: 750px;
}
}
@media (min-width: 992px){
    .admin-panel {
        width: 970px;
    }
    }
.admin-panel h1{
    font-size: 36px;
    margin-top: 20px;
    margin-bottom: 10px;
    font-weight: 500;
    line-height: 1.1;
    color: #333333;
}
.table-responsive {
    min-height: .01%;
    overflow-x: auto;
}
.table>tbody>tr>td, .table>tbody>tr>th, .table>tfoot>tr>td, .table>tfoot>tr>th, .table>thead>tr>td, .table>thead>tr>th {
    padding: 8px;
    line-height: 1.42857143;
    vertical-align: top;
    border-top: 1px solid #ddd;
}
.admin-restaurant{
    color: #337ab7;
    text-decoration: none;
}
.admin-restaurant:hover{
    color: #333333;
    text-decoration: underline;
}
.admin-panel pre {
    display: block;
    padding: 9.5px;
    margin: 0 0 10px;
    font-size: 13px;
    line-height: 1.42857143;
    color: #333;
    word-break: break-all;
    word-wrap: break-word;
    background-color: #f5f5f5;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-family: Menlo,Monaco,Consolas,"Courier New",monospace;

}

.admin-panel .btn-danger {
    color: #fff;
    background-color: #d9534f;
    border-color: #d43f3a;
}
.admin-panel .btn {
    display: inline-block;
    padding: 6px 12px;
    margin-bottom: 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.42857143;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-image: none;
    border: 1px solid transparent;
    border-radius: 4px;
}
/* admin panel end */
