@media (max-width: 767px)
{
 /* START Pushkin */
.service_desc {
    .title {
        position: relative;
    }
	.row {
        gap: 10px;
    }
}
.text_block {
    h3 {
        margin-bottom: 12px;
    }
}
	.indications_contraindications {
    & .items {
        & > * {
            span {
                font-size: 12px;
                line-height: 16px;
            }
        }
    }
}
.prices_conditions {
	.item {
		padding: 20px 12px;
    }
}
.page_head {
            .breadcrumbs {
                font-size: 12px;
            }
        }
        .catalog {
            .category {
                min-height: 168px;
                border-bottom: 1px solid #e9eaec;
                border-radius: 0;
            }
        }
		
		.catalog {
			& .category {
				.btn {
					display: none;
				}
				.thumb {
                    display: none;
                }
			}
		}
		
		.catalog {
            .category {
                min-height: 15px !important;
            }
        }	
/* END Pushkin */
	
	
	/*-------------------
        Global styles
    -------------------*/
    :root
    {
        --cont_padding: 20px;
        --font_size_title_l: 34px;
        --font_size_title: 27px;
        --font_size_title_s: 20px;
        --outside_gap_l: 100px;
        --outside_gap: 80px;
        --outside_gap_s: 60px;
    }


    .bg_block
    {
        padding: 5px;

        border-radius: 24px;
    }


    .swiper-button-next,
    .swiper-button-prev
    {
        --swiper-navigation-size: 40px;
        --swiper-navigation-sides-offset: var(--cont_padding);
    }


    .swiper-controls
    {
        .swiper-button-next,
        .swiper-button-prev
        {
            --swiper-navigation-size: 44px;
        }
    }



    /*---------------
        Accordion
    ---------------*/
    .accordion_item
    {
        .head
        {
            .title
            {
                font-size: var(--font_size);
            }
        }
    }



    /*-----------------
        Mob. header
    -----------------*/
    .mob_header
    {
        padding-block: 5px 0;

        --cont_padding: 5px;


        .data
        {
            padding-block: var(--inner_gap_xs);
            padding-inline: 18px var(--inner_gap_xs);
        }
    }



    /*---------------
        Mob. menu
    ---------------*/
    .mob_menu
    {
        --cont_padding: 5px;
    }



    /*----------------
        Block head
    ----------------*/
    .block_head
    {
        .all_link
        {
            margin-top: 0;
        }
    }



    /*------------------
        Form elements
    ------------------*/
    .form
    {
        --form_input_height: 60px;
        --form_input_padding_inline: var(--inner_gap);
        --form_textarea_height: 120px;
        --form_textarea_padding_block: var(--inner_gap_s);
        --form_textarea_padding_inline: var(--inner_gap);


        .address
        {
            padding: 5px;

            border-radius: 26px;


            .grid_row
            {
                --items_per_line: 1;
                --gap_x: var(--inner_gap_xxxs);
                --gap_y: var(--inner_gap_xxxs);
            }
        }


        .submit
        {
            gap: var(--inner_gap_xs);

            padding-top: var(--inner_gap_s);


            .agree
            {
                order: 2;

                width: 100%;

                font-size: var(--font_size_xs);

                text-align: center;
            }
        }


        .submit_btn
        {
            width: 100%;
        }
    }



    /*----------------
        Typography
    ----------------*/
    .text_block
    {
        h2
        {
            font-size: 20px;
        }


        h3
        {
            font-size: 18px;
            line-height: calc(100% + 6px);


            &[data-number]
            {
                &:before
                {
                    top: 0;
                }
            }
        }


        .slider
        {
            margin-inline: calc(var(--cont_padding) * -1);
        }


        blockquote,
        q
        {
            margin-block: 40px;
            padding-block: 30px;
            padding-inline: 52px 0;

            font-size: 20px;

            background-position: 0 30px;
            background-size: 30px auto;
        }


        table
        {
            td
            {
                padding-inline: var(--inner_gap_xs);

                line-height: calc(100% + 6px);
            }
        }
    }



    /*-------------------
        First section
    -------------------*/
    .first_section
    {
        --cont_padding: 5px;


        .main_slider
        {
            .data
            {
                gap: var(--inner_gap_xs);
            }


            .swiper
            {
                background: linear-gradient(270deg, rgba(255, 255, 255, .00) 30%, rgba(255, 255, 255, .50) 100%), linear-gradient(0deg, #dbd8de 0%, #dbd8de 100%), linear-gradient(270deg, rgba(255, 255, 255, .00) 30%, rgba(255, 255, 255, .50) 100%);


                .swiper-slide
                {
                    min-height: 460px;
                    padding-inline: 15px;
					padding-bottom: 74px;
                }


                .swiper-controls
                {
                    gap: var(--inner_gap_xs);

                    padding: 15px;
                }
            }


            .title
            {
                width: 100%;

                font-size: 34px;
            }


            .desc
            {
                width: 260px;

                font-size: var(--font_size_s);
            }


            .btn
            {
                height: 52px;
            }


            .image
            {
                display: none;
            }
        }


        .video
        {
            .name
            {
                padding: 15px;
            }


            .icon
            {
                right: 15px;
                bottom: 15px;
            }
        }
    }



    /*----------------------
        Popular services
    ----------------------*/
    .popular_services
    {
        .swiper
        {
            &:not(.swiper-initialized)
            {
                .swiper-wrapper
                {
                    gap: var(--spaceBetween-0);
                }


                .swiper-slide
                {
                    width: 315px;
                }
            }


            .swiper-slide
            {
                width: 315px;
            }
        }


        .swiper-controls
        {
            display: none;
        }
    }



    /*-------------------
        Contacts info
    -------------------*/
    .contacts_info
    {
        .data
        {
            .btns
            {
                .btn
                {
                    width: 100%;
                }
            }


            .item
            {
                width: 100%;


                &.phone
                {
                    gap: var(--inner_gap_xxs);

                    font-size: 24px;
                }


                &.phone,
                &.info
                {
                    .label,
                    .val
                    {
                        width: 100%;
                    }
                }
            }
        }


        .map_wrap
        {
            .map
            {
                height: 360px;
            }
        }


        .requisites
        {
            .col
            {
                width: 100%;
            }
        }
    }



    /*--------------------
        Contacts block
    --------------------*/
    .contacts_block
    {
        padding-block: var(--block_padding_l);

        --cont_padding: 15px;


        .data
        {
            .info
            {
                padding-block: var(--inner_gap_l) var(--block_padding);
                padding-inline: var(--inner_gap_l);
            }
        }


        .form
        {
            .title
            {
                margin-bottom: var(--inner_gap_s);
            }


            .desc
            {
                margin-bottom: var(--inner_gap);

                font-size: var(--font_size_s);
                line-height: 135%;
            }


            .submit_btn
            {
                width: 100%;
            }
        }
    }



    /*------------------
        Article info
    ------------------*/
    .article_info
    {
        margin-inline: calc(var(--cont_padding) * -1);
        padding: var(--block_padding) var(--cont_padding);
    }



    /*-------------
        Doctors
    -------------*/
    .doctors
    {
        .swiper-controls
        {
            display: none;
        }


        .grid_row
        {
            --items_per_line: 1;
        }


        .swiper
        {
            &:not(.swiper-initialized)
            {
                .swiper-wrapper
                {
                    gap: var(--spaceBetween-0);
                }


                .swiper-slide
                {
                    width: 315px;
                }
            }


            .swiper-slide
            {
                visibility: visible;

                width: 315px;

                pointer-events: auto;

                opacity: 1;
            }
        }
    }



    /*-------------
        Catalog
    -------------*/
    .catalog
    {
        .grid_row
        {
            width: calc(100% + 30px);
            margin-left: -15px;

            --gap_x: var(--zero_px);
            --gap_y: var(--inner_gap_xxxs);
            --items_per_line: 1;
        }


        .category
        {
            min-height: 168px;


            .thumb
            {
                width: 76px;
            }
        }
    }



    /*-------------------
        Category head
    -------------------*/
    .category_head
    {
        .title
        {
            font-size: 40px;
        }


        .desc
        {
            width: 100%;

            font-size: var(--font_size_s);
        }
    }



    /*--------------
        Services
    --------------*/
    .services
    {
        .service
        {
            .info
            {
                gap: var(--inner_gap_xxs);

                width: calc(100% - 40px - var(--inner_gap));
            }


            .name
            {
                font-size: var(--font_size_xl);
            }


            .price
            {
                font-size: var(--font_size_l);
            }


            .desc
            {
                font-size: var(--font_size_s);
            }
        }
    }



    /*-------------------
        Category info
    -------------------*/
    .category_info
    {
        --cont_padding: 5px;


        .data
        {
            padding-inline: 15px;
        }


        .accordion_item
        {
            .head
            {
                .title
                {
                    font-size: var(--font_size_l);
                }
            }
        }
    }



    /*-----------------
        Doctor info
    -----------------*/
    .doctor_info
    {
        --cont_padding: 5px;


        .col_main
        {
            .data,
            .before_after,
            .certs,
            .reviews
            {
                padding-inline: 15px;
            }


            .data
            {
                .info
                {
                    .clinic
                    {
                        gap: var(--inner_gap_xxxs);


                        .label
                        {
                            width: 100%;
                        }
                    }
                }
            }


            .video
            {
                .name
                {
                    padding: 15px;
                }


                .icon
                {
                    right: 15px;
                    bottom: 15px;
                }
            }
        }
    }



    /*------------------
        Service head
    ------------------*/
    .service_head
    {
        .data
        {
            .title,
            .desc,
            .pluses,
            .buy
            {
                width: 100%;
            }


            .title
            {
                font-size: 34px;


                br
                {
                    display: none;
                }
            }


            .buy
            {
                gap: var(--inner_gap);


                .btn
                {
                    width: 100%;
                }
            }
        }
    }



    /*-----------------
        Prices grid
    -----------------*/
    .prices_grid
    {
        .grid_row
        {
            --items_per_line: 1;
        }


        .item
        {
            .name
            {
                font-size: 28px;
            }


            .btn
            {
                height: 56px;
            }
        }
    }



    /*-----------------
        Prices list
    -----------------*/
	.priceslist,
    .prices_list
    {
        .item
        {
            gap: var(--inner_gap_xs);

            padding-block: var(--inner_gap_xs);
            padding-inline: var(--inner_gap_xs);

            font-size: var(--font_size_s);
            line-height: calc(100% + 6px);


            .label
            {
                width: calc(100% - 100px - var(--block_padding_s));
            }


            .price
            {
                width: 100px;
            }
        }
    }



    /*-----------------------
        Prices conditions
    -----------------------*/
    .prices_conditions
    {
        .item
        {
            .name
            {
                font-size: 22px;
            }
        }
    }



    /*-----------------------------------
        Indications/Contraindications
    -----------------------------------*/
    .indications_contraindications
    {
        .grid_row
        {
            --items_per_line: 1;
        }


        .title
        {
            font-size: var(--font_size_xl);
        }
    }



    /*--------------------
        Services steps
    --------------------*/
    .services_steps
    {
        .item
        {
            &:after
            {
                top: 17px;
            }
        }
    }



    /*----------------
        About info
    ----------------*/
    .about_info
    {
        .data
        {
            padding-block: var(--block_padding_xl) 148px;
        }


        .info
        {
            .title
            {
                font-size: 34px;
            }
        }


        .advantages
        {
            .grid_row
            {
                --gap_x: var(--inner_gap_xxs);
                --gap_y: var(--inner_gap_xxs);
            }


            .item
            {
                min-height: 240px;
                padding: var(--inner_gap_s);


                &.primary
                {
                    .icon
                    {
                        bottom: 0;

                        width: 120px;
                    }
                }


                .name
                {
                    font-size: var(--font_size_l);
                }


                .desc
                {
                    font-size: var(--font_size_xs);
                    line-height: calc(100% + 6px);
                }


                .icon
                {
                    right: var(--inner_gap_s);
                    bottom: var(--inner_gap_s);

                    width: 72px;
                }


                &.primary
                {
                    .icon
                    {
                        width: 100px;
                    }
                }
            }
        }
    }



    /*-----------------
        Our mission
    -----------------*/
    .our_mission
    {
        .text_block
        {
            &.size_l
            {
                padding-left: 52px;

                font-size: var(--font_size);

                background-size: 32px auto;
            }
        }
    }



    /*-------------
        History
    -------------*/
    .history
    {
        .cont
        {
            gap: var(--inner_gap);
        }


        .year_part1
        {
            width: 104px;
            margin-bottom: 58px;

            font-size: 82px;
        }


        .list
        {
            width: calc(100% - 104px - var(--inner_gap));
        }


        .item
        {
            .year_part2
            {
                font-size: 82px;
            }


            .desc
            {
                width: 100%;

                font-size: var(--font_size_xs);


                .icon
                {
                    width: 14px;
                }
            }


            &.now
            {
                .desc
                {
                    width: 100%;


                    br
                    {
                        display: none;
                    }
                }
            }
        }
    }



    /*-----------------
        Main doctor
    -----------------*/
    .main_doctor
    {
        .person
        {
            photo
            {
                img
                {
                    width: 296px;
                    margin-inline: calc(var(--cont_padding) * -1) 0;
                }
            }


            .info
            {
                width: calc(100% - 40px);
                padding: var(--inner_gap);


                .name
                {
                    font-size: 22px;
                }


                .post
                {
                    margin-top: var(--inner_gap_xxxs);

                    font-size: var(--font_size_s);
                }


                .icon
                {
                    display: none;
                }


                &:after
                {
                    width: 36px;
                    margin-left: var(--inner_gap_s);
                }
            }
        }
    }



    /*-------------------
        Photo gallery
    -------------------*/
    .photo_gallery
    {
        .swiper
        {
            .swiper-slide
            {
                width: 320px;
            }
        }
    }



    /*------------------
        About clinic
    ------------------*/
    .about_clinic
    {
        .advantages
        {
            .grid_row
            {
                --gap_x: var(--inner_gap_xxs);
                --gap_y: var(--inner_gap_xxs);
            }


            .item
            {
                gap: var(--inner_gap_xs);

                min-height: 240px;
                padding: var(--inner_gap_s);


                .name
                {
                    &.size_l
                    {
                        font-size: 24px;
                    }
                }


                .desc
                {
                    font-size: var(--font_size_xs);
                    line-height: calc(100% + 6px);
                }


                .icon
                {
                    right: var(--inner_gap_s);
                    bottom: var(--inner_gap_s);

                    width: 72px;
                }


                &.primary
                {
                    .icon
                    {
                        width: 100px;
                    }
                }
            }
        }


        .our_mission
        {
            --cont_padding: 0;


            .cont
            {
                gap: var(--block_padding);
            }


            .block_head
            {
                position: relative;
                top: 0;

                margin-bottom: var(--block_head_offset);
            }


            .text_block
            {
                width: 100%;
                margin-left: 0;
            }


            .link
            {
                width: 100%;
                height: 52px;
                margin-left: 0;
            }
        }
    }

	.btn-theme-dark,
	.btn.btn-theme-dark {
		height: 52px;
	}



    /*--------------
        Licenses
    --------------*/
    .licenses
    {
        .swiper
        {
            &:not(.swiper-initialized)
            {
                .swiper-wrapper
                {
                    gap: var(--spaceBetween-0);
                }


                .swiper-slide
                {
                    width: 315px;
                }
            }


            .swiper-slide
            {
                width: 315px;
            }
        }
    }



    /*--------------------
        Popular prices
    --------------------*/
    .popular_prices
    {
        --cont_padding: 5px;


        .data
        {
            padding-inline: 15px;


            .list
            {
                .item
                {
                    gap: var(--inner_gap_xs);

                    padding-block: var(--inner_gap_xs);
                    padding-inline: var(--inner_gap_xs);


                    .label
                    {
						width: calc(100% - 100px - var(--inner_gap_xs));
						font-size: var(--font_size_s);
						line-height: calc(100% + 6px);
						/* text-decoration: underline;
						text-decoration-thickness: 1px; */
                    }


                    .price
                    {
                        width: 100px;
                    }
                }
            }
        }
    }



    /*------------
        Footer
    ------------*/
    footer
    {
        .info,
        .contacts_wrap
        {
            width: 100%;
        }


        .contacts_wrap
        {
            margin-top: var(--block_padding_l);
        }


        .copyright
        {
            width: calc(100% + 30px);
            margin-inline: -15px;
            margin-top: var(--block_padding);
            padding-inline: var(--inner_gap_xs);

            font-size: var(--font_size_xs);
        }
    }



    /*-----------
        PopUp
    -----------*/
    .modal
    {
        .inner
        {
            padding: 4px;


            .close_btn
            {
                top: var(--inner_gap_s);
                right: var(--inner_gap_s);
            }


            .data
            {
                padding: var(--inner_gap_l);
            }

			.form {
				.submit_btn {
					width: 100%;
					height: 50px;
				}
			}
        }


        .form
        {
            .columns
            {
                & > *
                {
                    width: calc(100% - var(--form_columns_gap));
                }
            }
        }
    }

	.page_prices_cat {
		row-gap: 10px;
	}

	.page_prices_cat+.page_prices_cat {
		margin-top: 20px;
	}

	.page_prices_cat_title {
		font-size: 24px;
	}

	.page_prices_item .data {
		padding: 12px 16px;
	}

	.page_prices_item_head {
		font-size: 18px;
		padding: 12px 40px 12px 12px;
	}

	.page_prices_item_head::after {
		width: 40px;
	}
}
