.blue_popup{
    position: fixed;
    right: -100%;
    top: 0;
    width: calc(100% - 40px);
    max-width: 1065px;
    height: 100%;
    z-index: 10;
    background: rgba(18, 127, 222, 0.70);
    backdrop-filter: blur(11.5px);
    transition: all 0.3s ease;
}

.blue_popup.active{
    right: 0;
    transition: all 0.3s ease;
}

.overlay{
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.3);
    display: none;
    z-index:9;
}

body.overflow{
    overflow: hidden;
}

.header{
    background: var(--white, #FFF);
    padding: 58px 0;
}

.header .link{
    color: var(--main-text, #434343);
}

.header .langs_select{
    color: var(--main-text, #434343);
}

.index_header{
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    z-index:2;
    background: none;
}

.index_header .link{
    color: var(--white, #FFF);
}

.logo,
.footer_logo{
    max-width: 250px;
}

.link{
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 140%;
    transition: color .3s ease;
    text-transform: uppercase;
}

.link:hover{
    color: var(--accent, #40A6FF);
    transition: color .3s ease;
}

.link.active{
    color: var(--accent, #40A6FF);
}


.index_header .langs_select{
    color: var(--white, #FFF);;
}

.header_content{
    justify-content: space-between;
}

.dropdown_link svg path{
    transition: all 0.3s ease;
}

.dropdown_link:hover svg path{
    stroke: var(--accent, #40A6FF);
    transition: all 0.3s ease;
}

.menu_links{
    display: flex;
    gap: 30px;
}

.menu_links.mobile{
    margin-top: 80px;
}

.menu_links.mobile .dropdown_link{
    margin-right: 30px;
}

.langs_block{
    margin-left: 60px;
}

.burger{
    margin-left: 30px;
}

.langs_select{
    padding: 10px 35px 10px 10px;
    border: none;
    background: none;
    height: auto;
    line-height: unset;
    color: var(--white,#FFF);
}

.langs_select:after{
    border: none;
    height: 7.5px;
    width: 15px;
    background: url("/public/images/common/arrow_down.svg") center no-repeat;
    transform: none;
    right: 10px;
    transition: all 0.3s ease;
}

.langs_select.dark:after{
    background: url("/public/images/common/arrow_down_2.svg") center no-repeat;
}

.langs_select.open:after{
    transform: rotate(180deg);
    transition: all 0.3s ease;
}

.langs_select .list{
    color: var(--white, #FFF);
    background: var(--accent, #40A6FF);
}

.langs_select .list .option:hover,
.langs_select .list .option.focus{
    background: rgba(18, 127, 222, 0.70);
}

.footer{
    background: var(--accent, #40A6FF);
    padding-top: 76px;
    padding-bottom:60px;
}

.footer_left{
    max-width: 450px;
}

.footer_txt{
    color: var(--white, #FFF);
    margin-top: 30px;
    margin-bottom: 60px;
}

.paymethod_logos{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.footer_block_header{
    color: var(--white, #FFF);
    margin-bottom: 25px;
}

.footer_links_list{
    display: flex;
    flex-direction: column;
    gap: 20px;
    list-style: none;
    padding: 0;
    margin: 0;
    color: var(--white, #FFF);
}

.footer_contacts{
    color: var(--white, #FFF);
    margin-bottom: 50px;
}

.footer_contacts > div{
    margin-bottom: 12px;
}

.footer_contacts_bottom_title{
    color: var(--white, #FFF);
    margin-bottom: 30px;
}

.footer_social{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 30px;
}

.footer_bottom{
    margin-top: 60px;
}

.footer_bottom_txt{
    color: var(--white, #FFF);
    margin-bottom: 25px;
}

.footer_bottom_list{
    color: var(--white, #FFF);
}

.fbl_offer{
    margin-right: 47px;
    margin-left: 64px;
}

.copyrights span{
   /* margin-left: 10px; */
}

.footer_bottom{
    max-width: 1410px;
}


.main_index_block{
    min-height:820px;
    max-height:100vh;
    height: 100%;
    position: relative;
}

.mib_back_img{
    width: 100%;
    height: 100vh;
}

.mib_content{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 100%;
}

.mib_content_header{
    color: var(--white, #FFF);
    text-align: center;
    max-width: 1250px;
    margin: 0 auto;
}

.main_filter{
    padding: 126px 0;
}

.filter_block_wrapper{
    position: relative;
    height: 100%;
}

.filter_block{
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.80);
    padding-top: 8px;
    padding-bottom: 10px;
    cursor:pointer;
    height: 100%;
}

.filter_block.from,
.filter_block.when,
.filter_block.to{
    justify-content: space-between;
}

.filter_block.from .filter_block_left,
.filter_block.when .filter_block_left,
.filter_block.to .filter_block_left{
    width: 100%;
}

.filter_block.from .filter_block_right,
.filter_block.when .filter_block_right{
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
}

.filter_block.when{
    padding-left: 20px;
    padding-right: 22px;
}

.filter_block.passagers{
    padding-left: 23px;
    padding-right: 12px;
    height: 55px;
    position: relative;
}

.filter_block.passagers:after{
    content: '';
    display: block;
    width: 35px;
    height: 35px;
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    background: url("/public/images/common/arrow_down_2.svg") no-repeat center;
    transition: all 0.3s ease;
}

.filter_block.passagers.active:after{
    transform: translateY(-50%) rotate(180deg);
    transition: all 0.3s ease;
}

.filter_btn{
    width: 100%;
    height: 100%;
    min-height: 57px;
    justify-content: center;
    border: none;
    cursor: pointer;
}

.filter_submenu{
    display: none;
    position: absolute;
    right: 0;
    top: calc(100% + 10px);
    width: fit-content;
    min-width: 100%;
    border-radius: 5px;
    background: rgba(255, 255, 255, 1);
    z-index:2;
}

.cities_list_wrapper{
    padding: 25px 17px 18px 17px;
    max-height:300px;
    overflow-y: auto;
}

.cities_list{
    border-top: 1px dashed var(--accent, #40A6FF);
}

.city{
    margin-top: 18px;
    cursor:pointer;
}

.city_select{
    background: none;
    border: none;
    padding: 0;
    line-height: 1;
}

.city_select:after{
    content: none;
}

.passagers_counter_wrapper {
    padding: 12px 18px 15px 15px;
}

.passengers_counter_title span{
    color: var(--main-text, #434343);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    display: block;
}

.passengers_counter_block {
    justify-content: space-between;
}

.passengers_counter {
    justify-content: space-between;
}

.adult_passagers{
    padding-bottom: 15px;
    margin-bottom: 20px;
    border-bottom: 1px dashed var(--accent, #40A6FF);;
}

.counter_btn {
    width: 35px;
    height: 35px;
}

.p_counter_value{
    text-align: center;
    width: 35px;
}

.advantage_slide_content{
    position: relative;
}

.advantage_img{
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
}

.advantage_img img{
    height: 100%;
    border-radius: 10px;
    width: 100%;
}

.advantage_description{
    border-radius: 10px 0px 0px 10px;
    background: rgba(18, 127, 222, 0.70);
    backdrop-filter: blur(11.5px);
    height: 100%;
    max-width: 390px;
    width: 100%;
    padding: 15px 35px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height:420px;
}

.advantage_title,
.advantage_txt {
    color: var(--white,#FFF);
}

.advantages_card{
    border-radius: 10px;
    background: linear-gradient(135deg, #40A6FF 0%, #9D53CF 100%);
    padding: 40px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 20px;
}

.advantage_card_title{
    color: var(--white, #FFF);
    margin-bottom: 15px;
}

.advantage_card_subtitle{
    color: var(--white, #FFF);
}

.advantage_card_images{
    justify-content: space-between;
    gap: 20px;
}

.advantage_card_btn {
    border-radius: 5px;
    border: 2px solid var(--white, #FFF);
    padding: 15px;
    width: 100%;
    min-height:66px;
    color: var(--white, #FFF);
    display: flex;
    align-items: center;
    justify-content: center;
}

.advantages_slider_wrapper{
    position: relative;
}

.slick_slider_nav{
    list-style: none;
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 0;
    padding: 0;
}

.advantages_slider_nav{
    position: absolute;
    bottom: 40px;
    right: 40px;
}

.slick_slider_nav button{
    font-size: 0;
    width: 15px;
    height: 15px;
    opacity: 0.7;
    background: var(--white, #FFF);
    transition: background 0.3s ease;
}

.slick_slider_nav .slick-active button{
    background: #127FDE;
    transition: background 0.3s ease;
}

.advantages_slider_block {
    margin-top: 120px;
}

.welcome_block_wrapper{
    justify-content: space-between;
}

.welcome_block{
    margin-top: 150px;
}

.about_us_welcome{
    margin-top: 0 !important;
}

.welcome_img{
    height: 100%;
}

.welcome_img img{
    min-height:525px;
    height: 100%;
    width: 100%;
}

.welcome_txt{
    margin: 30px 0;
}

.welcome_txt p{
    margin-bottom: 15px;
    margin-top: 0;
}

.about_details{
    padding: 15px 40px;
    display: inline-block;
}

.routes_block{
    margin-top: 150px;
}

.route_list_title{
    display: inline-block;
    margin-bottom: 30px;
}

.routes_subtitle {
    margin-top: 15px;
    max-width: 440px;
    margin-bottom: 56px;
}

.index_option_title{
    display: block;
    color: var(--accent, #40A6FF);
    margin-bottom: 15px;
}

.index_option{
    height: 100%;
    padding: 25px 50px;
    gap: 30px;
}

.index_options_block{
    margin-top: 80px;
}

.numbers_wrapper{
    justify-content: space-between;
}

.index_numbers_block{
    margin-top: 150px;
    overflow: hidden;
}

.index_numbers_block_title {
    margin-bottom: 60px;
}

.number_blocks_wrapper{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    justify-content: space-between;
    margin-bottom: 60px;
}

.number_block{
    /*width: calc(50% - 10px);*/
    box-shadow: 0px 2px 24px 0px rgba(4, 26, 40, 0.10);
    border-radius: 15px;
    padding-top: 25px;
    text-align: center;
}

.number_block_title {
    margin-bottom: 30px;
}

.index_number_wrapper{
    gap: 11px;
    min-width: 405px;
    margin-bottom: 30px;
    justify-content: center;
}

.index_numbers{
    min-width: 810px;
}

.index_number{
    border-radius: 3px;
    /*background: #F2F2F2;*/
    padding: 23px 5px;
    color: var(--accent, #40A6FF);
    font-size: 52px;
}

.buy_ticket_link{
    padding: 15px 40px;
    display: inline-block;
}

.why_we_block{
    margin-top: 150px;
}

.why_we_card{
    border-radius: 10px;
    background: linear-gradient(135deg, #405FFF 0%, #C477F9 100%);
    padding: 40px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.why_we_card_title,
.why_we_card_description{
    color: var(--white, #FFF);
}

.why_we_card_title{
    margin-bottom: 15px;
}

.why_we_card_logo{
    margin: 48.5px 0;
}

.autopark_link{
    display: inline-block;
    width: 100%;
    padding: 15px;
    border-radius: 5px;
    border: 2px solid var(--white, #FFF);
    color: var(--white, #FFF);
    text-align: center;
}

.why_we_slide_title{
    color: var(--white, #FFF);
}

.why_we_slide_subtitle{
    color: var(--white, #FFF);
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
    margin: 15px 0;
}

.why_we_slide_txt{
    color: var(--white, #FFF);
}

.why_we_slide_content{
    position: relative;
}

.why_we_slide_description{
    width: 100%;
    height: 100%;
    max-width: 450px;
    min-height:420px;
    padding: 15px 31px 15px 55px;
    border-radius: 0px 10px 10px 0px;
    background: rgba(64, 166, 255, 0.80);
    backdrop-filter: blur(11.5px);
    margin-left: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.why_we_slide_image{
    position: absolute;
    right: 0;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

.why_we_slide_image img{
    height: 100%;
    border-radius: 10px;
}

.why_we_slider_nav{
    position: absolute;
    left: 40px;
    bottom: 40px;
}

.reviews_block{
    margin-top: 150px;
}

.reviews_slider {
    margin: -10px;
}

.reviews_slider .slick-list{
    padding: 20px 0;
}

.reviews_slider .slick-track{
    display: flex !important;
}

.review_slide{
    padding: 20px 10px;
    height: inherit;
}

.review_slide_content{
    padding: 40px 50px;
    height: 100%;
}

.review_slide_txt {
    margin-top: 30px;
    margin-bottom: 15px;
}

.review_slider_reviewer_name{
    color: var(--main-text, #434343);
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
    margin-left: 30px;
}

.review_slider_reviewer_image img{
    max-width:86px;
    max-height:86px;
    border-radius: 50%;
}

.reviews_slider_nav_wrapper{
    text-align: center;
}

.reviews_slider_nav{
    justify-content: flex-end;
    padding:0 15px;
}

.reviews_slider_nav button{
    opacity: 0.3;
    background: var(--accent, #40A6FF);
    transition: background 0.3s ease;
}

.reviews_slider_nav .slick-active button {
    background: #127FDE;
    opacity: 1;
    transition: background 0.3s ease;
}

.reviews_block{
    padding-bottom: 150px;
}

.mobile_menu_links ul{
    list-style: none;
    margin: 0;
    padding: 0;
}

.mobile_menu_links ul a{
    padding: 8px 0;
    margin: 8px 0;
    display: inline-block;
}

.mobile_menu_links ul a.active{
    border-bottom: 1px solid #F9F9F9;
}

.mobile_menu{
    max-width: 705px;
    padding: 65px 60px 60px 120px;
    max-height:100vh;
    overflow-y: auto;
}

.mobile_menu_link{
    color: var(--white, #FFF);
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
    text-transform: uppercase;
}

.mobile_menu_social_header{
    color: var(--white, #FFF);
    text-transform: uppercase;
    margin-bottom: 30px;
}

.mobile_menu_social_links{
    gap: 30px;
}

.mobile_menu_links{
    margin: 40px 0;
}

.routes_lists_wrapper{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 15px;
}

.main_filter_wrapper{
    background: linear-gradient(135deg, #40A6FF 0%, rgba(195, 119, 249, 0.10) 99.99%, rgba(196, 119, 249, 0.10) 100%);
}


/* tickets */

.purchase_steps_wrapper{
    background: var(--white, #FFF);
    box-shadow: 0px 2px 44px 0px rgba(44, 44, 44, 0.10);
}

.purchase_step{
    padding: 38px 20px 38px 0;
    display: block;
}

.purchase_step.active{
    color: var(--accent, #40A6FF);
    border-bottom: 2px solid var(--accent, #40A6FF);
    display: block;
}

.page_content_wrapper{
    padding: 150px 0;
}

.ticket_page_subtitle{
    margin-bottom: 13px;
}

.sort_block{
    margin: 60px 0;
}

.sort_options{
    margin-top: 15px;
    gap: 15px;
    flex-wrap: wrap;
}

.sort_option{
    padding: 15px 40px;
    border-radius: 5px;
    border: 1px solid var(--accent, #40A6FF);
    gap: 15px;
    transition: all 0.3s ease;
}

.sort_option:after{
    content: '';
    display: block;
    width: 10px;
    height:20px;
    background-image: url("/public/images/common/desc.svg");
    background-size: contain;
    background-position: center;
    background-repeat:no-repeat;
    transition: all 0.3s ease;
}

.sort_option.asc:after{
    transform: rotate(180deg);
    transition: all 0.3s ease;
}

.sort_option.active,
.sort_option:hover{
    background: var(--accent, #40A6FF);
    color: var(--white, #FFF);
    transition: all 0.3s ease;
}

.tickets_catalog{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 15px;
}

.catalog_filter{
    width: 450px;
}

.catalog_elements{
    width: calc(100% - 560px);
}

.catalog_filter_title{
    margin-bottom: 60px;
}

.catalog_filter_reset_btn{
    padding: 15px 40px;
    border-radius: 5px;
    border: 1px solid var(--accent, #40A6FF);
    gap: 10px;
}

.selected_catalog_filters{
    display: flex;
    flex-wrap: wrap;
    gap: 10px 5px;
    margin: 30px 0;
}

.selected_catalog_filter{
    border-radius: 3px;
    border: 1px solid var(--accent, #40A6FF);
    padding: 5px 10px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.c_radio_wrapper{
    cursor: pointer;
    gap: 11px;
}

.c_radio{
    width: 25px;
    height: 25px;
    border-radius: 50%;
    display: inline-block;
    border: 1px solid #434343;
    transition: all 0.3s ease;
}

.c_radio_checker:checked + .c_radio{
    border-color: #40A6FF;
    background: #40A6FF;
    transition: all 0.3s ease;
}

.ride_options{
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.filter_chars_block_wrapper{
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px dashed var(--accent, #40A6FF);
}

.filter_chars_block{
    max-width: calc(100% - 70px);
}

.filter_chars_title{
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    gap: 15px;
    padding-bottom: 15px;
}

.filter_char_params{
    display:none;
}

.filter_chars_title.active + .filter_char_params{
    display:block;
}

.filter_chars_title img{
    transform: rotate(0);
    transition: all 0.3s ease;
}

.filter_chars_title.active img{
    transform: rotate(180deg);
    transition: all 0.3s ease;
}

.ranger_wrapper{
    position: relative;
    padding-right: 22px;
}

.value_ranger{
    height: 3px;
    background: var(--accent-2, #FF6604);
    margin: 26px 0;
}

.value_ranger:after{
    content: '';
    position: absolute;
    width: 22px;
    height: 3px;
    display: block;
    background: var(--accent-2, #FF6604);
    top: 0;
    right: -22px;
}

.value_ranger .ui-slider-handle{
    width: 25px;
    height: 25px;
    background: var(--accent, #40A6FF);
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
    margin-left: 0;
    outline: none;
}

.price_range_minmax_values{
    gap: 15px;
    justify-content: space-between;
}

.c_checkbox{
    min-width: 23px;
    min-height: 23px;
    border-radius: 3px;
    border: 4px solid white;
    outline: 2px solid #40A6FF;
    background: none;
    transition: background-color 0.3s ease;
}

.c_checkbox_wrapper{
    gap: 11px;
    cursor: pointer;
}

.c_checkbox_checker:checked + .c_checkbox{
    background: #40A6FF;
    transition: background-color 0.3s ease;
}

.filter_checkbox_params{
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding: 2px;
}

.filter_chars_block_wrapper:last-of-type{
    margin-bottom: 30px;
}

.catalog_elements_subtitle{
    margin-top: 15px;
}

.ticket_cards_wrapper{
    margin-top: 60px;
    padding-bottom: 30px;
    display:flex;
    width:100%;
    flex-direction: column;
}

.ticket_cards_wrapper.reverse{
    flex-direction: column-reverse;
}

.ticket_card{
    padding: 11px 35px;
    margin-bottom: 30px;
}

.ticket_info{
    padding-top: 15px;
    padding-bottom: 9px;
    padding-right: 20px;
}

.ticket_totals{
    padding-left: 40px;
    border-left: 1px dashed var(--accent, #40A6FF);
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.ride_description_wrapper{
    margin-left: 20px;
    gap: 30px;
}

.ticket_info_date_block{
    padding: 10px 15px;
    gap: 10px;
    border-radius: 5px;
    background: var(--accent-2, #FF6604);
    color: var(--white,#FFF);
    max-width: 180px;
    width: 100%;
}

.ride_description{
    display: flex;
    gap: 10px;
}

.ticket_ride_status{
    color: var(--accent-2, #FF6604);
}

.ticket_ride_info_block{
    margin-top: 22px;
    padding-bottom: 10px;
}

.ride_total_time{
    padding-top: 13px;
}

.ride_total_time img:not(.mobile_ticket_ride_total_time_wrapper img){
    margin: 0 auto;
}

.ticket_ride_time{
    gap: 10px;
}

.ticket_ride_city{
    margin-top: 15px;
    margin-bottom: 9px;
}

.ticket_ride_checkpoint{
    color: var(--main-text, #434343);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}

.ticket_price{
    color: var(--accent-2, #FF6604);
    font-size: 32px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
    text-transform: uppercase;
}

.ticket_price:not(.private_ticket_price){
    margin-bottom: 27px;
}

.mobile_ticket_details .ticket_price{
    margin-bottom: 0;
}

.mobile_ticket_ride_total_time_wrapper{
    justify-content: space-between;
    gap: 10px;
    max-width: 60%;
    margin-left: auto;
    margin-top: 15px;
    margin-bottom: 40px;
}

.ticket_logo_wrapper,
.return_ticket_logo_wrapper{
    position: relative;
    display: block;
    width: 100%;
}

.ticket_ride_total_time_info{
    position: relative;
    cursor:pointer;
}

.ticket_info_tooltip{
    max-width: 265px;
    width: 265px;
    padding: 6px 12px;
    border-radius: 5px;
    background: var(--white, #FFF);
    position: absolute;
    bottom: calc(100% + 5px);
    left: 50%;
    transform: translateX(-50%);
    display: none;
    box-shadow: 0px 2px 44px 0px rgba(44, 44, 44, 0.10);
}

.ticket_ride_total_time_info:hover .ticket_info_tooltip{
    display: block;
}

.ticket_logo_wrapper:before,
.ticket_logo_wrapper:after,
.return_ticket_logo_wrapper:before,
.return_ticket_logo_wrapper:after{
    content: '';
    display: block;
    height: 1px;
    border-bottom: 1px dashed var(--accent, #40A6FF);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.ticket_logo_wrapper:before{
    width: calc(50% - 30px);
    left: 0;
}

.ticket_logo_wrapper:after{
    width: calc(50% - 30px);
    right: 0;
}

.ticket_logo_wrapper img,
.return_ticket_logo_wrapper img{
    margin: 0 auto;
}

.return_ticket_logo_wrapper:before{
    width: calc(50% - 30px);
    left: 0;
}

.return_ticket_logo_wrapper:after{
    width: calc(50% - 30px);
    right: 0;
}

.return_ticket_logo_wrapper:before,
.return_ticket_logo_wrapper:after{
    border-color: white;
}

.mobile_ticket_details{
    gap: 10px;
}

.return_ticket_route_info{
    max-width: 730px;
    margin: 0 auto;
}

.mobile_ticket_totals{
    padding-top: 38px;
    border-top: 1px dashed var(--accent, #40A6FF);
    justify-content: space-between;
}

.ticket_ride_total_time_wrapper{
    margin-top: 15px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    justify-content: center;
}

.ticket_buy_btn{
    padding: 15px 40px;
}

.ticket_details_btn{
    gap: 10px;
}

.pagination_wrapper{
    margin-top:30px;
    padding-top: 20px;
    border-top: 1px solid var(--accent, #40A6FF);
}

.pagination{
    padding: 0;
    margin: 0;
    list-style: none;
    gap: 2px;
}

.page_link{
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--main-text, #434343);
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 143%;
}

.forwardlink,
.prevlink{
    gap: 8px;
}

.page_link.active{
    background: #F4F4F4;
    color: var(--accent, #40A6FF);
}

.paginator_links{
    justify-content: space-between;
}

.ticket_order_block{
    padding: 65px 60px;
    margin-bottom: 60px;
}

.ticket_order_block_subtitle{
    max-width: 515px;
}

.c_input{
    width: 100% !important;
    height: 69px !important;
    padding: 10px 10px 10px 20px !important;
    border-radius: 5px !important;
    border: 1px solid var(--main-text, #434343) !important;
}

textarea.c_input{
    min-height:180px;
    resize: none;
}

.customer_data{
    margin-top: 56px;
}

.calendar_input{
    padding-right: 50px;
}

.input_calendar_btn{
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}

.doc_select{
    width: 100%;
    height: 69px;
    border-radius: 5px;
    border: 1px solid var(--main-text, #434343);
    line-height: 69px;
}

.doc_select:after{
    border: none;
    height: 7.5px;
    width: 20px;
    background: url("/public/images/common/arrow_down_2.svg") center no-repeat;
    transform: none;
    right: 20px;
    transition: all 0.3s ease;
}

.doc_select.open{
    border: 1px solid var(--main-text, #434343);
}

.doc_select.open:after{
    transform: rotate(180deg);
    transition: all 0.3s ease;
}

.doc_select .list{
    width: 100%;
}

.doc_select .list .option.disabled{
    display: none;
}

.ticket_seat{
    gap: 20px;
    padding: 10px 10px 10px 20px;
    color: var(--white, #FFF);
    border-radius: 5px;
    background: var(--accent, #40A6FF);
    height: 69px;
}

.customer_contact_data{
    margin-bottom: 60px;
    padding: 48px 60px;
}

.phone_input_wrapper{
    width: 100%;
    height: 69px;
    border-radius: 5px;
    border: 1px solid var(--main-text, #434343);
    padding: 10px 10px 10px 20px;
    gap: 20px;
}

.phone_country_code{
    border: none;
    background: none;
    height: 100%;
    padding: 10px 32px 10px 14px;
    z-index: 9999;
}
.order_bus_row .phone_country_code.flex_ac {
    padding: 20px 20px 0 20px;
}
.order_bus_row .nice-select.open .list{
    color: #000;
}

.phone_country_code:after{
    border: none;
    height: 7.5px;
    width: 20px;
    background: url("/public/images/common/arrow_down_2.svg") center no-repeat;
    transform: none;
    right: 0;
    transition: all 0.3s ease;
}

.order_bus_row  .phone_country_code:after{
    transform: translate(5px,10px );
    background: url("/public/images/common/arrow_down_2.svg") center no-repeat;
}

.order_bus_row .phone_country_code.open:after {
    padding: 20.5px 0 0;
}

.phone_country_code.open:after{
    transform: rotate(180deg);
    transition: all 0.3s ease;
}

.customer_phone_input{
    width: 100%;
    height: 100%;
    border: none;
    background: none;
}

.customer_contact_data_bottom{
    justify-content: space-between;
    margin-top: 50px;
}

.have_promocode_btn{
    gap: 20px;
}

.customer_promocode{
    padding: 50px 60px;
    margin-bottom: 60px;
    display:none;
}

.customer_promocode_header{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 60px;
}

.customer_promocode_clarification{
    color: var(--accent, #40A6FF);
    margin-left: 15px;
    text-transform: none;
}

.for_payment{
    padding: 45px 60px;
    margin-bottom: 60px;
}

.for_payment_title{
    justify-content: space-between;
    margin-bottom: 15px;
}

.total_price{
    color: var(--accent-2, #FF6604);
}

.for_payment_paymethod_logos{
    margin:30px 0;
    max-width: 445px;
    justify-content: space-between;
    gap: 15px;
}

.for_payment_accept{
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.payment_btn{
    padding: 23px 40px;
    max-width: 430px;
    width: 100%;
    margin-bottom: 15px;
    margin-top: 30px;
    justify-content: center;
}

.small_link{
    color: var(--main-text, #434343);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    padding-bottom: 1px;
    border-bottom: 1px solid;
}

.route_block{
    border-radius: 15px;
    background-image: url("/public/images/common/border.svg");
    padding: 29px 29px 74px 29px;
}

.route_details_delimiter{
    background: var(--accent, #40A6FF);
    height: 1px;
    margin: 30px 0;
}

.route_point{
    width: 25px;
    height: 25px;
    border-radius: 50%;
    border: 1px solid var(--accent, #40A6FF);
    flex: 0 0 auto;
    background: var(--white,#FFF);
    position: absolute;
    left: 0;
    top: 0;
    z-index:2;
}

.route_point.active{
    border-color: var(--accent-2, #FF6604);
    background: var(--accent-2, #FF6604);;
}

.route_time{
    margin-right: 18px;
}

.route_point_block{
    display: flex;
    position: relative;
    padding-bottom: 40px;
    padding-left: 45px;
}

.route_details_info{
    padding: 0 24px;
}

.route_block_title{
    padding: 0 24px;
    margin-bottom: 30px;
}

.route_point_block:not(:last-child):after{
    content: '';
    display: block;
    height: 100%;
    width: 4px;
    background-image: url("/public/images/common/border_2.svg");
    position: absolute;
    left: 10px;
    z-index:1;
}

.route_options{
    margin: 30px 0;
}

.route_option{
    margin-bottom: 30px;
}

.route_price{
    justify-content: space-between;
    gap: 15px;
}

.route_price_promo_clarification{
    margin-top: 15px;
}

.route_price_promo{
    margin-left: 15px;
    color: var(--accent, #40A6FF);
}

.route_payment_price{
    margin-top: 30px;
}

.paymethod_rows{
    margin-top: 60px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 36px;
}

.paymethod_row{
    justify-content: space-between;
    width: 100%;
}

.paymethod_logo{
    text-align: center;
}

.pay_total{
    text-align: right;
}

.paymethods_block{
    padding: 45px 60px;
    margin-bottom: 60px;
}

.payment_form_paymethod_logos{
    align-items: center;
    margin-top: 30px;
}

.payment_form_fields{
    max-width: 443px;
}

.payment_form_image{
    max-width: 316px;
}

.payment_form_image img{
    margin-left: auto;
}
.payment_form_right{
    height: 100%;
    display: flex;
    align-items: flex-end;
    flex-direction: column;
    justify-content: space-between;
}

.payment_data{
    padding: 48px 70px 70px 70px;
    margin-bottom: 60px;
}

.payment_data_form{
    margin-top: 60px;
}

.card_valid_date{
    text-align: center;
    padding: 10px;
}

.cvv_input{
    padding-right: 50px;
}

.show_cvv_btn{
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 30px;
    height:30px;
    background: url("/public/images/common/eye_open.svg") no-repeat center;
    transition:all 0.3s ease;
}

.show_cvv_btn.active{
    background: url("/public/images/common/eye_close.svg") no-repeat center;
    transition:all 0.3s ease;
}

.thx_content_wrapper{
    position: relative;
}

.thx_block{
    background: linear-gradient(135deg, #405FFF 0%, rgba(195, 119, 249, 0.10) 99.99%, rgba(196, 119, 249, 0.10) 100%);
    backdrop-filter: blur(11.5px);
    padding: 65px 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 9;
}

.thx_block_title{
    color: var(--white, #FFF);
}

.thx_block_subtitle{
    color: var(--white, #FFF);
    margin: 30px 0;
    max-width: 545px;
}

.txh_image img{
    height: 100vh;
    width: 100%;
}

.private_link{
    padding: 23px 40px;
    display: inline-block;
}

.about_us_txt_title{
    margin-bottom: 30px;
}

.about_us_txt_wrapper{
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 150px;
}

.welcome_title.h2_title {
    text-transform: none;
}

.about_us_img img{
    margin-left: auto;
    border-radius: 10px;
    max-height: 740px;
    height: 100%;
}

.about_us{
    margin-top: 150px;
}

.company_docs_wrapper{
    margin-top: 150px;
}

.company_docs_slider_title{
    margin-bottom: 60px;
}

.company_docs_slider_container{
    max-width: 1750px;
    padding: 0 50px;
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
}

.company_docs_slider{
    margin: 60px -15px 0 -15px;
}

.company_docs_slide {
    padding: 0 15px;
}


.booking_link{
    padding: 23px 40px;
    display: inline-block;
    margin: 60px auto 0 auto;
}

.booking_link_wrapper{
    text-align: center;
}

.our_buses_subtitle{
    margin-top: 15px;
}

.our_buses_container{
    margin-top: 60px;
}

.order_bus_link{
    padding: 23px 40px;
    display: inline-block;
}

.bus_seats{
    margin-top: 40px;
    margin-bottom: 25px;
    justify-content: space-between;
}

.total_seats{
    color: var(--accent-2, #FF6604);
}

.bus_info_delimiter{
    height: 1px;
    background: url("/public/images/common/border.svg");
}

.bus_options{
    margin: 60px 0;
}

.bus_img{
    position: relative;
}

.bus_img img{
    position: relative;
    border-radius: 10px;
}

.bus_img:before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    height: 100%;
    width: 85%;
    border-radius: 10px;
    /*background: linear-gradient(135deg, #40A6FF 0%, rgba(195, 119, 249, 0.10) 99.99%, rgba(196, 119, 249, 0.10) 100%);*/
}

.bus_info{
    max-width: 670px;
    margin-left: auto;
    padding: 50px 0;
}

.bus{
    margin-bottom: 60px;
}

.bus:nth-child(even){
    flex-direction: row-reverse;
}

.bus:nth-child(even) .bus_info{
    margin-left: unset;
    margin-right: auto;
}

.bus:nth-child(even) .bus_img:before{
    left: unset;
    right: 0;
}

.check_imitation{
    width: 25px;
    height: 25px;
    position: relative;
    border-radius: 3px;
    border: 2px solid #40A6FF;
    flex: 0 0 auto;
}

.check_imitation:before{
    content: '';
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    background: #40A6FF;
    border-radius: 3px;
    width: 16px;
    height: 16px;
}

.check_imitation.white{
    border: 2px solid var(--white,#FFF);
}

.check_imitation.white:before{
    background: var(--white,#FFF);
}

.bus_option{
    gap: 11px;
}

.more_buses_btn{
    color: var(--accent, #40A6FF);
    padding: 23px 40px;
    display: block;
    border-radius: 5px;
    border: 1px solid var(--accent, #40A6FF);
    margin: 0 auto;
}

.shedule_table_container{
    max-width: 1750px;
    padding: 0 50px;
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
}

.shedule_table{
    margin-top: 60px;
    width: 100%;
    border-color: #DBDBDB;
    border-collapse: collapse
}

.shedule_th{
    color: var(--accent-2, #FF6604);
    background: #DBDBDB;
    text-align: center;
}

.shedule_th th{
    padding: 20px;
    font-size: 14px;
    font-weight: 400;
}

.shedule_td{
    padding: 3px;
    border: 1px solid #DBDBDB;
    text-align: center;
}

.schedule_details_btn{
    font-size: 14px;
    font-weight: 400;
    color: #40A6FF;
    border-bottom: 1px solid #40A6FF;
}

.shedule_ride_time{
    color: var(--main-text, #434343);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    padding-right: 40px;
}

.shedule_date_time{
    color: #191D23;
}

.buy_btn{
    padding: 15px 40px;
    border-radius: 5px;
    background: var(--accent, #40A6FF);
    color: var(--white, #FFF);
    display: block;
    margin: 0 auto;
    transition: all 0.3s ease;
}

.buy_btn:hover{
    background: var(--accent-2, #FF6604);
    transition: all 0.3s ease;
}

.shedule_table_wrapper{
    overflow-y: auto;
    padding-bottom: 30px;
}

.shedule_table{
    min-width: 800px;
}

.shedule_points img{
    margin-left: 39px;
    margin-right: 25px;
}

.shedule_price{
    position: relative;
}

.info_btn{
    position: absolute;
    left: -40px;
    top: 50%;
    transform: translateY(-50%);
}

.shedule_pagination{
    padding-top: 20px;
    margin-top: 30px;
    justify-content: flex-end;
}

.mCS-maxtrans_theme .mCSB_draggerContainer{
    height: 8px;
}

.mCS-maxtrans_theme .mCSB_draggerContainer:after{
    content: '';
    display: block;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background: #40A6FF;
    opacity: 0.15;
    border-radius: 4px;
}

.mCS-maxtrans_theme.mCSB_scrollTools_horizontal .mCSB_dragger{
    background: #40A6FF;
    border-radius: 4px;
}

.mCS-maxtrans_theme.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-maxtrans_theme.mCSB_scrollTools_horizontal .mCSB_draggerRail{
    display: none;
}

.faq_txt_block{
    max-width: 730px;
}

.faq_block_txt{
    margin:30px 0;
}

.faq_block_txt p{
    margin: 0;
}

.faq_block_txt p:not(:last-child){
    margin-bottom: 15px;
}

.faq_booking_link{
    padding: 23px 40px;
    display: inline-block;
}

.faq_wrapper{
    margin-top: 150px;
}

.answer{
    display: none;
    max-width: calc(100% - 45px);
}

.question{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 8px;
    gap: 20px;
    cursor:pointer;
}

.question_wrapper:not(:last-child){
    padding-bottom: 32px;
    margin-bottom: 24px;
    border-bottom: 1px solid #EAECF0;
}

.toggle_answer_btn{
    position: relative;
    min-width: 24px;
    min-height: 24px;
    border: 2px solid #40A6FF;
    border-radius: 50%;
}

.toggle_answer_btn:before,
.toggle_answer_btn:after{
    content: '';
    display: block;
    width: 10px;
    height: 2px;
    border-radius: 2px;
    background: #40A6FF;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    transition: all 0.3s ease;
}

.toggle_answer_btn:after{
    transform: translate(-50%,-50%) rotate(90deg);
}

.toggle_answer_btn.active:after{
    transform: translate(-50%,-50%) rotate(0);
    transition: all 0.3s ease;
}

.contact_txt_info{
    max-width: 730px;
}

.contact_img img{
    border-radius: 10px;
}

.contact_txt_info{
    padding: 50px 0;
}

.contact_txt{
    margin: 30px 0;
}

.contact_txt p{
    margin: 0;
}

.contact_txt p:not(:last-child){
    margin-bottom: 15px;
}

.contacts_booking_link{
    padding: 23px 40px;
    display: inline-block;
}

.contact_form_txt_title{
    margin-bottom: 15px;
}

.contact_form{
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.send_contact_btn{
    padding: 23px 40px;
    max-width: 317px;
}

.contact_form_block{
    max-width: 685px;
}

.contact_form{
    margin-top: 60px;
}

.contacts_map{
    padding: 34px 36px;
    border-radius: 10px;
    background: #74BCFF;
}

.contact_form_wrapper{
    margin-top: 150px;
}

.contacts_map_title {
    color: var(--white,#FFF);
    margin-bottom: 12px;
}

.contact_row {
    color: var(--white,#FFF);
    margin-bottom: 12px;
}

.contacts_messagers{
    gap: 10px;
    justify-content: space-between;
    margin-top: 16px;
}

.contact_map{
    margin-top: 60px;
}

.contact_map iframe{
    min-height:465px;
    width: 100%;
}

.login_tabs {
    margin: 30px 0;
}

.tab_content {
    display: none;
}

#phone_tab:checked~#phone_tab_content,
#email_tab:checked~#email_tab_content{
    display: block;
}

.tab_label {
    display: inline-block;
    margin-right: 20px;
    padding: 0px 5px 4px 3px;
    border-bottom: 1px solid transparent;
    cursor:pointer;
    transition: all 0.3s ease;
}

.login_tab_check:checked + .tab_label{
    font-weight: 500;
    border-color: var(--accent, #40A6FF);
    transition: all 0.3s ease;
}

.send_login_code_btn{
    padding: 23px 40px;
    width: 100%;
    justify-content: center;
}

.login_inputs_wrapper{
    max-width: 410px;
}

.login_input_row{
    margin-top: 30px;
}

.login_backlink{
    padding: 10px;
    gap: 10px;
    color: var(--accent, #40A6FF);
    margin-bottom: 60px;
}

.login_clarification{
    margin-top: 30px;
}

.login_clarification p{
    margin: 0;
}

.login_clarification ul{
    margin: 0;
    padding: 0;
    padding-left: 25px;
}

.login_clarification a{
    padding-bottom: 1px;
    border-bottom: 1px solid;
}

.login_logo img{
    margin-left: auto;
}

.login_social_auth {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

.input_label{
    margin-bottom: 13px;
    display: inline-block;
}

.input_label span{
    display: block;
}

.private_links_wrapper{
    background: var(--white, #FFF);
    box-shadow: 0px 2px 44px 0px rgba(44, 44, 44, 0.10);
    backdrop-filter: blur(11.5px);
}

.private_tab{
    padding: 37px;
    display: inline-block;
    margin-right: 30px;
}

.private_tab.active{
    border-bottom: 2px solid var(--accent, #40A6FF);
    color: var(--accent, #40A6FF);
}

.private_ticket{
    padding: 32px 20px;
    flex-direction: column;
    margin-bottom: 0;
}

.private_ticket .ticket_totals{
    flex-direction: row;
    justify-content: flex-start;
    padding-left: 17px;
    padding-top: 30px;
    margin-top: 30px;
    border-left: none;
    border-top: 1px dashed var(--accent, #40A6FF);;
    gap: 27px;
}

.private_ticket .ticket_info{
    padding-left:17px;
    padding-right: 0;
}

.return_ticket_btn{
    border-radius: 5px;
    border: 1px solid var(--accent, #40A6FF);
    padding: 14px 40px;
}

.private_ticket .ticket_details_btn{
    margin-top: 10px;
}

.private_pagination{
    margin-top: 60px;
}

.shadow_block{
    border-radius: 10px;
    background: var(--white, #FFF);
    box-shadow: 0px 2px 24px 0px rgba(4, 26, 40, 0.10);
}

.private_contacts_block{
    padding: 55px 53px 55px 50px;
    height: 100%;
}

.private_contacts_header{
    color: var(--main-text, #434343);
    font-family: 'Play', sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%;
    min-height: 46px;
    margin-bottom: 30px;
}

.contact_act_btn{
    padding: 23px;
    width:100%;
}

.birthdate_input{
    padding-right:50px;
}

.private_calendar_btn{
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}

.private_data_block{
    padding:73px 54px 68px 51px;
}

.private_data_inputs{
    margin-top: 60px;
    margin-bottom: 30px;
}

.save_changes_btn{
    padding: 23px 40px;
}

.blue_btn{
    color: var(--white, #FFF);
    border-radius: 5px;
    background: var(--accent, #40A6FF);
    transition: background 0.3s ease;
}

.blue_btn:hover{
    background: var(--accent-2, #FF6604);
    transition: background 0.3s ease;
}

.orange_btn{
    color: var(--white, #FFF);
    border-radius: 5px;
    background: var(--accent-2, #FF6604);
    transition: opacity 0.3s ease;
    opacity: 1;
}

.orange_btn:hover{
    background: var(--accent-2, #FF6604);
    transition: opacity 0.3s ease;
    opacity: .8;
}

.private_payment_data_block{
    padding:48px 70px 70px 60px;
}

.edit_private_payment_btn{
    padding: 15px 40px;
    max-width: 280px;
    width: 100%;
}

.private_payments_clarification_block{
    border-radius: 15px;
    background-image: url("/public/images/common/border.svg");
    padding: 80px 32px 80px 57px;
    max-width: 530px;
    margin-left: auto;
    height: 100%;
}

.private_payments_clarification_txt {
    margin-top: 50px;
    text-align: center;
}

.private_empty_block{
    text-align: center;
    margin-bottom: 150px;
}

.private_empty_block_title{
    margin-bottom: 30px;
}

.bonus{
    min-height:403px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 15px;
    background-image: url("/public/images/common/border.svg");
    flex-direction: column;
    box-shadow: 0px 2px 24px 0px rgba(4, 26, 40, 0.10);
}

.bonus_mileage{
    padding: 18px 30px;
    background: url("/public/images/common/bonus_back.svg") no-repeat center;
    margin-top: 23px;
    margin-bottom:28px;
    color: var(--accent, #40A6FF);
}

.bonuses_block_title{
    margin-bottom: 60px;
}

.bonuses_wrapper{
    margin-bottom: 150px;
}

.current_bonuses_txt{
    text-align: center;
    margin-bottom: 150px;
}

.bonus_checkpoint{
    width: 90px;
    height: 90px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #40A6FF;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    background: white;
}

.bonus_checkpoint.active{
    background: #40A6FF;
}

.current_bonuses_path{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 50px;
}

.current_bonuses_path_wrapper{
    margin-bottom: 150px;
}

.progress_wrapper{
    position: relative;
    width: 100%;
}

.progress_percentage{
    position: absolute;
    top: calc(100% + 12px);
    left: 50%;
    transform: translateX(-50%);
}

.bonuses_progressbar{
    opacity: 0.15;
    background: var(--accent, #40A6FF);
    height: 8px;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    z-index:1;
}

.progress{
    background: var(--accent, #40A6FF);
    height: 8px;
    position: absolute;
    left: 0;
    top: 0;
    z-index:2;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}

.progress.active:after{
    content: '';
    display: block;
    position: absolute;
    bottom: calc(100% + 7px);
    right: -20px;
    width: 58px;
    height: 21px;
    background: url("/public/images/common/maxtrans_logo_blue.svg") no-repeat center;
}

.bonus_checkpoint_title{
    max-width: 210px;
    text-align: center;
    margin-top: 36px;
}

.bonuses_checkpoints_titles{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.route_details_block_title{
    color: var(--white,#FFF);
    justify-content: space-between;
    margin-bottom: 30px;
    cursor:pointer;
}

.route_details_block_title img{
    transition: all 0.3s ease;
}

.route_details_block_title img.rotate{
    transform: rotate(180deg);
    transition: all 0.3s ease;
}

.route_details_rules_title{
    margin-bottom: 15px;
}

.route_details_popup_content{
    padding: 70px 20px;
    margin: 0 auto;
    max-width: 730px;
}

.close_route_details_wrapper{
    max-width: 730px;
    margin: 70px auto 0 auto;
    padding: 0 20px;
}

.route_details_point{
    padding-left: 45px;
    color: var(--white,#FFF);
    position: relative;
}

.route_details_point:not(:last-child){
    padding-bottom: 30px;
}

.route_details_point:before {
    content: '';
    display: block;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: var(--white,#FFF);
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2;
}

.route_details_point.active:before{
    background: var(--accent-2, #FF6604);
}

.route_details_point:not(:last-child):after{
    content: '';
    display: block;
    height: 100%;
    width: 3px;
    position: absolute;
    top: 0;
    left: 11px;
    background: var(--white,#FFF);
    z-index: 1;
}

.route_details_point_time{
    margin-right: 18px;
}

.route_details_service{
    position: relative;
    color: var(--white,#FFF);
    padding-left: 35px;
    margin: 15px 15px 15px 0;
}

.route_details_service:before{
    content: '';
    display: block;
    width: 25px;
    height: 25px;
    border: 2px solid var(--white,#FFF);
    border-radius: 3px;
    position: absolute;
    top: 0;
    left: 0;
}

.route_details_service:after{
    content: '';
    display: block;
    width: 15px;
    height: 15px;
    background: var(--white,#FFF);
    border-radius: 3px;
    position: absolute;
    top: 5px;
    left: 5px;
}

.route_details_rules_txt,
.route_details_route_price {
    color: var(--white,#FFF);
}

.route_details_totals{
    justify-content: space-between;
    margin-top: 60px;
}

.route_details_buy_btn{
    padding: 23px 40px;
}

.route_details_bus_services_wrapper{
    margin: 60px 0;
}

.order_bus_popup_content_wrapper{
    max-height: 100vh;
    overflow-y: auto;
    padding: 70px 20px;
}

.route_details_popup_content_wrapper{
    max-height: 100vh;
    overflow-y: auto;
}

.close_order_bus_wrapper{
    max-width:730px;
    margin: 0 auto;
}

.order_bus_row {
    width: 100%;
    border-radius: 10px;
    border: 1px solid var(--white, #FFF);
    height: 70px;
    position: relative;
    cursor: pointer;
    background: white;
}

.order_bus_row{
    margin-bottom: 30px;
}

.order_bus_row_title{
    color: #434343;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%;
    position: absolute;
    top: 10px;
    padding: 0 20px;
}

.order_bus_row_value{
    color: #434343;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
    height: 70px;
    padding: 30px 20px 0 20px;
    gap: 15px;
}

.order_bus_reverse_btn{
    display: block;
    margin: 17px auto;
}

.order_bus_btn{
    padding: 23px 40px;
}

.order_bus_row_submenu{
    display: none;
    position: absolute;
    left: 0;
    top: calc(100% + 10px);
    width: 100%;
    border-radius: 5px;
    background: rgba(255, 255, 255, 1);
    z-index:2;
    padding: 25px 17px 18px 17px;
}

.order_bus_submenu_options{
    border-top: 1px dashed var(--accent, #40A6FF);
    max-height: 300px;
    overflow-y: auto;
}

.order_bus_submenu_option{
    margin-top: 18px;
}

.order_bus_popup_content{
    margin: 60px auto 0 auto;
    max-width: 730px
}

.order_bus_rules{
    margin: 60px auto 0 auto;
    max-width: 690px;
}

.order_bus_rules_title{
    justify-content: space-between;
    gap: 15px;
    color: var(--white, #FFF);
    margin-bottom: 15px;
    cursor:pointer;
}

.order_bus_rules_title img{
    transition: all 0.3s ease;
}

.order_bus_rules_title img.rotate{
    transform: rotate(180deg);
    transition: all 0.3s ease;
}

.order_bus_rules_txt{
    color: var(--white, #FFF);
}

.order_bus_rules_txt b{
    font-weight: 700;
}

.order_bus_rules_txt ol,
.order_bus_rules_txt ul{
    margin: 0;
    padding-left: 15px;
}

.order_bus_rules_txt li{
    margin-bottom: 10px;
}

.warning_txt{
    color: var(--white, #FFF);
}

.warning_txt p{
    margin: 0;
}

.warning_txt p:not(:last-child){
    margin-bottom: 15px;
}

.order_bus_rules_txt_warning{
    display: flex;
    align-items: flex-start;
    gap: 20px;
    margin-top: 30px;
}

.order_bus_date{
    padding-right: 60px;
}

.order_bus_calendar_btn{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 18px;
}

.return_ticket_popup_content_wrapper{
    padding: 70px 20px;
    max-height: 100vh;
    overflow-y: auto;
}

.return_ticket_popup_content{
    margin-top: 60px;
}

.return_ticket_date {
    color: var(--white,#FFF);
    padding: 10px;
    border-radius: 5px;
    background: var(--accent-2, #FF6604);
    gap: 10px;
    margin-right: 20px;
}

.return_ticket_route{
    margin-right: 30px;
    color: var(--white,#FFF);
    gap: 10px;
}

.return_ticket_route.no_margin{
    margin-right: 0;
}

.return_ticket_route_description{
    margin-top: 22px;
}

.return_ticket_time span{
    color: var(--white,#FFF);
    margin-left: 10px;
}

.return_ticket_point{
    margin-top: 15px;
    margin-bottom: 10px;
    color: var(--white,#FFF);
}

.return_ticket_description{
    font-family: 'Manrope', sans-serif;
    color: var(--white, #FFF);
    font-size: 12px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    max-width: 220px;
}

.return_ticket_logo{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding-top: 15px;
}

.return_ticket_logo span{
    display: inline-block;
    color: var(--white, #FFF);
    margin-top: 15px;
}

.return_ticket_reason{
    margin-top: 60px;
    width: 100%;
    border-radius: 10px;
    border: 1px solid;
    border-color: var(--white, #FFF) !important;
    background: none;
    color: var(--white, #FFF);
    height: 69px;
    line-height: 1;
    float: unset;
}

.return_ticket_reason .list{
    width: 100%;
    background: var(--accent, #40A6FF);
}

.return_ticket_reason .list .option.disabled{
    display: none;
}

.return_ticket_reason .list .option:hover,
.return_ticket_reason .list .option.focus{
    background: rgba(18, 127, 222, 0.70);
}

.return_ticket_reason:after{
    border: none;
    height: 7.5px;
    width: 15px;
    background: url("/public/images/common/arrow_down.svg") center no-repeat;
    transform: none;
    right: 10px;
    transition: all 0.3s ease;
}

.return_ticket_reason.open:after{
    transform: rotate(180deg);
    transition: all 0.3s ease;
}

.return_ticket_rules{
    margin-top: 60px;
}

.return_ticket_rules_title{
    color: var(--white,#FFF);
    margin-bottom: 30px;
}

.return_ticket_txt{
    color: var(--white,#FFF);
}

.return_ticket_txt p{
    margin: 0;
    padding: 0;
}

.return_ticket_txt p:not(:last-child){
    margin-bottom: 15px;
}

.return_ticket_method{
    margin-top: 60px;
    color: var(--white,#FFF);
}

.return_ticket_method_title{
    color: var(--white,#FFF);
    margin-bottom: 30px;
}

.c_checkbox.white {
    border: 4px solid rgba(18, 127, 222, 0.70);
    outline: 2px solid white;
    background: none;
    transition: background-color 0.3s ease;
}

.c_checkbox_checker:checked + .c_checkbox.white {
    background: white;
    transition: background-color 0.3s ease;
}

.return_method_row{
    justify-content: space-between;
    margin-bottom: 30px;
}

.return_ticket_price{
    color: var(--white,#FFF);
}

.return_ticket_totals{
    margin-top: 60px;
    justify-content: space-between;
}

.return_ticket_return_btn{
    padding: 23px 40px;
}

.return_thx_content_wrapper{
    max-height: 100vh;
    overflow-y: auto;
    padding: 70px 20px;
}

.close_return_thx_wrapper{
    max-width: 730px;
    margin: 0 auto;
}

.return_thx_content{
    max-width: 730px;
    margin: 0 auto;
    text-align: center;
}

.return_thx_content_title{
    color: var(--white, #FFF);
}

.return_thx_content_subtitle{
    color: var(--white, #FFF);
    margin: 30px 0;
}

.go_private{
    padding: 23px 40px;
    display: inline-block;
}

.return_thx_img img{
    margin: 0 auto;
}

.mobile_sort_filter{
    margin-top: 30px;
    margin-bottom: 60px;
}

.sort_select {
    max-width: 312px;
    width: 100%;
    float: unset;
    height: 51px;
    line-height: 1;
    text-transform: uppercase;
    border-color: var(--accent, #40A6FF) !important;
    border-radius: 5px;
    border: 1px solid;
    background: var(--accent, #40A6FF);
    color: var(--white, #FFF);
    margin-right: 35px;
}

.close_filter{
    margin-bottom: 60px;
}

.sort_select .list{
    width: 100%;
    color: var(--white, #FFF);
    background: var(--accent, #40A6FF);
}

.sort_select .list .option.disabled{
    display: none;
}

.sort_select .list .option:hover,
.sort_select .list .option.focus {
    background: rgba(18, 127, 222, 0.70);
}

.sort_select:after{
    border: none;
    height: 7.5px;
    width: 15px;
    background: url("/public/images/common/arrow_down.svg") center no-repeat;
    transform: none;
    transition: all 0.3s ease;
    position: initial;
}

.sort_select.open:after{
    transform: rotate(180deg);
    transition: all 0.3s ease;
}

.block_title {
    margin-bottom: 15px;
}

.mobile_sort{
    padding-bottom: 60px;
}

.mobile_sort_select{
    float: unset;
    border-radius: 5px;
    border: 1px solid var(--accent, #40A6FF) !important;
    background: var(--accent, #40A6FF);
    max-width:312px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 25px;
    color: var(--white, #FFF);
}

.mobile_sort_select .list{
    width: 100%;
}

.mobile_sort_select .list .option:hover,
.mobile_sort_select .list .option.focus{
    background: rgba(18, 127, 222, 0.70);
}

.mobile_sort_select .list{
    color: var(--white, #FFF);
    background: var(--accent, #40A6FF);
}

.mobile_sort_select .list .option.disabled{
    display: none;
}

.mobile_sort_select:after{
    border: none;
    height: 7.5px;
    width: 15px;
    background: url("/public/images/common/arrow_down.svg") center no-repeat;
    transform: none;
    transition: all 0.3s ease;
    position: initial;
}

.mobile_sort_select.open:after{
    transform: rotate(180deg);
    transition: all 0.3s ease;
}

.private_links{
    overflow: hidden;
}

.filter_date, .filter_date_booking{
    border: none;
    background: none;
    cursor:pointer;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
    -webkit-line-clamp: 1;
    padding: 28px 60px 10px 18px;
    height: 55px;
}

.filter_calendar_btn{
    position: absolute;
    width: 35px;
    height: 35px;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
}

.order_bus_calendar_btn img{
    filter: brightness(0) invert(1);
}

.social_auth_link {
    padding: 10px 40px;
    width: 100%;
    justify-content: center;
    gap: 15px;
    color: var(--accent, #40A6FF);
    border-radius: 5px;
    transition: all 0.3s ease;
    border: 1px solid var(--accent, #40A6FF);
}

.social_auth_link:hover{
    color: var(--white, #FFFFFF);
    background: var(--accent, #40A6FF);
    transition: all 0.3s ease;
}

.filter_passagers_total{
    gap: 20px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.filter_passagers_total div{
    white-space: nowrap;
}

.nice-select.filter_city_select{
    border: none;
    padding: 0;
    width: 100%;
    line-height: 1;
    background:none;
    padding-top: 28px;
    height:55px;
    position: relative;
    /*z-index:1;*/
}

.filter_city_select_wrapper,
.filter_date_wrapper{
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.80);
    height: 100%;
    width: 100%;
    min-height: 55px;
}

.filter_city_select_wrapper .selection{
    display: block;
    height: 100%;
}

.filter_city_select_wrapper .select2-container--default .select2-selection--single{
    background: transparent;
    padding-top: 25px;
    border: none;
    padding-left: 10px;
}

.filter_city_select_wrapper .select2-container--default .select2-selection--single .select2-selection__arrow{
    display: none;
}

/*.nice-select.filter_city_select:after{
    display: none;
}

.nice-select.filter_city_select .list{
    max-height:300px;
    overflow-y: auto;
}

.nice-select.filter_city_select.open .list{
    min-width: 100%;
    background: rgba(255,255,255,0.8);
    padding-top: 25px;
    color: var(--main-color, #424242);
    font-family: 'Play', sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%;
    text-transform: uppercase;
    margin-top: 10px;
}

.nice-select.filter_city_select.open .list li:first-child{
    border-top: 1px dashed var(--accent, #40A6FF);
}

.nice-select.filter_city_select .option{
    padding: 0 17px;
}

.nice-select.filter_city_select .current{
    width: 100%;
    display: block;
    padding-right: 40px;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-left: 18px;
    font-size:16px;
}
*/

.city_select_title{
    padding-left: 18px;
    padding-right: 58px;
    position: absolute;
    top: 8px;
}


.filter_city_block{
    position: relative;
}

.reverse_filter_btn{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 18px;
    width: 35px;
    height: 35px;
    z-index:2;
}

.filter_date_title{
    position: absolute;
    top: 8px;
    padding:0 18px;
}

.flatpickr-calendar{
    top:calc(100% + 10px) !important
}

.client_birth_date_wrapper .flatpickr-wrapper{
    width: 100% !important;
}

.close_return_wrapper{
    max-width: 730px;
    margin:0 auto;
}


.nice-select.order_bus_select{
    border: none;
    padding: 0;
    width: 100%;
    line-height: 1;
    background:none;
    padding-top: 40px;
    height:70px;
    position: relative;
}

.order_bus_select {
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.80);
}

.nice-select.order_bus_select:after{
    display: none;
}

.nice-select.order_bus_select .list{
    max-height:300px;
    overflow-y: auto;
}

.nice-select.order_bus_select.open .list{
    width: 100%;
    background: #FFFFFF;
    padding-top: 25px;
    color: var(--main-color, #424242);
    font-family: 'Play', sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%;
    text-transform: uppercase;
    margin-top: 10px;
}

.nice-select.order_bus_select.open .list li:first-child{
    border-top: 1px dashed var(--accent, #40A6FF);
}

.nice-select.order_bus_select .option{
    padding: 0 17px;
}

.nice-select.order_bus_select .current{
    width: 100%;
    display: block;
    padding-right: 40px;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-left: 18px;
    font-size:16px;
    color: var(--white,#FFF);
}

.order_bus_date_input{
    border: none;
    background: none;
    cursor:pointer;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
    -webkit-line-clamp: 1;
    padding: 40px 60px 10px 18px;
    height: 70px;
    color: #434343;
}

.order_bus_date_wrapper .flatpickr-wrapper{
    width: 110%;
}

.schedule_route_details_popup{
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    z-index: 10;
    background: rgba(255,255,255,0.95);
    max-width: 1350px;
    width: calc(100% - 30px);
    max-height: 80vh;
    overflow-y: auto;
}

.schedule_details_content{
    max-width: 860px;
    margin: 0 auto;
    padding: 30px;
}

.schedule_details_block_header{
    margin-top: 35px;
}

.schdule_details_route{
    margin-top: 35px;
}

.landing_places{
    margin: 0;
    list-style: none;
    padding: 0;
}

.landing_places li{
    position: relative;
    padding-left: 15px;
}

.landing_places li:before{
    content: '';
    position: absolute;
    display: block;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: black;
    top: 8px;
    left: 0;
}

.departure_block_title{
    font-size: 16px;
    font-weight: 700;
    font-family: 'Play', sans-serif;
    text-transform: uppercase;
    color:#434343;
    margin-top: 30px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.schedule_route{
    margin-top: 30px;
}

.schedule_route_stop{
    display: block;
    text-align: left;
}

.schedule_route_row{
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    gap: 50px;
}

.schedule_route_row:not(:last-child){
    padding-bottom: 15px;
}

.schedule_route_stop:hover{
    text-decoration: underline;
}

.schedule_route_city{
    font-size: 14px;
    font-weight: 700;
    color: #434343;
    position: relative;
}

.transfer_icon {
    width: 50px;
    margin-top: -5px;
}

.schedule_route_station{
    font-size: 14px;
    font-weight: 400;
    color: #434343;
}

.arrival_block_title{
    font-size: 16px;
    font-weight: 700;
    font-family: 'Play', sans-serif;
    text-transform: uppercase;
    color:#434343;
    margin-top: 30px;
    text-align: right;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.schedule_route_point{
    position: relative;
}

.schedule_route_point_point{
    width: 25px;
    height: 25px;
    border: 1px solid #40A6FF;
    background: white;
    border-radius: 50%;
}

.schedule_route_point_point.active{
    background: var(--accent-2,#FF6604);
    border-color: var(--accent-2,#FF6604);
}

.schedule_route_row:not(:last-child) .schedule_route_point:after{
    content: '';
    width: 3px;
    height: 150%;
    display: block;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    background: #40A6FF;
}

.schedule_route_point_time{
    color: var(--accent,#40A6FF);
    font-weight: 700;
}

.schedule_route_point_row{
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: space-between;
    width: 14%;
}

.sr_txt_title{
    color: #FF6604;
    margin-top: 30px;
}

.sr_txt ul{
    margin: 0;
    list-style: none;
    padding: 0;
}

.sr_txt ul li{
    position: relative;
    padding-left: 15px;
    font-size: 14px;
    font-weight: 400;
    color: #434343;
    margin-bottom: 10px;
}

.sr_txt ul li:before{
    content: '';
    position: absolute;
    display: block;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: black;
    top: 8px;
    left: 0;
}

.sr_services{
    margin-top: 30px;
}

.sr_bus_options {
    margin-top: 30px;
}

.sr_services_title_row{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    cursor:pointer;
}

.sr_services_title_row img{
    filter: brightness(0);
    transition: all 0.3s ease;
}

.sr_services_title_row.active img{
    transform: rotate(180deg);
    transition: all 0.3s ease;
}

.support_wrapper{
    position: relative;
}

.support_phones{
    padding: 10px;
    border: none;
    border-radius: 8px;
    background: #FFFFFF;
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
    width: 100%;
    display: none;
    z-index: 1;
}

.support_phone{
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 5px 0;
    margin: 5px 0;
}

.exit_btn{
    padding: 23px 40px;
    margin-top: 30px;
}

.d_none {
    display: none;
}

.filter_city_select_wrapper .select2-container{
    width: 100% !important;
}

.select2-dropdown{
    background-color: rgba(255, 255, 255, 1) !important;
}

.order_bus_row .select2-selection__rendered {
    padding: 0 20px !important;
    color: #fff !important;
}
.order_bus_row .select2-container--default .select2-selection--single {
    background: none;
    border: 0;
}
.order_bus_row .select2-container {
    margin: 40px 0 0 0;
    width: 100% !important;
}
.hidden {
    display: none;
}

.recommend_dates {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin: 30px 0;
}
.reccomend_date {
    padding: 12px 10px;
    border: 1px solid;
    border-radius: 7px;
}
.reccomend_title {
    text-align: center;
}
.flatpickr-day {
    border: 2px solid transparent !important ;
    margin: 1px !important;
}
.highlight-day {
    box-shadow: none;
    border-color: #569ff7 !important;
}
.flatpickr-day.flatpickr-disabled, .flatpickr-day.flatpickr-disabled:hover {
    cursor: not-allowed;
    color: rgba(57,57,57,0.1)!important;
    background: transparent !important;
    border-color: transparent !important;
}
.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange, .flatpickr-day.selected.inRange, .flatpickr-day.startRange.inRange, .flatpickr-day.endRange.inRange, .flatpickr-day.selected:focus, .flatpickr-day.startRange:focus, .flatpickr-day.endRange:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange:hover, .flatpickr-day.endRange:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange.nextMonthDay {
    border-color: #FF6604 !important;
    background: transparent !important;
    color: #393939 !important;
}
.flatpickr-wrapper {
    width: 100%;
    z-index: 9;
}

.route_price_details_table {
    text-align: center;
    border-radius: 10px;
    overflow: auto;

}
.route_price_details_table td {
    border: 1px solid;
    vertical-align: middle;
    padding: 10px;
}
.route_price_details_table th {
    background: var(--accent, #40A6FF);
    color: #fff;
    padding: 5px;
    border: 1px solid;
    font-weight: 300;
}
.route_price_details_table .station_td {
    background: var(--accent, #40A6FF);
    color: #fff;
    padding: 10px;
    border: 1px solid;
    vertical-align: middle;
}
.shedule_ticket_price {
    margin: 5px auto;
}
.routes_prices_list {
    margin-top: 60px;
    border: 1px solid;
    border-radius: 15px;
    overflow: hidden;
}
@media (max-width: 767px) {
    .routes_prices_list {
        overflow: scroll;
        width: max-content;
    }
    .route_stops_stop_info {
        width: 175px;
    }
}
.route_stops_prices_list {
    display: grid;
    grid-template-columns: 1fr 1fr .8fr;
    align-content: stretch;
    align-items: stretch;
}
.routes_prices_header {
    background: var(--accent, #40A6FF);
    color: #fff;
    text-align: center;
}
.route_stops_stop_info {
    padding: 10px 5px 10px 15px;
    border: 1px solid;
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-direction: column;
}
.route_stops_prices_price {
    text-align: center;
    flex-direction: column;
    font-weight: 600;
}
.route_stop_title {
    font-weight: 500;
    font-size: 18px;
}
.callback_pop-up-btn {
    /* width: fit-content; */
    position: fixed;
    z-index: 9;
    right: 4rem;
    bottom: 5rem;
    cursor: pointer;
}

.callback_btn {
    padding: 5px 10px;
    display: flex;
    align-items: center;
    border-radius: 15px;
    gap: 15px;
}

.callback_img svg{
    width: 52px;
    height: 52px;
    fill:#fff;
}

.callback_title {
    width: 90px;
}

.callback_popUp {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    z-index: 10;
    background: rgba(255,255,255,1);
    max-width: 60%;
    width: calc(100% - 30px);
    max-height: 80vh;
    overflow-y: auto;
    display: none;
    border-radius: 5px;
}
.callback_popUp.active{
    display: block;
}
.callback_form {
    padding: 40px;
}
.callback_form-race {
    display: flex;
    gap: 15px;
    flex-direction: column;
}
.callback_form-race .filter_block_wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 25px;
    overflow: visible;
}
@media (max-width: 767px) {
    .callback_popUp{
        max-width: 85%;
    }
    .callback_form-race .filter_block_wrapper {
        display: flex;
        row-gap: 15px;
        align-items: start;
        flex-direction: column;
    }
    .callback_popUp .filter_city_select_wrapper{
        height: 55px;
        max-height: 55px;
        margin-bottom: 0;
    }

}
.callback_form-race .filter_city_select_wrapper {
    border: 1px solid var(--main-text, #434343);
    position: relative;
}
ul.slick-dots {
    display: flex;
    gap: 15px;
    margin-top: 15px;
    justify-content: center;
    z-index: 9;
    position: relative;
}
.slick-dots button {
    color: transparent;
    width: 15px;
    height: 15px;
    background: #93c8ff;
    border-radius: 25px;
}
ul.slick-dots li::marker {
    color: transparent;
}

/* SLICK ARROWS */
.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;


    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);

    cursor: pointer;

    color: transparent;
    border: none;
    outline: none;
    width: 60px;
    height: 60px;
    background: var(--accent, rgba(64, 166, 255, 0.75));
    opacity: 1;
    border-radius: 50%;
    z-index: 9;
    padding: 15px ;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
    color: transparent;
    outline: none;
    background: rgba(64, 166, 255, 0.75);
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before
{
    opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before
{
    opacity: .25;
}

.slick-prev:before,
.slick-next:before
{
    font-family: 'slick';
    font-size: 20px;
    line-height: 1;

    opacity: 1;
    color: white;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev
{
    left: -40px;
}
[dir='rtl'] .slick-prev
{
    right: -25px;
    left: auto;
}
.slick-prev:before
{
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    background: url("/public/images/common/arrow_left.svg") no-repeat;
    background-size: 100%;
    background-position: center;
}
[dir='rtl'] .slick-prev:before
{
    content: '';

}

.slick-next
{
    right: -40px;
}
[dir='rtl'] .slick-next
{
    right: auto;
    left: -25px;
}
.slick-next:before {
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    background: url("/public/images/common/arrow_right.svg") no-repeat;
    background-size: 100%;
    background-position: center;
}
[dir='rtl'] .slick-next:before
{
    content: '←';
}
.order_bus_input, input.order_bus_input:-webkit-autofill, input.order_bus_input:-webkit-autofill:focus, input.order_bus_input:-webkit-autofill:hover, input.order_bus_input:-internal-autofill-selected {
    background-color: transparent !important;
    color: #434343 !important;
    height: 68px !important;
    border: none !important;
    margin-top: 0px;
    -webkit-box-shadow: 0 0 0px 1000px transparent inset !important;
    box-shadow: 0 0 0px 1000px transparent inset !important;
    appearance: none !important;
    padding: 30px 10px 10px 20px !important;
}
.order_bus_input::placeholder {
    color: #434343;
}