@media print,
(max-width: 1023px)
{
    /*-------------------
        Global styles
    -------------------*/
    :root
    {
        --sidebar_width: 100%;
        --font_size: 15px;
        --font_size_title: 38px;
    }



    .content_flex
    {
        margin-bottom: 80px;
    }


    .content_flex.min_aside .content,
    .content_flex .content
    {
        width: 100%;
        max-width: 100%;

        order: 2;
    }


    .content_flex .content > * + *
    {
        margin-top: 64px;
    }



    /*--------------
        Fancybox
    --------------*/
    .fancybox__slide
    {
        padding: 24px;
    }



    /*-------------
        Tooltip
    -------------*/
    .tooltip .text
    {
        right: auto;
        left: 10px;

        width: 390px;
        padding: 20px;
    }



    /*------------
        Header
    ------------*/
    header
    {
        display: none;
    }



    /*-----------------
        Mob. header
    -----------------*/
    .mob_header
    {
        display: block;
    }



    /*-------------
        Sidebar
    -------------*/
    aside
    {
        width: 100%;
    }


    aside.mob_bottom
    {
        margin-top: 52px;

        order: 2;
    }



    aside .filter,
    aside .filter .title
    {
        display: none;

        margin-bottom: 24px;
    }



    .departure_dates .block_title
    {
        font-size: 27px;
        line-height: 31px;
    }


    .departure_dates .item .info
    {
        width: calc(100% - 300px);
        margin-right: auto;
    }

    .departure_dates .item:hover .price,
    .departure_dates .item .btn
    {
        display: block;
    }

    .departure_dates .item .btn
    {
        margin-left: 12px;
    }



    /*---------------
        Page head
    ---------------*/
    .page_head
    {
        margin-bottom: 44px;
    }

    .page_head.no_image
    {
        margin-bottom: 44px;
        padding: 20px 0;
    }


    .breadcrumbs
    {
        font-size: 13px;

        margin-bottom: 52px;
    }

    .breadcrumbs .sep
    {
        margin: 0 10px;
    }


    .page_title
    {
        font-size: 44px;
    }



    /*----------------
        Block head
    ----------------*/
    .block_head .desc
    {
        margin-bottom: 16px;
    }



    /*------------------
        Form elements
    ------------------*/



    /*----------------
        Typography
    ----------------*/
    .text_block h1
    {
        font-size: 40px;
        line-height: 125%;

        margin-bottom: 32px;
    }

    .text_block h2
    {
        font-size: 28px;
        line-height: 125%;

        margin-bottom: 24px;
    }


    .text_block * + h2,
    .text_block * + h3,
    .text_block * + h4,
    .text_block * + h5,
    .text_block * + h6
    {
        margin-top: 64px;
    }


    .text_block blockquote
    {
        margin-top: 64px;
        margin-bottom: 64px;
        padding: 32px 0;
    }

    .text_block blockquote .text
    {
        font-size: 20px;
        line-height: 28px;
    }



    /*-----------------
        Main slider
    -----------------*/
    .main_slider
    {
        margin-bottom: 80px;
    }


    .first_section .title
    {
        font-size: 52px;
    }

    .first_section .desc
    {
        font-size: 17px;
        line-height: 23px;
    }



    /*-----------------
        Search form
    -----------------*/
    .wrap_search_form
    {
        height: 176px;
    }


    .search_form .row,
    .search_form.full_show .row
    {
        margin-bottom: -16px;
    }

    .search_form .line,
    .search_form.full_show .line,
    .search_form.full_show .submit,
    .search_form .submit
    {
        width: calc(50% - 20px);
        margin-bottom: 16px;
    }


    .search_form .advanced_btn
    {
        width: 210px;
    }

    .search_form .advanced_btn.active
    {
        width: 286px;
    }


    .search_form .mini_modal
    {
        left: 0;

        width: 100%;
    }



    /*-----------------
        Impressions
    -----------------*/
    .impressions
    {
        height: 760px;
        margin-bottom: 80px;
    }


    .impressions .head
    {
        display: flex;

        width: 100%;

        justify-content: space-between;
        align-items: flex-start;
        align-content: flex-start;
        flex-wrap: wrap;
    }


    .impressions .head .title
    {
        font-size: 40px;

        width: calc(50% - 20px);

        order: 2;
    }


    .impressions .head .desc
    {
        font-size: 13px;
        line-height: 17px;

        width: calc(50% - 20px);
        margin-top: 0;
        padding-left: 0;

        text-align: right;

        align-self: center;
        order: 1;
    }


    .impressions .quote
    {
        font-size: 22px;

        top: auto;
        right: auto;
        bottom: 40px;
        left: 92px;

        width: 320px;
    }


    .impressions .item:before
    {
        top: 6px;
        left: -40px;

        width: 17px;
        height: 17px;
    }

    .impressions .item1
    {
        top: 200px;

        margin-left: 128px;
    }

    .impressions .item2
    {
        top: 340px;

        margin-left: -10px;
    }

    .impressions .item3
    {
        top: 431px;

        margin-left: -284px;
    }


    .impressions .item .val
    {
        font-size: 32px;
    }

    .impressions .item .desc
    {
        font-size: 13px;
        line-height: 17px;

        margin-top: 4px;
    }


    .impressions .line
    {
        top: 0;

        width: 460px;
        margin-left: -350px;
    }



    /*-------------------
        Contacts info
    -------------------*/
    .contacts_info
    {
        margin-bottom: 80px;
    }


    .contacts_info .data
    {
        width: 100%;
    }


    .contacts_info .data .block_head
    {
        margin-bottom: 40px;
    }


    .contacts_info .data .item + .item
    {
        margin-top: 28px;
    }


    .contacts_info .map_wrap
    {
        width: 100%;
        margin-top: 52px;
        padding: 0;
    }


    .contacts_info .tabs button
    {
        padding-bottom: 12px;
    }

    .contacts_info .tabs button .city
    {
        font-size: 26px;
        line-height: 32px;

        margin-bottom: 12px;
    }


    .contacts_info .image
    {
        margin-top: 60px;
    }



    /*---------------
        Gift cert
    ---------------*/
    .gift_cert
    {
        padding: 80px 0;
    }


    .gift_cert .data
    {
        padding: 40px;
    }


    .gift_cert .block_head
    {
        width: 308px;
    }


    .gift_cert .btn
    {
        width: 260px;
        height: 60px;
        margin-top: 36px;
    }


    .gift_cert .img
    {
        right: -172px;

        width: 500px;
        height: 500px;
    }

    .gift_cert .img2
    {
        left: 48%;
    }



    /*------------------
        Catalog head
    ------------------*/
    .catalog_head
    {
        margin-bottom: 48px;
        padding-bottom: 40px;
    }


    .catalog_head .breadcrumbs
    {
        margin-bottom: 40px;
    }


    .catalog_head .months
    {
        margin-top: 28px;
    }

    .catalog_head .months .swiper
    {
        padding: 0;
    }

    .catalog_head .months .swiper-slide
    {
        visibility: visible;

        pointer-events: auto;

        opacity: 1;
    }

    .catalog_head .months .swiper-button-next,
    .catalog_head .months .swiper-button-prev
    {
        display: none;
    }



    /*----------------
        Tours head
    ----------------*/
    .tours_head
    {
        margin-bottom: 28px;
        padding-bottom: 15px;
    }


    .tours_head .nice-select .scrollbar > * + *
    {
        margin-top: 4px;
    }


    .tours_head .mob_filter_btn
    {
        display: flex;
    }



    /*-----------
        Tours
    -----------*/
    .tours
    {
        margin-bottom: 80px;
    }


    .tours .list > * + *
    {
        margin-top: 32px;
    }

    .tours .list .tour
    {
        padding-bottom: 32px;
    }



    /*--------------
        Seo text
    --------------*/
    .seo_text
    {
        margin-bottom: 80px;
    }



    /*------------------
        Booking head
    ------------------*/
    .booking_head
    {
        margin-bottom: 0;
        padding-bottom: 50px;
    }


    .booking_head .desc
    {
        color: var(--text_color);

        width: 400px;
        margin-top: 24px;
    }



    /*-------------
        Booking
    -------------*/
    .booking
    {
        margin-bottom: 80px;
    }


    .booking .col_main
    {
        width: 100%;

        order: 2;
    }


    .booking .col_right
    {
        width: 100%;
        margin-top: -26px;
        margin-right: 0;
        margin-bottom: 40px;

        order: 1;
    }



    .booking .form .title
    {
        font-size: 17px;

        margin-bottom: 12px;
    }



    .booking .tour .info .name
    {
        font-size: 17px;
        line-height: 21px;
    }

    .booking .tour .buy,
    .booking .tour .options
    {
        display: none;
    }



    /*-------------
        How buy
    -------------*/
    .how_buy .block_title
    {
        font-size: 32px;
        line-height: 125%;

        margin-bottom: 28px;
    }



    .how_buy .step + .step
    {
        margin-top: 50px;
    }


    .how_buy .bg2
    {
        top: 40px;
        left: 0;

        height: 1024px;
    }



    /*----------------
        About head
    ----------------*/
    .about_head
    {
        min-height: 800px;
        margin-bottom: 120px;
    }


    .about_head .data .title
    {
        font-size: 80px;
        line-height: 115%;
    }


    .about_head .data .desc
    {
        font-size: 15px;
        line-height: 21px;

        padding: 20px 24px;
    }


    .about_head .person .btn
    {
        font-size: 16px;
        line-height: 20px;

        padding: 12px 24px 16px;
    }


    .about_head .person .mini_modal,
    .about_head .person .mini_modal.active
    {
        width: 568px;
        padding: 24px;

        border-radius: 20px;
    }


    .about_head .person .name
    {
        font-size: 18px;

        margin-bottom: 16px;
    }


    .about_head .person .text_block
    {
        font-size: 13px;
    }



    /*-----------------
        Instructors
    -----------------*/
    .instructors
    {
        margin-bottom: 80px;
    }


    .instructors .row
    {
        margin-left: -24px;
    }

    .instructors .row > *
    {
        width: calc(33.333% - 24px);
        margin-left: 24px;
    }


    .instructors .person:nth-child(4n+1) .photo,
    .instructors .person:nth-child(4n) .photo
    {
        border-radius: 100px;
    }

    .instructors .person:nth-child(3n+1) .photo
    {
        border-radius: 6px 100px 100px 100px;
    }

    .instructors .person:nth-child(3n) .photo,
    .instructors .person:last-child .photo
    {
        border-radius: 100px 100px 6px 100px;
    }


    .instructors .person .name
    {
        font-size: 18px;
        line-height: 20px;
    }



    /*------------------
        Photogallery
    ------------------*/
    .photogallery
    {
        margin-bottom: 80px;
    }



    /*-------------
        Reviews
    -------------*/
    .reviews
    {
        margin-bottom: 80px;
    }


    .reviews .add_review_btn
    {
        padding: 15px 31px;
    }


    .reviews .tabs button
    {
        font-size: 20px;
        line-height: 26px;
    }


    .reviews .tab_content.active
    {
        padding: 40px 0;
    }


    .reviews .swiper
    {
        padding: 0;
    }

    .reviews .swiper-slide
    {
        width: calc(100% - 60px);
    }

    .reviews .swiper-button-next,
    .reviews .swiper-button-prev
    {
        display: none;
    }



    /*----------------
        Directions
    ----------------*/
    .directions
    {
        margin-bottom: 80px;
    }


    .directions .row > *
    {
        width: calc(16.666% - 20px);
    }



    /*----------------
        In socials
    ----------------*/
    .in_socials .block_title
    {
        font-size: 44px;
    }


    .in_socials .swiper-slide
    {
        width: 220px;
    }



    /*------------------
        Article head
    ------------------*/
    .article_head .info
    {
        width: 460px;
    }


    .article_head .date,
    .article_head .author
    {
        font-size: 13px;

        margin-top: 36px;
    }

    .article_head .sep
    {
        margin: 36px 20px 0;
    }


    .article_head .next_link
    {
        margin-top: 12px;
    }

    .article_head .next_link .title
    {
        font-size: 17px;
        line-height: 23px;
    }



    /*------------------
        Service head
    ------------------*/
    .service_head
    {
        margin-bottom: 0;
    }


    .service_head .params
    {
        margin-top: 50px;
    }

    .service_head .params > *
    {
        font-size: 13px;
        line-height: 17px;

        padding: 8px 14px;
    }



    /*-----------------
        Service nav
    -----------------*/
    .service_nav
    {
        margin-bottom: 50px;
    }


    .service_nav .name
    {
        margin-right: 24px;
    }


    .service_nav .btns
    {
        margin-bottom: -8px;
        margin-left: -24px;
    }

    .service_nav .data .btns > *
    {
        margin-bottom: 8px;
        margin-left: 24px;
    }



    /*-------------
        Gallery
    -------------*/
    .gallery .block_title
    {
        font-size: 32px;
        line-height: 125%;

        margin-bottom: 28px;
    }


    .gallery .item .count
    {
        font-size: 32px;
        line-height: 125%;
    }



    /*------------------
        Hike program
    ------------------*/
    .hike_program .block_title
    {
        font-size: 32px;
        line-height: 125%;

        margin-bottom: 28px;
    }


    .hike_program .notice
    {
        margin-top: 40px;
    }



    /*---------------
        Route map
    ---------------*/
    .route_map .block_title
    {
        font-size: 32px;
        line-height: 125%;

        margin-bottom: 28px;
    }


    .route_map .map_link
    {
        margin-bottom: 32px;
    }



    /*---------------
        Equipment
    ---------------*/
    .equipment .block_title
    {
        font-size: 32px;
        line-height: 125%;

        margin-bottom: 28px;
    }


    .equipment .print_btn
    {
        margin-bottom: 32px;
    }



    /*-------------
        Tickets
    -------------*/
    .tickets .block_title
    {
        font-size: 32px;
        line-height: 125%;

        margin-bottom: 28px;
    }



    /*-----------------
        Video block
    -----------------*/
    .video_block .block_title
    {
        font-size: 32px;
        line-height: 125%;

        margin-bottom: 28px;
    }


    .video_block .author
    {
        line-height: 23px;

        margin-bottom: 24px;
    }


    .video_block .link .btn
    {
        width: 90px;
        height: 90px;
    }



    /*-----------------
        Travel cost
    -----------------*/
    .travel_cost .block_title
    {
        font-size: 32px;
        line-height: 125%;

        margin-bottom: 28px;
    }

    .travel_cost .block_title span
    {
        margin-top: 0;
    }


    .travel_cost .exp
    {
        margin-bottom: 28px;
    }


    .travel_cost .col.bg
    {
        padding: 28px 24px;
    }

    .travel_cost .col + .col
    {
        padding: 28px 0 28px 28px;
    }


    .travel_cost .title
    {
        font-size: 21px;
        line-height: 27px;
    }



    /*--------------------
        Contacts block
    --------------------*/
    .contacts_block .data
    {
        padding: 32px;
    }


    .contacts_block .info
    {
        width: 320px;
    }


    .contacts_block .manager
    {
        width: 300px;
        margin-top: 0;
    }


    .contacts_block .links
    {
        margin-top: 32px;
        padding-top: 24px;
    }



    /*----------------------
        Booking mob info
    ----------------------*/
    .booking_mob_info
    {
        display: block;
    }



    /*------------
        Footer
    ------------*/
    footer .info
    {
        padding-top: 76px;
    }


    footer .bottom
    {
        font-size: 13px;

        padding: 20px 0;
    }

    footer .bottom .cont:before
    {
        top: -20px;
    }


    footer .col_left
    {
        display: flex;

        width: 100%;

        justify-content: space-between;
        align-items: flex-start;
        align-content: flex-start;
        flex-wrap: wrap;
    }


    footer .phone
    {
        font-size: 30px;
        line-height: 38px;
    }


    footer .vk_widget
    {
        margin-top: 0;
    }


    footer .links
    {
        display: none;
    }


    footer .privacy_policy_link
    {
        margin-left: auto;
    }



    /*-----------
        PopUp
    -----------*/
    #pick_up_modal, #popups_gift
    {
        overflow: hidden;

        width: 600px;
        padding: 50px 40px;
    }


    #pick_up_modal, #popups_gift .modal_title,
    #pick_up_modal, #popups_gift .modal_desc
    {
        display: none;
    }


    #pick_up_modal, #popups_gift .directions
    {
        position: absolute;
        /*bottom: -60px;*/
        left: 0;

        display: none;

        width: 100%;
        margin-top: 0;
    }


    #pick_up_modal, #popups_gift .col
    {
        width: 100%;
        height: 0;

        order: 2;
    }

    #pick_up_modal, #popups_gift .col + .col
    {
        height: auto;

        order: 1;
    }


    #pick_up_modal, #popups_gift .col + .col.mob_show
    {
        margin-bottom: 264px;
    }


    #pick_up_modal, #popups_gift .mob_show .directions
    {
        display: block;
    }
}
