@media (max-width: 479px)
{
    /*-------------------
        Global styles
    -------------------*/
    :root
    {
        --font_size_title: 32px;
    }


    .cont
    {
        padding: 0 11px;
    }


    .content_flex
    {
        margin-bottom: 56px;
    }


    .swiper-horizontal > .swiper-pagination-bullets,
    .swiper-pagination-bullets.swiper-pagination-horizontal,
    .swiper-pagination-custom,
    .swiper-pagination-fraction
    {
        bottom: 64px;
        left: 0;

        width: 100%;
        padding: 0 11px;

        justify-content: center;
    }



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


    .fancybox__content > .carousel__button.is-close
    {
        top: 12px;
        right: 12px;
    }



    /*---------------
        Accordion
    ---------------*/
    .accordion_item .head .title
    {
        font-size: 16px;
        line-height: 20px;
    }



    /*-------------
        Tooltip
    -------------*/
    .tooltip .text
    {
        width: 271px;
    }



    /*-------------
        Sidebar
    -------------*/
    .departure_dates .block_title
    {
        font-size: 24px;
    }


    .departure_dates .item .info
    {
        width: calc(100% - 38px);
    }


    .departure_dates .item .price
    {
        width: 120px;
        margin-top: 12px;
        margin-left: 38px;
    }

    .departure_dates .item .btn
    {
        width: 120px;
        margin-top: 12px;
        margin-right: auto;
    }



    aside .filter .tooltip .circles
    {
        width: 100%;
        padding: 0;
    }


    aside .filter .tooltip .desc
    {
        width: 100%;
        margin-top: 8px;
    }



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


    .breadcrumbs
    {
        font-size: 12px;
        line-height: 12px;
    }

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


    .page_title
    {
        font-size: 32px;
        line-height: 125%;
    }



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


    .block_head .title
    {
        font-size: 24px;
        line-height: 125%;
    }



    /*------------------
        Form elements
    ------------------*/
    .form .submit_btn
    {
        width: 100%;
    }


    .form .agree
    {
        width: 100%;
        margin-top: 16px;

        text-align: center;

        order: 2;
    }


    .form .bottom .submit
    {
        width: 100%;
    }



    /*----------------
        Typography
    ----------------*/
    .text_block h1
    {
        font-size: 28px;
    }

    .text_block h2
    {
        font-size: 22px;
    }

    .text_block h5
    {
        font-size: 16px;
    }


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


    .text_block blockquote
    {
        margin-top: 44px;
        margin-bottom: 44px;
        padding: 20px 0;
    }

    .text_block blockquote .text
    {
        font-size: 16px;
        line-height: 24px;

        padding-left: 48px;
    }



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


    .main_slider .slide
    {
        height: 880px;
    }


    .first_section .title
    {
        font-size: 40px;
        line-height: 48px;
    }

    .first_section .desc
    {
        font-size: 12px;
        line-height: 15px;

        margin-top: 10px;
    }


    .main_slider .caption
    {
        right: 0;
        bottom: 24px;

        width: 100%;
        padding: 0 11px;

        text-align: center;
    }



    /*-----------------
        Impressions
    -----------------*/
    .impressions
    {
        height: 525px;
        margin-bottom: 56px;
    }


    .impressions .head .title
    {
        font-size: 22px;
        line-height: 125%;

        width: calc(50% - 10px);
    }


    .impressions .head .desc
    {
        font-size: 12px;
        line-height: 135%;

        width: calc(50% - 10px);
    }


    .impressions .quote
    {
        font-size: 14px;
        line-height: 17px;

        left: 52px;

        width: 200px;
    }

    .impressions .quote:before
    {
        font-size: 70px;
        line-height: 85px;

        top: -10px;
        right: calc(100% + 20px);
    }


    .impressions .item
    {
        width: 140px;
    }

    .impressions .item:before
    {
        top: 5px;
        left: -18px;

        width: 6px;
        height: 6px;

        border: none;
    }

    .impressions .item1
    {
        top: 92px;

        margin-left: 42px;
    }

    .impressions .item2
    {
        top: 218px;

        margin-left: -24px;
    }

    .impressions .item3
    {
        top: 312px;

        margin-left: 22px;
    }


    .impressions .item .val
    {
        font-size: 14px;
        line-height: 17px;
    }

    .impressions .item .desc
    {
        font-size: 12px;
        line-height: 115%;
    }


    .impressions .img
    {
        bottom: 0;
    }



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


    .contacts_info .phone
    {
        font-size: 24px;
    }


    .contacts_info .tabs button .city
    {
        font-size: 24px;
        line-height: 28px;
    }


    .contacts_info .map_wrap .map
    {
        height: 400px;
    }


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



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


    .gift_cert .data
    {
        padding: 24px;
    }


    .gift_cert .block_head
    {
        margin-bottom: 200px;
    }

    .gift_cert .block_head .title
    {
        line-height: 115%;
    }

    .gift_cert .block_head .desc
    {
        color: var(--text_color);
        font-size: 12px;
        line-height: 16px;

        margin-top: 16px;
    }


    .gift_cert .btn
    {
        font-size: 13px;
        line-height: 17px;

        width: 220px;
        height: 50px;
        margin-top: 30px;
    }


    .gift_cert .img2
    {
        height: 224px;
    }

    .gift_cert .img
    {
        right: -88px;
        bottom: -52px;

        width: 345px;
        height: 345px;
    }
    @media (max-width:600px) {
        .gift_cert .block_head{ margin-bottom: 10px;}
        .gift_cert .img
    {
        display: none !important;
    }
    }



    /*------------------
        Catalog head
    ------------------*/
    .catalog_head .months .item
    {
        font-size: 12px;
        line-height: 15px;
    }



    /*----------------
        Tours head
    ----------------*/
    .tours_head
    {
        margin-bottom: 20px;
        padding-bottom: 30px;
    }


    .tours_head .name
    {
        margin-right: 0;
        margin-bottom: 6px;
    }


    .tours_head .sort
    {
        display: block;
    }



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


    .tours .tour .hot
    {
        font-size: 12px;
        line-height: 12px;

        top: 10px;
        left: 10px;

        padding: 10px;
    }

    .tours .tour .hot img
    {
        width: 16px;
        height: 16px;
        margin-right: 4px;
    }


    .tours .tour .name
    {
        font-size: 16px;
        line-height: 125%;
    }


    .tours .params
    {
        font-size: 12px;
        line-height: 13px;
    }


    .tours .params .icon
    {
        width: 14px;
        height: 14px;
    }

    .tours .params .icon + *
    {
        width: calc(100% - 18px);
    }


    .tours .params .circles
    {
        top: -1px;
    }

    .tours .params .circle
    {
        width: 8px;
        height: 8px;
    }


    .tours .date
    {
        font-size: 12px;
        line-height: 13px;
    }


    .tours .date .modal_cont
    {
        /*margin-left: 10px;*/
		margin:0 0 0 0;
    }

    .tours .date .mini_modal
    {
        right: 0;

        width: 250px;
        padding: 12px 24px 15px 15px;
    }


    .tours .date .selected .icon
    {
        margin: 0 4px;
    }


    .tours .date .variant
    {
        font-size: 12px;
        line-height: 16px;

        padding: 7px 0;
    }


    .tours .price
    {
        font-size: 12px;
        line-height: 13px;

        margin-top: 12px;
    }

    .tours .price .val
    {
        font-size: 16px;
        line-height: 19px;
    }


    .tours .details_link
    {
        font-size: 12px;
        line-height: 13px;

        margin-top: 15px;
    }



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


    .booking .form .input
    {
        font-size: 12px;

        height: 40px;
        padding: 0 11px;
    }


    .booking .form textarea
    {
        font-size: 12px;
        line-height: 13px;

        height: 110px;
        padding: 13px 11px;
    }


    .booking .form .nice-select .current
    {
        line-height: 38px;

        height: 40px;
    }



    .booking .tour
    {
        padding: 20px 10px;
    }


    .booking .tour .info .thumb
    {
        width: 90px;
        padding-bottom: 90px;
    }


    .booking .tour .info .thumb + div
    {
        width: calc(100% - 106px);
    }

    .booking .tour .info .name
    {
        font-size: 14px;
        line-height: 125%;
    }


    .booking .tour .info .features > *:before
    {
        top: 6px;
    }



    /*-------------
        How buy
    -------------*/
    .how_buy .block_title
    {
        font-size: 24px;

        margin-bottom: 20px;
    }



    .how_buy .spoler
    {
        font-size: 18px;

        margin-bottom: 24px;
    }



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


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


    .about_head .data .title
    {
        font-size: 44px;
        line-height: 53px;
    }


    .about_head .data .desc
    {
        font-size: 12px;
        line-height: 135%;

        bottom: 60px;
        left: 11px;

        width: calc(100% - 22px);
        padding: 20px 15px;
    }


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

        padding: 8px 10px 12px;
    }


    .about_head .person .mini_modal,
    .about_head .person .mini_modal.active,
    .about_head .person .mini_modal#person2_modal,
    .about_head .person .mini_modal#person2_modal.active
    {
        bottom: -80px;
        left: 11px;

        width: calc(100% - 22px);
        padding: 20px;
    }


    .about_head .person .name
    {
        font-size: 14px;
        line-height: 17px;

        margin-bottom: 18px;
    }


    .about_head .person .text_block
    {
        font-size: 12px;
        line-height: 135%;
    }


    .about_head .person .socials
    {
        font-size: 12px;
        line-height: 15px;
    }


    .about_head .bg
    {
        object-position: 40% 50%;
    }



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


    .instructors .row
    {
        width: calc(100% + 22px);
        margin: 0 -11px;
        padding: 0 11px;
    }


    .instructors .row > * + *
    {
        margin-left: 26px;
    }


    .instructors .person .photo
    {
        margin-bottom: 16px;
    }


    .instructors .person .name
    {
        font-size: 14px;
        line-height: 22px;
    }


    .instructors .person .post
    {
        font-size: 12px;
        line-height: 125%;

        margin-top: 8px;
    }



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


    .photogallery .item .title
    {
        font-size: 14px;
        line-height: 145%;

        padding: 0 13px;
    }


    .photogallery .item .desc
    {
        font-size: 12px;
        line-height: 145%;

        padding: 0 13px;
    }


    .wheelSlider-container .slide.next,
    .wheelSlider-container .slide.prev
    {
        top: -32px;
    }



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


    .reviews .add_review_btn
    {
        font-size: 12px;
        line-height: 13px;

        margin-top: 4px;
        margin-left: 20px;
        padding: 0;

        border: none;
    }


    .reviews .tabs button
    {
        font-size: 16px;
        line-height: 22px;
    }



    .reviews .review .head
    {
        margin-bottom: -10px;
    }


    .reviews .review .author
    {
        font-size: 14px;
        line-height: 17px;
    }


    .reviews .review .author .photo
    {
        width: 60px;
        height: 60px;
        margin-right: 10px;
    }

    .reviews .review .author .photo + div
    {
        max-width: calc(100% - 70px);
    }


    .reviews .review .date
    {
        display: none;
    }


    .reviews .review .text
    {
        font-size: 12px;
        line-height: 135%;

        padding: 30px 18px;
    }



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



    /*----------------
        In socials
    ----------------*/
    .in_socials .block_title
    {
        font-size: 29px;
        line-height: 125%;

        margin-bottom: 24px;
    }


    .in_socials .block_title .instagram_link
    {
        padding-bottom: 8px;
    }


    .in_socials .block_title .vk_link
    {
        margin-left: 16px;
        padding-bottom: 4px;
    }



    /*------------------
        Article head
    ------------------*/
    .article_head .date,
    .article_head .author
    {
        font-size: 12px;
        line-height: 13px;

        margin-top: 28px;
    }


    .article_head .sep
    {
        margin: 28px 12px 0;
    }


    .article_head .author span
    {
        margin-right: 6px;
    }



    /*------------------
        Service head
    ------------------*/
    .service_head .params
    {
        margin-bottom: -6px;
        margin-left: -6px;
    }

    .service_head .params > *
    {
        font-size: 12px;
        line-height: 125%;

        margin-bottom: 6px;
        margin-left: 6px;
        padding: 6px;
    }


    .service_head .params .icon
    {
        width: 14px;
        height: 14px;
        margin-right: 4px;
    }

    .service_head .params .icon svg
    {
        width: 14px;
        height: 14px;
    }


    .service_head .params .circles
    {
        width: 48px;
    }

    .service_head .params .circle
    {
        width: 8px;
        height: 8px;
    }



    /*-------------
        Gallery
    -------------*/
    .gallery .block_title
    {
        font-size: 24px;

        margin-bottom: 20px;
    }



    /*---------------
        Route map
    ---------------*/
    .route_map .block_title
    {
        font-size: 24px;

        margin-bottom: 20px;
    }


    .route_map .map_link
    {
        /*display: none;*/
    }


    .route_map .map
    {
        height: 300px;
    }



    /*------------------
        Hike program
    ------------------*/
    .hike_program .block_title
    {
        font-size: 24px;

        margin-bottom: 20px;
    }



    /*---------------
        Equipment
    ---------------*/
    .equipment .block_title
    {
        font-size: 24px;

        margin-bottom: 20px;
    }


    .equipment .print_btn
    {
        font-size: 12px;
        line-height: 13px;

        margin-bottom: 24px;
    }


    .equipment .item .val
    {
        font-size: 13px;
    }



    /*-------------
        Tickets
    -------------*/
    .tickets .block_title
    {
        font-size: 24px;

        margin-bottom: 20px;
    }



    /*-----------------
        Video block
    -----------------*/
    .video_block .block_title
    {
        font-size: 24px;

        margin-bottom: 20px;
    }


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



    /*-----------------
        Travel cost
    -----------------*/
    .travel_cost .block_title
    {
        font-size: 24px;

        margin-bottom: 20px;
    }



    .travel_cost .col.bg,
    .travel_cost .col + .col
    {
        padding: 24px;
    }

    .travel_cost .col,
    .travel_cost .col + .col
    {
        margin-bottom: 0;
    }


    .travel_cost .title
    {
        font-size: 19px;
        line-height: 25px;
    }



    /*--------------------
        Contacts block
    --------------------*/
    .contacts_block .info .title
    {
        font-size: 24px;
    }



    .contacts_block .manager
    {
        margin-top: 24px;
    }

    .contacts_block .manager .shadow
    {
        display: none;
    }


    .contacts_block .manager .photo
    {
        width: 75px;
        height: 76px;
    }

    .contacts_block .manager .photo + *
    {
        width: calc(100% - 92px);
    }


    .contacts_block .manager .name
    {
        font-size: 12px;
        line-height: 13px;
    }

    .contacts_block .manager .desc
    {
        font-size: 12px;
        line-height: 13px;

        margin-top: 2px;
    }


    .contacts_block .manager .contacts
    {
        margin-top: 8px;
    }


    .contacts_block .manager .phone
    {
        font-size: 18px;
        line-height: 22px;
    }


    .contacts_block .manager .messengers a + a
    {
        margin-left: 8px;
    }


    .contacts_block .btn
    {
        margin-top: 26px;
    }


    .contacts_block .links
    {
        font-size: 12px;
        line-height: 13px;

        margin-top: 26px;
        padding-top: 19px;
    }


    .contacts_block .links .name
    {
        margin-right: auto;
    }


    .contacts_block .links .row
    {
        margin-bottom: -6px;
        margin-left: -6px;
    }

    .contacts_block .links .row > *
    {
        margin-bottom: 6px;
        margin-left: 6px;
    }



    /*------------
        Footer
    ------------*/
    footer .bottom .cont:before
    {
        width: calc(100% - 22px);
    }


    footer .contacts
    {
        justify-content: center;
    }


    footer .phone
    {
        font-size: 32px;
    }


    footer .messengers
    {
        width: 100%;
        margin-top: 16px;
        margin-left: 0;

        justify-content: center;
    }

    footer .messengers a,
    footer .messengers .icon
    {
        width: 40px;
        height: 40px;

        opacity: 1;
    }



    /*-----------
        PopUp
    -----------*/
    .modal
    {
        padding: 40px 24px;
    }


    .modal_title
    {
        font-size: 27px;
        line-height: 33px;
    }



    #add_review_modal .form .bottom .submit
    {
        width: 100%;
    }



    #pick_up_modal
    {
        padding: 40px 24px;
        display: none !important;
    }


    #pick_up_modal .col + .col.mob_show
    {
        margin-bottom: 240px;
    }


    #pick_up_modal .directions .item .thumb
    {
        width: 70px;
        height: 142px;
    }


    #pick_up_modal .directions .circles
    {
        width: 180px;
        height: 180px;
    }

    #pick_up_modal .directions .circles:before
    {
        width: 240px;
        height: 240px;
    }

    #pick_up_modal .directions .circles:after
    {
        width: 300px;
        height: 300px;
    }
}
