:root {
    --button-color: #34ce57;
    --text-button-color: #052454;
    --text-card: #3d5170;
    --line-card: #cfcbcb;
    --bg-menu: #052454;
}

@font-face {
    font-family: "Montserrat-Regular";
    src: url("../../fonts/Montserrat/Montserrat-Regular.ttf")
}

@font-face {
    font-family: "Montserrat-Black";
    src: url("../../fonts/Montserrat/Montserrat-Black.ttf")
}

@font-face {
    font-family: "Montserrat-Bold";
    src: url("../../fonts/Montserrat/Montserrat-Bold.ttf")
}

@font-face {
    font-family: "Montserrat-SemiBold";
    src: url("../../fonts/Montserrat/Montserrat-SemiBold.ttf")
}

@font-face {
    font-family: "PTSansBold";
    src: url("../../fonts/PTSansBold/PTSansBold.ttf")
}

@font-face {
    font-family: "PTSansRegular";
    src: url("../../fonts/PTSansRegular/PTSansRegular.ttf")
}

a:hover {
    text-decoration: none;
    color: inherit;
}

.mb-10 {
    margin-bottom: 10px;
}

.mb-20 {
    margin-bottom: 20px !important;
}

.mb-30 {
    margin-bottom: 30px !important;
}

.mb-40 {
    margin-bottom: 40px !important;
}

.mb-50 {
    margin-bottom: 50px !important;
}

.mt-10 {
    margin-top: 10px !important;
}

.mt-20 {
    margin-top: 20px !important;
}

.mt-30 {
    margin-top: 30px !important;
}

.mt-40 {
    margin-top: 40px !important;
}

.mt-50 {
    margin-top: 50px !important;
}
.clearfix{
    clear: both;
}
.red{
    color: red;
}
.green{
    color: green;
}
.gold{
    color: #d38f26;
}
body, html {
    margin: 0;
    padding: 0;
    font-family: Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}

dl, ol, ul {
    margin-top: 0;
    margin-bottom: 0;
}

/*******Навигация*******/
.nav-link {
    padding: .5rem .8rem;
}
.navbar-icon {
    display: none;
    float: right;
}

.navigation {
    background-color: var(--bg-menu);
    box-shadow: 0 10px 20px rgba(5, 36, 84, 0.1);
}

.navigation a {
    color: #DBDEE3;
}

.nav-item {
    float: left;
    position: relative;
}
.nav-item img{
    width:20px;
    margin-top: -3px;
    margin-left: -12px;
}

.navbar-content ul {
    float: left;
}

.navbar-content ul li:first-child img, .navbar-content ul li:first-child a {
    float: left;
}

.navbar-content ul li:first-child img {
    margin-top: 8px;
}

.navbar-content ul li:first-child a {
    padding-left: 5px;
}

.navbar-content {
    margin-bottom: 0;
}

.navbar-content ul li:last-child a{
    color: var(--text-button-color);
    background-color: var(--button-color);
    border-radius: 3px;
}
.signup-mobile{
    color: var(--text-button-color);
    background-color: var(--button-color);
    border-radius: 3px;
    padding: .5rem 1rem;
    margin-top: 20px;
}
a.navbar-brand {
    font-weight: bold;
    /*width:5%;*/
}
.navbar {
    height: 65px;
    padding-left: 7px;
}
.nav-item a.active-menu {
    color: #fff;
    border-bottom: 1px solid #DBDEE3;
}
.navbar-content ul{
    list-style-type: none;
}
.nav-item-favorit{
    position: relative;
}
.count-favorit{
    position: absolute;
    top: 1px;
    right: -1px;
    font-size: 14px;
}
.nav-item .img-circle{
    position: absolute;
    width: 70%;
    top: 5px;
    right: -6px;
}
.nav-item-favorit a{
    color: #000;
}
.breadcrumbs{
    height: max-content;
    padding: 5px 0;
    background-color: #f3f4f9;
    margin-bottom: 15px;
}
.breadcrumbs ul{
    padding: 10px 0;
}
.breadcrumbs ul > li {
    display: inline;
    /*color: #33507d;*/
    color: #9a9a9a;;
    /*padding: 0 7px;*/
}
.breadcrumbs ul > li a{
    color: #33507d;
}
.nav-item-favorit{
    margin: 0 10px;
}
.nav-item .favorit-img-navigation{
    margin-left:0;
    width: 28px;
    margin-top: 6px;
}

/*******END Навигация*******/

/*******Мобильное меню*******/
    /*Стили кнопки*/
.hamburger {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    cursor: pointer;
    width: 40px;
    height: 40px;
    border: 1px solid #0E7318;
    background: #fff;
    padding: 5px;
    border-radius: 8px;
}

.btn__hamb {
    position: relative;
    display: block;
    width: 100%;
    height: 4px;
    background: #0E7318;
    cursor: pointer;
}

.btn__hamb div {
    width: 100%;
    height: 100%;
}

.btn__hamb:before, .btn__hamb:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    background: #0E7318;
}

.btn__hamb:before {
    top: -8px;
}

.btn__hamb:after {
    top: 8px;
}

/*Стили мобильного меню*/
.mobile-menu {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 100;
}

@media (min-width: 768px) {
    .mobile-menu {
        padding-top: 0;
    }
}

/*получпрозрачный фон*/
.mobile-menu .mm__bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(20, 20, 20, 0.8);
    z-index: 100;
}

/*Контейнер мобильного меню, именно он выезжает слева*/
.mobile-menu .mm__wrapper {
    visibility: hidden;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    transition: all .4s ease-in-out;
    overflow-y: auto;
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 200;
    touch-action: auto;
    -ms-touch-action: auto;
    background: rgb(248, 247, 253);;
}

@media (min-width: 768px) {
    .mobile-menu .mm__wrapper {
        width: 35%;
    }
}

@media (min-width: 1200px) {
    .mobile-menu .mm__wrapper {
        width: 25%;
    }
}

/*Стили крестика закрытия меню*/
.mm__header .close-btn {
    position: absolute;
    top: 0;
    right: 0;
    margin-right: 15px;
    margin-top: 15px;
}

.close-btn {
    position: relative;
    width: 20px;
    height: 20px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    cursor: pointer;
}

.close-btn::before {
    width: 2px;
    height: 25px;
    left: 6px;
    top: 4px;
}

.close-btn::after {
    height: 2px;
    width: 25px;
    top: 15px;
    left: -5px;
    /* right: 10px; */
}

.close-btn:before, .close-btn:after {
    content: "";
    background: #000;
    position: absolute;
}

.close-btn--red:before, .close-btn--red:after {
    background: #000000;
}

.mm_body {
    width: 100%;
    padding: 25px;
}

.mm_body a {
    color: var(--text-button-color);
}

.mm_body p{
    margin-top: 0;
    margin-bottom: 1rem;
    border-bottom: 1px solid #afbbcd;
    text-align: center;
    padding-bottom: 10px;
    padding-right: 20px;
}
.mm_body p:first-child{
    margin-top: 25px;
}
.mm_body p:last-child{
    border-bottom: none;
}
.mm_body{
    margin-bottom: 40px;
}
.mm_body .icon-search-black{
    width: 30px;
}
.mm_body .active-menu-mobile {
    font-weight: bold;
    border-bottom: 4px solid #7d93b4;
}

/*******END Мобильное меню*******/

/*******Main главной страницы*******/
.wrapper-banner {
    height: 500px;
    width: 100%;
    background-image: url(../img/main-banner-2.jpg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}

.wrapper-banner h1 {
    padding-top: 10%;
    padding-left: 12%;
    padding-right: 5%;
    color: #fff;
    font-size: 3.5rem;
}

.wrapper-banner h2 {
    padding-left: 12%;
    padding-right: 5%;
    color: #dfe8e9;
    font-size: 1.8rem;
}

.search {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100px;
    width: 100%;
    background-color: #fff;
    border-radius: 5px;
    margin-top: -50px;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.85);
}

.search .row {
    height: 30px;
    width: 100%;
    padding: 0 30px;
}

.search-item {
    width: 100%;
    text-align: center;
    padding: 0;
}

.search-item select {
    width: 90%;
    height: 100%;
    background: #fff;
    border: 1px solid var(--button-color);
    padding-left: 7px;
    color: var(--text-button-color);
}
.slider-user .search-item select{
    width: 100%;
}

.search-item:first-child input {
    padding-left: 7px;
}

.search-item input {
    border: 1px solid var(--button-color);
    width: 90%;
    padding: 5px 0;
}

.search-item input[type="button"] {
    background-color: var(--button-color);
    color: #fff;
}

.page-search .search{
    margin-top: 50px;
    box-shadow: 0 0 15px rgba(173, 173, 173, 0.85);
}
.wrapper-search{
    margin-bottom: 50px;
}
.wrapper-search .h2-section {
    margin: 20px 0 20px;
}
.wrapper-search p {
    margin-bottom: 0.5rem;
}

.twitter-typeahead{
    display: block!important;
}
.tt-menu {
    background-color: rgb(255, 255, 255);
    outline: rgb(244, 215, 231) solid 1px;
}

.tt-dataset {
    padding: 5px 10px 10px;
}

.tt-selectable {
    margin-top: 10px;
}
/*******END Main главной страницы*******/

/*******Категории*******/
.item-category img {
    width: 30%;
    height: auto;
    /*margin: 5%;*/
}

.h2-section {
    margin: 20px 0 40px;
    font-weight: bold;
}

.item-category {
    border-radius: 5px;
    background-color: rgb(248, 247, 253);
    padding: 20px;
    transition: 1s;
    border: none;
    margin-bottom: 20px;
}

.item-category:hover {
    /*border: 2px solid var(--button-color);*/
    box-shadow: 0 0 10px var(--button-color);
    transform: scale(1.06);
}

.item-category p {
    margin: 20px 0;
    font-size: 1.5rem;
    text-decoration: none;
}

a .item-category p {
    color: var(--text-button-color);
}

.item-category .cnt {
    display: flex;
    align-items: center;
    width: max-content;
    min-width: 40px;
    background-color: rgba(0, 0, 0, 0.44);
    color: #fff;
    text-align: center;
    text-decoration: none;
}

.item-category .cnt span {
    width: 100%;
    text-align: center;
}

.category .read-more, .slider-user .read-more, .review .read-more, .news .read-more, .gallery  .read-more, .contact .read-more, .reviews-page .read-more, .gallery .read-more p{
    text-align: center;
    margin-top: 50px;
}

.category .read-more a, .slider-user .read-more a, .review .read-more a, .news .read-more a, .gallery  .read-more a,  .contact .read-more button,  .cabinet .read-more button, .read-more button, .reviews-page .read-more a, .gallery .read-more p{
    margin: 0 auto;
    outline: 1px solid var(--button-color);
    padding: 10px 20px;
    color: var(--text-button-color);
    transition: all .5s;
}

.review .read-more a, .read-more button {
    color: var(--button-color);
}

.category .read-more a:hover, .slider-user .read-more a:hover, .review .read-more a:hover, .news .read-more a:hover, .gallery  .read-more a:hover, .contact .read-more button:hover, .cabinet .read-more button:hover, .read-more button:hover, .reviews-page .read-more a:hover, .gallery .read-more p:hover {
    background-color: var(--button-color);
    color: #fff;
    cursor: pointer;
}
.read-more button{
    background-color: #fff;

}
.card-user {
    margin-bottom: 30px;
}

/*******END Категории*******/

/*******END Слайдер фотографов*******/
.item-user{
    min-height: 220px;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}

.slider-user a {
    text-align: center;
}

.card {
    width: 95%;
    height: max-content;
    margin: -20px auto 0;
}

.card span {
    color: var(--text-card);
}

.card-name {
    margin: 20px 0;
    font-size: 18px;
    color: var(--text-button-color);
    border-bottom: 1px solid var(--line-card);
    padding-bottom: 15px;
}

.card-city, .card-function, .card-service {
    text-align: left;
    padding-left: 10%;
    margin: 4px 0;
}

.card-city img {
    width: 7%;
    height: auto;
    display: inline-block;
    margin-top: -4px;
}

.card-function img {
    width: 8%;
    height: auto;
    display: inline-block;
    margin-top: -4px;
}

.card-service img {
    width: 7%;
    height: auto;
    display: inline-block;
    margin-top: -4px;
}

.card-information {
    padding-bottom: 20px;
    border-bottom: 1px solid var(--line-card);
}

.card-price {
    padding-top: 20px;
    padding-bottom: 20px;
    color: var(--text-card);
}

.card-price span {
    color: var(--button-color);
    font-size: 25px;
}

.swiper-pagination {
    position: static;
    margin-top: 30px;
}

.swiper-button-next, .swiper-button-prev {
    color: #fff;
    top: 45%;
}
/*******END Слайдер фотографов*******/

/*******Отзывы*******/
.review {
    height: max-content;
    background-image: url("../img/review-banner-3.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 50%;
    padding-bottom: 80px;
}

.review h2, .review .sub-caption {
    color: #fff;
    margin-bottom: 5px;
}
.review h2 {
    margin: 50px 0 5px;
}
.review .sub-caption {
    color: #fff;
}
.block-review {

}
.review-item {
    width: 100%;
    height: 250px;
    margin-top: 30px;
    /*background: rgba(255, 255, 255, 0.1);*/
}
.review-item img {
    border-radius: 100px;
    width: 15%;
}
.quote {
    position: relative;
    text-align: left;
    padding: 30px 20px;
    background: rgba(255, 255, 255, 0.1);
    box-shadow: 0 0 10px var(--button-color);
    margin: 5px;
}
.quote-mark {
    fill: #d2d4df;
}
.quote-text {
    font-family: 'Quicksand', sans-serif;
    color: #151515;
    letter-spacing: .01em;
}
.quote-meta {
    display: flex;
    align-items: center;
}

.quote-meta > * + * {
    margin-left: 20px;
}
.quote-meta .icon {
    margin-left: 0;
}
.quote-avatar {
    position: relative;
    display: block;
    border-radius: 50%;
    max-width: 75px;
    flex-shrink: 0;
}
.quote-cite {
    display: block;
    font-weight: 500;
}
.quote-info {
    flex-grow: 1;
}
.quote-info > * + * {
    margin-top: 0;
}
.quote-text, .quote-cite {
    color: #fff;
}
.quote-subtitle {
    letter-spacing: .025em;
    color: #17a6e8;
}
* + .quote-text {
    margin-top: 11px;
}
* + .quote-main {
    margin-top: 20px;
}
.swiper-pagination-bullet-active {
    outline: 1px solid #fff;
}
.swiper-pagination-bullet {
    outline: 1px solid #ffffff;
}
/*******END отзывы*******/

/*******Новости*******/
.news {
    height: max-content;
    padding-bottom: 100px;
}
.news .h2-section, .gallery .h2-section, .contact .h2-section, .cabinet .h2-section {
    margin-bottom: 20px;
}
.block-news, .block-gallery, .block-contact, .block-cabinet {
    margin-top: 10px;
}
.block-news .post-main .read-more, .block-review .read-more  {
    color: var(--text-button-color);
    background-color: var(--button-color);
    border-radius: 3px;
    padding: 10px 15px;
    margin: 20px 0;
}
.news p, .gallery p, .contact p {
    margin-bottom: 40px;
}
.post {
    background: #ffffff;
    transition: .3s;
    outline: 1px solid #e3e3e3;
}
.post p {
    letter-spacing: .025em;
}
.post:hover {
    transform: translateY(-8px);
    box-shadow: 0 13px 16px 0 rgba(0, 0, 0, 0.13);
}
.post-media {
    position: relative;
    display: block;
}
.post-media::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.1);
    transition: .22s ease-in;
    opacity: 0;
    visibility: hidden;
}
.post-media:hover::after {
    opacity: 1;
    visibility: visible;
}
.post-image {
    width: 100%;
    height:auto;
}
.post-main {
    padding: 25px 15px;
}
.post-main .post-title {
    font-size: 20px;
    font-weight: 600;
}
.post-title {
    max-width: 300px;
    margin-bottom: 20px;
}
.post-title a {
    letter-spacing: 0;
    color: var(--text-button-color);
}
.post-time {
    display: block;
    font: 500 14px/16px 'Quicksand', sans-serif;
    color: #17a6e8;
    letter-spacing: .1em;
    margin: 20px 0;
}
/*******END Новости*******/

/*******Счетчик*******/
.counter {
    height: 300px;
    background-image: url(../img/parallax-counter-2.jpg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    background-color: var(--bg-menu);
}
.block-counter {
    padding-top: 6%;
}
.counter-image {
    width: 30%;
    height: 100%;
    float: left;
    padding: 4% 5%;
}
.counter-image img {
    width: 100%;
    height: auto;
    border: 1px solid #fff;
    border-radius: 100px;
}
.wrapper-desc-count {
    width: 70%;
    float: right;
}
.counter-cnt {

    font-size: 3rem;
    color: #fff;
}
.counter-desc {
    color: #fff;
}
/*******END Счетчик*******/

/*******О нас*******/

.about {
    padding-bottom: 100px;
}
.about img {
    float: left;
    margin-right: 30px;
}
.about .h2-section {
    margin-bottom: 20px;
}
.about-text {
    margin-top: 40px;
}
.about-text img {
    width: 100%;
    height: auto;
}
.about .read-more {
    color: var(--text-button-color);
    background-color: var(--button-color);
    border-radius: 3px;
    padding: 10px 15px;
    margin: 20px 0;
}
.wrapper-about-text{
    position: relative;
}
.wrapper-read-more{
    position: absolute;
    /*width:100%;
    text-align: center;*/
    bottom: 6px;
}

/*******END О нас*******/

/*******Footer*******/
.footer {
    height: auto;
    background-color: var(--bg-menu);
    color: #fff;
    padding: 30px 0;
}
.footer h2 {
    font-size: 1.5rem;
    color: #d7dee9;
    border-bottom: 1px solid #4e6d9d;
    width: 50%;
    padding-bottom: 0.5rem;
}
.block-menu-footer {
    margin-bottom: 30px;
}
.block-menu-footer a {
    color: #d7dee9;
}
.block-menu-footer p {
    margin-bottom: 0.4rem;
}
.copyright {
    margin: 4rem 0 2rem;
    font-size: .8rem;
}
/*******END Footer*******/

/******* Галерея *******/
.gallery-item{
    height: 100px;
    background-position: center;
    background-size: cover;
    width: 100%;
    border: 4px solid #fff;
    border-radius: 5px;
    -webkit-transition: all .5s;
    -moz-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
    position: relative;
    z-index: -1;
}
.gallery-item img{
    position:absolute;
    top: 35%;
    left: 40%;
    width: 20%;
    height: auto;
    opacity: 0.7;

    top:35%;left:40%;width:20%;height:auto;opacity:0.7;
}
.gallery-item:hover{
    transform: scale(1.1);
    z-index: 99999;
}
.block-gallery{
    padding: 0;
}
.gallery .read-more{
    margin: 50px 0;
}
.block-gallery>div{
    overflow: hidden;
    padding: 0;
}
.more-gallery{
    width: max-content;
}
/******* END Галерея *******/

/******* Контакты *******/
.contact-form-item{
    width: 100%;
    margin-bottom: 20px;
}
.contact-form-item textarea{
    width: 100%;
}
.contact-form-item input, .contact-form-item textarea{
    box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.13);
    padding: 5px 20px;
    /*background: #fafafa;*/
}
.contact .read-more button, .read-more button{
    background: #fff;
    border: none;
    margin-bottom: 100px;
}
.contact input{
    height: 50px;
}
.contact label{
    margin-bottom: .3rem;
}
/******* END Контакты *******/


/*******Кабинет*******/
.cabinet-form-item input, .contact-form-item textarea, .cabinet-form-item select{
    width: 100%;
    margin-bottom: 20px;
}
.cabinet .cabinet-form-item label{
    margin-bottom: 0.2rem;
}
.cabinet-form-item{
    width: 100%;
    margin-bottom: 20px;
}
.cabinet .read-more button{
    background: #fff;
    border: none;
    margin-bottom: 100px;
}
#error-image-preview{
    color: red
}
/*******END Кабинет*******/

/*******Страница профиля*******/
.bg-profile{
    width: 100%;
    height: auto;
    background-image: url(../img/main-banner-2.jpg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    background-color: var(--bg-menu);
}
.bg-profile .row{
    padding: 50px 0;
}
.profile-img div{
    width: 100%;
    height: 100%;
    position: relative;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    border: 2px solid #fff;
}
.profile{
    margin-top: -15px;
}
.profile tr>td{
    padding: 5%;
    color: #fff;
}
.profile-img{
    width:40%;
}
.data{
    width:60%;
}
.profile-name{
    font-size: 20px;
    line-height: 25px;
    font-weight: bold;
}
.profile-function{
    margin-top: 10px;
}
.profile-data img{
    width: 16px;
    margin-top: -3px;
}
.profile-item-caption{
    margin: 0 auto 15px;
    padding: 20px 0 10px;
    border-bottom: 1px solid var(--button-color);
    font-size: 20px;
    font-weight: bold;
    color: var(--text-button-color);
}
.block-profile .profile-item{
    margin-top: 20px;
}
.block-profile .profile-item:first-child, .profile form{
    margin-top: 50px;
}
.block-profile .profile-item:last-child{
    margin-bottom: 100px;
}
.profile-block-service img{
    width: 25px;
    height: 25px;
    margin-top: -4px;
}
.profile-item .gallery a{
    display: block;
    width: 100%;
    height: 100%;
}
.profile-item .gallery div{
    padding: 0;
}
.profile-item-update{
    font-style: italic;
}
.mfp-title {
    margin-top: -40px;
    padding-left: 20px;
}
.mfp-title a{
    padding: 7px 10px;
    background-color: #eaeef4;
    color: var(--bg-menu);
    border-radius: 3px;
    transition: all .3s;
    -webkit-box-shadow: 0px 0px 21px 0px rgba(34, 60, 80, 0.2);
    -moz-box-shadow: 0px 0px 21px 0px rgba(34, 60, 80, 0.2);
    box-shadow: 0px 0px 21px 0px rgba(34, 60, 80, 0.4);
}
.mfp-title a:hover {
    color: #fff;
    background-color: var(--bg-menu);
}
div{
    /*outline: 1px solid red;*/
}
.block-profile .block-gallery{
    margin-top: 10px;
}

.timeline-classic p {
    letter-spacing: .025em;
}
.timeline-classic-period {
    padding-right: 20px;
    white-space: nowrap;
    letter-spacing: .025em;
}
.timeline-classic-title {
    position: relative;
    padding-left: 35px;
}
.timeline-classic-title::before {
    content: '';
    position: absolute;
    left: 0;
    top: .65em;
    display: inline-block;
    width: 25px;
    height: 2px;
    vertical-align: middle;
    background: #0077B5;
}
.timeline-classic-main {
    position: relative;
    padding: 10px 0 30px 20px;
}
.timeline-classic-main::before,
.timeline-classic-main::after {
    content: '';
    position: absolute;
    pointer-events: none;
}
.timeline-classic-main::before {
    left: 0;
    top: 0;
    bottom: 0;
    border-left: 1px solid #e0e0e0;
}
.timeline-classic-main * + p {
    margin-top: 10px;
}
.timeline-classic-item:last-child .timeline-classic-main {
    padding-bottom: 0;
}
.timeline-classic-item:last-child .timeline-classic-main::before {
    bottom: 20px;
}
* + .timeline-classic {
    margin-top: 30px;
}
@media (max-width: 767px) {
    .timeline-classic-period {
        margin-left: -2px;
    }
}
@media (min-width: 768px) {
    .timeline-classic {
        display: table;
    }
    .timeline-classic-item {
        display: table-row;
    }
    .timeline-classic-item > * {
        display: table-cell;
    }
    .timeline-classic-main {
        padding-bottom: 20px;
    }
    .timeline-classic-main::after {
        top: 18px;
        left: -4px;
        width: 9px;
        height: 9px;
        background: #e0e0e0;
        border-radius: 50%;
    }
}

.profile form{
    margin-top: 70px;
    background: #f3f4f9;
    padding: 25px 30px 50px;
}
.profile input, .profile textarea{
    display: block;
    width: 100%;
    min-height: 50px;
    padding: 12px 26px;
    font-size: 14px;
    font-weight: 400;
    line-height: 24px;
    color: #151515;
    background-color: #ffffff;
    background-image: none;
    border-radius: 0;
    -webkit-appearance: none;
    transition: .3s ease-in-out;
    border: 1px solid #e0e0e0;
    margin-bottom: 20px;
}
.profile .button {
    width: 100%;
    position: relative;
    overflow: hidden;
    display: inline-block;
    padding: 14px 35px;
    font-size: 14px;
    line-height: 1.3;
    border: 2px solid;
    font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-weight: 600;
    letter-spacing: 0.025em;
    text-transform: uppercase;
    white-space: nowrap;
    text-overflow: ellipsis;
    text-align: center;
    cursor: pointer;
    vertical-align: middle;
    transition: 250ms all ease-in-out;
    background-color: var(--button-color);
    color: #fff;

}
.profile .title-form{
    margin-bottom: 20px;
}
.profile .item-social{
    width: 20%;
    height: max-content;
    float: left;
    padding: 3%;
}
.wrapper-social{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: 20px;
    padding: 0 10%;
}
.wrapper-social .item-social img{
    width: 100%;
    height: auto;
    transition: all .3s;
}
.wrapper-social .item-social img:hover{
    transform: scale(1.2);
}

@media only screen and (max-width:768px){
    .table-user{
        width: 100%;
        display: block;
    }
    .profile-img, .profile-data{
        width: 50%;
    }
    .profile-img{
        min-height: 150px;
    }
    .profile .profile-data .favorit-img {
        width: 20%;
        margin-top: -1px;
    }
}
/*******END Страница профиля*******/

/*******Регистрация и авторизация*******/
.wrapper-input-password {
    position: relative;
}
.password-control {
    position: absolute;
    top: 42px;
    right: 7px;
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url(../img/no-view.svg) 0 0 no-repeat;
}
.password-control.view {
    background: url(../img/view.svg) 0 0 no-repeat;
}
.help-block{
    color: red
}
/*******END Регистрация и авторизация*******/

/*******Статические пункты*******/
.static-menu .content-static img{
    width:100%;
    margin-bottom: 50px;
}
.static-menu .block-news{
    margin-top: 0;
}
/*******END Статические пункты*******/

/*******Кабинет*******/
label[for="uploadform-name"]{
    float: left;
}
.form-group label{
    width: 100%
}
#uploaddata-category{
    padding: 10px;
    border: 1px solid #b6c0d0;
}  
#uploaddata-price, #uploaddata-old_price{
    width: 50%;
}
.wrapper-img-preview{
    width: 200px;
    height: 200px;
    box-shadow: 0 0 5px 5px #eee;
    position: relative;
}
.wrapper-img-gallery-slider, .wrapper-img-gallery-sport, .wrapper-img-gallery-review{
    display: flex;
    position: relative;
    float: left;
    height: 150px;
    margin: 5px;
    width: 48%;
    overflow: hidden;
    /*background-image: url(../img/workarea_back.png);*/
    outline: 1px solid cornflowerblue;
}
.wrapper-img-gallery-slider img, .wrapper-img-gallery-sport img, .wrapper-img-gallery-review img{
    width: auto;
    height: 150px;
    background-size: cover;
    float: left;
    padding: 3px;
}
.wrapper-img-gallery-slider textarea, .wrapper-img-gallery-sport textarea, .wrapper-img-gallery-review textarea{
    width: 70%;
    height: 150px;
}
.field-uploaddata-image, .field-uploaddata-gallery_bricks{
    margin-bottom: 0.2rem;
}
#render-gallery-bricks{
    width: 100%;
    margin-bottom: 20px;
    box-shadow: 0 0 5px 5px #eee;
    min-height: 100px;
    display: table;
}
label {
    margin-bottom: .2rem;
}
#preview{
    position: relative;
    background-position: center;
    background-size: cover;
    height: 100%;
}
.wrapper-gallery-item {
    float: left;
    margin: 5px;
    position: relative;
}
img.download-20-20{
    width: 20%;
    position: absolute;
    top: 30%;
    left: 40%
}
.close {
    background-image: url(../img/delete.png);
    position: absolute;
    right: 2px;
    top: 2px;
    overflow: hidden;
    opacity: 1 !important;
    background-color: white;
    border-radius: 121px;
    background-size: contain;
    width: 12px;
    height: 12px;
    z-index: 9;
}
.img-gallery-bricks{
    cursor: grab;
    min-height: 50px;
    min-width: 50px;
    position: inherit;
    z-index: 2;
}
input[type="file"]{
    margin-bottom: 10px;
}
.line-param{
    height: 80px;
    position: relative
}
.wrapper-key{
    width:12%;
    float: left;
    height: 100%
}
.params-key{
    height: 100%;
}
.wrapper-value{
    width: 82%;
    float: left;
    height: 100%
}
.wrapper-value textarea{
    height: 100%;
}
.wrapper-close{
    width:10%;
    float: left
}
.wrapper-close .close{
    float: right;
    width: 15px;
    height: 15px;
    position: absolute;
    top: 30px;
    cursor: pointer
}
.button-more-progress{
    border: 1px solid #afacac;
    width: max-content;
    margin: 0 auto;
    padding: 5px 10px;
    margin-top: 15px;
    border-radius: 4px;
    cursor: pointer;
}
.button-more-progress:hover{
    background: #eee;
}
.wrapper-params {
    padding: 5px;
    border: 1px solid #ccc;
    border-radius: 4px;
    height: auto;
}
.control-label{
    font-weight: bold;
}
.field-uploaddata-video_rutube img, .field-uploaddata-video_vk img{
    width: 20px;
    height: 20px;
}
#preloader {
    display: none;
    position: absolute;
    top: 38%;
    left: 42.5%;
    width: 15%;
}
.form-group img:hover{
    filter: invert(0.30);
}
.square {
    border: 5px solid red;
    position: relative;
    text-align: center;
    width: 50vw;
    height: 50vw;
}
.content {
    font-size: 16px;
    padding-top: 100px;
}
img.bg-video-profile{
    width:100%;
    filter: brightness(70%);
}
.video-frame{
    position: relative;
}
.play{
    width: 12%;
    position: absolute;
    top:35%;
    left:44%;
    cursor: pointer;
}
.play:hover{
    filter: invert(10%);
}
.caption-imitation{
    color: #fff;
    font-weight: bold;
    font-size: 16px;
    position: absolute;
    left: 20px;
    top: 10px;
    opacity: 0.9;
}
.watch-rutube{
    width: 25%;
    left:10px;
    bottom: 10px;
    position: absolute;
    border-radius: 8px;
    cursor: pointer;
    opacity: 0.9;
}
.arrow-rutube {
    width: 6%;
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 7px 5px 7px;
    background-color: #000;
    opacity: 0.8;
}
.arrow-rutube svg{
    width:100%;
}
.profile-item-about iframe{
    width:100%;
    height: 410px;
}
.link-social{
    font-size: smaller;
}
@media screen and (max-width: 768px) {
    .profile-item-about iframe{
        height: 200px;
    }
    .counter-image img {
        margin-top: 10px;
    }
}
/*.img-gallery-bricks{
    position: inherit;
    min-height: 150px;
    float: left;
}
.wrapper-gallery-item{
    position:relative;
    float: left;
    height: 150px;
    margin: 5px;
}*/
/*******END Кабинет*******/

/*******Отзывы*******/
.profile-review p {
    margin-bottom: 0.2rem;
    font-size: 0.9rem;
}
.profile-review-name{
    font-weight: bold;
}
.star-rating{
    display: inline-block;
    width:16px;
}
.profile-review-rating svg{
    width:100%;
}
.profile-review-rating{
    margin-bottom: 10px;
}
.send-review{
    border: 1px solid #d4cdcd;
    background-color: var(--button-color);
    color: #fff;
}
#review{
    position: relative;
    background-color: #fff;
    max-width: 400px;
    margin: 0 auto;
}
#review img{
    width:13%;
}
input#result {
    width: 20%;
    display: inline-block;
    padding-left: 10px;
}
#review .profile-review-rating{
    background-color: #fff;
    padding: 5px 5px 5px 15px;
    margin-bottom: 20px;
}
#review .profile-review-rating .star-rating{
    cursor: pointer;
}
#review input, #review textarea{
    padding-left: 15px;
}
.mfp-zoom-in .mfp-with-anim {
    opacity: 0;
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    -webkit-transform: scale(0.8);
    -ms-transform: scale(0.8);
    transform: scale(0.8); }

.mfp-zoom-in.mfp-bg {
    opacity: 0;
    -webkit-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out; }

.mfp-zoom-in.mfp-ready .mfp-with-anim {
    opacity: 1;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1); }

.mfp-zoom-in.mfp-ready.mfp-bg {
    opacity: 0.8; }

.mfp-zoom-in.mfp-removing .mfp-with-anim {
    -webkit-transform: scale(0.8);
    -ms-transform: scale(0.8);
    transform: scale(0.8);
    opacity: 0; }

.mfp-zoom-in.mfp-removing.mfp-bg {
    opacity: 0; }

#review form{
    margin-top: 0;
}
.reviews-page{
    margin-bottom: 100px;
}
.reviews-page .block-review .review-item{
    height: auto;
    padding: 15px;
    box-shadow: 0 0 10px var(--button-color);
    color: var(--text-button-color);
}
.review-item .row{
    margin: 0;
}
.review-image{
    width: 100px;
    height: 100px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}
.review-text{
    padding: 0;
}
.review-text svg{
    margin: 15px 0;
}
.review-iser-name{
    color:#617da9;
    font-size: .9rem;
    margin-top: 15px;
}
.review-button{
    padding: 20px 15px 20px 0;
}
.review-button .read-more{
    color: #fff;
}
.review-button .read-more:hover{
    transition: all .3s;
    color: var(--bg-menu);
}
/*******END Отзывы*******/


/*******Всплывашка список городов*******/
#select-city{
    width: 300px;
    position: relative;
    margin: 0 auto;
    height: 300px;
    padding: 10px;
    background-color: #fff;
    border: 1px solid #454545;
    border-radius: 5px;
}
#select-city h4{
    text-align: center;
    border-bottom: 1px solid #eee;
    padding-bottom: 15px;
}
#select-city tbody{
    display: block;
    width: 100%
}
#select-city tbody tr{
    display: block;
    width: 100%
}
#select-city tbody td{
    display: block;
    width: 100%;
    border: none;
    text-align: center
}
.table td, .table th {
    padding: .2rem;
}
/*******END Всплывашка список городов*******/


/*******Статьи*******/
.wrapper-img-article img{
    width:100%;
    margin-bottom: 50px;
}
.content-article img{
    width:100%;
}
.view-article article{
    margin: 10%
}
.view-article h3 {
    text-align: center;
    width: 100%;
}
.content-article h2:not(.block-news h2){
     font-size: 1.5rem;
}
.content-article h3:not(.block-news h3){
    font-size: 1.2rem;
    text-align: left;
}
.content-article dl, .content-article ol, .content-article ul {
    margin-top: 25px;
    margin-bottom: 25px;
}
#block-article .item-block{
    margin-bottom: 20px;
}
/*******END Статьи*******/

.no-found-get{
    width:100%;
    text-align:center;
    margin-top: 40px;
    font-size: 18px;
}

.favorit{
    position: relative;
}
.favorit-img{
    width:10%;
    height:auto;
    position: absolute;
    top:2px;
    right: 1%;
}
.favorit-img.favorit-view-user{
    width: 18%;
    top: 0;
    right: 0;
}
.sort{
    width: max-content;
    float: right;
    margin: 23px 0 40px;
}
.slider-user .search-item select{
    padding: 7px 25px 7px 7px;
}
@media only screen and (max-width:768px){
    .slider-user .sort{
        width: max-content;
        float: none;
        margin: 0 0 40px;
    }
    .profile .profile-img div {
        width: 100%;
        min-height: 150px;
        height: 50%;
        background-repeat: no-repeat;
        background-position: 50% 50%;
        background-size: cover;
        border: 2px solid #fff;
    }
}
.profile-data .favorit-img{
    width: 10%;
    float: left;
    margin-top: -5px;
    margin-right: 5px;
    position: static;
}
.profile .container-fluid{
    padding: 0;
    margin: 0;
}
.profile p{
    font-style: italic;
}
#view-profile{
    background-color:#fff;
    margin: 10px 2%;
    padding: 35px 4%;
}
.content-user h3{
    margin: 10px 0;
}
h1.h2-section{
    font-size: 2rem;
}
h2.sub-caption{
    font-size: 1rem;
    margin-bottom: 40px;
}
.mfp-move-from-top .mfp-content {
    vertical-align: top; }

.mfp-move-from-top .mfp-with-anim {
    opacity: 0;
    -webkit-transition: all 0.6s;
    -o-transition: all 0.6s;
    transition: all 0.6s;
    -webkit-transform: translateY(200px);
    -ms-transform: translateY(200px);
    transform: translateY(200px); }

.mfp-move-from-top.mfp-bg {
    opacity: 0;
    -webkit-transition: all 2s;
    -o-transition: all 2s;
    transition: all 2s; }

.mfp-move-from-top.mfp-ready .mfp-with-anim {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); }

.mfp-move-from-top.mfp-ready.mfp-bg {
    opacity: 0.8; }

.mfp-move-from-top.mfp-removing .mfp-with-anim {
    -webkit-transform: translateY(-100px);
    -ms-transform: translateY(-100px);
    transform: translateY(-100px);
    opacity: 0; }

.mfp-move-from-top.mfp-removing .mfp-bg {
    opacity: 0; }

@media only screen and (max-width:1200px){
    /**********Навигация*************/
    header {
        position: fixed;
        width: 100%;
        z-index: 9;
    }
    .navbar{
        display: block;
    }
    .navbar-brand{
        float: left;
    }
    .navbar-content ul {
        margin-bottom: 0;
        padding-left: 0;
        width: 50%;
    }
    .navbar-content ul li:not(:first-child):not(.nav-item-favorit){
        display: none;
    }
    .navbar-content ul li:first-child{
        /*padding-top: 5px;*/
    }
    .navbar-content ul li:first-child a {
        margin-top: 2px;
    }
    .navbar-content ul li:first-child img {
        margin-top: 10px;
    }
    .navbar-icon{
        display: block;
        /*margin-left: 20px;*/
        padding-top: 9px;
        width: 10%;
    }
    .navbar-icon img{
        margin-top: -5px;
        width: 100%;
    }
    .nav-item-favorit{
        /*float: right;*/
        position: fixed;
        top: 70px;
        right: 25px;
    }
    /*.search-link{
        margin-top: 0;
        float: right;
    }*/
    main{
        padding-top: 65px;
    }
    /*.profile form {
        margin-top: 0;
    }*/
    .bg-profile .profile{
        margin-bottom: 50px;
    }

    /**********END Навигация*************/

    @media (min-width:993px) and (max-width:1200px){
        .profile form {
            margin-top: 40px;
        }
    }

    /**********Главный текст h1*************/
    .wrapper-banner h1 {
        line-height: 3.5rem;
        font-size: 2.8rem;
        text-align: center;
        padding-left:5%;
        padding-right:5%;
    }

    .wrapper-banner h2 {
        text-align: center;
        padding-left: 5%;
        padding-right: 5%;
        color: #dfe8e9;
        font-size: 1.8rem;
        margin-top: 20px;
        line-height: 2.5rem;
    }
    /**********END Главный текст h1*************/

    /**********Поиск*************/
    .search-item input, .search-item select {
        width: 100%;
        height: 36px;
    }
    .search-item{
        margin-bottom: 15px;
    }
    .search .row, .search {
        height: auto;
        padding-top: 15px;
        padding-bottom: 10px;
    }
    /**********END Поиск*************/


    /**********Разделы*************/
    .item-category p {
        font-size: 16px;
    }
    /**********END Разделы*************/


    /**********Статьи*************/
    article.post{
        margin-bottom: 20px;
    }
    /**********END Статьи*************/

    /**********About*************/
    .wrapper-about-text {
        padding-bottom: 50px;
    }
    /**********END About*************/
}

@media (min-width:768px) and (max-width:1200px){
    .navbar-icon {
        width: 5%;
    }
}












