/*------------ZDRVT-47------------*/
.appointment__block-wrapper {
    background: #fff;
    border-radius: 9px;
}
.appointment__step {
    text-transform: uppercase;
}
.appointment__title.h4 {
    margin-top: 10px;
}
.form-group__wrap {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
}
.form-group__wrap--columns-2 .form-group {
    width: calc((100% / 2) - 20px);
}
.form-group__wrap--columns-3 .form-group {
    width: calc((100% / 3) - 20px);
}
.form-group__wrap .form-group {
    margin-left: 10px;
    margin-right: 10px;
    margin-bottom: 20px;
    box-sizing: border-box;
}
.form-group__wrap .form-hint {
    padding-top: 5px;
    line-height: 1.3;
}
.btn.appointment__block-journal {
    border-radius: 8px;
    color: #00aca5;
    padding: 12px;
    background: rgba(0, 172, 165, .05);
    max-width: 255px;
    font-size: 15px;
}
.btn.appointment__block-journal:hover {
    background-color: #00aca5;
    color: #fff;
    text-decoration: none;
}
.appointment__dms-company {
    padding-bottom: 20px;
}
.form-check.agreement-checkbox label span {
    width: 20px;
    height: 20px;
}
.appointment .form-check.agreement-checkbox label {
    font-size: 14px;
    font-weight: 500;
    padding-left: 25px;
}
.appointment .form-check.agreement-checkbox label span {
    top: 1px;
}
.appointment__info-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.appointment .form-ccheck__item label {
    border-width: 1px;
}
.appointment .form-ccheck--small .form-ccheck__item label {
    border-color: rgba(0, 0, 0, .13);
}
.appointment .form-ccheck--small .form-ccheck__item input:checked+label {
    border-color: #40c1bb;
}
.appointment input:checked + label .appointment__date-weekday,
.appointment .form-ccheck--small .form-ccheck__item input:checked + label .appointment__date-weekday {
    color: white;
}
.appointment__date-weekday {
    font-weight: 500;
    color: rgba(0, 0, 0, .4);
    font-size: 12px;
    text-transform: uppercase;
    line-height: 1;
}
.appointment__date-date {
    font-size: 15px;
    line-height: 1;
    padding-top: 3px;
}
.appointment__info-top .btn.appointment__block-journal {
    margin-top: 0;
}

.appointment__date-slider .swiper-wrapper,
.appointment-clinics-slider .swiper-wrapper {
    width: 100%;
}
.appointment__date-slider__pagination.swiper-pagination,
.appointment-clinics-slider__pagination.swiper-pagination {
    bottom: -24px;
    display: flex;
    gap: 20px;
    justify-content: center;
    top: auto;
}
.appointment__date-slider__bullet,
.appointment-clinics-slider__bullet {
    background-color: #fff;
    cursor: pointer;
    height: 3px;
    width: 75px;
}
.appointment__date-slider__bullet--active,
.appointment-clinics-slider__bullet--active {
    background-color: #00ACA5;
}
.appointment__date-slider__next,
.appointment__date-slider__prev,
.journal-date-slider__prev,
.journal-date-slider__next,
.appointment-clinics-slider__next,
.appointment-clinics-slider__prev {
    border: 2px solid #00ACA5;
    border-radius: 50%;
    height: 32px;
    top: 50%;
    width: 32px;
    background: #00ACA5;
    transform: translateY(-50%);
}
.appointment-clinics-slider__next {
    right: 0;
}
.journal-date-slider__next,
.appointment__date-slider__next {
    right: 0;
    margin-top: 0;
}
.journal-date-slider__prev,
.appointment__date-slider__prev {
    left: 5px;
    margin-top: 0;
}
.appointment-clinics-slider__prev,
.appointment-clinics-slider__next {
    top: 35px;
    transform: unset;
}
.appointment__date-slider__nav-disabled,
.appointment-clinics-slider__nav-disabled {
    border-color: #e8e8e8;
    opacity: 0;
    pointer-events: none;
}
.appointment-clinics-slider .form-ccheck__item label {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}
.clinics__block {
    padding-bottom: 0;
    margin-bottom: 0;
}
.date__block .appointment__block-form,
.clinics__block .appointment__block-form {
    margin-top: 15px;
}

.appointment__dates .swiper-slide,
.clinics-block .swiper-slide {
    width: auto !important;
    height: auto;
}
.appointment-clinics-wrapper {
    position: relative;
}
.appointment__dates .swiper-button-next:after,
.appointment__dates .swiper-button-prev:after,
.clinics__block .swiper-button-next:after,
.clinics__block .swiper-button-prev:after {
    content: none;
}
.swiper-button-prev.appointment__date-slider__prev svg,
.swiper-button-next.appointment__date-slider__next svg,
.swiper-button-next.journal-date-slider__next svg,
.swiper-button-prev.journal-date-slider__prev svg,
.swiper-button-next.appointment-clinics-slider__next svg,
.swiper-button-prev.appointment-clinics-slider__prev svg {
    width: 70%;
}
.appointment__date-slider__nav-disabled,
.journal-date-slider__nav-disabled {
    display: none;
}
.appointment-clinics-slider {
    width: 100%;
}
.appointment__date-slider .swiper-wrapper,
.journal-date-slider .swiper-wrapper {
    flex-wrap: unset;
}
.appointment__dates {
    position: relative;
}
.appointment--journal .appointment__dates {
    max-width: 100%;
    overflow: hidden;
    margin-left: -5px;
    margin-right: -5px;
}
.appointment__block-journal-wrap.is-hidden {
    opacity: 0;
}
.form-checkboxes__item.form-checkboxes__item--other-time {
    font-size: 15px;
}
.appointment__date-person__post-item.post-item--first {
    color: #8c8c8c;
}
.appointment__date-item .form-ccheck--small .form-ccheck__item label {
    border-color: #40c1bb;
}
.appointment-legend__item:before {
    width: 12px;
    height: 12px;
    border-radius: 3px;
    border-width: 1px;
}
.appointment__date-item__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 5px;
}
.appointment-legend {
    margin-top: 10px;
    color: #8c8c8c;
}
.appointment-legend__item:before {
    background: #f4f4f4;
}
.appointment-legend__item:last-child:before {
    border-color: #40c1bb;
    background: white;
}
.appointment-legend__item .form-ccheck__item input:disabled+label {
    border-color: #e8e8e8 !important;
}
.appointment  .appointment-selected {
    margin-top: 20px;
}
.appointment  .appointment-selected__item {
    flex-direction: column;
    align-items: flex-start;
}
.appointment  .appointment-selected__item-title {
    flex: unset;
    font-size: 12px;
    margin-bottom: 5px;
}
.appointment  .appointment-selected__item {
    position: relative;
    padding: 12px 0;
    margin-bottom: 0;
}
.appointment .appointment-selected__item + .appointment-selected__item:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #ededed;
}
.appointment  button.appointment__submit {
    height: 56px;
}
.btn-second-light {
    background: transparent;
    border: 1px solid #f47920;
    color: #f47920;
}
.map-btn-wrapper {
    padding-top: 20px;
}
.map-btn {
    width: 210px;
    margin-left: 5px;
    position: relative;
    padding-right: 40px;
}
.map-btn:after {
    position: absolute;
    content: '';
    width: 14px;
    height: 20px;
    top: 50%;
    transform: translateY(-50%);
    right: 15px;
    background: url(../img/icons/marker_white.svg) no-repeat;
    background-size: contain;
}
.map-btn:hover:after {
    background-image: url(../assets/img/pin.png);
}
.clinics__map {
    height: 445px;
    margin-bottom: 36px;
    width: 100%;
}
.clinics-map-wrapper {
    width: 100%;
    padding-top: 30px;
}
.clinics-map-wrapper .clinics__map {
    display: none;
}
.clinics-map-wrapper.map-open .map-btn {
    padding-right: 15px;
}
.clinics-map-wrapper.map-open .map-btn:after {
    content: none;
}
.clinics-map-wrapper.map-open .clinics__map {
    display: block;
}
.appointment-coast {
    display: none;
}
.appointment-age-block {
    position: relative;
}
.appointment-age-delete {
    display: none;
    position: absolute;
    cursor: pointer;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}
.appointment-age-delete svg {
    height: 14px;
    width: 14px;
}
.appointment .tooltip-notice {
    font-size: 14px;
    font-weight: 500;
    line-height: 1.3;
    white-space: normal;
}
.popup-appointment .appointment-selected__item {
    margin-bottom: 15px;
}
.appointment-success-btns.two-buttons {
    display: flex;
    justify-content: space-between;
    margin-left: -5px;
    margin-right: -5px;
}
.appointment-success__btn {
    margin: 0 5px;
}
.popup-appointment .btn {
    font-size: 15px;
}
.form-group__wrap.form-group__wrap--columns-1 {
    display: block;
    margin-bottom: 20px;
}
.appointment__date-item .form-ccheck__item input:disabled+label {
    border-color: #e8e8e8;
    cursor: default;
    color: #919191;
}
.appointment__date-item__right {
    width: 100%;
}
.appointment-selected__item-value {
    white-space: normal;
}
.appointment-selected__price__tooltip {
    white-space: normal;
    font-size: 14px;
    padding-top: 15px;
    color: #8c8c8c;
}
.appointment-selected__item.appointment-selected__item--price {
    white-space: normal;
    font-size: 14px;
    padding-top: 15px;
    color: #8c8c8c;
}
.appointment-selected__item-value {
    overflow: unset;
}
.appointment--journal .appointment__block {
    padding: 0;
}
.form-group__wrapper-comment textarea.form-control {
    height: 70px;
}
.appointment__date-person__info {
    display: flex;
}
.appointment__date-person__post-item + .appointment__date-person__post-item {
    padding-left: 20px;
    position: relative;
}
.appointment__date-person__post-item + .appointment__date-person__post-item:before {
    content: '';
    position: absolute;
    height: 3px;
    width: 3px;
    border-radius: 50%;
    background: #ababab;
    left: 9px;
    top: 50%;
    transform: translateY(-50%);
}
.map-balloon-btn {
    margin-top: 10px;
}
.appointment--journal .appointment__block {
    margin-bottom: 20px;
}
.journal-block-date .appointment__block-form {
    margin-top: 10px;
}
.journal-success-text {

}

@media (min-width: 1025px) {
    .appointment.appointment--journal {
        display: unset;
    }
}

@media (max-width: 1025px) {
    .appointment-selected__item-value {
        white-space: unset;
    }
	.appointment-clinics-slider__prev, 
	.appointment-clinics-slider__next {
		top: 33px;
	}
}

@media (max-width: 878px) {
    .appointment__info-top {
        flex-direction: column-reverse;
        align-items: unset;
    }
    .form-checkboxes__item.form-checkboxes__item--other-time {
        width: auto;
    }
    .appointment__info-other-time {
        margin-bottom: 20px;
    }

}


@media (max-width: 600px) {
    .appointment__info-top .appointment__block-journal {
        max-width: unset;
    }
    .appointment-coast__inner {
        padding: 10px 0;
    }
    .map-btn {
        width: 100%;
    }
    .appointment .select2-container .select2-selection--single {
        height: 56px;
    }
    .appointment .form-control {
        height: 56px;
    }
    .appointment .form-label {
        line-height: unset;
    }
    .appointment__title.h4 {
        font-size: 20px;
        margin-bottom: 3px;
    }
    .form-group__wrap--columns-2 .form-group,
    .form-group__wrap--columns-3 .form-group {
        width: 100%;
    }
    .form-group__wrap.form-group__wrap--columns-2 {
        margin-top: 20px;
    }
    .appointment .selectric {
        height: 56px;
    }
    .form-group__wrap.form-group__wrap--columns-1 {
        margin-top: 20px;
    }
    .appointment__dms-company ul li {
        font-size: 12px;
    }
    .form-group__wrap .form-hint {
        line-height: 1.5;
        padding-top: 10px;
    }
    .appointment__submit {
        max-width: unset;
    }
	.appointment__date-item__bottom {
		flex-direction: row-reverse;
	}
}

@media (max-width: 480px) {
    .appointment__date-person__post-item + .appointment__date-person__post-item:before {
        content: none;
    }
    .appointment__date-person__info {
        display: block;
    }
    .appointment__date-person__post-item + .appointment__date-person__post-item {
        padding-left: 0;
    }
	.appointment__date-item__bottom {
		flex-direction: column-reverse;
		align-items: flex-start;
	}
}

@media (min-width: 1025px) {
    .appointment__date-item {
        display: flex;
    }
}

.main-slider__item-desc.mobile {
    display: none;
}

@media (max-width: 1222px) {
    .page-title__image {
        background-image: none!important;
    }
}

@media (max-width: 1024px) {
    .main-slider__item-desc.desktop {
        display: none;
    }
    .main-slider__item-desc.mobile {
        display: block;
    }
    .main-slider__item-btn {
        margin-top: 18px;
    }
}


.map-balloon-btn {
    display: none;
}