.review .review__ava img {
    border-radius: 2px;
}

.review .review__ava {
    width: 100px;
    height: 60px;
    border-radius: 2px;
}

.review a:not(.bth__btn):hover {
    color: #318cc6;
}

.review a:not(.bth__btn) {
    color: #475669;
}

.review {
    position: relative;
    margin-bottom: 30px;
}

.review .review__user-stats {
    margin-top: 10px;
}

.review-paginator:hover {
    color: #e27c36;
}

.review:last-of-type {
    margin-bottom: 10px;
}

.review-paginator .bth__loader-spin i {
    margin: 0;
    font-size: 3px;
}

.review-paginator .bth__loader-spin {
    display: inline-block !important;
}

.review-paginator {
    font-weight: bold;
    font-size: 14px;
    padding: 15px;
    text-transform: uppercase;
    background: #eeeeee;
    color: #ff8e41;
    display: block;
}

.review .review__user .lsfw-flag {
    vertical-align: bottom;
    margin: 0 3px 0 -2px;
}

.review .review__user-stat i {
    margin-right: 5px;
}

.review .review__user-stat.review__user-stat--orange:hover {
    color: #475669;
    background: #fff6ec;
}

.review .bth__btn {
    font-size: 11px;
}

.review .review__user-stats .review__user-stat:not(:last-child) {
    margin-right: 15px;
}

.review .review__user-stat {
    font-size: 10px;
    text-transform: uppercase;
    line-height: 20px;
    margin-top: 5px;
    vertical-align: middle;
    display: inline-block;
}

.review .review__user-name span {
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    max-width: 400px;
    display: inline-block;
    white-space: nowrap;
    vertical-align: bottom;
}

.review .review__city {
    font-size: 10px;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    line-height: 18px;
    max-width: 200px;
    display: inline-block;
    white-space: nowrap;
    vertical-align: bottom;
}

.review .review__user-name {
    font-weight: bold;
    margin-right: 15px;
    font-size: 18px;
    line-height: 21px;
    display: inline-block;
    vertical-align: bottom;
}

.review .review__user-info {
    font-size: 13px;
    margin-top: -2px;
    text-transform: uppercase;
    width: calc(100% - 200px);
    padding-left: 20px;
}

.review .review__head .review__rate-mark {
    display: none;
}

.review .review__date {
    text-align: right;
    margin-left: auto;
    font-size: 13px;
}

.review .review__img img {
    border-radius: 2px;
}

.review .review__img.review__img--big {
    width: 420px;
    height: 230px;
    margin-right: 0;
}

.review .review__img {
    position: relative;
    cursor: pointer;
    display: inline-block;
    vertical-align: top;
    margin-right: 10px;
    width: 90px;
    height: 53px;
}

.review .review__img-count:hover {
    color: #318cc6;
}

.review .review__img-count {
    display: inline-block;
    vertical-align: top;
    width: 90px;
    height: 53px;
    font-weight: bold;
    font-size: 13px;
    cursor: pointer;
    text-align: center;
    color: #318cc6;
    background-color: #ffffff;
    line-height: 53px;
    text-transform: uppercase;
    border-radius: 2px;
}

.review .review__content.review__content--green {
    background-color: #e5f6ed;
}

.review .review__content.review__content--grey {
    background-color: #efefef;
}


.review .review__content.review__content--red {
    background-color: #f9ebea;
}

.review .review__content.review__content--blue {
    background-color: #d4e4f2;
}


.review .review__content.review__content--yellow {
    background-color: #faf6e5;
}

.review .review__content.review__content--orange-bright {
    background-color: rgba(255, 142, 65, 0.26);
}

.review .review__content.review__content--orange-bright::after {
    border-bottom-color: rgba(255, 142, 65, 0.26);
}

.review .review__content::after {
    content: "";
    position: absolute;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #eeeeee;
    top: -9px;
}

.review .review__content.review__content--green::after {
    border-bottom-color: #e5f6ed;
}

.review .review__content.review__content--grey::after {
    border-bottom-color: #efefef;
}

.review .review__content.review__content--red::after {
    border-bottom-color: #f9ebea;
}

.review .review__content.review__content--blue::after {
    border-bottom-color: #d4e4f2;
}

.review .review__content.review__content--yellow::after {
    border-bottom-color: #faf6e5;
}

.review .review__content.review__content--draft::after {
    border-bottom-color: #ffe1bd;
}

.review .review__content.review__content--draft {
    background-color: #ffe1bd;
}


.review.v2 .review__service-items {
    display: none;
}

.review.v2 {
    margin-bottom: 10px;
}

.review .review__content.link-blue:hover {

    color: #215f86 !important;
    background-color: #d4e4f2;
}

.review .review__content.link-blue .review__user-name {
    color: inherit;
}

.review .review__content.link-blue .review__hotel {
    margin: 0;
    padding: 0;
    border: none;
}

.review .review__content {
    display: block;
    position: relative;
    padding: 15px 20px;
    margin-top: 15px;
    border-radius: 2px;
    background-color: #eeeeee;
}

.review .review__rec.review__rec--green::after {
    content: '\f164';
}

.review .review__rec.review__rec--neutral::after {
    content: '\f6ad';
    font-weight: bold;
}

.review .review__rec.review__rec--green {
    color: #00a551;
}

.review .review__rec {
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
}

.review .review__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: 1px solid #ffffff;
    position: relative;
    z-index: 4;
}

.review .review__border {
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: 1px solid #ffffff;
}

.review .review__rec::after {
    font-weight: 100;
    margin-left: 5px;
    font-family: "Font Awesome 5 Free";
}

.review .review__rec.review__rec--red::after {
    content: '\f165';
}

.review .review__rec.review__rec--red {
    color: #e03a3a;
}

.review .review__ttl {
    text-transform: uppercase;
    font-size: 14px;
}

.review .review__txt-wrap .review__txt:not(:last-of-type) {
    margin-bottom: 5px;
}

.review .review__txt-wrap a:hover {
    color: #215f86;
}


.review .review__txt-ttl {
    font-weight: 900;
    font-size: 17px;
    display: block;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.review .review__txt {
    width: calc(100% - 16.6% - 5px);
    font-size: 17px;
    line-height: 26px;
}

.review .review__top + .review__no_body {
    border: none;
    padding-bottom: 0;
    margin-bottom: 0;
}

.review .review__services {
    padding-bottom: 15px;
    position: relative;
    z-index: 3;
    margin-bottom: 15px;
    border-bottom: 1px solid #ffffff;
}

.review .review__rate-mark {
    display: inline-block;
    vertical-align: middle;
    color: #ffffff;
    margin-right: 10px;
    line-height: 25px;
    width: 50px;
    text-align: center;
    font-weight: bold;
    border-radius: 5px;
}

.review .review__rate-mark.review__rate-mark--orange {
    background-color: #dfa918;
}

.review .review__rate-mark.review__rate-mark--green {
    background-color: #00a551;
}

.review .review__rate-mark.review__rate-mark--red {
    background-color: #c83831;
}

.review .review__rate-mark.review__rate-mark--grey {
    background-color: #999999;
}


.review-old-name::after {
    content: "";
    position: absolute;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #faf6e5;
    top: -9px;
    left: 10px;
}

.review-old-name > * {
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
}

.review .review__rates .review__rate:not(:last-of-type) {
    margin-right: 10px;
}

.review .review__stats {
    margin-left: auto;
}

.review .review__rate b {
    font-size: 16px;
    margin-right: 7px;
}


.review .review__rate {
    font-size: 14px;
    display: inline-block;
    vertical-align: middle;
    padding: 0 20px 0 10px;
    background-color: #ffffff;
    border-radius: 5px;
    line-height: 25px;
}

.review .review__services.open .review__service-item-ttl {
    font-weight: 900;
}

.review .review__services.open .review__service-inner {
    display: block;
}

.review__services.open .review__service-ttl::after {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    line-height: 18px;
}

.review .reviews__abs-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.review__service-ttl:hover::after {
    color: #318cc6;
}

.review__service-ttl:hover {
    color: #215f86;
}

.review__service-ttl::after {
    content: '\f078';
    position: absolute;
    top: 0;
    width: 20px;
    height: 20px;
    font-weight: bold;
    font-family: "Font Awesome 5 Free";
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    font-size: 10px;
    line-height: 25px;
    text-align: center;
}

.review .review__service-ttl {
    font-size: 15px;
    margin-bottom: 15px;
    position: relative;
    cursor: pointer;
}

.review .review__more {
    font-size: 13px;
    text-transform: uppercase;
}

.review .review__bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    position: relative;
    z-index: 5;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.review .review__service-inner {
    display: none;
    margin-bottom: 15px;
}

.review .review__service-inner .mr5 {
    font-weight: 900;
}

.review .review__service-item {
    margin-bottom: 5px;
    display: inline-block;
    vertical-align: top;
    margin-right: 35px;
    font-size: 14px;
}

.review .review__stat.review__stat--comments::before {
    content: '\f086';
}

.review .review__stat.review__stat--eye::before {
    content: '\f06e';
}

.review .review__stat.review__stat--useful:hover:after {
    left: auto;
    right: 0;
}

.review .review__stat.review__stat--useful::before {
    content: '\f164';
}

.review .review__confirm.review__confirm--green {
    background-image: url(https://tophotels.ru/csstx/i/dont-disturb-green.svg);
}

.review .review__confirm.review__confirm--red {
    background-image: url(https://tophotels.ru/csstx/i/dont-disturb-red.svg);
}

.review .review__confirm.review__hint::after {
    left: auto;
    right: 0;
    bottom: -30px;
}

.review .review__confirm {
    width: 27px;
    height: 27px;
    background-position: center;
    display: inline-block;
    background-repeat: no-repeat;
    background-size: 9px;
    vertical-align: middle;
    font-style: normal;
    margin-left: 20px;
    background-color: #ffffff;
    border-radius: 100%;
}

.review .review__stat.review__hint:hover:after {
    right: 0;
    left: auto;
}

.review .review__stat {
    margin-left: 25px;
    font-style: normal;
    font-size: 14px;
    display: inline-block;
    vertical-align: middle;
    cursor: pointer;
}

.review .review__stat::before {
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    margin-right: 10px;
}

.review .review__hint:hover {
    z-index: 2;
    position: relative;
}

.review .review__hint:hover:after {
    display: block;
}

.review .review__hint::after {
    content: attr(data-hint);
    font-size: 14px;
    -webkit-box-shadow: 0 1px 10px 0 rgba(0, 0, 0, 0.3);
    box-shadow: 0 1px 10px 0 rgba(0, 0, 0, 0.3);
    position: absolute;
    bottom: auto;
    z-index: 100;
    white-space: nowrap;
    display: none;
    font-family: 'apercu_pro', sans-serif;
    padding: 5px 10px;
    background: #ffffff;
    border-radius: 5px;
    right: auto;
    left: 0;
}

.review .review__photos {
    margin-top: 15px;
}

.review .review__service-items {
    margin-top: 15px;
}

.reviews-paginator:hover {
    color: #e27c36;
}

.reviews-paginator {
    display: block;
    font-weight: bold;
    margin-top: 10px;
    border-radius: 2px;
    line-height: 60px;
    background: #eeeeee;
    font-size: 18px;
    color: #ff8e41;
    text-align: center;
}

.reviews-paginator .bth__loader-spin {
    display: inline-block !important;
}

.reviews-paginator .bth__loader-spin i {
    margin: 0;
    font-size: 3px;
}

.review.v2 .review__rate-mark {
    background: transparent !important;
}

.review.v2 .review__rate {
    padding: 0;
    margin-right: 30px !important;
}

.review.v2 .review__border {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.review.v2 .review__rate-big {
    font-size: 20px;
    font-weight: bold;
}

.review.v2 .review__border > * {
    margin: 0 !important;
}

.review.v2 .review__rates.review__rates--arrow {
    cursor: pointer;
}

.review.v2 .review__rates.review__rates--arrow:hover::before {
    color: #e77f39;
}

.review.v2 .review__rates.review__rates--arrow.active::before{
    transform: rotate(180deg);
}
.review.v2 .review__rates.review__rates--arrow::before {
    color: #ff8e41;
    line-height: 35px;
    text-align: center;
    position: absolute;
    right: 0;
    top: 0;
    width: 50px;
    content: "\f078";transition: 0.3s;
    font-weight: bold;
    font-family: "Font Awesome 5 Free";
    height: 35px;
}

.review.v2 .review__services {
    padding: 5px 15px;
    border: none;
    position: relative;
    width: 100%;
    background: #ffffff;
    border-radius: 5px;
}

.review.v2 .review__content::after {
    display: none;
}

.review .review__hotel .review__flag {
    position: relative;
    margin-left: auto;
}

.review .review__hotel .bth__img60x40.fas {
    background: #ffffff;
    line-height: 40px;
    text-align: center;
    font-size: 20px;
    color: #318cc6;
}

.review .review__hotel .review__flag::before {
    width: 100%;
    height: 100%;
    content: '';
    background: #ffffff;
    border-radius: 5px;
    position: absolute;
    top: 0;
    left: 0;
}

.review .review__hotel .review__city {
    font-size: 13px;
}

.review .review__hotel .review__user-name {
    font-size: 20px;
    color: #215f86;
}

.review .review__services .review__rec {
    position: relative;
    padding-left: 30px;
    font-size: 13px;
}

.review .review__services .review__rec::after {
    width: 25px;
    height: 25px;
    display: block;
    position: absolute;
    left: 0;
    top: 0;
}

.review .review__hotel {
    padding-bottom: 15px;
    text-transform: uppercase;
    margin-bottom: 15px;
    border-bottom: 1px solid #ffffff;
    gap: 15px;
    display: flex;
    align-items: center;
}

.review .review__head {
    display: flex;
    align-items: center;
}

.review .flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.review .review__bb > *:not(.hint) {
    display: inline-block;
    vertical-align: top;
    line-height: 25px;
}

.review .review__bb.bth__ava-circle {
    width: 25px;
    padding: 0;
    text-align: center;
    font-size: 13px;
}

.review .review__bb button {
    color: #475669;
    border: none;
    background: transparent;
}

.review .review__bb button:hover {
    color: #ff8e41;
}

.review .review__bb .fas {
    font-size: 10px;
}

.review a.review__bb:hover {
    color: #ffffff;
    background: #318cc6;
}

.review .review__bbs.review__bbs--act .review__bb {
    min-width: 145px;
}

.review .review__bb {
    line-height: 25px;
    display: inline-block;
    vertical-align: top;
    height: 25px;
    padding: 0 10px;
    background: #ffffff;
    color: #475669;
    border-radius: 5px;
    font-size: 10px;
    text-align: left;
}

.review .review__bbs .review__confirm.review__confirm--green::before {
    background-image: url(https://tophotels.ru/csstx/i/dont-disturb-green.svg);
}

.review .review__bbs .review__confirm::before {
    content: '';
    position: absolute;
    left: -21px;
    border-radius: 100%;
    width: 35px;
    height: 35px;
    background: #ffffff center/11px no-repeat;
    top: -5px;
}

.review .review__bbs .review__confirm {
    width: auto;
    height: auto;
    position: relative;
    background-image: none;
    padding-left: 20px;
}

.review .review__bbs > * {
    margin-right: 20px;
}

@media screen and (max-width: 1300px) {
    .review .review__txt {
        width: 100%;
    }
}

@media screen and (max-width: 1023px) {
    .review .review__city {
        max-width: 110px;
    }

    .review .review__txt {
        font-size: 15px;
        line-height: 25px;
    }

    .review .review__user-name span {
        max-width: 310px;
    }
}

@media screen and (max-width: 767px) {
    .review .bth__btn.bth__btn--300 {
        width: 214px;
    }

    .review .review__user-name {
        font-size: 16px;
    }

    .review .review__txt {
        font-size: 14px;
        line-height: 24px;
    }

    .review .review__user-name span {
        max-width: 280px;
    }

    .review .review__user-stats {
        margin-top: 5px;
    }

    .review .review__user .lsfw-flag {
        width: 25px !important;
        background-position-x: 0 !important;
        height: 16px !important;
        margin: 0 2px 2px -2px;
    }

    .review .review__city {
        display: block;
        margin-top: 2px;
    }

    .review .review__date .fz14 {
        font-size: 13px !important;
    }

    .review .review__city {
        width: 100%;
        font-size: 10px;
        max-width: 100%;
    }

    .review .review__rec, .review .review__ttl {
        font-size: 10px;
    }

    .review .review__top {
        padding-bottom: 10px;
        margin-bottom: 10px;
    }

    .reviews-paginator {
        font-size: 16px;
    }

    .review .review__user-stat {
        font-size: 9px;
    }

    .review .review__content {
        padding: 15px;
    }

    .review .review__service-ttl {
        font-size: 14px;
        margin: 0;
    }

    .review {
        margin: 20px 0 0 0;
    }

    .review .review__rates {
        margin-top: 10px;
    }

    .review .review__stat.review__hint:hover:after {
        right: auto;
        left: 0;
    }

    .review .review__user-stat:not(.red, .review__user-stat--orange) {
        display: none;
    }

    .review .review__user-stat {
        height: 15px;
        line-height: 15px;
        min-height: 15px;
    }
}

@media screen and (max-width: 599px) {
    .review .review__img.review__img--big .bth__img {
        max-width: 100%;
        height: auto;
        width: auto;
    }

    .review .review__img.review__img--big {
        width: 100%;
        height: auto;
    }

    .review .review__rate-mark {
        font-size: 13px;
    }

    .review .review__stat {
        font-size: 14px;
    }

    .review .review__stat::before {
        margin-right: 8px;
    }

    .review .review__service-items, .review .review__bottom > div:first-child {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    .review .review__bottom {
        flex-wrap: wrap;
    }

    .review .review__service-item .bold {
        position: absolute;
        left: 0;
        top: 0;
    }

    .review .bth__btn:not(.bth__btn--300) {
        width: calc(50% - 5px) !important;
    }

    .review .review__service-item, .review .bth__btn:not(.bth__btn--300) {
        padding: 0;
        margin: 10px 0 0 0;
        position: relative;
    }

    .review .review__service-item {
        font-size: 10px;
        text-transform: uppercase;
        padding: 0 10px 0 23px;
        margin-right: 15px;
    }

    .review .review__service-items {
        margin-top: 0;
        justify-content: flex-start;
    }


    .review .review__user-stats, .review .review__rates, .review .review__photos {
        white-space: nowrap;
        overflow: auto;
    }

    .review .review__stats {
        margin: 15px 0 0 0;
        width: 100%;
        padding-right: 62px;
    }

    .review .review__stat {
        margin: 0 25px 10px 0;
    }

    .review .review__rate b {
        font-size: 13px;
        margin-right: 5px;
    }

    html body .page .review .review__date * {
        font-size: 12px !important;
    }

    .review .review__date div {
        display: none;
    }

    .review .review__date {
        position: absolute;
        right: 15px;
        bottom: 37px;
        z-index: 1;
        display: flex;
        flex-direction: row-reverse;
        align-items: center;
    }

    .review .review__stats .review__stat:nth-child(3) {
        margin-right: 0;
    }

    .review .review__ava {
        height: 70px;
        width: 110px;
    }

    .review .review__head {
        flex-wrap: wrap;
    }

    .review .review__user-name {
        width: 100%;
        font-size: 14px;
        order: 0;
        margin: 0 0 5px 0;
    }

    .review .review__user-name span {
        max-width: calc(100% - 21px);
    }

    .review .review__user-info {
        width: calc(100% - 115px);
        padding-left: 12px;
    }

    .review .review__user {
        display: flex;
        flex-wrap: wrap;
    }

    .review .review__user .lsfw-flag {
        order: 1;
        margin: 1px 3px 0 -1px;
    }

    .review .review__city {
        order: 2;
        margin: 0;
        width: calc(100% - 40px);
    }

    .review .review__rate {
        text-transform: uppercase;
        padding: 0 15px 0 10px;
        font-size: 10px;
    }

    .review .review__rate, .review .review__rate-mark {
        line-height: 20px;
        height: 20px;
        margin-right: 5px;
    }

    .review .review__confirm::after {
        background: transparent;
        display: inline-block !important;
        position: static;
        white-space: normal;
        box-shadow: none;
        font-size: 8px;
        padding: 0;
        text-transform: uppercase;
    }

    .review .review__confirm::after {
        display: block;
        color: inherit;
    }

    .review .review__confirm--green {
        color: #00a551;
    }

    .review .review__confirm--red {
        color: #e03a3a;
    }

    .review .review__confirm {
        border-radius: 0;
        background: transparent !important;
        box-shadow: none;
        height: auto;
        display: block !important;
        margin: 0 20px 0 0;
        width: 100%;
        line-height: 10px;
    }

    .reviews-paginator {
        font-size: 13px;
        line-height: 40px;
    }
}

@media screen and (max-width: 359px) {
    .review .review__txt-ttl {
        font-size: 14px;
        margin-bottom: 5px;
    }

    .review .review__content {
        padding-top: 10px;
    }

    .review .review__rec {
        font-size: 0;
    }

    .review .review__rec::after {
        font-size: 14px;
    }

    .review .bth__btn:not(.bth__btn--300) {
        font-size: 8px;
    }

    .review .review__ava {
        width: 70px;
    }

    .review .review__user-info {
        width: calc(100% - 75px);
    }
}