@media (max-width: 1279px)
{
    /*---------------
        Main styles
    ---------------*/
    :root
    {
        --font_size_title: 50px;
    }



    .block
    {
        margin-bottom: 125px;
    }



    .block_head
    {
        margin-bottom: 50px;
    }

    .block_head .title
    {
        line-height: 55px;
    }



    .page_head
    {
        padding-top: 200px;
    }

    .page_title
    {
        line-height: 55px;

        margin-bottom: 60px;
    }


    .page_head .filter
    {
        padding: 20px 0;
    }



    .page_head .clubs_city_list
    {
        margin-top: -60px;
    }

    .page_head .clubs_city_list .current
    {
        font-size: 50px;
        line-height: 55px;
    }

    .page_head .clubs_city_list .dropdown
    {
        padding: 20px 0 30px;
    }


    .page_head .clubs_city_list .view
    {
        margin-bottom: 25px;
    }



    .page_head .selected_club form
    {
        width: calc(100% - 230px);
    }

    .page_head .selected_club .slider
    {
        padding-right: 170px;
    }

    .page_head .selected_club label .name
    {
        font-size: 12px;
    }



    .lk_head
    {
        margin-bottom: 70px;
    }

    .lk_head .cont
    {
        padding-top: 150px;
    }

    .lk_head .auth_links
    {
        position: relative;
        right: 0;

        width: 100%;
        margin-top: -30px;
        margin-bottom: 30px;
    }

    .lk_modal .lk_head .auth_links{
        margin-top: 4px;
        margin-bottom: 0;
    }



    .sections_head
    {
        margin-bottom: 70px;
    }

    .sections_head .cont
    {
        padding-top: 150px;
    }



    .form .columns
    {
        margin-left: -50px;

        --columns_offset: 50px;
    }

    .form .submit
    {
        padding-top: 20px;
    }



    .text_block h2
    {
        font-size: 28px;
        line-height: 36px;
    }

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


    .text_block .video_link,
    .text_block blockquote,
    .text_block q,
    .text_block .slider_in_text,
    .text_block .table_wrap,
    .text_block .accordion
    {
        width: calc(100% + 120px);
        margin: 60px -60px;
    }

    .text_block table th,
    .text_block table td
    {
        padding: 20px;
    }



    /*---------------
        Header
    ---------------*/
    header .info
    {
        padding: 20px 0;
    }



    .city_modal
    {
        padding-top: 200px;
    }

    .city_modal .title
    {
        line-height: 55px;
    }

    .city_modal .title span
    {
        font-size: 50px;
        line-height: 55px;
    }



    /*---------------
        Sidebar
    ---------------*/



    /*---------------
        Main section
    ---------------*/
    .main_slider .slide .title
    {
        font-size: 28px;
    }



    .services
    {
        margin-bottom: 125px;
    }

    .services .flex
    {
        margin-bottom: -20px;
        margin-left: -20px;
    }

    .services .flex > *
    {
        width: calc(43.5% - 20px);
        margin-bottom: 20px;
        margin-left: 20px;
        padding-bottom: 30%;
    }

    .services .flex > *.middle
    {
        width: calc(56.5% - 20px);
    }


    .services .item .info
    {
        padding: 30px;
    }


    .services .flex > *.big
    {
        width: calc(100% - 20px);
        margin-bottom: 40px;
    }

    .services .item.big .info
    {
        padding: 50px 40px;
    }

    .services .item.big .title
    {
        font-size: 28px;
    }

    .services .item .desc
    {
        margin-top: 15px;
    }

    .services .item.big .link
    {
        margin-top: 20px;
    }


    .services .bottom
    {
        margin-top: 100px;
    }

    .services .bottom .text
    {
        font-size: 18px;
        line-height: 26px;
    }



    .stocks .list .item .info
    {
        padding: 40px;
    }

    .stocks .list .item .title
    {
        font-size: 18px;
        line-height: 26px;
    }

    .stocks .list .item .desc
    {
        font-size: 15px;
        line-height: 23px;

        margin-top: 20px;
    }

    .stocks .list .item .link
    {
        margin-top: 25px;
    }


    .stocks .all_link
    {
        bottom: 40px;

        margin-left: 40px;
    }



    .advantages
    {
        padding: 120px 0 60px;
    }

    .advantages .item .title
    {
        font-size: 32px;
    }

    .advantages .item .desc
    {
        font-size: 25px;
        line-height: 35px;
    }

    .advantages .item .img
    {
        margin-top: 75px;
    }



    .clubs
    {
        padding: 60px 0 125px;
    }

    .clubs .flex
    {
        --clubs_offset: 20px;
    }

    .clubs .item
    {
        padding: 20px 20px 30px;
    }



    .get_card .info
    {
        width: 55%;
        padding-right: 40px;
    }

    .get_card .img
    {
        width: 40%;
        margin-left: 0;
    }

    .get_card .marquee
    {
        margin-top: 75px;
    }



    .success_story .flex
    {
        margin-bottom: -20px;
        margin-left: -20px;
    }

    .success_story .flex > *
    {
        width: calc(43.5% - 20px);
        margin-bottom: 20px;
        margin-left: 20px;
        padding-bottom: 30%;
    }

    .success_story .item.text
    {
        font-size: 18px;

        padding: 20px 100px 20px 20px;
    }



    .articles .main .thumb
    {
        width: calc(55% + 20px);
        margin-left: -20px;
        padding-bottom: 46%;
    }

    .articles .main .info
    {
        width: 45%;
        padding: 0 0 0 50px;
    }


    .articles .flex
    {
        padding-right: 0;

        --articles_offset: 50px;
    }



    .clubs_list
    {
        padding-top: 50px;
    }

    .clubs_list .flex
    {
        --clubs_list_offset: 20px;
    }

    .clubs_list .item
    {
        padding: 30px 25px;
    }

    .clubs_list .item .link
    {
        top: 32px;
    }

    .clubs_list .item .options
    {
        padding-right: 0;
    }



    .lk .head
    {
        margin-bottom: 70px;
        padding-bottom: 70px;
    }

    .lk .head .my_card
    {
        max-width: calc(100% - 345px);
    }

    .lk .head .my_card .img
    {
        width: 270px;
    }

    .lk .head .my_card .info
    {
        width: calc(100% - 300px);
    }

    .lk .head .my_card .name
    {
        font-size: 23px;
    }

    .lk .head .my_card .desc
    {
        font-size: 12px;
    }


    .lk .head .my_club
    {
        width: 315px;
    }



    .lk .personal
    {
        padding-right: 0;
    }

    .lk .personal .block_title
    {
        font-size: 28px;

        margin-bottom: 50px;
    }

    .lk .personal .info
    {
        max-width: calc(100% - 310px);
    }


    .lk .change_pass .title
    {
        margin-bottom: 50px;
    }

    .lk .change_pass .submit
    {
        padding-top: 10px;
    }



    .auth_form .block
    {
        max-width: calc(100% - 400px);
    }

    .auth_form .form .fio
    {
        width: calc(100% - 380px);
    }



    .card_selection .columns
    {
        margin-left: -70px;

        --columns_offset: 70px;
    }

    .card_selection .line
    {
        margin-bottom: 50px;
    }


    .card_selection .submit
    {
        padding-top: 20px;
    }


    .card_selection .get_card
    {
        padding-top: 90px;
    }

    .get_card .get_link
    {
        margin-top: 90px;
    }

    .get_card .get_link:hover
    {
        margin-top: 85px;
    }



    .all_cards .slider
    {
        padding-right: 200px;
    }

    .all_cards .card_info .col_right
    {
        width: calc(54% - 40px);
    }

    .all_cards .card_info .capacity
    {
        margin-top: 30px;
    }

    .all_cards .card_info .capacity ul
    {
        padding-top: 10px;
    }



    .bonuses
    {
        margin-bottom: 125px;
        padding: 100px 0;
    }

    .bonuses .flex
    {
        margin-bottom: -60px;
        margin-left: -60px;
    }

    .bonuses .flex > *
    {
        width: calc(40.5% - 60px);
        margin-bottom: 60px;
        margin-left: 60px;
    }



    .additional_bonuses .block_head
    {
        margin-bottom: 60px;
    }

    .additional_bonuses .block_head .title
    {
        font-size: 28px;
        line-height: 38px;
    }

    .additional_bonuses .block_head .desc
    {
        font-size: 22px;
        line-height: 32px;
    }

    .additional_bonuses .flex
    {
        margin-bottom: -60px;
        margin-left: -60px;
    }

    .additional_bonuses .flex > *
    {
        width: calc(40.5% - 60px);
        margin-bottom: 60px;
        margin-left: 60px;
    }



    .stocks .flex .item,
    .stocks .flex .item.middle
    {
        padding: 30px 20px;
    }

    .stocks .flex .item .name
    {
        font-size: 18px;
        line-height: 26px;

        padding-right: 64px;
    }

    .stocks .flex .item .name:after,
    .stocks .flex .item .name:before,
    .stocks .flex .item.middle .name:after,
    .stocks .flex .item.middle .name:before
    {
        right: 0;
    }



    .article_info .head
    {
        margin-bottom: 60px;
    }



    .service_head .service_name
    {
        font-size: 26px;
        line-height: 36px;

        margin-bottom: 40px;
    }



    .club_head .club_name
    {
        font-size: 26px;
        line-height: 36px;

        margin-bottom: 40px;
    }



    .about_program
    {
        margin-bottom: 125px;
    }

    .about_program .col_left .text_block
    {
        padding: 50px;
    }

    .about_program .img
    {
        margin-top: 50px;
    }


    .about_training .slider
    {
        padding-top: 50px;
    }

    .about_program .col_left,
    .about_program .accordion
    {
        width: calc(50% - 20px);
        max-width: calc(50% - 20px);
    }



    .about_training .desc
    {
        font-size: 26px;
        line-height: 34px;

        margin-bottom: 60px;
    }




    .reviews .flex
    {
        margin-bottom: -20px;
        margin-left: -20px;
    }

    .reviews .flex > *,
    .reviews .flex > *.middle
    {
        width: calc(50% - 20px);
        margin-bottom: 20px;
        margin-left: 20px;
    }

    .reviews .review
    {
        padding: 30px 30px 96px;
    }

    .reviews .review .text
    {
        min-height: 0;
    }



    .service_info .name
    {
        font-size: 18px;
    }


    .cafe_services .flex
    {
        margin-bottom: -60px;

        --cafe_services_offset: 40px;
    }

    .cafe_services .flex > *
    {
        margin-bottom: 60px;
    }



    .book_menu .filter
    {
        margin-bottom: 50px;
        padding: 20px 0;
    }



    .book_menu .category .flex
    {
        --book_menu_offset: 20px;
    }

    .book_menu .category .item .info
    {
        padding: 15px;
    }

    .book_menu .category .item .kcal
    {
        width: 110px;
        padding-right: 14px;
    }


    .book_menu .category .flex > *.big
    {
        margin-bottom: 70px;
    }

    .book_menu .category .item.big .info
    {
        bottom: 30px;
        left: 30px;
    }

    .book_menu .category .item.big .kcal
    {
        right: 30px;
        bottom: 30px;
    }



    .products .filter
    {
        margin-bottom: 70px;
    }

    .products .flex
    {
        --products_offset: 40px;
    }

    .products .more
    {
        margin-top: 50px;
    }



    .service_info .name
    {
        display: none;
    }

    .service_info .join_link
    {
        margin-left: 20px;
    }



    .about_club .bg
    {
        padding: 125px 0;
    }

    .about_club .block_title
    {
        font-size: 24px;
        line-height: 34px;

        margin-bottom: 70px;
    }



    .about_club .pluses,
    .about_club .img
    {
        margin-bottom: 90px;
    }

    .about_club .pluses .flex
    {
        --about_club_pluses_offset: 40px;
    }



    .coachs .item .info
    {
        padding: 25px;
    }

    .coachs .item.text
    {
        padding: 25px 125px 25px 25px;
    }



    .about_club .text_block
    {
        width: calc(50% - 20px);
        padding: 50px;
    }




    .send_boss .form
    {
        width: calc(100% - 425px);
    }



    .club_schedule .block_head .desc
    {
        margin-top: 30px;
    }

    .club_schedule .block_head .make_schedule
    {
        top: 22px;
    }


    .club_schedule .filter
    {
        margin-bottom: 70px;
    }

    .club_schedule .filter .date .month
    {
        width: 200px;
    }

    .club_schedule .filter .date .days
    {
        width: calc(100% - 200px);
    }

    .club_schedule .filter .date .today
    {
        width: 150px;
    }

    .club_schedule .filter .date .days .slider
    {
        width: calc(100% - 150px);
        padding-right: 180px;
    }



    .schedule_data .head
    {
        margin-bottom: 50px;
        margin-left: -40px;
    }

    .schedule_data .head .count
    {
        width: calc(66.666% - 40px);
        margin-left: 40px;
    }

    .schedule_data .head .difficulty
    {
        width: calc(33.333% - 40px);
        margin-left: 40px;
    }


    .schedule_data .time_block .flex
    {
        --time_block_offset: 40px;
    }

    .schedule_data .time_block .item .info
    {
        padding-right: 60px;
    }

    .schedule_data .time_block .item .name br
    {
        display: none;
    }



    .sections_info .head
    {
        margin-bottom: 50px;
        margin-left: -40px;
    }

    .sections_info .head .difficulty
    {
        width: calc(33.333% - 40px);
        margin-left: 40px;
    }


    .sections_info .flex
    {
        --sections_info_offset: 40px;
    }



    .services .links
    {
        margin-left: -40px;
    }

    .services .links a
    {
        font-size: 18px;
        line-height: 40px;

        margin-left: 40px;
    }



    .choose_fitness
    {
        padding: 100px 0 125;
    }

    .choose_fitness .block_title
    {
        font-size: 26px;
        line-height: 36px;

        margin-bottom: 70px;
    }



    .services_cats .filter
    {
        margin-bottom: 70px;
    }


    .services_cats .flex
    {
        --services_cats_offset: 40px;
    }

    .services_cats .flex > *.big
    {
        margin-bottom: 90px;
    }



    .bottom_link
    {
        font-size: 45px;
        line-height: 300px;

        height: 300px;
    }
    .bottom_link a:after{
        top: 16px;
        right: -120px;
        width: 130px;
        height: 44px;
        background-size: contain;
    }


    .more
    {
        margin-top: 70px;
    }



    /*---------------
        Footer
    ---------------*/
    footer .socials
    {
        margin-right: auto;
        margin-left: auto;
    }

    footer .socials a + a
    {
        margin-left: 20px;
    }



    /*---------------
        PopUp
    ---------------*/
    #menu_modal .links
    {
        width: calc(100% + 60px);
        max-width: calc(100% + 60px);
        margin-left: -60px;
    }

    #menu_modal .links a
    {
        font-size: 40px;
        line-height: 60px;

        margin-left: 60px;
    }


    #menu_modal .lk_link
    {
        margin-top: 60px;
        padding: 25px 150px 25px 25px;
    }



    #join_modal .cont
    {
        align-items: flex-start;
        align-content: flex-start;
    }

    #join_modal .form
    {
        width: calc(100% + 60px);
        max-width: calc(100% + 60px);
        margin-left: -60px;
    }


    #join_modal .form .personal
    {
        width: calc(100% - 460px);
        margin-left: 60px;
    }

    #join_modal .form .pasport,
    #join_modal .form .card
    {
        margin-left: 60px;
    }

    #join_modal .form .submit
    {
        width: calc(100% - 60px);
        margin-left: 60px;
    }



    #coach_modal .features .name
    {
        width: 150px;
    }

    #coach_modal .features .val
    {
        line-height: 20px;

        width: calc(100% - 150px);
    }

    .franchise_advants .accordion {
        width: 100%;
        max-width: 918px;
    }

    .franchise_format .text_block {
        width: calc(50% - 20px);
        margin: auto;
    }

    .franchise_cond_block .list .item .info{
        padding-top: 0;
    }
    .franchise_cond_block .list .item .img{
        width: 60%;
    }
    .franchise_cond_block .list .item .img img{
        max-width: 100%;
    }

    .goto_home a span:nth-of-type(2), .goto_home a span:nth-of-type(6),
    .goto_home a span:nth-of-type(3), .goto_home a span:nth-of-type(7),
    .goto_home a span:nth-of-type(10), .goto_home a span:nth-of-type(11){
        top: auto;
    }

    .fake_page .title{
        font-size: 92px;
    }

    /*.get_card .img img{
        max-width: none;
    }*/

    .page_head .clubs_city_list .current{
        line-height: normal;
    }
}

@media (max-width: 1100px)
{
    .bottom_link .item{
        font-size: 42px;
    }
}