html {
}

body {
    margin: 0;
    padding: 0;
    min-height: 100vh;
    box-sizing: border-box;
    font-family: 'Open Sans', sans-serif;
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #f1f1f1;
    overflow-x: hidden !important;
}

:root {
    --color-bgr: #1d3054;
    --width-page: 1276px;
}

:active,
:hover,
:focus {
    outline: 0;
    outline-offset: 0;
}

p {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
}

.marquee {
    height: 30px;
    width: 100%;
    font-size: 21px;
    color: #0A246A;
    background-color: #eaff00;
    font-weight: 700;
    overflow: hidden;
    position: relative;
}

.marquee__content {
    white-space: nowrap;
    width: max-content;
    padding: 0 0 0 100vw;
    animation: marquee 25s linear infinite;
}

@keyframes marquee {
    0% {
        transform: translate(0%, 0);
    }
    100% {
        transform: translate(-100%, 0);
    }
}

@media (min-width: 769px) {
    .marquee__content {
        animation-duration: 40s;
    }
}

/*-----------UI элементы----------------*/
.table__custom {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
    width: 100% !important;
    height: auto !important;
}

.table__custom tr {
    height: 50px;
}

.table__custom tr:nth-child(even) {
    height: 45px;
    background-color: #fff;
    border-radius: 10px;
}

.table__custom tr:nth-child(odd) {
    height: 45px;
    background-color: transparent;
    border-radius: 0px;
}

.table__custom a {
    font-style: normal;
    font-weight: 800;
    font-size: 18px;
    color: #4f4f4f;
}

.table__custom td {
    padding: 15px;
}

.table__custom th {
    padding: 0 15px;
}

table {
    max-width: 100%;
    border-color: #1d3054;
    border-collapse: collapse;
    overflow-x: auto;
}

thead {
    width: 100%;
    height: 60px;
    background: #dcdee1;
    border-radius: 10px 10px 10px 10px;
}

.input__checkbox:checked {
    background-color: #31b404;
    background-image: url(./../images/icon_checkbox.svg);
    border: 1px solid #31b404;
    box-shadow: 0px 2px 2px #f5f5f5;
    border-radius: 5px;
}

.input__checkbox {
    width: 20px;
    height: 20px;
    margin: 0;
}

.input__checkbox-label {
    width: 20px;
    height: 20px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.input__label {
    display: block;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.input__text {
    width: 100%;
    min-width: 300px;
    background-color: #fff;
    border: 1px solid #dddddd;
    border-radius: 4px;
    padding: 10px 15px;
    box-sizing: border-box;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 30px;
    color: #1d3054;
    background-repeat: no-repeat;
    background-position: right;
    background-position-x: calc(100% - 15px);
}

/*--datepicker--*/
.flatpickr-calendar {
    width: 300px;
    height: 300px;
}

.flatpickr-months {
    margin-left: 20px;
    margin-right: 20px;
    margin-top: 15px;
}

.flatpickr-month {
    height: 27px !important;
}

.flatpickr-prev-month {
    height: 27px !important;
    width: 27px !important;
    background: #999999;
    border-radius: 4px;
    top: 15px !important;
    left: 20px !important;
    padding: 0 !important;
    background-image: url(./../images/datepicker/datepicker_btn_prev.png);
    background-repeat: no-repeat;
    background-position: center;
}

.flatpickr-next-month {
    height: 27px !important;
    width: 27px !important;
    background: #999999;
    border-radius: 4px;
    right: 20px !important;
    top: 15px !important;
    padding: 0 !important;
    background-image: url(./../images/datepicker/datepicker_btn_next.png);
    background-repeat: no-repeat;
    background-position: center;
}

.flatpickr-prev-month svg,
.flatpickr-next-month svg {
    display: none;
}

.flatpickr-current-month {
    height: 27px !important;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.flatpickr-monthDropdown-months {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    font-style: normal !important;
    font-weight: 400 !important;
    font-size: 12px !important;
    line-height: 16px !important;
    text-align: center;
    color: #ffffff !important;
    background: #31b404 !important;
    border-radius: 4px !important;
    height: 100% !important;
    padding: 3px 8px !important;
    box-sizing: border-box !important;
}

.flatpickr-monthDropdown-months:hover {
    background-color: transparent !important;
    color: #ffffff !important;
    background: #31b404 !important;
}

.flatpickr-monthdropdown-months option {
    border: 1px solid #ffffff !important;
}

.numInputWrapper {
    display: none !important;
}

.flatpickr-innerContainer {
    margin: 0px 20px 15px 20px !important;
    box-sizing: content-box !important;
}

.flatpickr-day {
    font-style: normal !important;
    font-weight: 400 !important;
    color: #4f4f4f !important;
}

.prevMonthDay:hover,
.flatpickr-day:hover {
    background-color: #31b404 !important;
    border-color: #31b404 !important;
    border-radius: 4px !important;
    opacity: 0.5 !important;
}

.prevMonthDay {
    font-style: normal !important;
    font-weight: 400 !important;
    color: #999999 !important;
}

.today {
    background-color: #999999 !important;
    border-color: #999999 !important;
    border-radius: 4px !important;
}

.selected {
    background-color: #31b404 !important;
    border-color: #31b404 !important;
    border-radius: 4px !important;
}

/*--datepicker--*/
/*--popup-checkboxs--*/
.popup {
    z-index: 10;
    border: 1px solid #dddddd;
}

.popup__listing {
    position: absolute;
    height: fit-content;
    padding: 20px 15px;
    box-sizing: border-box;
    background-color: #fff;
    border-radius: 0 0 5px 5px;
    border-width: 0px 1px 1px 1px;
}

.popup__select {
    position: absolute;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    height: fit-content;
    background-color: #fff;
    border-width: 0px 1px 1px 1px;
    border-style: solid;
    border-color: #dcdee1;
    border-radius: 0px 0px 4px 4px;
    box-sizing: border-box;
}

.select__item {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 6px 15px;
    width: 100%;
    height: 40px;
    border-bottom: 1px solid #dcdee1;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    color: #4f4f4f;
    box-sizing: border-box;
    cursor: pointer;
}

.select__item:first-child {
    margin-top: 10px;
}

/*--popup-checkboxs--*/
/*--popup-composition--*/
.popup__composition {
    position: absolute;
    width: 300px;
    height: fit-content;
    padding: 20px 15px 25px 15px;
    box-sizing: border-box;
    background-color: #fff;
    border-radius: 0 0 5px 5px;
    border-width: 0px 1px 1px 1px;
}

.popup__composition-list {
    width: 100%;
    height: fit-content;
    min-height: 26px;
    margin-bottom: 25px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.popup__composition-btn {
    width: 100%;
    height: 41px;
    background: #ffffff;
    border: 1px solid rgba(29, 48, 84, 0.5);
    border-radius: 10px;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
    cursor: pointer;
}

.popup__composition-btn:hover {
    background: rgba(154, 205, 50, 0.05);
    border: 2px solid rgba(29, 48, 84, 0.5);
    border-radius: 10px;
}

/*--popup-composition--*/
/*--popup-datepicker--*/
.popup__datepicker {
    position: absolute;
    width: 300px;
    height: fit-content;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    background: #ffffff;
    border-radius: 0px 0px 4px 4px;
    box-sizing: border-box;
    border-top: unset;
    z-index: 31;
    top: 100%;
}

.datepicker {
    max-width: 100%;
}

.datepicker-lite__prev-btn {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 2px 3px;
    box-sizing: border-box;
    min-width: 22px;
    min-height: 22px;
    background: #999999;
    border-radius: 4px;
    background-image: url(./../images/icons-svg/calendar_arrow_prev.svg);
    background-position: center center;
    background-repeat: no-repeat;
    cursor: pointer;
}

.datepicker-lite__header-label {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 2px 8px;
    box-sizing: border-box;
    width: 80%;
    height: 22px;
    background: #31b404;
    border-radius: 4px;
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    color: #ffffff;
    cursor: pointer;
}

.datepicker__label {
    margin: auto;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.datepicker-lite__header-select {
    width: 80%;
    height: 150px;
    display: flex;
    flex-direction: column;
    background: #31b404;
    margin-top: -5px;
    padding: 10px 0;
    box-sizing: border-box;
}

.datepicker-lite__header-select-items {
    width: 100%;
    height: calc(100% - 30px);
    display: flex;
    justify-content: space-around;
}

.datepicker-lite__header-select-close {
    width: calc(100% - 10px);
    height: 25px;
    border: 1px solid #fff;
    color: #fff;
    border-radius: 5px;
    text-align: center;
    margin-top: 5px;
    margin-left: 5px;
    background-color: transparent;
    cursor: pointer;
}

.datepicker-lite__header-select-close:hover {
    text-decoration: underline;
}

.datepicker-lite__header-month {
    overflow-y: scroll;
}

.datepicker-lite__header-year {
    overflow-y: scroll;
}

.datepicker-lite__header-month::-webkit-scrollbar,
.datepicker-lite__header-year::-webkit-scrollbar {
    width: 10px; /* ширина scrollbar */
}

.datepicker-lite__header-month::-webkit-scrollbar-track,
.datepicker-lite__header-year::-webkit-scrollbar-track {
    background: #ffffff; /* цвет дорожки */
    border-radius: 10px;
}

.datepicker-lite__header-month::-webkit-scrollbar-thumb,
.datepicker-lite__header-year::-webkit-scrollbar-thumb {
    background-color: #31b404; /* цвет плашки */
    border-radius: 5px; /* закругления плашки */
    border: 1px solid #fff;
}

.datepicker-lite__header-item {
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    color: #ffffff;
    padding-right: 5px;
    cursor: pointer;
}

.datepicker-lite__header-item:hover {
    text-decoration: underline;
}

.datepicker-lite__next-btn {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 2px 3px;
    box-sizing: border-box;
    min-width: 22px;
    min-height: 22px;
    background: #999999;
    border-radius: 4px;
    background-image: url(./../images/icons-svg/calendar_arrow_next.svg);
    background-position: center center;
    background-repeat: no-repeat;
    cursor: pointer;
}

/*--popup-datepicker--*/
/*--index-form--*/
.index-form {
    width: 100%;
    height: fit-content;
    display: flex;
    align-items: center;
    padding: 7px 0px;
}

.program-designer-excursions .find-list__body-price {
    padding: 0 10px 0 10px;
}

.index-form__label {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.index-form__text {
    box-sizing: border-box;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    color: #4f4f4f;
}

.index-form_one-line {
    line-height: 36px;
}

.index-form__input {
    flex: 1;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.index-form__btn-minus,
.index-form__btn-prog-minus,
.index-form__btn-placement-minus {
    width: 36px;
    height: 36px;
    background: rgba(154, 205, 50, 0.2);
    border-radius: 50px;
    background-image: url(./../images/icon_minus.png);
    background-repeat: no-repeat;
    background-position: center;
    cursor: pointer;
}

.index-form_btn-disabled {
    background: rgba(154, 205, 50, 0.2);
}

.index-form__value {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
    border: none;
    width: 60px;
    background: transparent;
    text-align: center;
}

.index-form_value-lite {
    width: 30px;
}

.index-form__maxValue {
    width: 60px;
    text-align: center;
}

.index-form__btn-plus,
.index-form__btn-prog-plus,
.index-form__btn-placement-plus {
    width: 36px;
    height: 36px;
    background: rgba(154, 205, 50, 0.2);
    border-radius: 50px;
    background-image: url(./../images/icon_plus.png);
    background-repeat: no-repeat;
    background-position: center;
    cursor: pointer;
}

.index-form__select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    width: 100%;
    height: 30px;
    border: 1px solid #82a1ab;
    border-radius: 4px;
    font-style: normal;
    font-weight: 400;
    font-size: 15px;
    line-height: 20px;
    color: #4f4f4f;
    padding-left: 10px;
    background-color: transparent;
    background-image: url(./../images/icon_select_arrow1.png);
    background-repeat: no-repeat;
    background-position: center right;
    background-position-x: calc(100% - 10px);
}

option::after {
    appearance: none;
    height: 40px;
    border-bottom: 1px solid #dcdee1;
    padding: 6px 15px;
    box-sizing: border-box;
}

/*--index-form--*/
/*--checkbox__item--*/
.checkbox__label {
    width: fit-content;
    height: 35px;
    display: flex;
    align-items: center;
}

.checkbox {
    width: 20px;
    height: 20px;
    min-width: 20px;
    min-height: 20px;
    margin: 0;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    background-color: #fff;
    border: 1px solid #31b404;
    border-radius: 5px;
}

.checkbox:checked {
    width: 20px;
    height: 20px;
    min-width: 20px;
    min-height: 20px;
    margin: 0;
    background-color: #31b404;
    background-image: url(./../images/icon_checkbox.png);
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 5px;
}

.checkbox__text {
    margin-left: 10px;
    font-style: normal;
    font-weight: 400;
    font-size: 1rem;
    line-height: 20px;
    color: #4f4f4f;
    width: unset;
    cursor: pointer;
}

/*--checkbox-item--*/
/*--radiobox-item--*/
.radiobox__label {
    width: fit-content;
    height: 35px;
    display: flex;
    align-items: center;
}

.radiobox {
    width: 24px;
    height: 24px;
    margin: 0;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    background-color: #fff;
    border: 1px solid #31b404;
    filter: drop-shadow(0px 2px 2px #f5f5f5);
    border-radius: 20px;
}

.radiobox:checked {
    width: 24px;
    height: 24px;
    margin: 0;
    background-color: #31b404;
    background-image: url(./../images/icon_radiobox.png);
    background-repeat: no-repeat;
    background-position: center;
    background-color: #fff;
    border: 1px solid #31b404;
    filter: drop-shadow(0px 2px 2px #f5f5f5);
    border-radius: 20px;
}

.radiobox__text {
    margin-left: 10px;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    color: #4f4f4f;
    cursor: pointer;
}

/*--radiobox-item--*/
/*--icon-list--*/
.icon-list {
    display: flex;
    width: 100%;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    align-items: center;
    padding-top: 5px;
}

.icon-list__icon {
    height: auto;
}

.icon-list__label {
    margin-left: 12px;
}

/*--icon-list--*/
/*--buttons--*/
.vp-btn {
    background-color: #31b404;
    border-radius: 10px;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 30px;
    color: #fff;
    border: none;
    padding: 10px 20px;
    box-sizing: border-box;
    cursor: pointer;
}

.vp-btn:hover,
.vp-btn.hovered {
    background-color: #ff8a00;
}

.vp-btn:disabled {
    background-color: #4f4f4f;
    cursor: not-allowed;
}

.vp-btn-inline {
    border: 1px solid rgba(29, 48, 84, 0.5);
    border-radius: 10px;
    background-color: transparent;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    color: #1d3054;
    padding: 10px 20px;
    box-sizing: border-box;
    cursor: pointer;
}

/*--buttons--*/
/*--inputs--*/
.vp-input {
    width: 100%;
    min-width: 230px;
    background-color: #fff;
    border: 1px solid #dddddd;
    border-radius: 4px;
    padding: 10px 15px;
    box-sizing: border-box;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 30px;
    color: #1d3054;
    background-repeat: no-repeat;
}

.vp-input_invalid {
    border: 1px solid #b72025 !important;
}

.vp-input_invalid::-webkit-input-placeholder,
.vp-input_invalid:-moz-placeholder,
.vp-input_invalid::-moz-placeholder,
.vp-input_invalid:-ms-input-placeholder,
.vp-input_invalid::-ms-input-placeholder,
.vp-input_invalid::placeholder {
    color: #b72025 !important;
}

.vp-checkbox_invalid {
    border: 1px solid #b72025 !important;
}

.vp-checkbox_invalid::-webkit-input-placeholder,
.vp-checkbox_invalid:-moz-placeholder,
.vp-checkbox_invalid::-moz-placeholder,
.vp-checkbox_invalid:-ms-input-placeholder,
.vp-checkbox_invalid::-ms-input-placeholder,
.vp-checkbox_invalid::placeholder {
    color: #b72025 !important;
}

.invalid-birthdate {
    border: 1px solid #b72025 !important;
}

.invalid-birthdate::-webkit-input-placeholder,
.invalid-birthdate:-moz-placeholder,
.invalid-birthdate::-moz-placeholder,
.invalid-birthdate:-ms-input-placeholder,
.invalid-birthdate::-ms-input-placeholder,
.invalid-birthdate::placeholder {
    color: #b72025 !important;
}
.icon-pos-left {
    background-position: left;
    background-position-x: 15px;
}

.icon-pos-right {
    padding-right: 45px;
    background-position: right;
    background-position-x: calc(100% - 15px);
}

.vp-input::-webkit-input-placeholder,
.vp-input::-moz-placeholder,
.vp-input:-moz-placeholder,
.vp-input:-ms-input-placeholder {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 30px;
    color: #1d3054;
}

/*--inputs--*/
/*--custom-select--*/
.custom-select {
    width: 100%;
    height: 100%;
    position: relative;
}

.custom-select__body {
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    background-color: #fff;
    border-radius: 4px;
    padding: 0 15px;
    box-sizing: border-box;
    border: 1px solid rgba(29, 48, 84, 0.5);
    background-image: url(./../images/icons-svg/arrowdown.svg);
    background-repeat: no-repeat;
    background-position: calc(100% - 10px) center;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    color: #4f4f4f;
    cursor: pointer;
}

.custom-select_body-open {
    background-image: url(./../images/icons-svg/arrowup.svg);
    border-bottom: unset;
    border-bottom-right-radius: unset;
    border-bottom-left-radius: unset;
}

.custom-select__items {
    position: absolute;
    width: calc(100% - 2px);
    height: fit-content;
    background-color: #fff;
    border-radius: 4px;
    border: 1px solid rgba(29, 48, 84, 0.5);
    border-top: unset;
    border-top-right-radius: unset;
    border-top-left-radius: unset;
    z-index: 2;
}

.custom-select__item {
    width: 100%;
    height: 40px;
    border-bottom: 1px solid #dcdee1;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 40px;
    color: #4f4f4f;
    padding: 0 15px;
    box-sizing: border-box;
    cursor: pointer;
}

.custom-select__item:last-child {
    border-bottom: unset;
}

/*--custom-select--*/
/*--tabs--*/
.vp-tabs-content {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    box-sizing: border-box;
    background-color: #fff;
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);
    border-radius: 10px;
}

.vp-tabs {
    width: 100%;
    height: 45px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    padding: 0px;
    box-sizing: border-box;
    border-bottom: 1px solid #ff8a00;
}

.vp-tab {
    height: 100%;
    flex: 1;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #1d3054;
    cursor: pointer;
}

.vp-tab:first-child {
    border-top-left-radius: 10px;
}

.vp-tab:last-child {
    border-top-right-radius: 10px;
}

.vp-tab_active {
    background: #ff8a00;
    font-style: normal;
    font-weight: 700;
    color: #fff;
    cursor: default;
}

.vp-tab-contents {
    width: 100%;
    flex: 1;
}

.vp-tab-content {
    width: 100%;
    height: 100%;
    display: none;
    padding: 15px 20px 30px 20px;
    box-sizing: border-box;
}

.vp-tab-content_active {
    display: block;
}

/*--tabs--*/
/*-----------UI элементы----------------*/
/*-----------header---------------------*/
.header {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 9;
}

.header__row:first-child {
    width: 100%;
    background-color: var(--color-bgr);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.header__row {
    width: 100%;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.header__top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 50px;
    width: var(--width-page);
}

.header__phones,
.header__logins {
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
}

.header__menu-mob {
    background-image: url(./../images/icons-svg/mob_menu_icon.svg);
}

.header__phone-mob {
    background-image: url(./../images/icons-svg/mob_phone_icon.svg);
}

.header__phone:first-child {
    text-align: right;
    padding-right: 10px;
}

.header__phone:last-child {
    text-align: left;
    padding-left: 10px;
    border-left: 2px solid rgba(255, 255, 255, 0.5);
}

.header__phone-link {
    text-decoration: none;
    color: #fff;
}

.header__logins {
    display: flex;
    align-items: center;
    justify-content: center;
}

.header__login {
    justify-content: flex-end;
    color: #fff;
    display: flex;
    align-items: center;
}

.header__langs {
    justify-content: flex-start;
    width: 100px;
    box-sizing: border-box;
    height: 100%;
}

.header__lang {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    position: relative;
    padding: 0px;
    margin: 0;
    height: 100%;
}

.header__lang-arrow {
    margin-left: 10px;
}

.header__lang-content {
    list-style: none;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    justify-content: center;
}

.header__langs-list {
    position: absolute;
    top: 0px;
    width: 100px;
    background-color: #ff8a00;
    border-radius: 0px 0px 10px 10px;
    padding: 13px 0px 15px 0px;
    visibility: hidden;
    opacity: 0;
    z-index: 5;
    display: flex;
    flex-direction: column;
    align-items: center;
    transform-origin: 0% 0%;
    transform: rotateX(-90deg);
    transition: 0.3s linear;
}

.header__lang-item {
    list-style: none;
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.header__lang-link {
    text-decoration: none;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    color: #fff;
    display: flex;
    align-items: center;
}

.header__lang-name {
    margin-left: 10px;
}

.header__lang-content:hover > .header__langs-list {
    transform: rotateX(0deg);
    visibility: visible;
    opacity: 1;
}

.header__login-auth,
.header__login-reg,
.header__login-cabinet,
.header__login-logout {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    color: #fff;
    margin: 10px 10px;
}

.header__login-auth:hover,
.header__login-reg:hover,
.header__login-cabinet:hover,
.header__login-logout:hover {
    color: #31b404;
}

.header-bottom {
    min-height: 85px;
    height: fit-content;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: var(--width-page);
}

.header-bottom__logo {
    width: 313px;
    height: 68px;
}

.header-bottom__logo img {
    object-fit: cover;
    object-position: center;
    width: 100%;
}

.header-bottom__nav {
    position: relative;
    height: 85px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin: 0;
}

.header-bottom__menu {
    height: 100%;
    width: fit-content;
    padding: 0px 15px 0px 15px;
    display: flex;
    align-items: center;
}

.header-bottom__submenu {
    position: relative;
    height: 100%;
    width: fit-content;
    padding: 0px 30px 0px 15px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    background-image: url(./../images/icon_arrow_menu.png);
    background-repeat: no-repeat;
    background-position: center right 15px;
    border-bottom: 4px solid transparent;
}

.header-bottom__menu:hover,
.header-bottom__submenu:hover {
    background-color: rgba(250, 116, 34, 0.1);
    border-bottom: 4px solid #ff8a00;
    box-sizing: border-box;
}

.header-bottom__sub-menu {
    position: absolute;
    top: calc(100% + 4px);
    left: 0px;
    width: fit-content;
    height: fit-content;
    min-width: 350px;
    z-index: 5;
    visibility: hidden;
    opacity: 0;
    transform-origin: 0% 0%;
    transform: rotateX(-90deg);
    transition: 0.3s linear;
    background-color: #fff;
    border-radius: 0px 0px 4px 4px;
    padding: 0;
}

.header-bottom__nav .header-bottom__submenu:nth-last-child(2) .header-bottom__sub-menu {
    right: 0;
    left: unset;
}

.header-bottom__submenu:hover > .header-bottom__sub-menu {
    transform: rotateX(0deg);
    visibility: visible;
    opacity: 1;
}

.header-bottom__sub-item {
    min-height: 45px;
    line-height: 45px;
    border-bottom: 1px solid #999999;
    box-sizing: border-box;
    list-style: none;
    padding: 0px 20px;
    width: auto;
}

.header-bottom__sub-item:hover {
    background: rgba(250, 116, 34, 0.1);
}

.header-bottom__sub-link {
    width: 100%;
    height: 100%;
    text-decoration: none;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #054458;
}

.header-bottom_active {
    background-color: rgba(250, 116, 34, 0.1);
    border-bottom: 4px solid #ff8a00;
    box-sizing: border-box;
}

.header-bottom_order {
    background-color: #31b404;
    border-bottom: 4px solid #31b404;
    box-sizing: border-box;
}

.header-bottom_order:hover {
    background-color: #ff8a00;
    border-bottom: 4px solid #ff8a00;
}

.header-bottom_order .header-bottom__link {
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    color: #ffffff;
}

.header-bottom__link {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    color: #1d3054;
    text-transform: uppercase;
    text-decoration: none;
    margin-right: 5px;
    cursor: pointer;
}

/*-----------header---------------------*/

/*-----------payment success page---------------------*/
.success__login-auth {
    font-style: normal;
    font-weight: 600;
    color: #1d3054;
    cursor: pointer;
}

.success__login-auth:hover {
    font-style: normal;
    font-weight: 600;
    color: #636380;
}

/*-----------payment success page---------------------*/

/*-----------menu-mobile----------------*/
.menu-mobile__conteiner {
    position: absolute;
    top: 85px;
    width: 100vw;
    height: calc(100vh - 85px);
    display: none;
    flex-direction: column;
    align-items: center;
    padding: 0px;
    background: #1d3054;
    border-radius: 0px;
    z-index: 10;
}

.menu-mobile__header {
    width: 100%;
    height: fit-content;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
    box-sizing: border-box;
}

.header__btn-mob {
    width: 30px;
    height: 30px;
    background-repeat: no-repeat;
    background-position: center center;
    background-color: transparent;
    border: none;
    display: none;
    cursor: pointer;
}

.header__close-mob {
    background-image: url(./../images/icons-svg/mob_menu_close_icon.svg);
}

.menu-mobile__content {
    width: 100%;
    flex: 1;
    overflow-x: auto;
    padding: 0 20px;
    box-sizing: border-box;
}

.menu-mobile__footer {
    width: 100%;
    height: 120px;
    padding: 10px 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}

.menu-mobile__langs-list {
    width: 100%;
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 0;
}

.menu-mobile__nav {
    width: 100%;
    height: fit-content;
    margin: 0;
    padding: 0;
}

.menu-mobile__nav .header-bottom__link {
    color: #fff;
    font-size: 18px;
    width: 100%;
}

.menu-mobile__nav .header-bottom__submenu {
    width: 100%;
    height: fit-content;
    background: #1d3054;
    background-image: url(./../images/icons-svg/mob_menu_arrow_down.svg);
    background-repeat: no-repeat;
    background-position-x: calc(100% - 10px);
    background-position-y: 20px;
    padding: 10px;
    box-sizing: border-box;
    flex-direction: column;
}

.menu-mobile__sub-menu {
    width: 100%;
    height: fit-content;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    padding: 10px;
    box-sizing: border-box;
    display: none;
    margin-top: 10px;
}

.menu-mobile__sub-menu .header-bottom__sub-link {
    color: #fff;
    font-size: 15px;
}

.menu-mobile__sub-menu_active {
    display: flex;
    flex-direction: column;
}

.menu-mobile__nav .header-bottom__sub-item {
    border: none;
    color: #fff;
}

.menu-mobile__nav .header-bottom__submenu:hover {
    border-bottom: unset;
}

/*-----------menu-mobile----------------*/
/*-----------main-----------------------*/
.main {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 500px;
    margin-bottom: 20px;
}

.main__header {
    position: relative;
    width: 100%;
    height: fit-content;
}

.header__search {
    z-index: 2;
    width: 100%;
    position: absolute;
    bottom: 110px;
    display: flex;
    justify-content: center;
}

.header__filter {
    width: var(--width-page) !important;
    height: fit-content;
}

.section {
    display: flex;
    flex-direction: column;
    width: var(--width-page);
    height: fit-content;
    margin: 20px auto;
}

.main__caption {
    font-family: 'Cuprum', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 30px;
    line-height: 35px;
    color: #1d3054;
    box-sizing: border-box;
    padding: 10px 0px;
    width: 100%;
    text-align: left;
    border-bottom: 1px solid rgba(29, 48, 84, 0.5);
    text-transform: uppercase;
}

.main__introtext {
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 25px;
    color: #1d3054;
    margin-top: 20px;
}

.main__title {
    font-family: 'Cuprum', sans-serif;
    height: 81px;
    font-style: normal;
    font-weight: 700;
    font-size: 70px;
    line-height: 81px;
    color: #fff;
    text-transform: uppercase;
    margin-bottom: 30px;
}

.main__search {
    display: flex;
    width: 1060px;
    padding: 10px;
    background: rgba(255, 255, 255, 0.5);
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);
    border-radius: 10px;
}

.main__text {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    display: flex;
    align-items: center;
    color: #4f4f4f;
}

.main__content {
    width: 100%;
    margin: 20px 0px 0px 0px;
    display: flex;
    flex-wrap: wrap;
}

.main__content_block {
    display: block;
}

.main__donations {
    width: 100%;
    margin: 20px 0px 0px 0px;
    display: flex;
    justify-content: space-between;
}

.main__content-mini {
    width: calc(50% - 10px);
    height: fit-content;
}

.btn-more-show {
    width: 100%;
    height: 40px;
    line-height: 40px;
    background: #fff;
    border: 1px solid rgba(29, 48, 84, 0.5);
    border-radius: 10px;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    color: #4f4f4f;
    text-decoration: none;
    margin: 30px 0px 20px 0px;
    text-align: center;
    box-sizing: border-box;
}

.btn-more-show:hover {
    background: rgba(49, 180, 4, 0.05);
    border: 2px solid rgba(29, 48, 84, 0.5);
    box-sizing: border-box;
}

.pagination {
    width: fit-content;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
    box-sizing: border-box;

    background: #ffffff;
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);
    border-radius: 50px;
    margin-top: 30px;
}

.pagination__item {
    width: 30px;
    height: 30px;
    background: transparent;
    border-radius: 30px;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 30px;
    text-align: center;
    color: #4f4f4f;
    text-decoration: none;
}

.pagination_item-active {
    background: #1d3054;
    color: #ffffff;
}

.pagination_prev {
    background-image: url(./../images/icons-svg/nav_arrow_prev.svg);
    background-repeat: no-repeat;
    background-position: center center;
}

.pagination_next {
    background-image: url(./../images/icons-svg/nav_arrow_next.svg);
    background-repeat: no-repeat;
    background-position: center center;
}

.pagination a:nth-last-child(n + 2) {
    margin-right: 10px;
}

.label-list {
    position: absolute;
    width: fit-content;
    padding: 0 20px;
    box-sizing: border-box;
    height: 45px;
    top: 0px;
    left: 0px;
    background-color: #ff8a00;
    border-radius: 20px 0px 20px 0px;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 25px;
    color: #fff;
}

.label-list span {
    margin-left: 10px;
}

.main__poster {
    width: 100%;
    height: 80vh;
    z-index: 1;
    background-image: url(./../images/main-slider/602.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    filter: contrast(1.3);
}

.listing {
}

.listing__title {
    font-style: normal;
    font-weight: bold;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
}

.listing__list {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
}

.listing__item {
}

/*-----find-programs-------*/
.find-programs {
    background: linear-gradient(
            0deg,
            rgba(29, 48, 84, 0.7),
            rgba(29, 48, 84, 0.7)
    ),
    url(./../images/find-programs-bg.png);
    background-repeat: no-repeat;
    background-position: center;
    align-items: center;
    padding: 20px 50px;
    max-width: 100%;
    height: 400px;
    border-radius: 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.find-programs__title {
    width: 100%;
    height: 60px;
    font-family: 'Cuprum', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 50px;
    line-height: 60px;
    text-align: center;
    color: #fff;
    text-transform: uppercase;
}

.find-programs__construct {
    width: 100%;
    height: 50px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 0px;
}

.find-programs__label {
    height: 50px;
    font-family: 'Cuprum', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 28px;
    line-height: 50px;
    text-align: center;
    color: #ffffff;
}

.find-programs__link {
    text-decoration: none;
}

.find-programs__separate {
    width: 100%;
    height: 1px;
    margin-top: 30px;
    border-top: 1px solid rgba(255, 255, 255, 0.5);
}

.find-programs__form {
    width: 845px;
    display: flex;
    justify-content: center;
    gap: 20px;
}

.find-programs__form .vp-input_invalid {
    border-width: 3px !important;
}

/*-----find-programs-------*/
/*-----------main-----------------------*/
/*-----------crumbs---------------------*/

.crumbs {
    width: 100%;
    background: rgba(255, 255, 255, 0.5);
    display: flex;
    justify-content: center;
}

.crumbs__row {
    width: var(--width-page);
}

.crumbs__list {
    display: flex;
    padding-left: 0;
    align-items: center;
    list-style: none;
}

.crumbs__list::before {
    content: '';
    width: 20px;
    height: 20px;
    background-image: url(./../images/crumbs_icon.png);
}

.crumbs__item:first-child {
    margin-left: 10px;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    color: #1d3054;
}

.crumbs__item {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-left: 13px;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    color: #1d3054;
}

.crumbs__item::after {
    display: block;
    content: '';
    width: 6px;
    height: 12px;
    background-image: url(./../images/crumbs_arrow.png);
}

.crumbs__item:last-child {
    font-style: normal;
    font-weight: 700;
    font-size: 16px;
    color: #1d3054;
}

.crumbs__item:last-child::after {
    width: 0;
}

.crumbs__link {
    color: #1d3054;
    text-decoration-line: underline;
}

/*-----------crumbs---------------------*/
/*-----------find-list-------------------*/
.find-list {
    position: relative;
    width: 100%;
    margin-top: 30px;
    background: #fff;
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);
    border-radius: 20px;
    display: flex;
    max-height: 276px;
    height: 276px;
}

.findList_show .find-list {
    display: flex;
}

.findList_hide > .find-list:nth-child(-n + 3) {
    display: flex;
}

img.find-list__img {
    object-fit: cover;
    object-position: center;
}

.find-list__img {
    width: 300px;
    min-height: 100%;
    max-height: 251px;
    border-radius: 20px 0 0 20px;
}

.find-list__img_bg {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.find-list_img-selected {
    border: 3px solid #ff8a00;
    border-right: unset;
    box-sizing: border-box;
}

.find-list__content {
    max-height: 100%;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.find-list_content-selected {
    border: 3px solid #ff8a00;
    border-left: unset;
    border-right: unset;
    box-sizing: border-box;
}

.find-list__header {
    padding: 15px 20px 15px 20px;
    display: inline;
    overflow: hidden;
    flex: 1;
}

.find-list__title {
    width: 100%;
    height: fit-content;
    font-family: 'Cuprum', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 35px;
    color: #1d3054;
    margin-bottom: 10px;
}

.find-list__link {
    color: #1d3054;
    -webkit-text-fill-color: #1d3054;
    text-decoration: none;
    word-wrap: break-word;
}

.find-list__icon-list {
    display: flex;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 19px;
    color: #1d3054;
    align-items: center;
    padding-top: 5px;
}

.find-list__col_first {
    flex: 3;
    overflow: hidden;
    border: none;
    background: linear-gradient(180deg, #000 80%, #fff 100%, rgba(79, 79, 79, 0) 105.25%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    height: 100%;
}

.find-list__col_second {
    flex: 1;
    border-left: 1px solid #b3b3b3;
    padding: 0px 0px 0px 15px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

.find-list__label {
    margin-left: 12px;
}

.find-list__desc {
    width: 100%;
    flex: 1;
    padding: 0 20px 0 0px;
    box-sizing: border-box;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 26px;
    display: flex;
    align-self: stretch;
    color: #4f4f4f;
}

.find-list__footer {
    width: 100%;
    height: 50px;
    display: flex;
    flex-wrap: wrap;
    overflow-y: auto;
    gap: 5px;
    align-items: center;
    justify-content: flex-start;
    box-sizing: border-box;
    padding: 0px 20px 0px 20px;
    background-color: #f5f5f5;
}

.find-list__date-item__wrapper {
    display: flex;
}

.find-list__date-item {
    display: flex;
    align-items: center;
    width: fit-content;
    margin-right: 30px;
}

.find-list__point {
    min-width: 14px;
    min-height: 14px;
    border-radius: 7px;
    background-color: #fff;
}

.find-list__date {
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 19px;
    color: #333333;
    margin-left: 10px;
}

.find-list__date-item-last {
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 19px;
    color: #333333;
    text-decoration: none;
}

.find-list_orange {
    background-color: #ff8a00;
}

.find-list_red {
    background-color: #b72025;
}

.find-list_green {
    background-color: #31b404;
}

.find-list__price {
    height: 100%;
    min-width: 200px;
    max-height: 276px;
    display: flex;
    flex-direction: column;
    border-bottom-right-radius: 20px;
    border-top-right-radius: 20px;
}

.find-list__body-price {
    flex: 1;
    background-color: #f5f5f5;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    color: #b72025;
    border-top-right-radius: 20px;
}

.find-list_body-price-selected {
    border: 3px solid #ff8a00;
    border-bottom: unset;
    border-left: unset;
    box-sizing: border-box;
}

.find-list__price-value {
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    color: #b72025;
    margin: 0px 10px 0px 10px;
}

.find-list__footer-price {
    width: 100%;
    height: 50px;
    background-color: #31b404;
    border-radius: 0px 0px 20px 0px;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 50px;
    color: #fff;
    text-align: center;
}

.find-list__footer-price:hover {
    background-color: #ff8a00;
}

.find-list_footer-price-selected {
    border: 3px solid #ff8a00;
    background-color: #ff8a00;
    border-top: unset;
    border-left: unset;
    box-sizing: border-box;
}

.find-list__footer-link {
    color: #fff;
    text-decoration: none;
    appearance: none;
    background: transparent;
    border: none;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 50px;
    text-align: center;
    cursor: pointer;
}

.find-list_details {

}

.find-list_details .find-list__header {
    display: flex;
}

/*-----------find-list-------------------*/
/*-----------list-----------------------*/
.list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
    gap: 20px;
}

.list-grid {
    display: grid;
    grid-gap: 1rem;
}

.list-grid_posts {
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    margin-top: 2.5rem;
}

.list-grid_populars {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    margin-top: 2.5rem;
}

.list-grid_hotel-rooms {
    grid-template-columns: repeat(auto-fit, minmax(412px, 1fr));
    justify-items: center;
}

.list-grid_excursions {
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    justify-items: center;
}

.list-grid_constructor-excursions {
    grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
    justify-items: center;
}

.list-grid_services {
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

.list_left {
    justify-content: flex-start;
}

.list_center {
    justify-content: center;
}

/*-----------list-----------------------*/
/*-----------popular-list---------------*/
.popular-list {
    position: relative;
    height: 460px;
    display: flex;
    flex-direction: column;
    border-radius: 20px;
    background-color: #fff;
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);
    max-width: 100%;
}

.popularsList_show .popular-list {
    display: flex;
}

.popularsList_hide > .popular-list:nth-child(-n + 9) {
    display: flex;
}

.popularsList_hide > .popular-list:nth-child(n + 9) {
    display: none;
}

.popular-list__header {
    width: 100%;
    display: flex;
    flex-direction: column;
}

.popular-list__img {
    width: 100%;
    height: 200px;
    border-radius: 20px 20px 0px 0px;
}

.popular-list__title {
    width: 100%;
    height: 70px;
    background-color: #1d3054;
    font-family: 'Cuprum', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 28px;
    display: flex;
    align-items: center;
    color: #fff;
    box-sizing: border-box;
    text-align: left;
    padding: 0px 20px;
}

.popular-list__options {
    flex: 1;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 19px;
    color: #333333;
    padding: 0px 20px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

.popular-list__option {
    display: flex;
    align-items: center;
}

.popular-list__footer {
    width: 100%;
    height: 60px;
    border-radius: 20px 20px 20px 20px;
    display: flex;
    text-align: center;
    border-bottom-left-radius: 20px;
}

.popular-list__price {
    height: 100%;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    border-bottom-left-radius: 20px;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #b72025;
}

.popular-list__price-value {
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 33px;
    color: #b72025;
    padding-left: 5px;
}

.popular-list__btn {
    width: 120px;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #31b404;
    border-bottom-right-radius: 20px;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 25px;
    color: #fff;
    cursor: pointer;
}

.popular-list__link {
    color: #fff;
    text-decoration: none;
}

.popular-list__btn:hover {
    background-color: #ff8a00;
}

/*-----------popular-list---------------*/
/*-----------post-list---------------*/
.post-list {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 300px;
    display: flex;
    border-radius: 20px;
    flex-direction: column;
    grid-column-start: 1;
    grid-column-end: span 4;
}

.grid-item_post-list {
    height: 300px;
    min-width: 300px;
}

.post-list__title {
    width: 100%;
    height: 50px;
    background-color: #fff;
    font-family: 'Cuprum', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1d3054;
    border-radius: 20px 20px 0px 0px;
    white-space: nowrap;
}

.post-list__img {
    border-radius: 0px 0px 20px 20px;
    flex: 1;
    z-index: 1;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.post-list__desc {
    position: absolute;
    opacity: 0;
    padding: 20px;
    box-sizing: border-box;
    top: 300px;
    width: 100%;
    height: 250px;
    background-color: #1d3054;
    border-radius: 0px 0px 20px 20px;
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 27px;
    text-align: center;
    color: #fff;
    z-index: 2;
    transition: all 0.3s ease-in-out;
}

.post-list__desc_show {
    top: 50px;
    opacity: 1;
}

.post-list__link {
    color: #1d3054;
    text-decoration: none;
    height: 100%;
}

/*-----------post-list---------------*/
/*-----------placement---------------*/
.placement-select {
    display: flex;
    align-items: flex-end;
    padding: 20px;
    box-sizing: border-box;
    width: 100%;
    height: fit-content;
    background: #ffffff;
    border-radius: 10px;
    margin-top: 20px;
}

.placement-select__content {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex: 4;
    padding-right: 20px;
    box-sizing: border-box;
}

.placement-select__list {
    margin-top: 20px;
    margin-bottom: 0;
    padding-left: 20px;
}

.placement-select__item {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
    align-self: stretch;
    margin-bottom: 20px;
}

.placement-title__wrapper {
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.placement-title__wrapper > .placement-title {
    color: #1D3054;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    display: flex;
}

.placement-title__wrapper > .placement-delete {
    display: flex;
    width: 20px;
    height: 20px;
    padding: 0 1.881px 0 1.875px;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.placement-rates__wrapper {
    display: flex;
    gap: 20px;
    align-self: stretch;
    border-radius: 10px;
    padding: 10px;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
}

.placement-rates__wrapper.red {
    border: 1px solid red;
}

.placement-rates__wrapper.green {
    border: 1px solid green;
}

.placement-rates__wrapper > .placement-rate-counters__wrapper {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex: 1 0 0;
}

.placement-rate-counters__rate {
    display: flex;
    padding: 10px;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
    border-radius: 6px;
    background: #F5F5F5;
}

.placement-rate-counters__rate-title {
    color: #4F4F4F;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.placement-rate-counters__btns {
    display: flex;
    width: 100px;
    justify-content: space-between;
    margin-left: 15px;
}

.placement-rate-counters__btns-minus,
.placement-rate-counters__btns-plus,
.placement__btns-minus,
.placement__btns-plus {
    cursor: pointer;
    width: 26px;
    height: 26px;
    flex-shrink: 0;

    fill: rgba(49, 180, 4, 0.10);
}

.placement-rate-counters__btns-counter {
    width: 11px;
    height: 26px;
    flex-shrink: 0;

    color: #4F4F4F;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.placement-rate-counters__note {
    display: flex;
    padding: 0 10px;
    align-items: flex-start;
    gap: 10px;
}

.placement-rate-counters__note-text {
    color: #4F4F4F;
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.placement-footer {
    width: 100%;
    margin-top: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/*-----------placement---------------*/

/*--------placement-list-------------*/
.placement-item {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0px;
    height: 660px;
    width: 412px;
    margin-top: 20px;
    background-color: #fff;
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);
    border-radius: 20px;
    max-width: 100%;
}

.placement-item_selected {
    border: 3px solid #ff8a00;
/ / box-shadow: 0 px 0 px 20 px rgba(5, 68, 88, 0.2);
}

.placement-item__gallery {
    width: 100%;
    height: 270px;
}

.placement-item__gallery-item {
    width: 100%;
    height: 270px;
    border-radius: 20px 20px 0px 0px;
    box-sizing: border-box;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    object-fit: cover;
    object-position: center;
}

.placement-item__geo {
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 100%;
    height: 40px;
    background-color: #1d3054;
    color: #fff;
    padding: 8px 20px;
    box-sizing: border-box;
}

.placement-item__title {
    width: 100%;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 28px;
    align-items: center;
    color: #1d3054;
    padding: 10px 20px 0;
    box-sizing: border-box;
    text-overflow: ellipsis;
    display: inline;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.placement-item__desc {
    width: 100%;
    height: 170px;
    min-height: 170px;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 21px;
    color: #4f4f4f;
    overflow: hidden;
    padding: 10px 20px 20px 20px;
    box-sizing: border-box;

    background: linear-gradient(180deg, #000 80%, #fff 100%, rgba(79, 79, 79, 0) 105.25%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    flex: 1;
}

.placement-item__prices {
    width: 100%;
    height: 60px;
    display: flex;
    padding: 0px 20px;
    box-sizing: border-box;
    background-color: #f5f5f5;
}

.placement-item__price-label {
    flex: 1;
    height: 100%;
    display: flex;
    align-items: center;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    color: #4f4f4f;
}

.placement-item__price {
    flex: 1;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    font-style: normal;
    font-weight: 400;
    font-size: 24px;
    color: #b72025;
}

.placement-item__value {
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 33px;
    color: #b72025;
    margin-right: 5px;
}

.placement-item__btn {
    width: 100%;
    height: 50px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 8px 20px;
    box-sizing: border-box;
    background-color: #31b404;
    cursor: pointer;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 25px;
    color: #fff;
    text-transform: uppercase;
    border-radius: 0px 0px 20px 20px;
}

.placement-item__included {
    position: absolute;
    top: 0px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 10px 40px;
    width: fit-content;
    height: 45px;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 0px 0px 20px 20px;
    z-index: 10;
}

.placement-item__icon:first-child {
    margin-left: 0px;
}

.placement-item__icon {
    margin-left: 20px;
}

/*--------placement-list-------------*/
/*-----------map---------------------*/
.map {
    max-width: 100%;
    height: fit-content;
    border-radius: 20px;
    margin-top: 20px;
}

.map__title {
    height: 55px;
    font-family: 'Cuprum', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 30px;
    line-height: 55px;
    text-align: center;
    color: #fff;
    background-color: #1d3054;
    border-radius: 20px 20px 0px 0px;
    text-transform: uppercase;
}

.map__content {
    flex: 1;
    width: 100%;
    height: fit-content;
}

.map__frame {
    border-radius: 20px;
}

.map__img {
    width: 100%;
}

.map__footer {
    border-radius: 0px 0px 20px 20px;
    height: 90px;
    display: flex;
    background-color: #1d3054;
}

.map__geo:nth-child(2n + 1) {
    display: flex;
    flex: 1;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.1);
}

.map__geo:nth-child(2n) {
    display: flex;
    flex: 1;
    height: 100%;
    background-color: #1d3054;
}

.map__geo:first-child {
    border-bottom-left-radius: 20px;
}

.map__geo:last-child {
    border-bottom-right-radius: 20px;
}

.map__index {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    color: #fff;
    flex: 1;
    background-image: url(./../images/icon_map_geo.png);
    background-repeat: no-repeat;
    background-position: center calc(50% + 3px);
}

.map__location {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    color: #fff;
    flex: 5;
    padding: 0 10px;
    box-sizing: border-box;
}

#tourMap {
    width: 100%;
    height: 500px;
    padding: 0;
    margin: 0;

}

/*-----------map---------------------*/
/*-----------motorShips-list---------------------*/
.motorShips-list {
    width: 412px;
    height: 320px;
    min-height: 320px;
    display: flex;
    flex-direction: column;
    margin: 12px 0px 12px 0px;
    background: #fff;
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);
    border-radius: 20px;
}

.motorShipslist_show .motorShips-list {
    display: flex;
}

.motorShipslist_hide > .motorShips-list:nth-child(-n + 7) {
    display: flex;
}

.motorShipslist_hide > .motorShips-list:nth-child(n + 7) {
    display: none;
}

.motorShips-list__img {
    width: 100%;
    height: 200px;
    border-radius: 20px 20px 0px 0px;
}

.motorShips-list__name {
    width: 100%;
    height: 50px;
    text-align: center;
}

.motorShips-list__link-name {
    width: 100%;
    height: 100%;
    text-decoration: none;
    font-family: 'Cuprum', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 50px;

    color: #1d3054;
    text-transform: uppercase;
}

.motorShips-list__footer {
    width: 100%;
    height: 70px;
    background-color: #1d3054;
    border-radius: 0px 0px 20px 20px;
    line-height: 50px;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    color: #fff;
    display: flex;
    text-align: center;
}

.motorShips-list__footer-item {
    flex: 1;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding: 10px 0px 10px 0px;
}

.motorShips-list__footer-icon {
}

.motorShips-list__footer-value {
    height: 26px;
    line-height: 26px;
    margin-left: 10px;
    font-style: normal;
    font-weight: 700;
    font-size: 16px;
    color: #fff;
}

.motorShips-list__footer-subvalue {
    width: 100%;
    height: 16px;
    min-height: 16px;
    line-height: 16px;
    font-style: normal;
    font-weight: 700;
    font-size: 14px;
    color: #fff;
}

.motorShips-list__footer-text {
    width: 100%;
    font-style: normal;
    font-weight: 700;
    font-size: 14px;
    line-height: 19px;
    color: #fff;
}

.motorShips-list__footer-item:first-child {
    border-right: 1px solid rgba(255, 255, 255, 0.5);
}

.motorShips-list__footer-item:last-child {
    border-left: 1px solid rgba(255, 255, 255, 0.5);
}

/*-----------motorShips-list---------------------*/
/*-----------services-list------------------------*/
.service-list {
    display: flex;
    width: 100%;
    height: 150px;
    background-color: #fff;
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);
    border-radius: 20px;
    margin: 12px 0px 12px 0px;
}

.servicesList_show .service-list {
    display: flex;
    justify-content: space-between;
}

.servicesList_hide > .service-list:nth-child(-n + 4) {
    display: flex;
}

.servicesList_hide > .service-list:nth-child(n + 4) {
    display: none;
}

.service-list__date {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
    margin-top: 20px;
}

.servive-list__link {
    text-decoration: none;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 28px;
    color: #1d3054;
}

.service-list__img {
    width: 304px;
    height: 100%;
    border-radius: 20px 0px 0px 20px;
}

.service-list__content {
    flex: 1;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 10px 20px 10px 20px;
    box-sizing: border-box;
}

.service-list__title {
    width: 100%;
    font-family: 'Cuprum', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 30px;
    color: #1d3054;
}

.service-list__desc {
    width: 100%;
    height: 100px;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
    overflow: hidden;
    flex: 1;
    background: linear-gradient(180deg, #000 80%, #fff 100%, rgba(79, 79, 79, 0) 105.25%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.service-list__arrow {
    display: flex;
    justify-content: center;
    align-items: center;
    font-style: normal;
    font-weight: 700;
    font-size: 32px;
    color: #fff;
    width: 40px;
    height: 100%;
    background-color: #1d3054;
    border-radius: 0px 20px 20px 0px;
}

.service-list__arrow:hover {
    background-color: #ff8a00;
}

/*-----------services-list------------------------*/
/*-----------service-item-----------*/
.service-item {
    max-width: 100%;
}

.service-item .popular-list__img {
    object-fit: cover;
    object-position: center;
}

/*-----------/service-item-----------*/
/*-----------service------------------------------*/
.service__desc {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
}

.service__img {
    float: left;
    margin: 0px 20px 20px 0px;
    max-width: 700px;
}

/*-----------service------------------------------*/
/*-----------excursion-list----------------------*/
.excursion-list {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 525px;
    background-color: #fff;
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);
    border-radius: 20px;
    margin: 20px 0px 0 0;
    max-width: 412px;
}

.excursionsList_show .excursion-list {
    display: flex;
}

.excursionsList_hide > .excursion-list:nth-child(-n + 7) {
    display: flex;
}

.excursionsList_hide > .excursion-list:nth-child(n + 7) {
    display: none;
}

.excursion-list__link {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 25px;
    color: #ffffff;
    text-decoration: none;
}

.excursion-list__img {
    width: 100%;
    height: 250px;
    border-radius: 20px 20px 0px 0px;
}

.excursion-list__content {
    height: 225px;
    width: 100%;
    display: flex;
    flex-direction: column;
    padding: 15px;
    box-sizing: border-box;
}

.excursion-list__title {
    width: 100%;
    display: flex;
    align-items: center;
    font-family: 'Cuprum', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 28px;
    color: #1d3054;
    flex-grow: 1;
}

.excursion-list__desc {
    width: 100%;
    height: 150px;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
    padding-top: 10px;
    box-sizing: border-box;
    overflow: hidden;

    background: linear-gradient(180deg, #000 80%, #fff 100%, rgba(79, 79, 79, 0) 105.25%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.excursion-list__footer {
    width: 100%;
    height: 50px;
    background-color: #1d3054;
    border-radius: 0px 0px 20px 20px;
}

.excursion-list__duration {
    position: absolute;
    width: fit-content;
    padding: 0 20px;
    box-sizing: border-box;
    height: 45px;
    top: 0px;
    left: 0px;
    background-color: #ff8a00;
    border-radius: 20px 0px 20px 0px;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 25px;
    color: #fff;
}

.excursion-list__time {
    margin-left: 10px;
}

/*-----------excursion-list----------------------*/
/*-----------sliders-----------------------------*/
.gallery {
    width: 736px;
    height: min-content;
    max-width: 100%;
}

.gallery__imgs {
    width: 100%;
    position: relative;
}

.gallery__slider {
    width: 100%;
    border-radius: 10px;

    max-height: 500px;
    height: 50vw;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.gallery__img {
    width: 100%;
    border-radius: 10px;
    background: linear-gradient(
            270deg,
            rgba(0, 0, 0, 0.2) 0%,
            rgba(0, 0, 0, 0) 50%
    ),
    linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 50%);
}

.gallery__previews {
    width: 100%;
    height: fit-content;
    margin-top: 10px;
    border-radius: 10px;
    overflow: hidden;
}

.gallery__preview {
    margin-right: 5px;
    width: 100%;
    height: 100px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.gallery__view {
    width: 100%;
}

.gallery__btn-prev {
    position: absolute;
    width: 30px;
    height: 30px;
    z-index: 2;
    top: calc(50% - 15px);
    left: 20px;
    cursor: pointer;
}

.gallery__btn-next {
    position: absolute;
    width: 30px;
    height: 30px;
    z-index: 2;
    top: calc(50% - 15px);
    right: 20px;
    cursor: pointer;
}

/*-----------sliders-----------------------------*/
.options {
    width: 500px;
    margin-left: auto;
    display: flex;
    flex-direction: column;
}

.options__room {
    justify-content: space-between;
}

.options__desc {
    flex: 1;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    color: #4f4f4f;
}

.options__title {
    font-style: normal;
    font-weight: 700;
    font-size: 20px;
    line-height: 27px;
    display: flex;
    align-items: center;
    color: #4f4f4f;
    width: 100%;
}

.options__list {
    width: 100%;
    height: fit-content;
}

.options__item {
    width: 100%;
    height: fit-content;
    margin-top: 30px;
    display: flex;
    align-items: center;
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 27px;
    color: #4f4f4f;
}

.options__label {
    margin-left: 20px;
}

.description {
    width: 100%;
    height: fit-content;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
}

/*-----------search---------------------*/
.search {
    width: 100%;
    height: fit-content;
    display: flex;
    flex-direction: column;
}

.search__filters {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px;
}

.search__filters .search__col.flex-1 {
    justify-content: flex-end;
}

.search__col {
    min-width: 200px;
    height: 80px;
    display: flex;
    flex-direction: column;
}

.search__filter-name {
    width: 100%;
    height: 30px;
}

.search__filter {
    width: 100%;
    height: 50px;
    background-color: #fff;
    border: 1px solid #dddddd;
    border-radius: 4px;
    padding: 0px 15px;
    box-sizing: border-box;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 30px;
    color: #1d3054;
    cursor: pointer;
    padding-right: 50px;
    background-repeat: no-repeat;
    background-position: right;
    background-position-x: calc(100% - 15px);
}

.search_filter-open {
    border-bottom: unset;
    border-bottom-right-radius: unset;
    border-bottom-left-radius: unset;
}

.search__filter::-webkit-input-placeholder,
.search__filter::-moz-placeholder,
.search__filter:-moz-placeholder,
.search__filter:-ms-input-placeholder {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 30px;
    color: #1d3054;
}

.search__filter-select {
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url(./../images/icon_select_arrow.png);
}

.search__submits {
    width: 100%;
    height: 65px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 10px;
}

.search__btn {
    width: 175px;
    height: 50px;
    background: #31b404;
    border-radius: 10px;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 25px;
    color: #fff;
    border: none;
    cursor: pointer;
}

/*-----------search---------------------*/
/*-----------program---------------------*/
.program__icons {
    max-width: 100%;
    margin-top: 20px;
    background: #ffffff;
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);
    border-radius: 10px;
    padding: 20px;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    gap: 2rem;
    flex-wrap: wrap;
}

.program__contacts {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    color: #4f4f4f;
    display: flex;
    flex-direction: column;
    margin-top: 20px;
}

.program__contact {
    margin-bottom: 5px;
}

/* buy-tickets-form */
.buy-tickets-form {
    padding: 20px;
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    height: 100%;
    background-color: #fff;
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.buy-tickets-form__title {
    width: 100%;
    font-style: normal;
    font-weight: 700;
    font-size: 20px;
    line-height: 27px;
    text-align: center;
    text-transform: uppercase;
    color: #4f4f4f;
}

.buy-tickets-form__total {
    width: 100%;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
}

.buy-tickets-form__total-label {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
}

.buy-tickets-form__price {
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 33px;
    color: #b72025;
}

.buy-tickets-form__submit {
    width: 100%;
    height: 49px;
    background-color: #31b404;
    border-radius: 10px;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 25px;
    color: #fff;
    border: none;
}

.buy-tickets-form__msg,
.buy-tickets-form_calendar-alerts__msg,
.buy-tickets-form-no-date__msg,
.buy-tickets-form-no-production-multidays__msg,
.buy-tickets-form-no-available-places__msg,
.buy-tickets-form-no-available-placements__msg {
    width: 100%;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 40px;
    color: #b72025;
}


/*buy-tickets-form*/
/*program-content*/
.program-content {
}

.program-content__title {
    width: 100%;
    display: flex;
    align-items: center;
}

.program-content__icon {
    width: 35px;
    height: 35px;
    border-radius: 35px;
    border: 8px solid #ff8a00;
    box-sizing: border-box;
}

.program-content__label {
    font-family: 'Cuprum', sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 30px;
    line-height: 35px;
    color: #1d3054;
    box-sizing: border-box;
    text-align: left;
    margin-left: 20px;
}

.program-content__list {
    max-width: 100%;
    height: fit-content;
    margin-left: 15px;
    padding-left: 35px;
    border-left: 1px solid rgba(29, 48, 84, 0.5);
}

.program-content__item {
    list-style-type: none;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
    margin-bottom: 5px;
    max-width: 100%;
}

/*program-content*/
/*table*/
.table {
    width: 100%;
    border-color: #1d3054;
    border-collapse: collapse;
    min-width: max-content;
}

.table__head {
    width: 100%;
    height: 60px;
    background: #1d3054;
    border-bottom: 1px solid #ffffff;
    border-radius: 10px 10px 0px 0px;
}

.table__head tr th:first-child {
    text-align: left;
    padding-left: 20px;
    border-color: #1d3054;
    border-top-left-radius: 10px;
}

.table__head tr th {
    text-align: center;
    font-style: normal;
    font-weight: 700;
    font-size: 20px;
    color: #ffffff;
}

.table__head tr th:last-child {
    text-align: center;
    padding: 0 20px;
    border-color: #1d3054;
    border-top-right-radius: 10px;
}

.table__subhead-first {
    width: 100%;
    height: 60px;
    background: #dcdee1;
    border-radius: 0px 0px 10px 10px;
}

.table__subhead-first tr th:first-child {
    text-align: left;
    padding-left: 20px;
    border-color: #1d3054;
    border-bottom-left-radius: 10px;
}

.table__subhead-first tr th {
    font-style: normal;
    font-weight: 700;
    font-size: 20px;
    line-height: 27px;
    color: #1d3054;
}

.table__subhead-first tr th:last-child {
    text-align: center;
    border-color: #1d3054;
    border-bottom-right-radius: 10px;
}

.table__subhead {
    width: 100%;
    height: 60px;
    background: #dcdee1;
    border-radius: 10px 10px 10px 10px;
}

.table__subhead tr th:first-child {
    text-align: left;
    padding-left: 20px;
    border-color: #1d3054;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}

.table__subhead tr th {
    font-style: normal;
    font-weight: 700;
    font-size: 20px;
    line-height: 27px;
    color: #1d3054;
}

.table__subhead tr th:last-child {
    text-align: center;
    border-color: #1d3054;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

.table__body tr:nth-child(even) {
    height: 45px;
    background-color: #fff;
    border-radius: 10px;
}

.table__body tr:nth-child(odd) {
    height: 45px;
    background-color: transparent;
    border-radius: 0px;
}

.table__body tr td:first-child {
    text-align: left;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    padding-left: 20px;
}

.table__body tr td {
    text-align: center;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    color: #1d3054;
}

.table__body tr td:last-child {
    text-align: center;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

/*table*/
.num-list {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
}

/*order*/
.program-card {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    box-sizing: border-box;
    width: 100%;
    height: fit-content;
    background: #ffffff;
    border: 2px solid #31b404;
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);
    border-radius: 10px;
}

.program-card__warning-text {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
    margin-left: 20px;
}

.program-card__block {
    width: 100%;
    display: flex;
}

.program-card__labels {
    display: grid;
    grid-template-columns: 210px 1fr;
    align-items: start;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #1d3054;
    padding: 10px 0 10px 0;
    box-sizing: border-box;
}

.program-card__label:last-child {
    flex: 1;
}

.program-card__content {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 25px;
    color: #1d3054;
    padding: 20px 0px 20px 30px;
    box-sizing: border-box;
}

.program-card__footer {
    width: 390px;
    background-color: #f5f5f5;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: stretch;
    padding: 30px 30px 20px 30px;
    box-sizing: border-box;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

.program-card__info {
    width: 100%;
    height: 130px;
    display: flex;
    flex-direction: column;
}

.program-card__title {
    width: 100%;
    height: 33px;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 33px;
    color: #1d3054;
}

.program-card__list {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

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

.program-card__price {
    height: 33px;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 33px;
    color: #1d3054;
}

.program-card__totals {
    width: 100%;
    height: fit-content;
}

.program-card__paid {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    width: 100%;
    height: 60px;
    border-top: 1px solid #1d3054;
}

.program-card__total {
    height: 33px;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 33px;
    color: #1d3054;
}

.program-card__total-price {
    height: 41px;
    font-style: normal;
    font-weight: 700;
    font-size: 30px;
    line-height: 41px;
    color: #b72025;
}

.program-card__edit {
    width: 100%;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    text-decoration-line: underline;
    color: #31b404;
    margin-top: 20px;
    background: unset;
    border: unset;
    text-align: right;
    cursor: pointer;
}

.order-form {
    width: 100%;
    height: fit-content;
    display: flex;
    flex-direction: column;
}

.order-form__title {
    font-style: normal;
    font-weight: 700;
    font-size: 20px;
    line-height: 27px;
    color: #1d3054;
    margin-top: 20px;
}

.order-form__subtitle {
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 25px;
    color: #1d3054;
}

.order-form__field {
    width: 100%;
    height: fit-content;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
}

.order-form__field_bottom {
    display: flex;
    align-items: center;
}

.order-form__group {
    background-color: #fff;
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);
    border-radius: 10px;
    padding: 20px;
    margin-top: 20px;
    box-sizing: border-box;
}

.order-form__content-human {
    width: 100%;
    height: fit-content;
    display: flex;
    margin-top: 20px;
    gap: 20px;
}

.order-form__fields-gender {
    width: 110px;
    display: flex;
    justify-content: space-between;
}

.order-form__field-gender {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 50px;
    background: #ffffff;
    border: 1px solid rgba(29, 48, 84, 0.5);
    border-radius: 4px;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
    cursor: pointer;
}

.order-form_field-active {
    background: #1d3054;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #fff;
}

.order-form__field-contacts {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.order-form__field-contact {
    display: flex;
    gap: 20px;
}

.order-form__field-contact .vp-input {
    flex: 1;
}

.order-form__field-contact-col {
    display: flex;
}

.order-form__pay-group {
    width: calc(50% - 10px);
}

.order-form__help-link {
    height: 35px;
    width: 100%;
    display: flex;
    align-items: center;
}

.order-form__help-link {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    text-decoration-line: underline;
    color: #1d3054;
}

.order-form__footer {
    width: auto;
    height: 100px;
    display: flex;
    align-items: center;
    margin-left: auto;
}

.order-form__footer .vp-btn {
    flex: 1;
}

.order-form__agreement {
    margin-right: 20px;
    margin-left: auto;
}

.order-form__total {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    padding: 20px 15px 20px;
    box-sizing: border-box;
    width: 100%;
    height: fit-content;
    background: linear-gradient(
            0deg,
            rgba(49, 180, 4, 0.1),
            rgba(49, 180, 4, 0.1)
    ),
    #ffffff;
    border: 3px solid #31b404;
    border-radius: 10px;
    margin-top: 20px;
}

.order-form__caption {
    width: 100;
    height: 33px;
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 33px;
    color: #1d3054;
}

.order-form__items {
    width: 100%;
    height: fit-content;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
}

.order-form__item {
    width: 100%;
    height: fit-content;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 0px;
}

.order-form__result {
    width: 100%;
    height: 60px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    padding: 20px 0px 0px;
    box-sizing: border-box;
    border-top: 1px solid #1d3054;
}

.order-form__result-title {
    font-style: normal;
    font-weight: 700;
    font-size: 28px;
    line-height: 38px;
    color: #1d3054;
}

.order-form__total-price {
    font-style: normal;
    font-weight: 700;
    font-size: 30px;
    line-height: 41px;
    color: #b72025;
}

/*order*/
/*-----------program---------------------*/
/*-----------reviews---------------------*/
.reviews__ratings {
    width: 100%;
    height: 240px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    padding: 30px 30px 30px 0px;
    box-sizing: border-box;
    gap: 30px;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 20px;
}

.reviews__ratings-total {
    width: 300px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding: 0px;
    box-sizing: border-box;
    gap: 20px;
    border-right: 1px solid rgba(29, 48, 84, 0.5);
}

.reviews__ratings-value {
    width: 100%;
    height: 50px;
    font-style: normal;
    font-weight: 700;
    font-size: 50px;
    line-height: 50px;
    text-align: center;
    color: #1d3054;
}

.reviews__ratings-stars {
    width: 220px;
    height: fit-content;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.reviews__ratings-counts {
    width: 100%;
    height: 25px;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 25px;
    text-align: center;
    color: #1d3054;
}

.reviews__ratings-list {
    flex: 1;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-between;
}

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

.reviews__ratings-number {
    width: 30px;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    text-align: center;
    color: #4f4f4f;
}

.reviews__ratings-progress {
    display: flex;
    flex-direction: row;
    align-items: center;
    box-sizing: border-box;
    gap: 10px;
    height: 20px;
    background: #f1f1f1;
    border-radius: 30px;
    border: 5px solid #f1f1f1;
    margin: 0 15px;
    flex: 1;
}

.reviews__ratings-progress-bg10 {
    height: 100%;
    width: 100%;
    background: #31b404;
    border-radius: 20px;
}

.reviews__ratings-progress-bg9 {
    height: 100%;
    width: 90%;
    background: #31b404;
    border-radius: 20px;
}

.reviews__ratings-progress-bg8 {
    height: 100%;
    width: 80%;
    background: #a4ee5a;
    border-radius: 20px;
}

.reviews__ratings-progress-bg7 {
    height: 100%;
    width: 70%;
    background: #a4ee5a;
    border-radius: 20px;
}

.reviews__ratings-progress-bg6 {
    height: 100%;
    width: 60%;
    background: #8ac44b;
    border-radius: 20px;
}

.reviews__ratings-progress-bg5 {
    height: 100%;
    width: 50%;
    background: #ff8a00;
    border-radius: 20px;
}

.reviews__ratings-progress-bg4 {
    height: 100%;
    width: 40%;
    background: #ff8a00;
    border-radius: 20px;
}

.reviews__ratings-progress-bg3 {
    height: 100%;
    width: 30%;
    background: #e77373;
    border-radius: 20px;
}

.reviews__ratings-progress-bg2 {
    height: 100%;
    width: 20%;
    background: #b72025;
    border-radius: 20px;
}

.reviews__ratings-progress-bg1 {
    height: 100%;
    width: 10%;
    background: #b72025;
    border-radius: 20px;
}

.reviews__previews-fotos {
    width: 100%;
    height: 50px;
    display: flex;
    justify-content: flex-end;
}

.reviews__previews-foto {
    width: 50px;
    height: 50px;
    border-radius: 5px;
    border: 1px solid #dddddd;
    margin-left: 5px;
}

.reviews__previews-images {
    width: 100%;
    height: 50px;
    display: flex;
    justify-content: flex-end;
}

.reviews__previews-image {
    width: 70px;
    height: 70px;
    border-radius: 5px;
    border: 1px solid #dddddd;
    margin-left: 5px;
}

.reviews__header {
    width: 100%;
    height: fit-content;
    margin-top: 30px;
    display: flex;
}

.reviews__sort {
    display: flex;
    align-items: flex-start;
    padding: 10px 20px;
    box-sizing: border-box;
    flex: 1;
    height: 50px;
    background: #ffffff;
    border-radius: 10px;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #1d3054;
}

.reviews__sort-label {
    text-transform: uppercase;
}

.reviews__sort-date {
    margin-left: 30px;
    text-decoration: none;
    color: #1d3054;
}

.reviews__sort-useful {
    margin-left: 30px;
    text-decoration: none;
    color: #1d3054;
}

.reviews__create {
    height: 50px;
    background: #31b404;
    border-radius: 10px;
    border: none;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 50px;
    color: #ffffff;
    margin-left: 20px;
    cursor: pointer;
}

.reviews__list {
    width: 100%;
    height: fit-content;
}

.reviews__item {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding: 30px;
    box-sizing: border-box;
    width: 100%;
    height: fit-content;
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);
    border-radius: 20px;
    margin-top: 30px;
}

.reviews__item_star_1 {
    border-left: 6px solid #B72025;
}

.reviews__item_star_2 {
    border-left: 6px solid #E77373;
}

.reviews__item_star_3 {
    border-left: 6px solid #FF8A00;
}

.reviews__item_star_4 {
    border-left: 6px solid #8AC44B;
}

.reviews__item_star_5 {
    border-left: 6px solid #31b404;
}

.reviews__info {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    padding: 0px 0px 10px;
    box-sizing: border-box;
    gap: 20px;
    width: 270px;
    border-right: 1px solid rgba(29, 48, 84, 0.5);
    flex: none;
    order: 0;
    align-self: stretch;
    flex-grow: 0;
}

.reviews__info-user {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding: 0px;
    width: 100%;
    height: 50px;
}

.reviews__info-date {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    text-align: left;
    color: #1d3054;
}

.reviews__no-avatar {
    width: 50px;
    height: 50px;
    background: #1d3054;
    border-radius: 50px;
    font-style: normal;
    font-weight: 700;
    font-size: 30px;
    line-height: 50px;
    text-align: center;
    color: #ffffff;
}

.reviews__info-prop {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0px;
    flex: 1;
    height: 100%;
    margin-left: 20px;
    justify-content: space-between;
}

.reviews__info-name {
    width: 100%;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 18px;
    color: #1d3054;
}

.reviews__info-stars {
    width: 100%;
}

.reviews__content {
    flex: 1;
    height: fit-content;
    display: flex;
    flex-direction: column;
}

.reviews__desc {
    height: 115px;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    background: linear-gradient(180deg, #4f4f4f 0%, rgba(79, 79, 79, 0) 75.25%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    margin-left: 30px;
    overflow-y: hidden;
}

.reviews_desc-active {
    height: unset;
    -webkit-text-fill-color: unset;
}

.reviews__btn-all {
    height: 25px;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 25px;
    text-align: right;
    color: #1d3054;
    border: none;
    background-color: transparent;
    background-image: url(./../images/icons-svg);
    background-repeat: no-repeat;
    background-position: right;
    padding-right: 30px;
    cursor: pointer;
}

.reviews__form {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding: 0px;
    width: 100%;
    background: #ffffff;
    box-shadow: 0px 0px 20px rgb(5 68 88 / 20%);
    border-radius: 20px;
    flex: none;
    order: 9;
    align-self: stretch;
    flex-grow: 0;
    margin-top: 30px;
}

.reviews__form-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 20px 30px;
    box-sizing: border-box;
    height: 100%;
    flex: 1;
}

.reviews__form-img {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    box-sizing: border-box;
    width: 430px !important;
    height: 100%;
    background: url(./../images/reviews_img.png), #ffffff;
    background-repeat: no-repeat;
    background-position-x: calc(100% + 150px);
    background-size: cover;
    border-width: 20px 20px 20px 0px;
    border-style: solid;
    border-color: #ffffff;
    border-radius: 0px 30px 30px 0px;
    flex: none;
    order: 1;
}

.reviews__form-fields {
    width: 100%;
    height: fit-content;
}

.reviews__form-field {
    width: 100%;
    display: flex;
    margin-top: 20px;
    gap: 10px;
    flex-wrap: wrap;
}

.reviews__field-star {
    cursor: pointer;
}

.reviews__form-label {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
    flex: 1;
}

.reviews__form-value-foto {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 12px 15px;
    box-sizing: border-box;
    gap: 20px;
    height: 50px;
    border: 1px dashed #1d3054;
    border-radius: 4px;
    flex: 3;
    cursor: pointer;
}

.reviews__form-foto-label {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #1d3054;
}

.gsInformer {
    width: 215px !important;
    height: 147px !important;
}

.gsIContent {
    width: 100% !important;
    min-height: 100% !important;
}

#cityLink {
    width: 100% !important;
    min-height: 140px !important;
}

/*-----------reviews---------------------*/
/*-----------timing---------------------*/
.datepicker-timing {
    position: sticky;
    top: 20px;
    width: 300px;
    height: fit-content;
    border-radius: 20px;
    background-color: #fff;
}

.datepicker__header {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0px 10px;
    box-sizing: border-box;
    width: 100%;
    height: 30px;
    background: #1d3054;
    border-radius: 20px 20px 0px 0px;
}

.datepicker__prev-btn {
    width: 20px;
    height: 20px;
    background-color: #fff;
    border-radius: 10px;
    background-image: url(./../images/icons-svg/calendar_arrow_prev.svg);
    background-position: center center;
    background-repeat: no-repeat;
    cursor: pointer;
}

.datepicker__header-label {
    flex: 1;
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    text-align: center;
    color: #ffffff;
}

.datepicker__next-btn {
    width: 20px;
    height: 20px;
    background-color: #fff;
    border-radius: 10px;
    background-image: url(./../images/icons-svg/calendar_arrow_next.svg);
    background-position: center center;
    background-repeat: no-repeat;
    cursor: pointer;
}

.datepicker__content {
    width: 100%;
    height: 280px;
}

.datepicker__days {
    width: 100%;
    height: 50px;
    background: #f5f5f5;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    text-transform: capitalize;
}

.datepicker__day {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    color: #4f4f4f;
}

.datepicker__body {
    width: 100%;
    height: 230px;
    display: flex;
    flex-wrap: wrap;
    padding: 0 15px;
    box-sizing: border-box;
    border-bottom: 1px solid #b3b3b3;
    justify-content: space-between;
    align-items: center;
}

.datepicker__date {
    width: calc(100% / 7);
    height: 30px;
    line-height: 30px;
    text-align: center;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    color: #4f4f4f;
    margin-left: 0px;
    cursor: pointer;
}

.datepicker__date:nth-child(7n + 6),
.datepicker__date:nth-child(7n + 7) {
    color: #ff8a00;
}

.datepicker_weekend {
    color: #ff8a00 !important;
}

.datepicker_another-month {
    color: #999999 !important;
}

.datepicker__footer {
    width: 100%;
    height: 45px;
    border-radius: 0px 0px 20px 20px;
    padding: 0 10px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.datepicker__status {
    display: flex;
}

.datepicker__point {
    width: 20px;
    height: 20px;
    background: #31b404;
    border-radius: 10px;
}

.datepicker_select-date {
    background-image: url(./../images/selectDate.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    color: #4f4f4f !important;
}

.datepicker_select-date-green {
    background-image: url(./../images/selectDate.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    color: #4f4f4f !important;
}

.datepicker_select-date-orange {
    background-image: url(./../images/selectDateOrange.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    color: #4f4f4f !important;
}

.datepicker_select-date-red {
    background-image: url(./../images/selectDateRed.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    color: #4f4f4f !important;
}

.datepicker_select-current-date {
    background-image: url(./../images/circle_geen.svg);
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    color: #030303 !important;
}

.datepicker_select-currdate {
    background-image: url(./../images/selectCurrDate.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    color: #fff !important;
}

.datepicker__point-label {
    margin-left: 10px;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 19px;
    color: #333333;
}

.timing__list {
    height: fit-content;
    padding: 0 10px 0 20px;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.timing__list::-webkit-scrollbar {
    width: 16px; /* ширина scrollbar */
}

.timing__list::-webkit-scrollbar-track {
    background: #ffffff; /* цвет дорожки */
    border-radius: 20px;
}

.timing__list::-webkit-scrollbar-thumb {
    background-color: #d9d9d9; /* цвет плашки */
    border-radius: 10px; /* закругления плашки */
    border: 3px solid #fff;
}

.timing__item {
    position: relative;
    height: 226px;
    max-height: 226px;
    width: 100%;
    background: #fff;
    border-radius: 20px;
    display: flex;
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);

}

/*-----------timing---------------------*/
/*-----------room-----------------------*/
.room__footer-pay {
    width: 100%;
    height: 140px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0px;
    background: #f5f5f5;
    border-radius: 20px;
}

.room__footer-price {
    width: 100;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    color: #b72025;
}

.room__price {
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 33px;
    color: #b72025;
}

.room__footer-btn {
    width: 500px;
    height: 50px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 8px 20px;
    box-sizing: border-box;
    gap: 10px;
    background: #31b404;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    color: #ffffff;
    text-decoration: none;
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
}

/*-----------room-----------------------*/
/*-----------register-form--------------*/
.register__form {
    width: 100%;
}

.register__row {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin-top: 30px;
    gap: 20px;
}

.register__nds {
    padding: 10px 15px;
}

.register__nds .checkbox__label {
    margin-left: auto;
}

.register__col {
    display: flex;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    color: #4f4f4f;
}

/*-----------register-form--------------*/
/*----------program-designer------------*/
.program-designer__header {
    width: 100%;
    height: fit-content;
}

.program-designer__content {
    width: 100%;
    height: fit-content;
}

.program-designer__footer {
    width: 100%;
    height: fit-content;
    margin-top: 30px;
}

.program-card_habitation {
    height: 200px;
}

.program-card_feed {
    height: 290px;
}

.program-card_excursions {
    height: fit-content;
}

.program-designer__stages {
    width: 100%;
    height: 130px;
    display: flex;
    align-items: flex-start;
    padding: 10px 0px 5px;
}

.program-designer__stage {
    flex: 1;
}

.program-designer__stage-item {
    position: relative;
    width: 100%;
    height: 44px;
    display: flex;
    border-bottom: 4px solid #1d3054;
    box-sizing: border-box;
}

.program-designer__stage-subitem {
    flex: 1;
    height: 100%;
}

.program-designer_active-line {
    border-bottom: 4px solid #31b404;
    box-sizing: content-box;
}

.program-designer__stage-label {
    width: 100%;
    height: 86px;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #1d3054;
}

.program-designer_active-label {
    color: #31b404;
    font-weight: 700;
}

.program-designer_completed-label {
    color: #31b404;
}

.program-designer__stage-circle {
    position: absolute;
    top: 20px;
    left: calc(50% - 20px);
    width: 40px;
    height: 40px;
    background-color: #fff;
    border: 1px solid #1d3054;
    border-radius: 50px;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 40px;
    text-align: center;
    color: #1d3054;
    box-sizing: border-box;
}

.program-designer_active-circle {
    color: #ffffff;
    background-color: #31b404;
    border: 1px solid #31b404;
}

.program-designer_completed-circle {
    background-color: #fff;
    border: 1px solid #31b404;
    background-image: url(./../images/icons-svg/completed.svg);
    background-repeat: no-repeat;
    background-position: center center;
}

.program-designer__nav {
    width: 100%;
    margin-top: 20px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.program-designer__nav_habitation {
    flex-direction: column;
    align-items: end;
    gap: 1rem;
}

.program-designer__direction {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0px;
    margin-top: 30px;
    width: 100%;
    height: fit-content;
    background-color: #fff;
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);
    border-radius: 10px;
}

.program-designer__direction-title {
    width: 100%;
    height: 70px;
    line-height: 70px;
    background: #1d3054;
    padding-left: 20px;
    box-sizing: border-box;
    border-radius: 10px 10px 0px 0px;
    font-style: normal;
    font-weight: 700;
    font-size: 20px;
    color: #fff;
}

.program-designer__direction-content {
    width: 100%;
    height: fit-content;
    padding: 20px;
    box-sizing: border-box;
}

.calendar-slider {
    width: 100%;
    height: 140px;
    position: relative;
    padding: 30px 60px 0px;
    background-color: #fff;
    box-sizing: border-box;
}

.calendar-slider__item {
    position: relative;
    width: 140px;
    height: 110px;
    margin-right: 20px;
    z-index: 4;
    padding-bottom: 10px;
    box-sizing: border-box;
}

.calendar-slider__arrow-selected {
    position: absolute;
    bottom: 0px;
    left: calc(50% - 15px);
}

.calendar-slider__dates {
    width: 100%;
    height: 100%;
    display: flex;
    background: #f5f5f5;
    border-radius: 10px;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding: 10px;
    box-sizing: border-box;
    color: #1d3054;
}

.calendar-slider_dates-selected {
    background: #ff8a00;
    color: #fff;
}

.calendar-slider_dates-selected .calendar-slider__price {
    font-weight: 700;
}

.calendar-slider_arrow-selected {
    fill: #fff;
}

.calendar-slider_arrow-selected-active {
    fill: #ff8a00;
}

.calendar-slider__arrow {
    position: absolute;
    top: calc(50% - 5px);
    width: 40px;
    height: 40px;
    border: 1px solid #1d3054;
    border-radius: 50px;
    background-repeat: no-repeat;
    background-position: center center;
    cursor: pointer;
    z-index: 5;
}

.calendar-slider_arrow-prev {
    left: 0px;
    background-image: url(./../images/icons-svg/calendar_arrow_prev.svg);
}

.calendar-slider_arrow-next {
    right: 0px;
    background-image: url(./../images/icons-svg/calendar_arrow_next.svg);
}

.calendar-slider__date {
    font-style: normal;
    font-weight: 700;
    font-size: 20px;
    line-height: 27px;
    text-align: center;
    /*color: #1D3054;*/
}

.calendar-slider__weekday {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    text-align: center;
    /*color: #1D3054;*/
}

.calendar-slider__price {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 22px;
    text-align: center;
    /*color: #1D3054;*/
}

.direction-table {
    width: 100%;
    height: fit-content;
    border-collapse: collapse;
}

.direction-table-mobile {
    display: none;
}

.direction-table__head {
}

.direction-table__head tr {
    height: 40px;
}

.direction-table__head th {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 40px;
    color: #1d3054;
}

.direction-table__body {
}

.direction-table__body tr {
    height: 50px;
    border-bottom: 1px solid #dcdee1;
}

.direction-table__body .direction-table__tr-active {
    background: rgba(49, 180, 4, 0.1);
}

.direction-table__body th {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 50px;
    color: #1d3054;
}

.direction-table__select-ship {
    cursor: pointer;
    color: #31b404 !important;
}

.direction-table-mobile__item .direction-table_select-ship-active {
    background-color: #ff8a00 !important;
}

.direction-table-mobile__item .direction-table__select-ship {
    cursor: pointer;
    color: #fff !important;
    background: #31b404;
}

.direction-table_select-ship-active {
    background-color: #31b404 !important;
    cursor: default;
    color: #fff !important;
}

.program-designer__block {
    width: 100%;
    height: fit-content;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 20px;
    box-sizing: border-box;
    background-color: #fff;
    border-radius: 10px;
    margin-top: 20px;
}

.program-designer__total-details {
    width: 100%;
    display: flex;
    align-items: flex-end;
    padding: 20px;
    box-sizing: border-box;
    background-color: #fff;
    border-radius: 10px;
    margin-top: 20px;
    justify-content: flex-end;
}

.program-designer__total-detail {
    width: 300px;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
}

.program-designer__total {
    width: fit-content;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 20px;
}

.program-designer__total-item {
}

.program-designer__menu-title {
    width: 100%;
    font-style: normal;
    font-weight: 700;
    font-size: 20px;
    line-height: 27px;
    color: #4f4f4f;
}

.program-designer__menu-subtitle {
    width: 100%;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
    margin-top: 10px;
}

.program-designer__menu-type {
    width: 100%;
    height: fit-content;
    margin-top: 10px;
}

.program-designer__menu-item {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.program-designer__menu-label {
    width: 120px;
    height: 25px;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
}

.program-designer__menu-text {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
    margin-left: 20px;
}

.program-designer__menu-text.flex-1 {
    min-width: 200px;
}

.program-designer__calc {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 20px;
    box-sizing: border-box;
    background-color: #fff;
    box-shadow: 0px 0px 20px rgb(5 68 88 / 20%);
    border-radius: 10px;
    margin-top: 20px;
    justify-content: space-between;
}

.program-designer__calc-title {
    width: 100%;
    line-height: 40px;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    color: #4f4f4f;
}

.program-designer__calc-item {
    width: 100%;
    display: flex;
    gap: 20px;
    padding-bottom: 20px;
}

.program-designer__calc-item .custom-select {
    height: 40px;
}

.program-designer_calc-header {
    border-bottom: 1px solid rgba(29, 48, 84, 0.5);
}

.program-designer__calc-col {
    flex: 1;
    height: 40px;
    display: flex;
    min-width: 200px;
    align-items: center;
    justify-content: flex-end;
}

.program-designer__calc-subtitle {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
}

.program-designer__calc-price {
    height: 33px;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 33px;
    color: #1d3054;
}

.program-designer__calc-content {
    width: 100%;
    height: fit-content;
}

/*----------program-designer------------*/
/*-----------UI calendar----------------*/
.ui-datepicker {
    width: 300px;
    box-sizing: border-box;
}

.ui-widget-content {
    border: none !important;
}

.ui-corner-all {
    border-radius: 0px !important;
}

.ui-widget-header {
    border: none !important;
    background: transparent !important;
}

.ui-datepicker-prev {
    width: 22px !important;
    height: 22px !important;
    background-color: #999999 !important;
    border-radius: 4px !important;
}

.ui-datepicker-prev .ui-widget-header .ui-icon {
    background-image: url(./../images/datepicker/datepicker_btn_prev.png) !important;
    background-position: 0 !important;
}

/*-----------UI calendar----------------*/

.center-h {
    justify-content: center;
}

/*-----------footer---------------------*/
.footer {
    width: 100%;
    height: 295px;
    background-color: var(--color-bgr);
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}

.footer__content {
    width: var(--width-page);
    height: 100%;
    display: flex;
    justify-content: center;
    padding-top: 20px;
}

.footer__content:last-child {
    justify-content: space-between;
}

.footer__col {
    width: 30%;
    max-width: 30%;
    height: 100%;
    display: flex;
    justify-content: flex-start;
    flex-direction: column;
    align-items: center;
}

.footer__col:last-child {
    /*width: 30%;*/
    width: max-content;
    margin-left: auto;
    height: 100%;
    display: flex;
    justify-content: flex-start;
    flex-direction: column;
    align-items: center;
}

.footer__col:last-child .footer__dev {
    display: none;
}

.footer__logo {
    height: 73px;
}

.footer__logo img {
    height: 100%;
}

.footer__adress {
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 33px;
    color: #fff;
    text-align: center;
    margin: 0;
}

.footer__dev {
    margin-top: 0;
}

.footer__dev,
.footer__dev-link {
    text-align: center;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 19px;
    color: rgba(255, 255, 255, 0.5);
}

.footer__phone {
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 24px;
}

.footer__phone:nth-child(2) {
    margin-top: 20px;
}

.footer__phone-link {
    color: #ffffff;
    text-decoration: none;
}

.footer__email {
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    padding: 19px 20px;
    color: #fff;
}

.footer__email-link {
    color: #fff;
    text-decoration: none;
}

.footer__icons {
    width: 100%;
    display: flex;
    justify-content: center;
    padding: 36px 10px;
}

.footer__icon {
    opacity: 0.6;
}

.footer__icon:hover {
    opacity: 1;
}

.footer__icons-link {
    padding: 0px 10px 0px 10px;
    display: flex;
    align-items: center;
}

.footer__menu {
    padding-right: 55px;
    margin: 0;
}

.footer__item {
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 20px;
    color: #ffffff;
    padding: 0px 0px 23px 0px;
}

.footer__item-link {
    color: #ffffff;
    text-decoration: none;
}

.footer__widgets {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.footer__pay {
    margin-top: 20px;
    display: flex;
}

.footer__card {
    padding: 0px 4px 0px 0px;
}

.footer__card:hover {
    opacity: 0.3;
}

.footer__weather {
    /*background-image: url(./../images/widget_weather.png);*/
    width: 215px;
    height: 147px;
}

/*-----------footer---------------------*/
/*-----------modal---------------------*/
.modal {
    /*position: absolute;*/
    position: fixed;
    /*width: fit-content;*/
    width: 80vw;
    height: fit-content;
    max-height: 70vh;
    background: #fff;
    border-radius: 20px;
    z-index: 20;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    overflow: auto;
    max-width: 1000px;
}

.modal__blocked {
    width: 100vw;
    height: 100vh;
    z-index: 15;
    position: fixed;
    background-color: #0000009c;
    top: 0;
    left: 0;
}

.popup__blocked {
    width: 100vw;
    height: 100vh;
    z-index: 9;
    position: absolute;
}

.modal__close-link {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 30px;
    height: 30px;
    z-index: 2;
}

.modal__form {
    height: fit-content;
    width: 100%;
    display: flex;
}

.modal__forms {
    text-align: center;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding: 30px 30px 20px 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.modal__caption {
    /*height: 55px;*/
    width: 100%;
    font-style: normal;
    font-weight: 700;
    font-size: 30px;
    line-height: 55px;
    text-align: center;
    color: #1d3054;
    text-transform: uppercase;
    border-bottom: 1px solid rgba(29, 48, 84, 0.5);
}

.modal__subtitle {
    height: 25px;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 25px;
    color: #1d3054;
    margin-top: 20px;
}

.modal__input {
    margin-top: 20px;
    width: 100%;
    height: 50px;
    padding: 0;
    box-sizing: border-box;
    background-color: #fff;
    border: 1px solid #dddddd;
    border-radius: 4px;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
    padding: 12px 15px;
}

.modal_password_block {
    position: relative;
    width: 100%;
    height: fit-content;
}

.modal_password_visibled {
    position: absolute;
    top: 36px;
    right: 15px;
    background-image: url(./../images/icon_show_psd.png);
    width: 20px;
    height: 17px;
    cursor: pointer;
}

.modal_invalid {
    border: 1px solid #b72025 !important;
}

.modal__invalid-msg {
    margin: 10px 0;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    color: #b72025;
    width: 100%;
    text-align: left;
}

.modal_password {
    background-image: url(./../images/icon_show_psd.png);
    background-position: calc(100% - 15px);
    background-repeat: no-repeat;
}

.modal__input::-webkit-input-placeholder,
.modal__input::-moz-placeholder,
.modal__input:-moz-placeholder,
.modal__input:-ms-input-placeholder {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
    padding: 12px 15px;
}

.modal__options {
    width: 100%;
    /*height: 20px;*/
    display: flex;
    justify-content: space-between;
    margin-top: 15px;
}

.modal__remember {
    width: 20px;
    margin-right: 10px;
    background-color: #31b404;
    border: 1px solid #31b404;
    box-shadow: 0px 2px 2px #f5f5f5;
    border-radius: 5px;
}

.modal_checkbox {
}

.modal__checkbox {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    height: 20px;
    line-height: 20px;
    color: #4f4f4f;
    height: fit-content;
    margin-top: 5px;
    margin-bottom: 5px;
}

.modal__forgot {
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 20px;
    color: #1d3054;
    text-decoration: none;
    margin-top: 5px;
    margin-bottom: 5px;
    border: none;
    background-color: transparent;
    cursor: pointer;
}

.modal__submit {
    /*width: 267px;
	height: 41px;
	background: #31b404;
	border-radius: 10px;
	font-style: normal;
	font-weight: 700;
	font-size: 18px;
	line-height: 25px;
	color: #ffffff;
	border: none;*/
    margin-top: 20px;
    /*text-transform: uppercase;
	cursor: pointer;*/
}

.modal__link {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #1d3054;
    margin-top: 20px;
}

.modal__info {
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    align-items: center;
    width: 350px;
    background-color: #31b404;
    padding: 40px 30px 40px 30px;
    box-sizing: border-box;
}

.modal__title {
    width: 100%;
    height: 55px;
    font-style: normal;
    font-weight: 700;
    font-size: 30px;
    line-height: 55px;
    text-align: center;
    color: #fff;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

.modal__desc {
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 27px;
    display: flex;
    align-items: center;
    text-align: center;
    color: #fff;
}

.modal__btn {
    width: fit-content;
    height: 41px;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 41px;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 10px;
    padding: 0px 20px 0px 20px;
    text-decoration: none;
    text-align: center;
    text-transform: uppercase;
    box-sizing: border-box;
}

.modal_br-left {
    border-radius: 20px 0px 0px 20px;
}

.modal_br-right {
    border-radius: 0px 20px 20px 0px;
}

.modal__captcha {
    width: 100%;
    height: fit-content;
    margin: 10px 0px;
}

.modal_pos-v {
    flex-direction: column;
    height: fit-content;
    align-items: flex-start;
}

.modal_pos-h {
    flex-direction: row;
}

/*-----------modal---------------------*/
/*-----------modal-edit-order----------*/
.edit-order {
    width: 410px;
    height: 490px;
    /*position: absolute;*/
    background: #ffffff;
    box-shadow: 0px 0px 20px rgb(5 68 88 / 20%);
    border-radius: 10px;
    z-index: 20;
    max-width: 100%;
}

.edit-order__content {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    padding: 20px;
    box-sizing: border-box;
    justify-content: space-between;
}

.edit-order__close {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 30px;
    height: 30px;
    background-color: transparent;
    padding: 0;
    appearance: none;
    cursor: pointer;
}

/*-----------modal-edit-order----------*/

.search__submits button {
    margin-left: 20px;
}


.scheme-room {
    background-color: #fff;
    box-shadow: 0px 0px 20px rgba(5, 68, 88, 0.2);
    border-radius: 20px;
    width: 48%;
    display: flex;
    flex-direction: column;
}

.scheme-room .index-form {
    flex-direction: row;
}

.scheme-room__info {
    padding: 20px 40px 0 40px;
    /*height: 40px;*/
    font-style: normal;
    font-weight: 700;
    font-size: 22px;
    color: #1d3054;
}

.scheme-room__info h4 {
    /*text-overflow: ellipsis;*/
    /*white-space: nowrap;*/
    overflow: hidden;
    margin-top: 0;
    margin-bottom: 10px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.scheme-room__gallery {
    border-radius: 20px 0 0 20px;
    max-width: 35%;
}

.scheme-room .swiper {
    margin-right: 0 !important;
    margin-left: 0 !important;
}

.scheme-room__left {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.scheme-room__scheme {
    padding: 20px 20px 0 20px;
    flex: 1;
}

.scheme-room .placement-item__prices {
    padding: 20px 40px;
    border-radius: 0 0 20px 20px;
}

.scheme-room__left .placement-item__prices {
    padding: 20px 40px;
    border-radius: 0 0 20px 0;
}

.program-designer__stages_mobile {
    display: none;
}

/*scroll*/
/* width */
::-webkit-scrollbar {
    width: 4px;
}

/* Track */
::-webkit-scrollbar-track {
    background: transparent;
}

.modals::-webkit-scrollbar-track {
    margin-block: 0.9rem;
}

/* Handle */
::-webkit-scrollbar-thumb {
    background: #31b404;
    border-radius: 2px;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
    background: #00bb00;
}

/*scroll*/

/*loader*/
.loader-container {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lds-ring {
    display: inline-block;
    position: relative;
    width: 80px;
    height: 80px;
}

.lds-ring div {
    box-sizing: border-box;
    display: block;
    position: absolute;
    width: 64px;
    height: 64px;
    margin: 8px;
    border: 8px solid #31b404;
    border-radius: 50%;
    animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
    border-color: #31b404 transparent transparent transparent;
}

.lds-ring div:nth-child(1) {
    animation-delay: -0.45s;
}

.lds-ring div:nth-child(2) {
    animation-delay: -0.3s;
}

.lds-ring div:nth-child(3) {
    animation-delay: -0.15s;
}

@keyframes lds-ring {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

/*loader*/

/*-----------модификаторы глобальные----*/
.icon_date {
    /*background-image: url(./../images/icon_calendar_input.png);*/
    background-image: url(./../images/icon_calendar_input_.png);
}

.icon_duration {
    /*background-image: url(./../images/icon_clock_input.png);*/
    background-image: url(./../images/icon_clock_input_.png);
}

.icon_count {
    /*background-image: url(./../images/icon_people_input.png);*/
    background-image: url(./../images/icon_people_input_.png);
}

.icon_house {
    background-image: url(./../images/icon_house_input.png);
}

.icon_name {
    background-image: url(./../images/icons-svg/name.svg);
}

.icon_telefon {
    background-image: url(./../images/icons-svg/telefon.svg);
}

.icon_arrowdown {
    background-image: url(./../images/icons-svg/arrowdown.svg);
    cursor: pointer;
}

.icon_geo_search {
    background-image: url(./../images/icons-svg/geo_search.svg);
}

.input__icon_right {
    padding-right: 40px;
    background-repeat: no-repeat;
    background-position: center right;
    background-position-x: calc(100% - 15px);
}

.show {
    display: block !important;
}

.showFlex {
    display: flex !important;
}

.showGrid {
    display: grid !important;
}

.hide {
    display: none !important;
}

.visibShow {
    opacity: 1 !important;
    visibility: visible !important;
    height: fit-content !important;
    margin: 20px 0px 20px 0px;
}

.visibHide {
    opacity: 0 !important;
    visibility: hidden !important;
    height: 0px !important;
    margin: unset;
}

.w-fit {
    width: fit-content !important;
}

.w-auto {
    width: auto !important;
}

.w-15 {
    width: 15% !important;
}

.w-50 {
    width: 50% !important;
}

.w-100 {
    width: 100% !important;
}

.h-fit {
    height: fit-content !important;
}

.h-auto {
    height: auto !important;
}

.h-50 {
    height: 50% !important;
}

.h-100 {
    height: 100% !important;
}

.list-3 {
    width: 400px !important;
}

.icon-w-16 {
    width: 16px;
}

.icon-w-32 {
    width: 32px;
}

.icon-h-16 {
    height: 16px;
}

.icon-h-32 {
    height: 32px;
}

.ml-auto {
    margin-left: auto;
}

.p-0 {
    padding: 0px;
}

.p-5 {
    padding: 5px;
}

.p-10 {
    padding: 10px;
}

.p-15 {
    padding: 15px;
}

.p-20 {
    padding: 20px;
}

.p-25 {
    padding: 25px;
}

.p-30 {
    padding: 30px;
}

.p-40 {
    padding: 40px;
}

.p-50 {
    padding: 50px;
}

.pb-0 {
    padding-bottom: 0px;
}

.pb-5 {
    padding-bottom: 5px;
}

.pb-10 {
    padding-bottom: 10px;
}

.pb-15 {
    padding-bottom: 15px;
}

.pb-20 {
    padding-bottom: 20px;
}

.pb-25 {
    padding-bottom: 25px;
}

.pb-30 {
    padding-bottom: 30px;
}

.pb-40 {
    padding-bottom: 40px;
}

.pb-50 {
    padding-bottom: 50px;
}

.pr-0 {
    padding-right: 0px;
}

.pr-5 {
    padding-right: 5px;
}

.pr-10 {
    padding-right: 10px;
}

.pr-15 {
    padding-right: 15px;
}

.pr-20 {
    padding-right: 20px;
}

.pr-25 {
    padding-right: 25px;
}

.pr-30 {
    padding-right: 30px;
}

.pr-40 {
    padding-right: 40px;
}

.pr-50 {
    padding-right: 50px;
}

.pl-0 {
    padding-left: 0px;
}

.pl-5 {
    padding-left: 5px;
}

.pl-10 {
    padding-left: 10px;
}

.pl-15 {
    padding-left: 15px;
}

.pl-20 {
    padding-left: 20px;
}

.pl-25 {
    padding-left: 25px;
}

.pl-30 {
    padding-left: 30px;
}

.pl-40 {
    padding-left: 40px;
}

.pl-50 {
    padding-left: 50px;
}

.pt-0 {
    padding-top: 0px;
}

.pt-5 {
    padding-top: 5px;
}

.pt-10 {
    padding-top: 10px;
}

.pt-15 {
    padding-top: 15px;
}

.pt-20 {
    padding-top: 20px;
}

.pt-25 {
    padding-top: 25px;
}

.pt-30 {
    padding-top: 30px;
}

.pt-40 {
    padding-top: 40px;
}

.pt-50 {
    padding-top: 50px;
}

.m-0 {
    margin: 0px;
}

.m-5 {
    margin: 5px;
}

.m-10 {
    margin: 10px;
}

.m-15 {
    margin: 15px;
}

.m-20 {
    margin: 20px;
}

.m-25 {
    margin: 25px;
}

.m-30 {
    margin: 30px;
}

.m-40 {
    margin: 40px;
}

.m-50 {
    margin: 50px;
}

.ml-0 {
    margin-left: 0px;
}

.ml-5 {
    margin-left: 5px;
}

.ml-10 {
    margin-left: 10px;
}

.ml-15 {
    margin-left: 15px;
}

.ml-20 {
    margin-left: 20px;
}

.ml-25 {
    margin-left: 25px;
}

.ml-30 {
    margin-left: 30px;
}

.ml-40 {
    margin-left: 40px;
}

.ml-50 {
    margin-left: 50px;
}

.mr-0 {
    margin-right: 0px;
}

.mr-5 {
    margin-right: 5px;
}

.mr-10 {
    margin-right: 10px;
}

.mr-15 {
    margin-right: 15px;
}

.mr-20 {
    margin-right: 20px;
}

.mr-25 {
    margin-right: 25px;
}

.mr-30 {
    margin-right: 30px;
}

.mr-40 {
    margin-right: 40px;
}

.mr-50 {
    margin-right: 50px;
}

.mt-0 {
    margin-top: 0px;
}

.mt-5 {
    margin-top: 5px;
}

.mt-10 {
    margin-top: 10px;
}

.mt-15 {
    margin-top: 15px;
}

.mt-20 {
    margin-top: 20px;
}

.mt-25 {
    margin-top: 25px;
}

.mt-30 {
    margin-top: 30px;
}

.mt-40 {
    margin-top: 40px;
}

.mt-50 {
    margin-top: 50px;
}

.mb-0 {
    margin-bottom: 0px;
}

.mb-5 {
    margin-bottom: 5px;
}

.mb-10 {
    margin-bottom: 10px;
}

.mb-15 {
    margin-bottom: 15px;
}

.mb-20 {
    margin-bottom: 20px;
}

.mb-25 {
    margin-bottom: 25px;
}

.mb-30 {
    margin-bottom: 30px;
}

.mb-40 {
    margin-bottom: 40px;
}

.mb-50 {
    margin-bottom: 50px;
}

.mw-fit {
    max-width: fit-content;
}

.flex-a {
    flex: auto;
}

.flex-n {
    flex: none;
}

.flex-1 {
    flex: 1 !important;
}

.flex-2 {
    flex: 2;
}

.flex-3 {
    flex: 3;
}

.flex-4 {
    flex: 4;
}

.flex-5 {
    flex: 5;
}

.flex-6 {
    flex: 6;
}

.flex-7 {
    flex: 7;
}

.flex-8 {
    flex: 8;
}

.flex-9 {
    flex: 9;
}

.flex-10 {
    flex: 10;
}

.border-none {
    border: none !important;
}

.br-10 {
    border-radius: 10px;
}

.br-20 {
    border-radius: 20px;
}

.pos-v {
    display: flex;
    flex-direction: column;
}

.pos-h {
    display: flex;
    flex-direction: row;
}

.center-v {
    align-items: center;
}

.while {
    color: #fff !important;
    fill: #fff !important;
}

.green {
    color: #31b404 !important;
    fill: #31b404 !important;
}

.red {
    color: #b72025 !important;
    fill: #b72025 !important;
}

.yellow {
    color: #ff8a00 !important;
    fill: #ff8a00 !important;
}

.gray {
    color: #4f4f4f !important;
    fill: #4f4f4f !important;
}

.blue {
    color: #1d3054 !important;
    fill: #1d3054 !important;
}

.orange {
    color: #ff8a00 !important;
    fill: #ff8a00 !important;
}

.bg-while {
    background-color: #fff !important;
}

.bg-green {
    background-color: #31b404 !important;
}

.bg-red {
    background-color: #b72025 !important;
}

.bg-yellow {
    background-color: #ff8a00 !important;
}

.bg-blue {
    background-color: #1d3054 !important;
}

.bg-orange {
    background-color: #ff8a00 !important;
}

.bg-img {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}

.transform-0 {
    transform: rotateX(0deg);
}

.transform-45 {
    transform: rotateX(45deg);
}

.transform-90 {
    transform: rotateX(90deg);
}

.transform-180 {
    transform: rotateX(180deg);
}

.ta-right {
    text-align: right;
}

.ta-left {
    text-align: left;
}

.ta-top {
    text-align: top;
}

.ta-bottom {
    text-align: bottom;
}

.ta-center {
    text-align: center;
}

.td-none {
    text-decoration: none;
}

.fw-400 {
    font-weight: 400 !important;
}

.fw-700 {
    font-weight: 700 !important;
}

.zi-1 {
    z-index: 1 !important;
}

.zi-2 {
    z-index: 2 !important;
}

.zi-3 {
    z-index: 3 !important;
}

.zi-4 {
    z-index: 4 !important;
}

.zi-5 {
    z-index: 5 !important;
}

.justify-content-between {
    justify-content: space-between;
}

/*-----------модификаторы глобальные----*/

/*Конструктор программ*/
.hidden {
    height: 0px !important;
    overflow-y: hidden;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.program-card__label-container {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
}

.justify-between {
    justify-content: space-between;
}

.align-items-center {
    align-items: center;
}

.relative {
    position: relative;
}

.picker {
    position: absolute;
    border: 1px solid #dddddd;
    height: fit-content;
    box-sizing: border-box;
    background-color: #fff;
    border-radius: 0 0 5px 5px;
    border-width: 0px 1px 1px 1px;
    z-index: 20;
    top: 100%;
}

.datepicker-date {
    /*width: 30px;*/
    width: calc(100% / 7);
    height: 30px;
    line-height: 30px;
    text-align: center;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    color: #4f4f4f;
    margin-left: 0px;
    cursor: pointer;
}

.datepicker-date:first-child,
.datepicker-date:nth-child(7n + 1) {
    /*margin-left: 0px;*/
}

.datepicker-date:nth-child(7n + 6),
.datepicker-date:nth-child(7n + 7) {
    color: #ff8a00 !important;
}

.hotel-room_selected .placement-item__gallery-item {
    border-radius: 20px 20px 0 0;
    border-top: 3px solid rgb(255, 138, 0);
    border-left: 3px solid rgb(255, 138, 0);
    border-right: 3px solid rgb(255, 138, 0);
}

.hotel-room_selected .placement-item__geo {
    border-left: 3px solid rgb(255, 138, 0);
    border-right: 3px solid rgb(255, 138, 0);
}

.hotel-room_selected .placement-item__title {
    border-left: 3px solid rgb(255, 138, 0);
    border-right: 3px solid rgb(255, 138, 0);
}

.hotel-room_selected .placement-item__desc {
    border-left: 3px solid rgb(255, 138, 0);
    border-right: 3px solid rgb(255, 138, 0);
}

.hotel-room_selected .placement-item__prices {
    border-left: 3px solid rgb(255, 138, 0);
    border-right: 3px solid rgb(255, 138, 0);
}

.hotel-room_selected .placement-item__btn {
    border-bottom: 3px solid rgb(255, 138, 0);
    border-left: 3px solid rgb(255, 138, 0);
    border-right: 3px solid rgb(255, 138, 0);
    background-color: rgb(255, 138, 0);
}

.timing__item .find-list__col_second {
    flex: 1;
    padding: 0px 20px 0px 15px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

.text-center {
    text-align: center;
}

.no-select {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.d-flex {
    display: flex;
}

.description img {
    max-width: 100% !important
}

img {
    max-width: 100%;
    height: auto;
}

.newsitem img {
    height: auto !important;
}

.custom-table-container {
    overflow-x: auto;
}

.service-list__footer,
.service-list__link {
    display: none;
}

.section.service .description p {
    margin-top: 0;
}

.section.service ul li {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 25px;
    color: #4f4f4f;
}

.section.service h1,
.section.service h2,
.section.service h3,
.section.service h4,
.section.service h5,
.section.service h6 {
    margin-bottom: 0;
    font-family: 'Cuprum', sans-serif;
    font-style: normal;
    font-weight: 700;
    line-height: 35px;
    /*color: #1d3054;*/
    box-sizing: border-box;
    padding: 10px 0px;
    /*width: 100%;*/
    text-align: left;
    /*border-bottom: 1px solid rgba(29, 48, 84, 0.5);*/
    text-transform: uppercase;
}

.hotel .gallery-placement,
.newsitem .gallery-placement {
    width: 100%;
    max-width: 100%;
}

.program-card__labels .program-card__label:last-child {
    font-weight: bold;
}

.program-card__label_bold {
    font-weight: bold;
}

.main__title_in-form {
    display: none;
}

.form-agent {
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1;
}

.form-prihod {
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1;
}

.btn-send-request-prihod {
    margin-top: auto;
}

.grecaptcha-badge {
    visibility: hidden;
}

.grecaptchaPolicy,
.grecaptchaPolicy * {
    font-size: 0.5rem;
    color: #dcdbdb;
}

.captcha {
    display: flex;
    align-items: stretch;
    gap: 20px;
    align-self: stretch;
    height: 80px;
}

.captcha__input {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
}

.captcha__img,
#captcha_image {
    width: 200px;
    align-self: stretch;
    border-radius: 2px;
}

.captcha__text {
    color: #4F4F4F;
    font-size: 18px;
    font-weight: 400;
}

.captcha__value {
    border-radius: 4px;
    border: 1px solid #DDD;
    background: #FFF;
    flex: 1;
}

.not-allowed {
    cursor: not-allowed;
    opacity: 0.4;
}

.placement-rate-counters__wrapper.adult.red {
    border: 1px solid red;
    border-radius: 5px;
}

/* ПОЖАЛУЙСТА, НЕ ДОБАВЛЯЙТЕ НОВЫЕ ГЛОБАЛЬНЫЕ СТИЛИ НИЖЕ МЕДИА ЗАПРОСОВ */


/*-----------media----------------------*/
@media screen and (max-width: 1440px) {
    :root {
        --width-page: 90%;
    }

    .search__col {
        margin-right: 20px;
    }

    .search__col:last-child {
        margin-right: 0;
    }

    .list {
        justify-content: space-evenly;
    }

    .motorShips-list {
        margin: 30px 0 15px 0;
    }

    .gallery {
        max-width: calc(100% - 520px);
        margin-bottom: 1rem;
        flex: 1;
        height: auto;
    }

    .slick-active {
    }

    .vp-tabs-content .index-form {
        flex-direction: column;
    }
}

@media screen and (min-width: 1300px) and (max-width: 1417px) {
    .section.posts .list {
        justify-content: flex-start;
    }

    .option__day-span {
        display: none;
    }
}

@media screen and (max-width: 1300px) {
    .find-list__date .option__day-span {
        display: none;
    }

    .find-list__calendar {
        display: none;
    }

    .find-list__date-item {
        margin-left: 0;
        margin-right: 30px;
    }

    .find-list__date-item:last-child {
        margin-right: 0;
    }

    .timing .main__content {
        flex-direction: column;
        gap: 1rem;
        align-items: center;
    }

    .datepicker-timing {
        position: static;
    }
}

@media screen and (max-width: 1200px) {
    :root {
        --width-page: calc(100% - 20px);
    }

    .header-bottom {
        flex-direction: column;
    }

    .header__filter {
        width: 100%;
    }

    .main__search {
        width: calc(100% - 40px);
    }

    .main__poster {
        width: 100%;
    }

    .index-form {
        padding: 0;
        height: auto;
        flex-direction: column;
    }

    .map__location {
        font-size: 16px;
    }

    .footer {
        height: fit-content;
        padding-top: 20px;
        box-sizing: border-box;
    }

    .footer__content {
        height: fit-content;
        flex-direction: column;
        align-items: center;
        padding-bottom: 10px;
    }

    .footer__col {
        min-width: 100%;
        height: fit-content;
    }

    .footer__col:last-child {
        width: 100%;
        height: fit-content;
    }

    .footer__col:first-child .footer__dev {
        display: none;
    }

    .footer__col:last-child .footer__dev {
        display: block;
    }

    .footer__pay {
        display: flex;
        justify-content: center;
    }

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

    .footer__dev {
        padding-top: 25px;
    }

    .search__submits {
        justify-content: space-between;
    }

    .main__content {
        flex-direction: column;
        align-items: center;
    }

    .options {
        margin-left: 0;
    }

    .timing__list {
        padding: 0;
        overflow: hidden;
    }

    .buy-tickets-form .index-form {
        flex-direction: row;
    }

    .buy-tickets-form {
        gap: 1rem;
    }

    .gallery {
        max-width: 100%;
        /*width:auto;*/
    }

    .header__row .header-bottom {
        margin-top: 10px;
    }

    .find-list__header {
        width: auto;
    }

    .find-list__price {
        min-width: 150px;
    }

    .find-list__img {
        width: 250px;
    }

    .constructor-container .index-form__label,
    .constructor-container .index-form__input {
        height: auto;
    }

    .constructor-container .program-designer__content {
        min-width: 250px;
    }
}

@media screen and (max-width: 1024px) {
    .search__col {
        margin-right: 0px;
    }

    .main__poster {
        width: 100%;
    }

    .find-programs__title {
        font-size: 46px;
    }

    .find-programs__form {
        width: 100%;
    }

    /*.find-list__footer {
		justify-content: space-between;
	}*/
    .reviews__header {
        flex-direction: column;
        gap: 1rem;
    }

    .reviews__create {
        margin-left: 0;
    }

    .search-program .find-list {
        max-height: 100%;
        height: auto;
    }

    .find-list__price-value {
        font-size: 20px;
    }

    .find-list {
        flex-direction: column;
        /*max-width: 300px;*/
        height: auto;
        max-height: 700px;
    }

    .find-list__desc {
        display: none;
    }

    .find-list__header {
        width: auto;
        padding: 0;
        height: auto;
        flex-direction: column;
        background-color: #f5f5f5;
    }

    .list-grid_constructor-excursions {
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    }

    .program-designer-excursions .find-list {
        width: 300px;
    }

    .program-designer-excursions .find-list__body-price {
        gap: 10px;
    }

    .program-designer-excursions .find-list__footer {
        display: flex;
        flex-wrap: wrap;
        height: auto;
    }

    .find-list__footer {
        display: none;
    }

    .find-list__img {
        width: 100%;
        min-height: 250px;
        border-radius: 20px 20px 0 0;
    }

    .find-list__price {
        height: auto;
        width: 100%;
        flex-direction: row;
    }

    .find-list__body-price {
        flex-direction: row;
        border-bottom-left-radius: 20px;
        border-top-right-radius: 0;
        height: 50px;
    }

    .timing__item .find-list__col_second,
    .find-list__col_second {
        border-left: 0;
        padding: 10px 20px 10px 15px;
        gap: 12px;
        height: auto;
    }

    .find-list__content {
        max-height: fit-content;
    }

    .find-list__col_first {
        flex: none;
        padding: 10px 20px 10px 15px;
        background: #1d3054;
        height: auto;
    }

    .find-list .find-list__col_first {
        /*background: unset;*/
        -webkit-background-clip: unset;
        -webkit-text-fill-color: unset;
    }

    .find-list__title {
        margin-bottom: 0;
    }

    .find-list__link {
        color: #fff;
        -webkit-text-fill-color: #fff;
    }

    .find-list__footer-price {
        width: fit-content;
        padding-left: 10px;
        padding-right: 10px;
    }

    .order-form__footer {
        width: 100%;
        margin-left: 0;
        justify-content: space-between;
    }

    .order-form__footer .vp-btn {
        flex: 0;
    }

    .timing__item {
        flex-direction: column;
        margin-bottom: 10px;
        max-height: fit-content;
        height: auto;
    }

    .timing__item .find-list__col {
        border-radius: 20px 20px 0 0;
    }

    .program-designer-excursions .find-list__price {
        flex-direction: column;
    }

    .program-designer-excursions .find-list__body-price {
        flex-direction: column;
        max-height: 200px;
    }

    .program-designer-excursions .index-form {
        flex-direction: row;
    }

    .program-designer-excursions .find-list__footer-price {
        width: auto;
        padding: 0;
        border-bottom-left-radius: 20px;
    }

    .program-designer-excursions .list {
        margin-bottom: 3rem;
    }

    .program-designer-excursions .find-list__footer {
        display: flex;
        flex-wrap: wrap;
        height: auto;
    }

    .program-designer-habitation .find-list__header {
        display: flex;
    }

    .order-form__agreement {
        order: 1;
        margin-left: 0;
    }

    .order-form__field_bottom {
        flex-direction: column;
        margin-bottom: 20px;
        align-items: normal;
        gap: 10px;
    }

    .order-form__field_bottom .vp-btn-inline {
        order: 2;
    }

    .order-form__field_bottom .vp-btn {
        order: 3;
    }

    .find .find-list__date-item {
        display: none;
    }

    .find .btn__search.vp-btn {
        margin-left: 0;
    }

    .search__submits button {
        width: 100%;
    }
}

@media screen and (max-width: 890px) {
    .scheme-room {
        width: 100%;
    }

    .program-designer__calc-item {
        flex-direction: column;
    }

    .program-card__content {
        padding: 20px;
    }

    .popular-list {
        display: flex !important;
        box-shadow: none;
        width: 300px;
        margin: 0 10px;
    }

    .populars .list {
        position: relative;
        display: block;
        box-sizing: border-box;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        -webkit-touch-callout: none;
        -khtml-user-select: none;
        -ms-touch-action: pan-y;
        touch-action: pan-y;
        -webkit-tap-highlight-color: transparent;
    }

    .search__filters {
        justify-content: center;
    }

    .program-card {
        flex-direction: column;
    }

    .program-card__footer {
        width: auto;
        gap: 10px;
        border-radius: 0 0 10px 10px;
    }

    .program-card__info {
        height: auto;
    }

    .main__poster {
        width: 100%;
    }

    .main__title {
        font-size: 60px;
        line-height: 60px;
        text-align: center;
    }

    .main__search {
        width: calc(100% - 20px);
        height: fit-content;
        flex-direction: column;
    }

    .main__search .vp-input {
        flex: unset !important;
        margin-bottom: 15px;
    }

    .header-bottom__nav {
        width: 100%;
        padding: 0;
    }

    .map__location {
        font-size: 14px;
    }

    .find-programs__title {
        font-size: 40px;
    }

    .find-list__price-value {
        grid-column: 1/3;
        text-align: center;
    }

    .checkbox__label {
        min-width: fit-content;
    }

    .login,
    .register {
        width: calc(100% - 100px);
        /*left: 50px;
		top: 85px;*/
        height: 530px;
    }

    .recovery-password {
        /*top: 85px;*/
        overflow: scroll;
    }

    .login .modal__btn,
    .register .modal__btn,
    .recovery-password .modal__btn {
        margin-top: 10px;
    }

    .login .modal__info {
        width: 100%;
        border-top-right-radius: 0;
        border-bottom-left-radius: 20px;
        padding: 30px;
    }

    .register .modal__info {
        width: 100%;
        border-top-left-radius: 0;
        border-bottom-right-radius: 20px;
        padding: 30px;
    }

    .login .modal__title,
    .register .modal__title {
        line-height: 36px;
    }

    .login .modal__forms {
        width: 100%;
    }

    .login .modal__form {
        flex-direction: column;
    }

    .register .modal__form {
        flex-direction: column-reverse;
    }

    .login .modal__options,
    .register .modal__options {
        height: fit-content;
    }

    .motorShips-list__footer-value,
    .motorShips-list__footer-text {
        font-size: 12px;
    }

    .order-form__pay-group {
        max-width: 100%;
    }

    .order-form__agreement {
        display: flex;
        flex-direction: column;
        /*gap: 1rem;*/
    }

    .checkbox__text {
        max-width: auto;
    }

    .service__img {
        float: none;
        margin: 0;
        max-width: 100%;
        width: 100%;
    }

    .register__col {
        gap: 2rem;
    }

    section.registration .register__col {
        gap: unset;
    }

    .list {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .program-designer-habitation .list {
        flex-direction: row;
        align-items: normal;
    }

    .main__donations {
        flex-direction: column;
        align-items: center;
    }

    .main__content-mini {
        width: 100%;
    }

    .order-form__content-human {
        flex-direction: column-reverse;
    }

    /*.program-designer-order .order-form__group.order-form__pay-group {*/
    .order-form__group.order-form__pay-group {
        width: 48%;
        margin-left: 0;
    }

    /*.reg-order .order-form__group.order-form__pay-group {
		width: 48%;
		margin-left: 0;
	}*/
    .reg-order .order-form__field-footer {
        flex-direction: column;
    }

    .find-list__price-value {
        font-size: 18px;
    }

    .order-form__field-contact {
        flex-wrap: wrap;
    }

    .reviews__form {
        height: fit-content
    }

    .reviews__form-img {
        display: none
    }

    .group-program .program-card {
        flex-direction: row
    }

    .main__header {
        height: max-content;
    }

    .find-programs {
        height: auto;
    }

    .find-programs__form {
        flex-direction: column;
    }

    .find-programs__label {
        height: fit-content;
        line-height: 38px;
        /*margin-bottom: 10px;*/
    }

    .constructor-container .popular-list {
        margin-right: 0;
    }
}

@media screen and (max-width: 780px) {
    .program-designer__stages {
        display: none !important;
    }

    .program-designer__stages_mobile {
        display: flex;
        flex-direction: column;
    }

    .program-designer__stages_mobile-item {
        display: flex;
        gap: 5px;
        justify-content: center;
    }

    .program-designer__stages_mobile-item_complete {
        color: #31b404;
    }

    .program-designer__stages_mobile-item_active {
        color: #31b404;
        font-weight: 700;
    }

    .program-designer__stages_mobile-item__id {
        background-repeat: no-repeat;
        background-position: center center;
    }

    .direction-table {
        display: none;
    }

    .program-designer__direction-content .btn-more-show {
        display: none;
    }

    .direction-table-mobile {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 20px;
    }

    .direction-table-mobile__item {
        width: 48%;
        height: 200px;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        background: #f1f1f1;
        padding: 20px 0 0 0;
        border-radius: 20px;
    }

    .direction-table-mobile__row {
        display: flex;
        padding: 0 20px;
    }

    .direction-table-mobile__row:last-child {
        padding-bottom: 20px;
    }

    .direction-table-mobile__row label {
        min-width: 50%;
    }

    .direction-table__select-ship {
        padding: 10px 0;
        border-radius: 0 0 20px 20px;
    }

    /*Начало мобильной версии*/
    .section {
        width: calc(100% - 20px);
    }

    .header {
        flex-direction: column-reverse;
    }

    .placement-footer {
        flex-direction: column;
        gap: 10px;
        align-items: normal;
    }

    .header__top {
        max-width: 100%;
        padding: 0 20px;
        box-sizing: border-box;
    }

    .header__btn-mob {
        display: block;
    }

    .header__phones {
        display: none;
    }

    .header__login-icon {
        display: none;
    }

    .header__langs {
        display: none;
    }

    .header-bottom__nav {
        display: none;
    }

    .service-list {
        flex-direction: column;
        height: 450px;
        width: 300px;
    }

    .service-list__arrow {
        display: none;
    }

    .service-list__arrow img {
        transform: rotate(90deg);
    }

    .service-list__img {
        width: 100%;
        height: 200px;
        border-radius: 20px 20px 0 0;
    }

    .service-list__content {
        overflow: hidden;
    }

    .reviews__desc {
        margin-left: 0;
    }

    .search__submits button {
        margin-left: 0;
    }

    .main__poster {
        max-width: 100%;
    }

    .main__title {
        font-size: 46px;
        line-height: 46px;
        height: 50px;
        text-align: center;
        margin-bottom: 50px;
    }

    .search__submits {
        max-width: 100%;
        flex-wrap: wrap;
        gap: 10px;
        align-items: flex-start;
        height: auto;
        padding-top: 10px;
        margin-bottom: 10px;
    }

    .main__search {
        width: calc(100% - 20px);
    }

    .header__filter {
        width: 100%;
    }

    .map__footer {
        height: 360px;
        flex-direction: column;
    }

    .map__geo {
        width: 100%;
        height: 90px !important;
    }

    .map__geo:first-child {
        border-bottom-left-radius: 0;
    }

    .map__geo:last-child {
        border-bottom-left-radius: 20px;
    }

    .map__location {
        font-size: 20px;
        justify-content: flex-start;
    }

    .find-programs {
        height: fit-content;
        min-height: 400px;
    }

    .find-programs__title {
        font-size: 32px;
    }

    .find-programs__construct {
        flex-direction: column;
        height: fit-content;
    }

    .find-programs__link {
        margin-left: unset !important;
    }

    .pagination {
        width: calc(100% - 20px);
        height: fit-content;
        justify-content: space-between;
    }

    .pagination__item {
        width: unset;
        flex: 1;
    }

    .pagination a:nth-last-child(n + 2) {
        margin-right: unset;
    }

    .find-programs {
        padding: 20px;
    }

    .find-programs__link {
        font-size: 16px;
        margin-top: 10px;
    }

    .header__login,
    .header__login a {
        font-size: 12px;
    }

    .populars .list {
        flex-wrap: nowrap;
    }

    .populars .list > .popular-list {
        margin-left: 20px;
        min-width: 300px;
    }

    .reviews__item {
        flex-direction: column;
    }

    .reviews__info {
        border: 0;
    }

    .service-list__link {
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        font-style: normal;
        font-weight: 700;
        font-size: 18px;
        line-height: 25px;
        color: #ffffff;
        text-decoration: none;
    }

    .service-list__footer {
        width: 100%;
        height: 50px;
        background-color: #1d3054;
        border-radius: 0px 0px 20px 20px;
        display: flex;
    }

    section.section.services .list {
        flex-direction: row;
    }

    section.section.services .list .service-list {
        margin: 12px 5px;
    }
}

@media screen and (min-width: 640px) and (max-width: 700px) {
    .register__col.register__nds {
        padding: unset;
    }

    .register__nds .checkbox__label {
        margin-left: unset;
    }
}

@media screen and (max-width: 660px) {
    .direction-table-mobile__item {
        width: 100%;
    }

    .order-form__agreement {
        margin-right: 0;
    }

    .main__title {
        font-size: 40px;
        line-height: 40px;
    }

    .order-form__footer {
        padding-top: 10px;
    }

    .find-programs__title {
        font-size: 26px;
        line-height: 36px;
        height: fit-content;
    }

    .find-programs__form .vp-input,
    .find-programs__form .vp-btn {
        flex: unset;
        margin: 0;
        margin-top: 20px;
    }

    .checkbox__label {
        margin-top: 10px;
    }

    .register__col {
        gap: 2rem;
    }

    section.registration .register__col {
        gap: unset;
    }

    .options {
        width: 100%;
    }

    .list {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .program-designer-habitation .list {
        flex-direction: column;
        align-items: center;
    }

    .program-designer-habitation .find-list {
        max-width: 100%;
    }

    .reviews__ratings {
        flex-direction: column;
        height: auto;
        align-items: normal;
        padding: 30px;
    }

    .reviews__ratings-total {
        width: auto;
        border-right: 0;
    }

    .reviews__sort {
        flex-direction: column;
        width: fit-content;
        margin: 0 auto;
    }

    .reviews__sort-date {
        margin: 0;
    }

    .reviews__sort-useful {
        margin: 0;
    }

    .program-designer__total-details {
        align-items: flex-start;
    }

    .program-designer__total {
        flex-direction: column;
    }

    .header__search {
        top: 200px;
    }

    .recovery-password .modal__caption {
        font-size: 1.5rem;
        line-height: 40px;
    }

    .header__login {
        display: block;
    }

    .main__poster {
        background-image: url('./../images/main-slider/602_crop_.jpg');
    }

    .header__search .main__title {
        display: none;
    }

    .main__title_in-form {
        display: inline;
        /*line-height: 40px;*/
        margin-bottom: 10px;
        height: fit-content;
        text-align: center;
        color: #1d3054;
        /*font-size: 1.3rem;*/
        font-size: 1rem;
        text-transform: uppercase;
        font-weight: 600;
    }

    .main__search .vp-input {
        margin-bottom: 5px;
    }
}

@media screen and (max-width: 560px) {
    .order-form__pay-group {
        width: 100%;
    }

    .order-form__footer {
        margin-bottom: 3rem;
    }

    .order-form__footer {
        flex-direction: column;
        gap: 1rem;
    }

    .pos-h {
        flex-direction: column;
    }

    /*.program-designer-order .order-form__group.order-form__pay-group {*/
    .order-form__group.order-form__pay-group {
        width: 100%;
    }

    .search__col {
        width: 100%;
    }

    .find-list__footer {
        max-width: 100%;
        overflow-x: auto;
    }

    .main__title {
        font-size: 30px;
        line-height: 40px;
        height: fit-content;
    }

    .footer__col:last-child {
        flex-direction: column;
        align-items: center;
    }

    .recovery-password {
        width: calc(100% - 100px);
    }

    .order-form__footer .vp-btn {
        width: 100%;
    }

    .checkbox__label {
        margin-bottom: 10px;
        flex: 1;
    }

    .crumbs__list {
        flex-direction: column;
        align-items: flex-start;
        gap: 7px;
    }

    .crumbs__list::before {
        height: 0;
        width: 0;
    }

    .crumbs__item:first-child {
        margin-left: 0;
        /*list-style-image: url(./../images/crumbs_arrow.png);*/
    }

    .crumbs__item {
        margin-left: 0;
        gap: 5px;
    }

    .crumbs__item::after {
        width: 0;
    }

    .crumbs__item::before {
        display: block;
        content: '';
        width: 6px;
        height: 12px;
        background-image: url(./../images/crumbs_arrow.png);
    }

    .reviews__form-content {
        width: 100%;
    }

    .reviews__form-field {
        display: block;
    }

    .reviews__form-label {
        margin-bottom: 10px;
    }

    .reviews__form .vp-btn {
        flex: 1;
        width: 100%;
    }

    .register__nds {
        padding: 0
    }

    .justify-content-between.register__row {
        margin-top: unset;
    }

    .program-card__labels {
        grid-template-columns: 1fr;
    }

    .list-grid_hotel-rooms {
        grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
    }

    .list-grid_services {
        grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
    }
}

@media screen and (max-width: 420px) {
    .main__caption {
        font-size: 28px;
    }

    .index-form {
        flex-direction: row;
    }

    .program-card__content {
        padding: 20px 10px;
    }

    .checkbox__text {
        max-width: 200px;
    }

    #m-login .modal__options {
        display: flow-root;
    }

    #m-login .modal__options .checkbox__label {
        margin: 10px auto 0 auto;
    }

    #m-login .modal__options .modal__forgot {
        margin: 20px auto 0 auto;
    }

    #m-login .modal__title,
    #m-register .modal__title {
        height: auto;
    }

    #m-login .modal_submit-login {
        width: 100%;
    }

    #m-login .modal__btn {
        width: 100%;
        font-size: 0.8rem;
    }

    #m-register .modal__caption {
        font-size: 1.6rem;
    }

    #m-register .modal__submit {
        width: 100%;
        font-size: 0.8rem;
    }

    #m-register .modal__subtitle {
        margin: 20px auto 10px auto;
    }

    .section.motorShips .motorShips-list {
        width: 100%;
    }

    .slider-nav {
        display: none;
    }

    .scheme-room .placement-item__price-label {
        display: none;
    }

    .scheme-room .placement-item__price {
        justify-content: center;
    }

    .program-designer__direction-title {
        padding: 15px;
        line-height: 40px;
        height: auto;
    }

    .direction-table-mobile__row {
        flex-direction: column;
        margin-bottom: 5px;
    }

    .direction-table-mobile__item {
        height: auto;
    }
}

@media screen and (max-width: 340px) {
    .main__caption {
        font-size: 26px;
    }

    .popular-list {
        margin-right: 0;
    }

    .motorShips-list {
        width: 300px;
    }

    .modal__forms {
        padding: 10px;
    }

    .login .modal__info {
        padding: 10px;
    }

    .login .modal__options, .register .modal__options {
        flex-direction: column;
        align-items: center;
    }

    .login .modal__title, .register .modal__title {
        height: fit-content;
    }

    .login .modal__desc, .register .modal__desc {
        margin: 10px 0;
    }

    .modal__submit {
        width: 100%;
    }

    .register .modal__submit {
        font-size: 16px;
    }

    .modal__btn {
        width: 100%;
        font-size: 16px;
    }

    .register .modal__caption {
        margin-top: 20px;
    }
}

@media (max-width: 920px) {
    .placement-rates__wrapper {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 600px) {
    .placement-rates__wrapper {
        display: grid;
        grid-template-columns: 1fr;
    }
}

/*-----------media----------------------*/

/* cookie */
.cookie-agreement {
    background: #fff;
    color: #333;
    line-height: 1.3em;
    font-size: 16px;
    z-index: 999999;
    font-family: Arial, sans-serif;
    position: fixed;
    left: 0;
    right: 0;
    top: auto;
    bottom: 0;
    max-width: 570px;
    width: 100%;
    box-shadow: 0 0px 15px 0 rgb(54 61 77 / 25%);
}

.cookie-agreement__wr {
    padding: 16px;
    position: relative;
    margin: 0 auto;
}

.cookie-agreement__content {

}

.cookie-agreement__buttons {
    padding-top: 12px;
}

.cookie-agreement__header {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 0.3em;
}

.cookie-agreement__text {
    font-size: 13px;
}

.cookie-agreement__btn-ok {
    cursor: pointer;
    padding: 8px 20px;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    transition: background-color 0.2s ease-out;
    max-width: 400px;
}

.cookie-agreement__btn-ok:hover {
    opacity: 0.85;
}

.cookie-agreement a {
    color: inherit;
    text-decoration: underline;
}

@media (min-width: 640px) {
    .cookie-agreement__wr {
        display: grid;
        grid-template-columns: 1fr 130px;
        gap: 20px;
        max-width: calc(100vw - 100px);
        margin: 0 auto 0 0;

    }

    .cookie-agreement__buttons {
        padding-top: 0;
    }
}

@media (min-width: 992px) {
    .cookie-agreement__wr {
        max-width: 780px;
    }
}

@media (min-width: 1800px) {
    .cookie-agreement__wr {
        max-width: 100%;
    }
}

.animate__animated {
    animation-duration: 1s;
    animation-fill-mode: both;
}

.animate__animated.animate__delay-5s {
    animation-delay: 5s;
}


@media (prefers-reduced-motion: reduce), print {
    .animate__animated {
        animation-duration: 1ms !important;
        transition-duration: 1ms !important;
        animation-iteration-count: 1 !important
    }

    .animate__animated[class*=Out] {
        opacity: 0
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translate3d(0, 100%, 0)
    }

    to {
        opacity: 1;
        transform: translateZ(0)
    }
}

.animate__fadeInUp {
    animation-name: fadeInUp
}

/* /cookie */

.js-date-passport {
    width: 100%;
    background-color: #fff;
    border: 1px solid #dddddd;
    border-radius: 4px;
    padding: 10px 15px;
    box-sizing: border-box;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 30px;
    color: #1d3054;
    background-repeat: no-repeat;
}

.js-kp {
    width: 100%;
    background-color: #fff;
    border: 1px solid #dddddd;
    border-radius: 4px;
    padding: 10px 15px;
    box-sizing: border-box;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    line-height: 30px;
    color: #1d3054;
    background-repeat: no-repeat;
}

.double-input {
    min-width: 230px;
    gap: 20px;
}

.tourDescriptionTable {
    overflow: scroll;
}

#programForm {
    max-width: 1276px;
}

#programForm .program-card__warning-img {
    width: 30px;
    margin: auto;
}

.popup {
    z-index: 100 !important;
}

.overflow_hidden {
    overflow: hidden !important;
}

.hidden_gallery {
    visibility: hidden;
    width: 600px;
    height: 610px;
}

.display_block {
    display: block !important;
}

.input__text {
    font-family: 'Open Sans', sans-serif !important;
}

.d-none {
    display: none !important;
}

.d-block {
    display: block !important;
}

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

.orderWasSent-msg{
    max-width: 500px;
}

.accordion-section {
    padding: 20px;
    background-color: #f9f9f9;
}

.accordion-title {
    font-size: 24px;
    color: #2d3748;
    margin-bottom: 20px;
}

.accordion {
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 10px;
    background-color: white; /* Перенес сюда из inline стиля */
}

.accordion-header {
    background-color: #edf2f7;
    padding: 15px;
    width: 100%;
    border: none;
    text-align: left;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 16px;
}

.accordion-header h3 {
    margin: 0;
    color: #2d3748;
}

.accordion-header p {
    margin: 5px 0 0;
    color: #718096;
}

.accordion-icon {
    transition: transform 0.3s ease;
}

.accordion-icon.open {
    transform: rotate(180deg);
}

.accordion-icon.closed {
    transform: rotate(0deg);
}

.accordion-content {
    max-height: 0; /* Изначально скрыт */
    opacity: 0; /* Прозрачность для плавного появления */
    overflow: hidden; /* Скрываем содержимое, пока не открыто */
    padding: 0 15px; /* Изначально без отступов */
    transition: max-height 0.5s ease-in-out, opacity 0.3s ease-in-out, padding 0.5s ease-in-out; /* Плавный переход */
}

.accordion-content.open {
    max-height: 1000px; /* Достаточная высота для контента */
    opacity: 1; /* Полностью видим */
    padding: 15px; /* Добавляем отступы при открытии */
}

.info-card {
    background-color: #ffffff;
    border-radius: 8px;
    padding: 10px;
    margin-bottom: 10px;
}

.info-card.error {
    background-color: #fee2e2;
}

.info-card.warning {
    background-color: #fefcbf;
}

.info-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 10px;
}

.info-item i {
    margin-right: 10px;
    color: #2c5282;
    font-size: 18px;
    margin-top: 2px;
}

.info-item h4 {
    margin: 0;
    font-size: 16px;
    color: #2d3748;
    font-weight: bold;
}

.info-item p {
    margin: 0;
    font-size: 14px;
    color: #4a5568;
}

.space-y-4 > * + * {
    margin-top: 16px;
}