.form-popup {
    background-color: #FAF6F5;
    border-right: 24px;
    font-family: "Roboto";
}
.appt_pp .pp_select,
.appt_pp .form-item input[type=email],
.appt_pp .form-item input[type=password],
.appt_pp .form-item input[type=tel],
.appt_pp .form-item input[type=text],
.form-item select {
    border-radius: 24px;
    background-color: white;
    color: #646565;
    border: 1px solid #CFC2BF;
    font-size: 20px;
}
.appt_pp .form-popup__title {
    text-align: center;
    font-family: "Roboto";
    font-weight: 300;
    font-size: 24px;
    line-height: 32px;
    color: #B06784;
    margin-bottom: 2.5rem;
    position: relative;
    text-transform: unset;
}
.appt_pp .pp_select_clinic{
    width: fit-content;
    font-size: 1.5rem;
    color: #B06784;
    font-weight: 400;
    cursor: pointer;
}
.appt_pp .pp_arrow_right {
    width: 11px;
    height: 20px;
    background-image: url(./images/arrow_btn.svg);
    display: inline-block;
    margin: 0 0 -4px 15px;
}
.form-item input[type=checkbox] + label a, .form-item input[type=radio] + label a {
    color: #B06784;
}
.form-item input[type=checkbox] + label:before {
    background-image: none;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 1px solid #B06784;
    background-color: white;
    top: 5px;
}
.form-item input[type=checkbox]:checked + label:before {
    background-color: #B06784;
}
.form-submit button[type=submit],
.form-popup .button {
    margin: 0 auto;
}
.appt_pp .pp_map_list .pp_map_card .map_address,
.appt_pp .pp_map_list .pp_map_card .map_time{
    font-style: normal;
    font-weight: 300;
    font-size: 0.875rem;
    line-height: 1.125rem;
    color: #B06784;
}
.appt_pp .pp_map_list .pp_map_card.active,
.appt_pp .pp_map_list .pp_map_card:hover {
    background: #EA89A2;
}

#ui-datepicker-div{
    z-index: 99995 !important;
}
.appt_pp.form-popup{
    max-width: 600px;
    padding: 0;
}
.appt_pp .appointment__slide_main{
    padding: 2rem 3.5rem;
}
.appt_pp .appointment__slide_address{
    padding: 2.5rem 0;
}
.appt_pp .appointment__slide_map{
    padding: 2.5rem 0;
}
.appt_pp .appointment__slide_map .form-popup__title{
    margin: 0 2.5rem 2.5rem 2.5rem
}
.appt_pp .appointment__slide_address .form-popup__title{
    margin: 0 2.5rem 0 2.5rem
}

.appt_pp .appointment__slide_map .form-item__label{
    padding: 0 3.5rem;
}
.appt_pp .appointment__slide_map .form-item{
    padding: 0 2.5rem 0 2.5rem;
}

.appt_pp .appt_row_inputs,
.appt_pp .appt_row{
    display: flex;
    flex-flow: row;
}
.appt_pp .appt_row > .form-item:nth-child(odd){
    margin-right: 20px;
}
.appt_pp .appt_row > .form-item:nth-child(even){
    margin-left: 20px;
}
.appt_pp .appt_row > .form-item{
    width: calc( 50% - 20px );
}
.appt_pp .appt_row{
    justify-content: space-between;
}
.appt_pp .appt_row_inputs{
    justify-content: flex-end;
}
.form-item.form-item_time{
    width: 100%;
}
.appt_row_inputs .appt_row_inputs.pp_h_line {
    position: relative;
}

@supports (-moz-appearance:none) {
    .appt_row_inputs select,
    .appt_row_inputs option
    {
        -moz-appearance:none !important;
        font-size: 1.5rem !important;
        -moz-font-family: HelveticaNeueCyr-Light !important;
    }
}
.appt_row_inputs .tp__timepicker{
    font-size: 1.5rem;
}
.appt_pp .pp_select{
    margin: 53px 0 0 0;
}

.appt_pp .form-item select::-ms-expand {
    display: none;
}

.appt_pp .form-item select{
    color: #646565;
    border-color: #CFC2BF;
}

.appt_pp .form-item{
    position: relative;
    margin: 0 0 2.5rem 0;
}
.appt_pp .form-item .form-item__label,
.appt_pp .form-item._not-empty .form-item__label{
    position: absolute;
    top: -24px;
    text-align: left;
    left: 10px;
    color: #CFC2BF;

    height: 1.25rem;
    font-size: 1rem;
    line-height: 1.25rem;
    font-family: HelveticaNeueCyr-Light;
}
.appt_pp .form-item .form-item__label.pp_double,
.appt_pp .form-item._not-empty .form-item__label.pp_double {
    text-align: center;
    left: unset;
}
.appt_pp .pp_arrow_right,
.appt_pp .pp_calendar {
    content: "";
    background-repeat: no-repeat;
    background-size: contain;
}
.appt_pp .pp_calendar {
    position: absolute;
    right: 20px;
    top: 0;
    width: 16px;
    height: 16px;
    background-image: url(./images/calendar.svg);
}

.appt_pp .pp_toggle_slide{
    font-weight: 300;
    font-size: 0.75rem;
    text-decoration-line: underline;
    color: #284353;
    cursor: pointer;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
}
.appt_pp .form-submit{
    text-align: center;
}
.appt_pp .pp_map_list{
    column-count: 2;
    padding: 45px 20px 0 20px
}
.appt_pp .pp_map_list .pp_map_card.active .map_address,
.appt_pp .pp_map_list .pp_map_card.active .map_time,
.appt_pp .pp_map_list .pp_map_card:hover .map_address,
.appt_pp .pp_map_list .pp_map_card:hover .map_time{
    color: #FFFFFF;
}
.appt_pp .pp_map_list .pp_map_card{
    border-radius: 12px;
    cursor: pointer;
    margin: 0 0 10px 0;
    padding: 10px 20px;
    height: 100%;
}
.appt_pp .pp_map_card .map_name{
    font-weight: 600;
    font-size: 1rem;
    color: #284353;
    position: relative;
    padding: 0 0 5px 26px;
}
.appt_pp .pp_map_card:hover .map_name:before,
.appt_pp .pp_map_card.active .map_name:before{
    background-image: url(./images/geo-act.svg);
}
.appt_pp .pp_map_card .map_name:before{
    content: "";
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    width: 16px;
    height: 20px;
    left: 0;
    background-image: url(./images/geo.svg);
}
.appt_pp #appointment_map,
.appt_pp #appointment_map > ymaps,
.appt_pp #appointment_map > ymaps > ymaps{
    height: 360px !important;
}

.appt_pp .marker-label-yandex._detail:before {
    width: 24px;
    height: 30px;
    left: -16px;
    top: -18px;
}

.appt_pp .marker-label-yandex:before {
    content: '';
    background-image: url(./images/geo.svg);
    background-size: 100% 100%;
    width: 16px;
    height: 19px;
    display: block;
    z-index: 1;
    position: absolute;
    top: -18px;
    left: -19px;
}

.appt_pp .marker-label-yandex.m_active:after {
    background-color: #284353;
    font-weight: 600;
}
.appt_pp .marker-label-yandex.m_active:before {
    background-image: url(./images/geo-act.svg);
    -webkit-transition: background-image .3s, color .3s;
    -o-transition: background-image .3s, color .3s;
    transition: background-image .3s, color .3s;
}
.appt_pp .marker-label-yandex:after {
    content: attr(data-name);
    background-color: #EA89A2;
    border-radius: 12px;
    padding: 0 24px;
    height: 24px;
    line-height: 1.5rem;
    -webkit-transition: background-color .3s, color .3s;
    -o-transition: background-color .3s, color .3s;
    transition: background-color .3s, color .3s;
    display: block;
    position: absolute;
    top: -14px;
    left: 0;
    white-space: nowrap;
    font-size: 0.75rem;
    font-family: HelveticaNeueCyr-Light;
    color: #ffffff;
}
.appt_pp .marker-label-yandex._left::after{
    -webkit-transform: translateX(calc(-100% - 24px));
    -ms-transform: translateX(calc(-100% - 24px));
    -o-transform: translateX(calc(-100% - 24px));
    transform: translateX(calc(-100% - 24px));
}
.appt_pp .marker-label-yandex._right::after{
    -webkit-transform: translateX(15px);
    -ms-transform: translateX(15px);
    -o-transform: translateX(15px);
    transform: translateX(15px);
}

@media (max-width: 600px) {
    .appt_row {
        flex-direction: column !important;
    }
    .appt_row > div {
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}