.reviews {
    overflow-y: auto;
    margin-bottom: 49px;
}
.add_review input[type=radio] {
    display: none;
}

.reviews .review {
    padding-right: 10px;
}
.reviews .review .heading > div:not(.rating) {
    display: flex;
    flex-wrap: nowrap;
    align-items: baseline;
}
.reviews .review .heading .date {
    font-size: 12px;
}

.reviews .review .heading .user {
    font-weight: bold;
    color: #004288;
    margin-right: 10px;
}
.reviews .review .heading .user > span {
    color: #d0080a;
}
.reviews .review:not(:last-child) {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px solid #e1e1e1;
}
.reviews .review .rating > i {
    color: #004288;
}
.reviews .review .rating[data-ratio='1'] > i:nth-child(1) {
    color: #d0080a;
    font-weight:bold;
}

.reviews .review .rating[data-ratio='2'] > i:nth-child(1),
.reviews .review .rating[data-ratio='2'] > i:nth-child(2){
    color: #d0080a;
    font-weight:bold;
}

.reviews .review .rating[data-ratio='3'] > i:nth-child(1),
.reviews .review .rating[data-ratio='3'] > i:nth-child(2),
.reviews .review .rating[data-ratio='3'] > i:nth-child(3){
    color: #d0080a;
    font-weight:bold;
}

.reviews .review .rating[data-ratio='4'] > i:nth-child(1),
.reviews .review .rating[data-ratio='4'] > i:nth-child(2),
.reviews .review .rating[data-ratio='4'] > i:nth-child(3),
.reviews .review .rating[data-ratio='4'] > i:nth-child(4) {
    color: #d0080a;
    font-weight:bold;
}

.reviews .review .rating[data-ratio='5'] > i:nth-child(1),
.reviews .review .rating[data-ratio='5'] > i:nth-child(2),
.reviews .review .rating[data-ratio='5'] > i:nth-child(3),
.reviews .review .rating[data-ratio='5'] > i:nth-child(4),
.reviews .review .rating[data-ratio='5'] > i:nth-child(5){
    color: #d0080a;
    font-weight:bold;
}

.reviews + .add_review {
    position: absolute;
    width: calc(100% - 22px);
    bottom: 0;
    background: #fafafa;
    border: 1px solid #e1e1e1;
    border-bottom: none;
    padding: 10px;
    top: calc(100% - 49px);
    transition: all 0.3s;
    overflow: hidden;
}

.reviews + .add_review button,
.reviews + .add_review form input[type=submit],
.reviews + .add_review form input[type=reset]{
    float: right;
    border: 1px solid #004288;
    background: #004288;
    color: white;
    font-size: 16px;
    border-radius: 5px;
    padding: 0 10px;
    line-height: 26px;
    cursor: pointer;
    transition: all 0.3s;
    margin-right: 10px;
    outline: none;
}
.reviews + .add_review button:hover,
.reviews + .add_review form input[type=submit]:hover,
.reviews + .add_review form input[type=reset]:hover {
    background: transparent;
    color: #004288;
}

.reviews + .add_review.active {
    top: 0;
}
.reviews + .add_review.active > .buttons,
.reviews + .add_review:not(.active) > .form{
    display: none;
}
.reviews + .add_review .form {
    padding: 10px;
    height: calc(100% - 20px);
}
.reviews + .add_review form {
    height: 100%;
}
.reviews + .add_review form > div:first-child {
    display: flex;
    justify-content: space-between;
    height: calc(100% - 38px);
    margin-bottom: 10px;
}
.reviews + .add_review form > div:first-child > div:first-child {
    width: calc(30% - 10px);
}
.reviews + .add_review form > div:first-child > div:last-child {
    width: calc(70% - 10px);
}
.reviews + .add_review form > div > div > div {
    margin-bottom: 10px;
}
.reviews + .add_review form input[type=text] {
    border: 1px solid #004288;
    border-radius: 5px;
    font-size: 14px;
    line-height: 24px;
    padding: 0 5px;
    outline: none;
    width: calc(100% - 12px);
}
.reviews + .add_review form textarea {
    display: block;
    border: 1px solid #004288;
    border-radius: 5px;
    padding: 5px;
    width: calc(100% - 12px);
    height: calc(100% - 34px);
    resize: none;
    outline: none;
}
.reviews + .add_review form input[type=text],
.reviews + .add_review form input[type=text],
.reviews + .add_review form textarea,
.reviews + .add_review form textarea {
    transition: all 0.3s;
}
.reviews + .add_review form input[type=text]:hover,
.reviews + .add_review form input[type=text]:focus,
.reviews + .add_review form textarea:hover,
.reviews + .add_review form textarea:focus {
    box-shadow: 0 0 5px 2px #004288;
}

.reviews + .add_review form input[type=text].error,
.reviews + .add_review form textarea.error {
    box-shadow: 0 0 5px 2px #d0080a;
    border-color: #d0080a;
}

.reviews + .add_review form label {
    display: block;
    padding-bottom: 5px;
}
.reviews + .add_review form input#fl_review_add_soglasie {
    display: none;
}
.reviews + .add_review form input#fl_review_add_soglasie + label {
    padding-left: 20px;
    position: relative;
}
.reviews + .add_review form input#fl_review_add_soglasie + label:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    background: white;
    width: 15px;
    height: 15px;
    border: 1px solid #cccccc;
}
.reviews + .add_review form input#fl_review_add_soglasie:checked + label:after {
    content: '';
    background: #004288;
    width: 9px;
    height: 9px;
    position: absolute;
    top: 3px;
    left: 3px;
}

.reviews + .add_review form input[type=submit] {
    margin-right: 0;
}
.reviews + .add_review form .ratio-wrp {
    float: left;
}
.reviews + .add_review form .ratio-wrp > span:first-child {
     font-weight: bold;
     margin-right: 10px;
}

.reviews + .add_review form .ratio label {
    display: inline-block;
    float: right;
    cursor: pointer;
}
.reviews + .add_review form .ratio label i {
    color: #004288;
}

.reviews + .add_review form .ratio:not(:hover) input#fl_review_add_ratio_1:checked ~ label[for=fl_review_add_ratio_1] i {
    font-weight: bold;
    color: #d0080a;
}
.reviews + .add_review form .ratio:not(:hover) input#fl_review_add_ratio_2:checked ~ label[for=fl_review_add_ratio_1] i,
.reviews + .add_review form .ratio:not(:hover) input#fl_review_add_ratio_2:checked ~ label[for=fl_review_add_ratio_2] i{
    font-weight: bold;
    color: #d0080a;
}
.reviews + .add_review form .ratio:not(:hover) input#fl_review_add_ratio_3:checked ~ label[for=fl_review_add_ratio_1] i,
.reviews + .add_review form .ratio:not(:hover) input#fl_review_add_ratio_3:checked ~ label[for=fl_review_add_ratio_2] i,
.reviews + .add_review form .ratio:not(:hover) input#fl_review_add_ratio_3:checked ~ label[for=fl_review_add_ratio_3] i{
    font-weight: bold;
    color: #d0080a;
}
.reviews + .add_review form .ratio:not(:hover) input#fl_review_add_ratio_4:checked ~ label[for=fl_review_add_ratio_1] i,
.reviews + .add_review form .ratio:not(:hover) input#fl_review_add_ratio_4:checked ~ label[for=fl_review_add_ratio_2] i,
.reviews + .add_review form .ratio:not(:hover) input#fl_review_add_ratio_4:checked ~ label[for=fl_review_add_ratio_3] i,
.reviews + .add_review form .ratio:not(:hover) input#fl_review_add_ratio_4:checked ~ label[for=fl_review_add_ratio_4] i{
    font-weight: bold;
    color: #d0080a;
}
.reviews + .add_review form .ratio:not(:hover) input#fl_review_add_ratio_5:checked ~ label[for=fl_review_add_ratio_1] i,
.reviews + .add_review form .ratio:not(:hover) input#fl_review_add_ratio_5:checked ~ label[for=fl_review_add_ratio_2] i,
.reviews + .add_review form .ratio:not(:hover) input#fl_review_add_ratio_5:checked ~ label[for=fl_review_add_ratio_3] i,
.reviews + .add_review form .ratio:not(:hover) input#fl_review_add_ratio_5:checked ~ label[for=fl_review_add_ratio_4] i,
.reviews + .add_review form .ratio:not(:hover) input#fl_review_add_ratio_5:checked ~ label[for=fl_review_add_ratio_5] i{
    font-weight: bold;
    color: #d0080a;
}

.reviews + .add_review form .ratio > label:hover i,
.reviews + .add_review form .ratio > label:hover ~ label i {
    font-weight: bold;
    color: #d0080a;
}