/*-------------------
    File navigation (CTRL + F):

    - Global styles
    - Typography
    - App icon
    - App Button
    - Flex
    - Fancybox
    - Grid row
    - Mini modal
    - All llink
    - Fixed btns
    - ButtonUp
    - Chat
    - Support
    - Pagination
    - Tabs
    - Header
    - Mob. header
    - Mob. search
    - Mob. menu
    - Sidebar
    - Page head
    - Block head
    - Main slider
    - Quike actions
    - Researches
    - Opportunities
    - Steps
    - Dila app
    - Stats
    - Why we
    - Articles
    - Warning
    - For doctors head
    - Collaboration services
    - Education
    - Other articles
    - Blog
    - Research categories
    - Research prices
    - Research page
    - Footer
    - PopUp
    - PopUp - City
    - PopUp - Feedback
    - PopUp - Directional templates
    - PopUp - Urgent Labs
    - PopUp - Modal Basket
    - Other and Fixes

-------------------*/

/*-------------------
    Global styles
-------------------*/
:root
{
    --bg: #fff;
    --bg_grey: #f5f6f7;
    --cont_padding: 24px;
    --cont_padding_double: calc(var(--cont_padding) * 2);
    --cont_padding_half: calc(var(--cont_padding) * .5);
    --content_width: 1280px;
    --sidebar_width: 411px;
    --scroll_width: 17px;
    --custom_scroll_width: 10px;
    --custom_scroll_height: 10px;
    --primary_color: #0049b7;
    --primary_color_hover: #0043aa;
    --primary_color_active: #003c9d;
    --dark_color: #001740;
    --dark_color_60: #00174099;
    --light_color: #fff;
    --light_soft_color: rgba(255, 255, 255, .70);
    --grey_color: #b8bec2;
    --grey_strong_color: rgba(0, 23, 64, .60);
    --grey_light_color: #f5f6f7;
    --red_color: #dc0000;
    --black_color: #000;
    --blue_color: 0 73 183;
    --blue_strong_color: 0 60 157;
    --font_size_l: 20px;
    --font_size: 16px;
    --font_size_s: 14px;
    --font_size_xs: 12px;
    --font_size_title_l: 40px;
    --font_size_title: 32px;
    --font_size_title_s: 24px;
    --font_family: 'e-Ukraine', 'Arial', sans-serif;
    --block_head_offset: 40px;
    --block_head_offset_s: 24px;
    --outside_gap: 88px;
    --outside_gap_m: 56px;
    --outside_gap_s: 32px;
    --block_padding_l: 80px;
    --block_padding: 40px;
    --inner_gap_l: 32px;
    --inner_gap: 24px;
    --inner_gap_m: 16px;
    --inner_gap_s: 12px;
    --inner_gap_xs: 8px;
    --inner_gap_xxs: 4px;
    --border_radius_max: 100px;
    --border_radius_l: 40px;
    --border_radius_m: 32px;
    --border_radius: 20px;
    --border_radius_s: 16px;
    --border_radius_xs: 12px;
    --border_radius_xxs: 8px;
    --letter_spacing_l: -.32px;
    --letter_spacing_m: -.2px;
    --letter_spacing: -.14px;
    --letter_spacing_s: -.12px;
    --line_height_l: calc(100% + 8px);
    --line_height: calc(100% + 6px);
    --line_height_s: calc(100% + 4px);
    --zero_px: calc(0 * 1px);
    --box_shadow: -1px 0 0 0 rgba(0, 47, 117, .02), 0 0 4px 0 rgba(0, 47, 117, .07), 0 0 24px 0 rgba(0, 47, 117, .10);
}


::selection
{
    color: var(--light_color);
    background: var(--primary_color);
}

::-moz-selection
{
    color: var(--light_color);
    background: var(--primary_color);
}

.text-center
{
    text-align: center;
}

.text-left
{
    text-align: left;
}

.text-right
{
    text-align: right;
}

html
{
    height: 100%;
    min-height: -moz-available;
    min-height: -webkit-fill-available;
    min-height:         fill-available;


    &.custom_scroll ::-webkit-scrollbar
    {
        width: var(--custom_scroll_width);
        height: var(--custom_scroll_height);

        background-color: var(--bg);
    }


    &.custom_scroll ::-webkit-scrollbar-thumb
    {
        background-color: var(--primary_color);
    }
}


body
{
    height: 100%;
    min-height: -moz-available;
    min-height: -webkit-fill-available;
    min-height:         fill-available;

    font-family: var(--font_family);
    font-size: var(--font_size);
    font-weight: 400;
    line-height: normal;

    color: var(--dark_color);


    &.lock
    {
        overflow: clip;
    }
}


[hidden]
{
    display: none !important;
}


button
{
    display: inline-block;

    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;

    cursor: pointer;
    vertical-align: top;

    color: inherit;
    border: none;
    background: none;
}


.wrap
{
    position: relative;
    z-index: 9;

    display: flex;
    overflow: clip;
    flex-direction: column;

    min-height: 100%;

    background: var(--bg);


    & > .main
    {
        position: relative;

        display: flex;
        flex: 1 0 auto;
        flex-direction: column;
    }
}


.cont
{
    width: 100%;
    max-width: calc(var(--content_width) + var(--cont_padding_double));
    margin-inline: auto;
    padding-inline: var(--cont_padding);
}



.content_row
{
    &.row,
    & > .cont
    {
        display: flex;
        align-content: stretch;
        align-items: stretch;
        flex-wrap: wrap;
        justify-content: space-between;
    }


    .content
    {
        position: relative;

        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_l);

        width: calc(100% - var(--sidebar_width) - var(--inner_gap));


        &.page-content
        {
            width: calc(100% - 370px);
        }
    }


    .page-asside
    {
        --sidebar_width: 345px;


        &:not(:has(> *))
        {
            display: none;
        }
    }
}



.block
{
    margin-bottom: var(--outside_gap);


    &.small_m
    {
        margin-bottom: var(--outside_gap_s);
    }


    &.big_m
    {
        margin-bottom: calc(var(--outside_gap_m) * 2);
    }


    &.no_m
    {
        margin-bottom: 0;
    }


    &.bg
    {
        padding-block: var(--outside_gap_m);

        background: rgb(var(--blue_color) / .07);
    }
}


.modal_btn
{
    cursor: pointer;


    & > *
    {
        pointer-events: none;
    }
}



img.cover,
video.cover
{
    display: block;

    width: 100%;
    height: 100%;

    border-radius: inherit;

    object-fit: cover;
}



.overlay
{
    position: fixed;
    z-index: 100;
    inset: 0;

    display: none;

    background: rgb(var(--blue_color) / .08);

            backdrop-filter: blur(40px);
    -webkit-backdrop-filter: blur(40px);
}

.hidden
{
    display: none !important;
}

.btn-dila
{
    max-width: 100%;
    height: 40px;
    padding-inline: var(--inner_gap_m);

    font-size: var(--font_size_xs);
    font-weight: 500;
    line-height: var(--line_height_s);
    letter-spacing: var(--letter_spacing_s);

    transition: background .2s linear;

    color: var(--light_color);
    border-radius: var(--border_radius_max);
    background: var(--primary_color);


    &:hover
    {
        background: var(--primary_color_hover);
    }


    &:active
    {
        background: var(--primary_color_active);
    }
}

.btn-loadfile
{
    display: flex;
    align-items: center;
    justify-content: center;

    max-width: 285px;
    height: 52px;
    margin: 0 auto;

    font-size: var(--font_size_s);
    letter-spacing: var(--letter_spacing);

    text-decoration: none;

    .for-btn-text
    {
        margin-left: 8px;
    }
}



/*--------------
    Typography
--------------*/
.text_body
{
    font-size: var(--font_size);
    font-weight: 400;
    line-height: var(--line_height);
    letter-spacing: var(--letter_spacing);


    &_l
    {
        font-size: var(--font_size_l);
        font-weight: 400;
        line-height: var(--line_height_l);
        letter-spacing: var(--letter_spacing_l);
    }


    &_s
    {
        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: var(--line_height_s);
        letter-spacing: var(--letter_spacing_s);
    }


    &_xs
    {
        font-size: var(--font_size_xs);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);
    }
}


.text_title
{
    font-size: 20px;
    font-weight: 700;
    line-height: var(--line_height);
    letter-spacing: var(--letter_spacing);


    &_l
    {
        font-size: 24px;
        font-weight: 700;
        line-height: var(--line_height_l);
        letter-spacing: var(--letter_spacing_l);
    }


    &_s
    {
        font-size: 16px;
        font-weight: 700;
        line-height: var(--line_height_s);
        letter-spacing: var(--letter_spacing_s);
    }
}


.text_color
{
    &_dark
    {
        color: var(--dark_color);
    }


    &_primary
    {
        color: var(--primary_color);
    }


    &_grey
    {
        color: var(--grey_color);
    }


    &_grey_strong
    {
        color: var(--grey_strong_color);
    }
}


.text_center
{
    text-align: center;
}


.app_link
{
    text-decoration: none;

    color: var(--primary_color);


    &:hover
    {
        color: var(--primary_color_hover);
    }
}



.text_block
{
    font-size: var(--font_size_s);
    font-weight: 300;
    line-height: var(--line_height_l);
    letter-spacing: var(--letter_spacing);

    color: var(--grey_strong_color);


    &.dark_color
    {
        color: var(--dark_color);
    }


    & > *,
    .table_wrap table td > *,
    .text_with_icon_hor .icon + * > *,
    .message > *,
    .notice > *,
    .block_border > *,
    .grid_blocks > *:not(.text_with_icon_hor, .expert) > *,
    .experts .expert .desc > *
    {
        margin-bottom: var(--inner_gap);
    }


    & > :first-child,
    .table_wrap table td > :first-child,
    .text_with_icon_hor .icon + * > :first-child,
    .message > :first-child,
    .notice > :first-child,
    .block_border > :first-child,
    .grid_blocks > *:not(.text_with_icon_hor, .expert) > :first-child,
    .experts .expert .desc > :first-child
    {
        margin-top: 0 !important;
    }


    & > :last-child,
    .table_wrap table td > :last-child,
    .text_with_icon_hor .icon + * > :last-child,
    .message > :last-child,
    .notice > :last-child,
    .block_border > :last-child,
    .grid_blocks > *:not(.text_with_icon_hor, .expert) > :last-child,
    .experts .expert .desc > :last-child
    {
        margin-bottom: 0 !important;
    }


    .for_mobile
    {
        display: none;
    }


    h2
    {
        font-size: var(--font_size_title_s);
        font-weight: 700;
        line-height: var(--line_height_l);
        letter-spacing: -.24px;

        color: var(--dark_color);
    }


    h3
    {
        font-size: var(--font_size_l);
        font-weight: 500;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing_m);

        color: var(--dark_color);
    }


    * + h2,
    * + h3
    {
        margin-top: var(--block_padding);
    }


    h2 + *,
    h3 + *
    {
        margin-top: 0 !important;
    }


    .clearfix
    {
        clear: both;
        overflow: hidden;

        height: 0;
        margin-block: 0;
    }


    picture
    {
        display: block;

        width: 100%;
    }


    img
    {
        display: block;

        max-width: 100%;
        margin-inline: auto;

        border-radius: var(--border_radius);


        &.left
        {
            float: left;

            width: 200px;
            margin-right: var(--inner_gap);
            margin-left: 0;


            & + *
            {
                margin-top: 0 !important;
            }
        }


        &.right
        {
            float: right;

            width: 200px;
            margin-right: 0;
            margin-left: var(--inner_gap);


            & + *
            {
                margin-top: 0 !important;
            }
        }


        &.border
        {
            border: 2px solid var(--primary_color);
        }
    }


    .table_wrap
    {
        overflow-x: auto;
        overflow-y: hidden;

        width: 100%;


        table
        {
            width: 100%;
            margin-block: -2px;

            border-spacing: 0 2px;
            border-collapse: separate;


            &.border
            {
                tr + tr
                {
                    td
                    {
                        border-top: 1px solid rgb(var(--blue_color) / .07);
                    }
                }
            }


            tr.border
            {
                td
                {
                    border-top: 1px solid rgb(var(--blue_color) / .07);
                }
            }


            th
            {
                padding-block: var(--inner_gap_xs);
                padding-inline: var(--inner_gap_m);

                font-size: var(--font_size_xs);
                font-weight: 700;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_s);

                text-align: left;
                vertical-align: middle;

                color: var(--grey_strong_color);
                background: var(--bg_grey);


                &:first-child
                {
                    border-top-left-radius: var(--border_radius_xs);
                    border-bottom-left-radius: var(--border_radius_xs);
                }


                &:last-child
                {
                    border-top-right-radius: var(--border_radius_xs);
                    border-bottom-right-radius: var(--border_radius_xs);
                }


                &.aligncenter
                {
                    text-align: center;
                }


                &.alignend
                {
                    text-align: right;
                }
            }


            td
            {
                padding-block: var(--inner_gap_xs);
                padding-inline: var(--inner_gap_m);

                font-size: var(--font_size_xs);
                font-weight: 300;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_s);

                text-align: left;
                vertical-align: middle;

                color: var(--grey_strong_color);


                &.bg
                {
                    background: rgb(var(--blue_color) / .07);
                }


                &.title
                {
                    font-size: var(--font_size_xs);
                    font-weight: 700;
                    line-height: var(--line_height_s);
                    letter-spacing: var(--letter_spacing_s);

                    text-align: center;

                    color: var(--primary_color);
                    border-radius: var(--border_radius_xs);
                    background: rgb(var(--blue_color) / .15);


                    &.red
                    {
                        color: var(--red_color);
                        background: none;
                        background: rgb(var(--blue_color) / .07);
                    }
                }


                &.aligncenter
                {
                    text-align: center;
                }


                &.alignend
                {
                    text-align: right;
                }
            }


            .buy_btn
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 40px;
                margin-inline: auto;

                color: var(--light_color);
                border-radius: 50%;
                background: var(--primary_color);

                aspect-ratio: 1 / 1;


                svg
                {
                    display: block;

                    width: 24px;

                    aspect-ratio: 1 / 1;
                }


                svg + svg
                {
                    display: none;
                }


                &:hover
                {
                    background: var(--primary_color_hover);
                }


                &.active
                {
                    color: var(--primary_color);
                    background: rgb(var(--blue_color) / .07);


                    svg
                    {
                        display: none;
                    }


                    svg + svg
                    {
                        display: block;
                    }
                }
            }
        }
    }


    .researches_table_wrap
    {
        padding: var(--inner_gap_m);

        border-radius: var(--border_radius);
        background: rgb(var(--blue_color) / .07);
    }


    table.researches_table
    {
        width: 100%;
        margin-block: calc(var(--inner_gap_s) * -1);

        border-spacing: 0 var(--inner_gap_s);
        border-collapse: separate;


        .aligncenter
        {
            text-align: center;
        }


        .alignend
        {
            text-align: right;
        }


        th
        {
            padding-block: 0 var(--inner_gap_xxs);
            padding-inline: var(--inner_gap_m);

            font-weight: 700;
            line-height: var(--line_height);
            letter-spacing: -.16px;

            text-align: left;
            vertical-align: middle;

            color: var(--dark_color);
        }


        td
        {
            padding: var(--inner_gap_m);

            text-align: left;
            vertical-align: middle;

            background: var(--light_color);


            &:first-child
            {
                border-top-left-radius: var(--border_radius);
                border-bottom-left-radius: var(--border_radius);
            }


            &:last-child
            {
                border-top-right-radius: var(--border_radius);
                border-bottom-right-radius: var(--border_radius);
            }


            .title &
            {
                text-align: center;

                background: rgb(var(--blue_color) / .07);
            }


            &.name
            {
                font-size: var(--font_size_s);
                font-weight: 300;
                line-height: var(--line_height);
                letter-spacing: var(--letter_spacing);
            }


            &.term
            {
                width: 132px;
                min-width: 132px;

                font-size: var(--font_size_s);
                font-weight: 300;
                line-height: var(--line_height);
                letter-spacing: var(--letter_spacing);

                table-layout: fixed;

                color: var(--grey_strong_color);


                span
                {
                    font-size: var(--font_size_xs);
                    line-height: var(--line_height_s);
                    letter-spacing: var(--letter_spacing_s);
                }
            }


            &.price
            {
                width: 112px;
                min-width: 112px;

                font-weight: 700;

                table-layout: fixed;

                color: var(--primary_color);
            }


            &.action
            {
                min-width: 72px;

                table-layout: auto;
            }


            .buy_btn
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 40px;
                margin-inline: auto;

                color: var(--light_color);
                border-radius: 50%;
                background: var(--primary_color);

                aspect-ratio: 1 / 1;


                svg
                {
                    display: block;

                    width: 24px;

                    aspect-ratio: 1 / 1;
                }


                svg + svg
                {
                    display: none;
                }


                &:hover
                {
                    background: var(--primary_color_hover);
                }


                &.active
                {
                    color: var(--primary_color);
                    background: rgb(var(--blue_color) / .07);


                    svg
                    {
                        display: none;
                    }


                    svg + svg
                    {
                        display: block;
                    }
                }
            }
        }
    }


    ul
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xs);


        ul,
        ol
        {
            margin-top: var(--inner_gap_s);
        }


        & > li
        {
            position: relative;

            display: block;
            overflow: hidden;

            padding-left: var(--inner_gap);

            list-style-type: none;


            &:before
            {
                position: absolute;
                top: .5lh;
                left: var(--inner_gap_xs);

                display: block;

                width: 5px;

                content: '';
                transform: translateY(-50%);

                border-radius: 50%;
                background: var(--primary_color);

                aspect-ratio: 1 / 1;
            }


            &.no_style
            {
                padding-left: 0;


                &:before
                {
                    display: none;
                }
            }
        }
    }


    ol
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xs);

        counter-reset: li;


        ul,
        ol
        {
            margin-top: var(--inner_gap_s);
        }


        & > li
        {
            position: relative;

            display: block;
            overflow: hidden;

            padding-left: var(--inner_gap);

            list-style-type: none;


            &:before
            {
                position: absolute;
                top: 0;
                left: 0;

                font-weight: 500;

                content: counter(li) '.';
                counter-increment: li;

                color: var(--dark_color);
            }
        }
    }


    a
    {
        font-weight: 500;

        text-decoration: none;

        color: var(--primary_color);


        &.btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            padding-block: var(--inner_gap_s);
            padding-inline: var(--inner_gap);

            transition: background .2s linear;

            color: var(--light_color);
            border-radius: var(--border_radius_max);
            background: var(--primary_color);


            &.full_w
            {
                width: 100%;
            }


            &:hover
            {
                background: var(--primary_color_hover);
            }


            &:active
            {
                background: var(--primary_color_active);
            }
        }


        &.download_pdf
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: flex-start;

            min-height: 24px;
            padding-left: 32px;

            background: url(../images/ic_pdf.svg) 0 50%/19px 24px no-repeat;
        }
    }


    b,
    strong
    {
        font-weight: 500;

        color: var(--dark_color);
    }


    hr
    {
        display: block;

        width: 100%;
        height: 1px;

        border: none;
        background: var(--grey_color);


        &.primary_color
        {
            background: var(--primary_color);
        }
    }


    iframe
    {
        display: block;

        width: 100%;

        aspect-ratio: 1 / .5625;
    }


    .images
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
        gap: var(--inner_gap_s);

        margin-block: var(--block_padding);


        .image
        {
            display: block;

            max-width: 100%;

            border-radius: 0;

            aspect-ratio: auto;


            img
            {
                width: 100%;
                margin: 0;

                border-radius: 0;
            }
        }
    }


    .quote
    {
        position: relative;

        display: flex;
        flex-direction: column;

        margin-block: var(--block_padding);
        padding-block: 0 var(--inner_gap_m);
        padding-left: 72px;

        font-size: var(--font_size_l);
        font-weight: 500;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing_m);

        color: var(--dark_color);
        border-bottom: 2px solid var(--primary_color);
        background: url(../images/ic_quote.png) 0 0/35px 32px no-repeat;


        p + p
        {
            margin-top: var(--inner_gap);
        }
    }


    .text_with_icon_hor
    {
        display: flex;
        align-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: var(--inner_gap_m);

        text-decoration: none;

        color: var(--dark_color);


        &.default_color
        {
            color: currentColor;
        }


        &.offset_top
        {
            margin-top: 60px;
        }


        &.bg
        {
            padding: var(--inner_gap_xs);

            background: rgb(var(--blue_color) / .07);
        }


        .icon
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;
            gap: var(--inner_gap_xxs);

            width: 50px;

            aspect-ratio: 1 / 1;


            &.small
            {
                width: 24px;


                & + *
                {
                    width: calc(100% - 24px - var(--inner_gap_m));
                }
            }


            &.middle
            {
                width: 64px;


                & + *
                {
                    width: calc(100% - 64px - var(--inner_gap_m));
                }
            }


            &.big
            {
                width: 100px;


                & + *
                {
                    width: calc(100% - 100px - var(--inner_gap_m));
                }
            }


            img,
            svg
            {
                display: block;

                max-width: 100%;
                max-height: 100%;
            }


            & + *
            {
                align-self: center;

                width: calc(100% - 50px - var(--inner_gap_m));
            }
        }
    }


    .text_with_icon_ver
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_m);


        .icon
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 70px;

            aspect-ratio: 1 / 1;


            .aligncenter &
            {
                margin-inline: auto;
            }


            img
            {
                display: block;

                max-width: 100%;
                max-height: 100%;
            }
        }
    }


    .grid_row
    {
        --gap_x: var(--block_padding);
        --gap_y: var(--block_padding);


        &.columns_two
        {
            --items_per_line: 2;
        }


        &.columns_three
        {
            --items_per_line: 3;
        }


        &.columns_four
        {
            --items_per_line: 4;
        }
    }


    .message
    {
        margin-block: var(--block_padding);
        padding-block: var(--inner_gap_s);
        padding-inline: var(--inner_gap_m);


        &.primary
        {
            background: rgb(var(--blue_color) / .07);
        }


        &.warning
        {
            background: rgba(179, 9, 49, .06);
        }


        &.border
        {
            padding: 20px;

            border-left: 5px solid var(--primary_color);
            background: rgb(var(--blue_color) / .07);


            &.yellow
            {
                border-color: #f0a500;
            }


            &.primary
            {
                border-color: var(--primary_color);
            }
        }
    }


    .notice
    {
        min-height: 24px;
        padding-left: 36px;

        background: url(/upload/article/ic_notice.svg) 0 0 no-repeat;


        &.border
        {
            padding-block: var(--inner_gap_m);
            padding-inline: 56px 20px;

            border: 1px solid var(--primary_color);
            background-position: 20px var(--inner_gap_m);
        }
    }


    .grid_blocks
    {
        display: grid;
        gap: var(--inner_gap_s);

        margin-block: var(--inner_gap_l);

        counter-reset: number;

        grid-template-columns: repeat(2, 1fr);


        &.columns_three
        {
            grid-template-columns: repeat(3, 1fr);
        }


        &.columns_four
        {
            grid-template-columns: repeat(4, 1fr);
        }


        &.columns_five
        {
            grid-template-columns: repeat(5, 1fr);
        }


        &.primary_bg
        {
            padding: var(--inner_gap);

            border-radius: var(--border_radius_xs);
            background: rgb(var(--blue_color) / .07);
        }


        & > *
        {
            position: relative;

            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_xxs);

            padding-block: var(--inner_gap_m);
            padding-inline: 20px;

            border: 1px solid var(--primary_color);
            border-radius: var(--border_radius_xs);


            &.text_with_icon_hor,
            &.expert
            {
                flex-direction: row;
            }


            &.no_border
            {
                padding: 0;

                border: none;
                border-radius: 0;
            }


            &.l_w
            {
                grid-column: span 2;
            }


            &.bg
            {
                background: rgb(var(--blue_color) / .07);
            }


            &.bg2
            {
                background: rgb(var(--blue_color) / .15);
            }
        }


        .number
        {
            position: absolute;
            top: var(--inner_gap_m);
            right: var(--inner_gap_m);

            display: block;
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 40px;
            height: 40px;

            font-size: var(--font_size_title_s);
            font-weight: 700;
            line-height: 1;

            color: var(--primary_color);
            border-radius: 50%;
            background: rgb(var(--blue_color) / .07);


            &:before
            {
                content: counter(number);
                counter-increment: number;
            }


            & + *
            {
                margin-top: 0 !important;
                padding-right: 60px;
            }
        }
    }


    .primary_color
    {
        color: var(--primary_color);
    }


    .red_color
    {
        color: var(--red_color);
    }


    .aligncenter
    {
        text-align: center;
    }


    .alignend
    {
        text-align: right;
    }


    .block_border
    {
        margin-block: var(--inner_gap_l);
        padding: 20px;

        border: 1px solid var(--primary_color);
        border-radius: var(--border_radius_xs);


        &.bg
        {
            background: rgb(var(--blue_color) / .07);
        }
    }


    .action_block
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: nowrap;
        justify-content: space-between;
        gap: var(--inner_gap);

        width: 100%;
        margin-block: var(--inner_gap_l);
        padding: var(--inner_gap_m);

        background: rgb(var(--blue_color) / .07);


        .info
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_xxs);
        }


        .btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 200px;
            min-width: 200px;
            max-width: 100%;
            min-height: 48px;

            text-align: center;
        }
    }


    .research_data
    {
        display: flex;
        align-content: stretch;
        align-items: stretch;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: var(--inner_gap);

        margin-block: var(--inner_gap_l);


        .text_data
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_m);

            width: calc(100% - 360px - var(--inner_gap));
        }


        .data
        {
            width: 360px;
            max-width: 100%;


            img
            {
                margin-block: 0;
            }


            .info
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;
                gap: var(--inner_gap_xs);

                margin-top: var(--inner_gap);

                text-align: center;


                .price
                {
                    font-size: var(--font_size_l);
                    font-weight: 500;
                    line-height: var(--line_height_l);
                    letter-spacing: var(--letter_spacing);

                    color: var(--primary_color);
                }


                .term
                {
                    margin-top: 4px;
                }
            }


            .btn
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: fit-content;
                margin-block: 20px 0;
                margin-inline: auto;

                text-align: center;
            }
        }
    }


    .experts
    {
        .expert
        {
            display: flex;
            align-content: flex-start;
            align-items: flex-start;
            flex-wrap: wrap;
            justify-content: space-between;
            gap: var(--inner_gap);


            .photo
            {
                width: 110px;
                max-width: 100%;

                border-radius: 50%;
                background: var(--bg_grey);

                aspect-ratio: 1 / 1;


                & + *
                {
                    display: flex;
                    align-self: center;
                    flex-direction: column;
                    gap: var(--inner_gap_xs);

                    width: calc(100% - 110px - var(--inner_gap));
                }
            }


            .name
            {
                font-size: var(--font_size_l);
                font-weight: 500;
                line-height: var(--line_height_l);
                letter-spacing: var(--letter_spacing_m);

                color: var(--dark_color);
            }


            .post
            {
                font-size: var(--font_size_xs);
                font-weight: 300;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_s);

                color: var(--grey_strong_color);
            }


            .desc
            {
                width: 100%;
            }
        }
    }


    ul.programms-block
    {
        display: flex;
        align-content: flex-start;
        align-items: flex-start;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 0;

        margin-left: calc(var(--inner_gap_xs) * -1px);


        .programms-item
        {
            overflow: visible;

            width: calc(33.333% - var(--inner_gap_xs));
            margin-bottom: var(--inner_gap_xs);
            margin-left: var(--inner_gap_xs);
            padding: 0;

            scroll-margin-top: var(--inner_gap_xs);


            &:before,
            &:after
            {
                display: none;
            }


            &:nth-child(3n+2)
            {
                .programms-item-b
                {
                    margin-left: calc((100% + var(--inner_gap_xs)) * -1);
                }
            }


            &:nth-child(3n+3)
            {
                .programms-item-b
                {
                    margin-left: calc((100% + var(--inner_gap_xs)) * -2);
                }
            }


            &:hover
            {
                .programms-item-h
                {
                    background: rgb(var(--blue_color) / .1);
                }
            }


            &.active
            {
                .programms-item-h
                {
                    background: rgb(var(--blue_color) / .15);


                    & > span > div
                    {
                        display: none;


                        &.active
                        {
                            display: flex;
                        }
                    }
                }
            }
        }


        .programms-item-h
        {
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            gap: var(--inner_gap_m);

            min-height: 60px;
            padding: var(--inner_gap_s);

            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            transition: background .2s linear;
            text-decoration: none;

            color: var(--primary_color);
            border-radius: var(--border_radius);
            background: rgb(var(--blue_color) / .07);


            & > span > div
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 32px;

                color: var(--primary_color);

                aspect-ratio: 1 / 1;


                &.active
                {
                    display: none;
                }


                svg
                {
                    display: block;

                    width: 100%;

                    aspect-ratio: 1 / 1;
                }
            }
        }


        .programms-item-b
        {
            display: none;
            align-content: flex-start;
            align-items: flex-start;
            flex-wrap: wrap;
            justify-content: space-between;
            gap: var(--inner_gap);

            width: calc(300% + var(--inner_gap_xxs) * 3);
            height: auto;
            margin-top: var(--inner_gap_s);
            margin-bottom: var(--inner_gap_s);
            padding-block: 10px;

            border-top: 2px solid var(--primary_color);


            .active &
            {
                display: flex;
            }


            .programms-item-b-col
            {
                display: flex;
                flex-direction: column;
                gap: var(--inner_gap_xs);

                width: calc(50% - var(--inner_gap));
            }
        }
    }
}



/*--------------
    App icon
--------------*/
.app_icon
{
    display: inline-flex;

    aspect-ratio: 1 / 1;


    &.icon_w18
    {
        width: 18px;
    }


    &.icon_w20
    {
        width: 20px;
    }


    &.icon_w24
    {
        width: 24px;
    }
}



/*--------------
    App Button
--------------*/
.app_btn
{
    display: flex;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--inner_gap_xxs);

    min-height: 40px;
    padding-inline: var(--inner_gap_m);

    font-size: var(--font_size_xs);
    font-weight: 500;
    line-height: var(--line_height_s);
    letter-spacing: var(--letter_spacing_s);

    transition: .2s linear;
    text-decoration: none;

    color: var(--primary_color);
    border-radius: var(--border_radius_max);


    &_l
    {
        min-height: 50px;
    }


    &:hover
    {
        background: rgb(var(--blue_strong_color) / .12);
    }
}



/*--------------
    Flex
--------------*/
.flex
{
    display: flex;
}


.items_center
{
    align-items: center;
}


.items-end
{
    align-items: end;
}


.justify_between
{
    justify-content: space-between;
}



/*--------------
    Fancybox
--------------*/
.fancybox__container
{
    --fancybox-backdrop-bg: rgb(var(--blue_color) / .08);
    --f-close-button-width: 40px;
    --f-close-button-height: 40px;
    --f-close-border-radius: 0;
    --f-close-button-color: rgba(0, 23,64, .6);
    --f-close-button-hover-color: var(--dark_color);
    --f-close-button-svg-width: 24px;
    --f-close-button-svg-height: 24px;
    --f-close-button-svg-stroke-width: 1.5;
    --f-close-button-bg: transparent;
    --f-close-button-hover-bg: transparent;
    --f-close-button-active-bg: transparent;
            backdrop-filter: blur(40px);
    -webkit-backdrop-filter: blur(40px);
}


.fancybox__slide,
.fancybox__slide.has-html,
.fancybox__slide.has-close-btn
{
    padding: var(--inner_gap_m);
}


.f-button.is-close-button
{
    top: var(--inner_gap_xs);
    right: var(--inner_gap_m);

    transition: .2s linear;
}



/*--------------
    Grid row
--------------*/
.grid_row
{
    display: flex;
    align-content: stretch;
    align-items: stretch;
    flex-wrap: wrap;
    justify-content: flex-start;

    margin-bottom: calc(var(--gap_y) * -1);
    margin-left: calc(var(--gap_x) * -1);

    --items_per_line: 3;
    --gap_x: var(--inner_gap);
    --gap_y: var(--inner_gap);


    &.centered
    {
        justify-content: center;
    }


    & > *
    {
        width: calc(100% / var(--items_per_line) * var(--width_multiplier, 1) - var(--gap_x));
        margin-bottom: var(--gap_y);
        margin-left: var(--gap_x);
    }
}



/*----------------
    Mini modal
----------------*/
.modal_cont
{
    position: relative;
}


.mini_modal
{
    position: absolute;
    z-index: 100;
    top: 100%;
    left: 0;

    visibility: hidden;

    transition: .2s linear;
    pointer-events: none;

    opacity: 0;


    &.active
    {
        visibility: visible;

        pointer-events: auto;

        opacity: 1;
    }
}



/*---------------
    All llink
---------------*/
.all_link
{
    margin-top: var(--outside_gap_s);


    a
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
        gap: var(--inner_gap_xxs);

        width: 356px;
        max-width: 100%;
        height: 52px;
        margin-inline: auto;
        padding-inline: var(--inner_gap_m);

        font-size: var(--font_size_s);
        font-weight: 500;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        transition: background .2s linear;
        text-decoration: none;

        color: var(--primary_color);
        border-radius: var(--border_radius_max);
        background: rgb(var(--blue_color) / .07);


        .icon
        {
            display: block;

            width: 24px;

            aspect-ratio: 1 / 1;
        }


        &:hover
        {
            background: rgb(var(--blue_color) / .1);
        }


        &:active
        {
            background: rgb(var(--blue_color) / .15);
        }
    }
}



/*---------------
    Fixed btns
---------------*/
.fixed_btns
{
    position: fixed;
    z-index: 90;
    right: var(--cont_padding);
    bottom: var(--cont_padding);

    display: flex;
    flex-direction: column;
    gap: var(--inner_gap_s);
}



/*--------------
    ButtonUp
--------------*/
.buttonUp
{
    display: none;


    .btn
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;

        width: 52px;

        transition: .2s linear;

        border-radius: 50%;
        background: var(--bg);
        box-shadow: var(--box_shadow);

        aspect-ratio: 1 / 1;


        .icon
        {
            display: block;

            width: 24px;

            transform: rotate(90deg);

            aspect-ratio: 1 / 1;
        }


        &:hover
        {
            background: rgba(184, 190, 194, .20);
        }


        &:active
        {
            background: rgba(184, 190, 194, .30);
            box-shadow: none;
        }
    }
}



/*----------
    Chat
----------*/
.chat
{
    .btn
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;

        width: 52px;

        transition: background .2s linear;

        color: var(--light_color);
        border-radius: 50%;
        background: var(--primary_color);
        box-shadow: var(--box_shadow);

        aspect-ratio: 1 / 1;


        .icon
        {
            display: block;

            width: 24px;

            aspect-ratio: 1 / 1;
        }


        &:hover
        {
            background: var(--primary_color_hover);
        }


        &:active
        {
            background: var(--primary_color_active);
        }


        &.active
        {
            background: #0080ff;
        }
    }
}



/*-------------
    Support
-------------*/
.support
{
    .btn
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;

        width: 52px;

        transition: background .2s linear;

        color: var(--light_color);
        border-radius: 50%;
        background: var(--primary_color);
        box-shadow: var(--box_shadow);

        aspect-ratio: 1 / 1;


        .icon
        {
            display: block;

            width: 24px;

            aspect-ratio: 1 / 1;
        }


        &:hover
        {
            background: var(--primary_color_hover);
        }


        &:active
        {
            background: var(--primary_color_active);
        }


        &.active
        {
            background: #0080ff;
        }
    }
}



/*----------------
    Pagination
----------------*/
.pagination
{
    display: flex;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--inner_gap_xs);

    margin-top: var(--inner_gap_l);


    li
    {
        list-style: none;


        &.active a
        {
            color: var(--light_color);
            background: var(--primary_color);
        }
    }


    li.prev,
    li.next
    {
        display: none;
    }


    a
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;

        width: 40px;

        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: 1;
        letter-spacing: var(--letter_spacing);

        transition: .2s linear;
        text-align: center;
        text-decoration: none;

        color: currentColor;
        border-radius: 50%;

        aspect-ratio: 1 / 1;


        .icon
        {
            display: block;

            width: 24px;

            aspect-ratio: 1 / 1;
        }


        &.next
        {
            .icon
            {
                transform: scale(-1, 1);
            }
        }


        &:hover
        {
            background: rgb(var(--blue_strong_color) / .1);
        }


        &:active
        {
            background: rgb(var(--blue_strong_color) / .15);
        }


        &.active
        {
            color: var(--light_color);
            background: var(--primary_color);
        }


        &.disabled
        {
            pointer-events: none;

            color: var(--grey_color);
        }
    }
}



/*----------
    Tabs
----------*/
.tabs
{
    display: flex;
    align-content: stretch;
    align-items: stretch;
    flex-wrap: nowrap;
    justify-content: flex-start;
    gap: var(--inner_gap_xs);

    margin-bottom: var(--inner_gap_l);

    border-bottom: 1px solid rgb(var(--blue_color) / .07);


    .btn
    {
        position: relative;

        width: 100%;
        height: 56px;
        padding-block: var(--inner_gap_xs);

        font-weight: 300;
        line-height: var(--line_height_l);
        letter-spacing: var(--letter_spacing_l);

        transition: .2s linear;


        &:after
        {
            position: absolute;
            right: 0;
            bottom: -1px;
            left: 0;

            width: 0;
            height: 4px;
            margin-inline: auto;

            content: '';
            transition: width .3s linear;

            background: var(--primary_color);
        }


        &:hover
        {
            color: var(--primary_color);
        }


        &.active
        {
            font-weight: 500;

            color: var(--primary_color);


            &:after
            {
                width: 100%;
            }
        }
    }
}


.tab_content
{
    position: relative;

    visibility: hidden;
    overflow: hidden;

    height: 0;

    pointer-events: none;

    opacity: 0;


    &.active
    {
        visibility: visible;
        overflow: visible;

        height: auto;

        transition: opacity .5s linear;
        pointer-events: auto;

        opacity: 1;
    }
}
.rs-preloader
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: none;

    width: 100%;

    background-color: var(--light_soft_color);

    img,
    svg
    {
        position: absolute;
        top: 200px;
        left: calc(50% - 30px);

        width: 60px;
    }

    .custom-spinner
    {
        display: inline-block;

        animation: fa-spin 2s infinite linear;
    }
    .fa-secondary
    {
        opacity: .4;

        fill: currentColor;
    }
    .fa-primary
    {
        fill: var(--primary_color);
    }
}
.btn-icon-spinner
{
    width: 18px;
    margin-bottom: -3px;
    margin-left: 5px;

    .custom-spinner
    {
        display: inline-block;

        animation: fa-spin 2s infinite linear;
    }
    .fa-secondary
    {
        opacity: .4;

        fill: currentColor;
    }
    .fa-primary
    {
        fill: var(--primary_color);
    }
}
@keyframes fa-spin
{
    0%
    {
        transform: rotate(0deg);
    }
    100%
    {
        transform: rotate(360deg);
    }
}



/*---------------
    Accordion
---------------*/
.accordion_link
{
    display: flex;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;

    min-height: 72px;
    padding: var(--inner_gap_m);

    font-size: var(--font_size);
    font-weight: 700;
    line-height: var(--line_height);
    letter-spacing: -.16px;

    text-decoration: none;

    color: var(--dark_color);
    border-bottom: 1px solid rgb(var(--blue_color) / .07);
    background: var(--bg);


    span
    {
        width: calc(100% - 40px - var(--inner_gap_xs));
    }


    .arr
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;

        width: 40px;

        aspect-ratio: 1 / 1;


        svg
        {
            display: block;

            width: 24px;

            transition: transform .2s linear;

            aspect-ratio: 1 / 1;
        }
    }
}


.accordion_item
{
    display: block;

    color: var(--dark_color);
    border-bottom: 1px solid rgb(var(--blue_color) / .07);
    background: var(--bg);


    &.primary
    {
        border: 1px solid var(--primary_color);
        border-radius: var(--border_radius);
        background: rgb(var(--blue_color) / .07);
    }


    .accordion_top
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: space-between;

        min-height: 72px;
        padding: var(--inner_gap_m);

        cursor: pointer;


        .primary &
        {
            color: var(--primary_color);
        }


        .accordion_title
        {
            width: calc(100% - 40px - var(--inner_gap_xs));

            font-size: var(--font_size);
            font-weight: 700;
            line-height: var(--line_height);
            letter-spacing: -.16px;


            &.thin
            {
                font-weight: 300;
            }
        }


        .arr
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 40px;

            aspect-ratio: 1 / 1;


            svg
            {
                display: block;

                width: 24px;

                transition: transform .2s linear;

                aspect-ratio: 1 / 1;
            }
        }
    }


    .accordion_data
    {
        display: none;

        padding-block: 0 var(--inner_gap);
        padding-inline: var(--inner_gap_m);


        .text_block
        {
            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            color: var(--grey_strong_color);


            & > *
            {
                margin-bottom: 20px;
            }


            b,
            strong
            {
                font-weight: 500;

                color: var(--dark_color);


                &.primary_color
                {
                    color: var(--primary_color);
                }
            }
        }
    }


    &.active
    {
        .accordion_top
        {
            .arr
            {
                svg
                {
                    transform: rotate(180deg);
                }
            }
        }
    }
}




/*----------------
    Datepicker
----------------*/
.air-datepicker
{
    --adp-cell-background-color-selected: var(--primary_color);
    --adp-day-name-color: var(--primary_color);
    --adp-day-name-color-hover: var(--primary_color);
    --adp-cell-background-color-selected-hover: var(--primary_color);
    --adp-accent-color: var(--primary_color);
}



/*----------
    More
----------*/
.more
{
    margin-top: var(--inner_gap_l);


    .btn
    {
        display: block;

        height: 52px;
        margin-inline: auto;
        padding-inline: var(--inner_gap_l);

        font-size: var(--font_size_s);
        font-weight: 500;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        transition: .2s linear;

        color: var(--primary_color);
        border-radius: var(--border_radius_max);
        background: rgb(var(--blue_color) / .07);


        @media (hover: hover) and (pointer: fine)
        {
            &:hover
            {
                background: rgb(var(--blue_color) / .1);
            }
        }


        &:active
        {
            background: rgb(var(--blue_color) / .15);
        }
    }
}



/*------------
    Header
------------*/
header
{
    position: relative;
    z-index: 101;

    width: 100%;
    margin-bottom: var(--outside_gap_s);

    background: var(--bg);
    box-shadow: var(--box_shadow);


    .top
    {
        padding-block: 10px;

        color: var(--light_color);
        background: var(--dark_color);


        .cont
        {
            gap: var(--block_padding);
        }
    }


    .data
    {
        padding-block: var(--inner_gap_m);
    }


    .bottom
    {
        border-top: 1px solid rgb(var(--blue_color) / .07);
    }



    .cont
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: space-between;
    }


    .city
    {
        margin-right: auto;


        .btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: flex-start;
            gap: var(--inner_gap_xxs);

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: 143%;
            letter-spacing: var(--letter_spacing);

            color: var(--light_soft_color);

            font-feature-settings: 'liga' off, 'clig' off;


            .icon
            {
                display: block;

                width: 24px;
                margin-right: var(--inner_gap_xxs);

                color: var(--light_color);

                aspect-ratio: 1 / 1;
            }


            b
            {
                color: var(--light_color);
            }


            .arr
            {
                display: block;

                width: 24px;
                margin-left: var(--inner_gap_xxs);

                color: var(--light_color);

                aspect-ratio: 1 / 1;
            }
        }
    }


    .faq_link
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 6px;

        width: fit-content;

        font-size: var(--font_size_s);
        font-weight: 500;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        text-decoration: none;

        color: var(--light_color);


        .icon
        {
            display: block;

            width: 24px;

            aspect-ratio: 1 / 1;
        }
    }


    .langs
    {
        margin-right: var(--inner_gap_m);


        .mini_modal_btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: flex-start;
            gap: var(--inner_gap_xxs);

            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            color: var(--light_color);


            .arr
            {
                display: block;

                width: 24px;
                margin-left: var(--inner_gap_xxs);

                transition: transform .2s linear;

                aspect-ratio: 1 / 1;
            }


            &.active
            {
                .arr
                {
                    transform: rotate(180deg);
                }
            }
        }


        .mini_modal
        {
            right: 0;
            left: auto;

            margin-top: var(--inner_gap_xxs);
            padding-block: var(--inner_gap_xxs);

            border-radius: var(--border_radius_xs);
            background: var(--bg);
            box-shadow: var(--box_shadow);


            .btn
            {
                display: block;

                padding-block: var(--inner_gap_xxs);
                padding-inline: var(--inner_gap_m);

                font-size: var(--font_size_s);
                font-weight: 300;
                line-height: var(--line_height);
                letter-spacing: var(--letter_spacing);

                transition: color .2s linear;
                text-decoration: none;
                text-transform: uppercase;

                color: var(--grey_strong_color);


                &:hover
                {
                    color: var(--primary_color);
                }
            }
        }
    }


    .logo
    {
        display: block;

        text-decoration: none;

        color: currentColor;


        img
        {
            display: block;

            width: 124px;
            height: 52px;
        }
    }


    .search
    {
        position: relative;

        width: 600px;
        max-width: calc(100% - 680px);


        ::-webkit-input-placeholder
        {
            color: rgba(0, 23, 64, .35);
        }

        :-moz-placeholder
        {
            color: rgba(0, 23, 64, .35);
        }

        ::-moz-placeholder
        {
            opacity: 1;
            color: rgba(0, 23, 64, .35);
        }

        :-ms-input-placeholder
        {
            color: rgba(0, 23, 64, .35);
        }


        & > .icon
        {
            position: absolute;
            z-index: 3;
            top: 0;
            bottom: 0;
            left: var(--inner_gap_s);

            display: block;

            width: 24px;
            margin-block: auto;

            pointer-events: none;

            color: var(--grey_strong_color);

            aspect-ratio: 1 / 1;
        }


        .input
        {
            display: block;

            width: 100%;
            height: 52px;
            padding-inline: 40px var(--inner_gap_xs);

            font-family: var(--font_family);
            font-size: var(--font_size_s);
            font-weight: 300;
            letter-spacing: var(--letter_spacing);

            transition: border-color .2s linear;

            color: var(--dark_color);
            border: 1px solid transparent;
            border-radius: var(--border_radius_max);
            background: rgb(var(--blue_color) / .07);


            &:-webkit-autofill
            {
                -webkit-box-shadow: inset 0 0 0 50px rgb(var(--blue_color) / .07) !important;
            }


            &:hover
            {
                border-color: rgb(var(--blue_color) / .15);
            }


            &:focus
            {
                border-color: transparent;
            }


            &.show_tips ~ .tips
            {
                display: block;
            }


            &.active ~ .result
            {
                display: block;
            }
        }


        .tips
        {
            position: absolute;
            z-index: 10;
            top: 100%;
            left: 0;

            display: none;

            width: 100%;
            padding: var(--inner_gap_l);

            border-radius: var(--border_radius_m);
            background: var(--light_color);
            box-shadow: -1px 0 0 0 rgba(0, 47, 117, .02), 0 0 4px 0 rgba(0, 47, 117, .07), 0 0 24px 0 rgba(0, 47, 117, .10);


            .loader
            {
                display: none;


                &.show
                {
                    display: block;
                }


                img
                {
                    display: block;

                    width: 32px;
                    margin-inline: auto;

                    aspect-ratio: 1 / 1;
                }
            }


            .title
            {
                font-size: var(--font_size_s);
                font-weight: 500;
                line-height: var(--line_height);
                letter-spacing: var(--letter_spacing);
            }
        }


        .result
        {
            position: absolute;
            z-index: 10;
            top: 100%;
            left: 0;

            display: none;

            width: 100%;
            padding: var(--inner_gap_l);

            border-radius: var(--border_radius_m);
            background: var(--light_color);
            box-shadow: -1px 0 0 0 rgba(0, 47, 117, .02), 0 0 4px 0 rgba(0, 47, 117, .07), 0 0 24px 0 rgba(0, 47, 117, .10);


            .loader
            {
                display: none;


                &.show
                {
                    display: block;
                }


                img
                {
                    display: block;

                    width: 32px;
                    margin-inline: auto;

                    aspect-ratio: 1 / 1;
                }
            }


            .research
            {
                .buy_btn
                {
                    color: var(--dark_color);


                    &:hover
                    {
                        color: var(--primary_color);
                    }
                }
            }


            .all_link
            {
                margin-top: var(--inner_gap_m);


                a
                {
                    display: flex;
                    align-content: center;
                    align-items: center;
                    flex-wrap: wrap;
                    justify-content: center;
                    gap: var(--inner_gap_xs);

                    width: 100%;

                    transition: background .2s linear;

                    background: none;


                    &:hover
                    {
                        background: rgb(var(--blue_color) / .07);
                    }
                }


                .icon
                {
                    display: block;

                    width: 20px;

                    transform: rotate(-90deg);

                    aspect-ratio: 1 / 1;
                }
            }


            .empty
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-direction: column;
                gap: var(--inner_gap);


                .icon
                {
                    display: block;

                    width: 100px;
                    max-width: 100%;

                    color: var(--grey_color);

                    aspect-ratio: 1 / 1;
                }


                .desc
                {
                    font-size: var(--font_size_s);
                    font-weight: 300;
                    line-height: var(--line_height);
                    letter-spacing: var(--letter_spacing);

                    text-align: center;

                    color: var(--grey_strong_color);
                }


                .link
                {
                    a
                    {
                        display: flex;
                        align-content: center;
                        align-items: center;
                        flex-wrap: wrap;
                        justify-content: center;

                        height: 40px;
                        padding-inline: var(--inner_gap);

                        font-size: var(--inner_gap_s);
                        font-weight: 500;
                        line-height: var(--line_height_s);
                        letter-spacing: var(--letter_spacing_s);

                        transition: background .2s linear;
                        text-align: center;
                        text-decoration: none;

                        color: var(--light_color);
                        border-radius: var(--border_radius_max);
                        background: var(--primary_color);


                        &:hover
                        {
                            background: var(--primary_color_hover);
                        }
                    }
                }
            }
        }


        .research
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: nowrap;
            justify-content: space-between;
            gap: var(--inner_gap_m);

            padding-block: var(--inner_gap_s);

            text-decoration: none;

            color: currentColor;


            .name
            {
                width: 100%;

                font-size: var(--font_size_s);
                font-weight: 300;
                line-height: var(--line_height);
                letter-spacing: var(--letter_spacing);

                color: var(--grey_strong_color);


                a
                {
                    display: -webkit-box;
                    overflow: hidden;
                    -webkit-box-orient: vertical;

                    text-decoration: none;
                    text-overflow: ellipsis;

                    color: currentColor;

                    -webkit-line-clamp: 2;
                }


                b
                {
                    font-weight: 500;

                    color: var(--dark_color);
                }
            }


            .price
            {
                min-width: 64px;

                font-weight: 500;
                line-height: var(--line_height_l);
                letter-spacing: var(--letter_spacing_l);

                text-align: right;
                white-space: nowrap;

                color: var(--primary_color);
            }


            .buy_btn
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 40px;
                min-width: 40px;

                transition: color .2s linear;

                color: var(--primary_color);
                border-radius: 50%;

                aspect-ratio: 1 / 1;


                .icon
                {
                    display: block;

                    width: 24px;

                    aspect-ratio: 1 / 1;
                }


                .icon + .icon
                {
                    display: none;
                }


                &:hover
                {
                    color: var(--dark_color);
                }


                &.active
                {
                    color: var(--primary_color);
                    background: rgb(var(--blue_color) / .07);


                    .icon
                    {
                        display: none;
                    }


                    .icon + .icon
                    {
                        display: block;
                    }
                }


                &.hidden
                {
                    display: flex !important;

                    pointer-events: none;

                    color: var(--grey_color);
                    background: var(--bg_grey);
                }
            }
        }


        .research + .research
        {
            border-top: 1px solid rgb(var(--blue_color) / .07);
        }
    }


    .phones
    {
        .mini_modal_btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: space-between;
            gap: var(--inner_gap_xs);

            padding-block: 5px;
            padding-inline: var(--inner_gap_xs);

            text-align: center;


            & > span
            {
                display: flex;
                flex-direction: column;

                padding-inline: var(--inner_gap_xs);
            }


            .arr
            {
                display: block;

                width: 24px;

                transition: transform .2s linear;

                color: rgba(0, 23, 64, .35);

                aspect-ratio: 1 / 1;
            }


            &.active .arr
            {
                transform: rotate(180deg);
            }
        }


        .label
        {
            font-size: 10px;
            font-weight: 300;
            line-height: 143%;
            letter-spacing: var(--letter_spacing_s);

            opacity: .6;

            font-feature-settings: 'liga' off, 'clig' off;
        }


        .val
        {
            font-size: var(--font_size_l);
            font-weight: 700;
            line-height: var(--line_height_l);
            letter-spacing: var(--letter_spacing_m);

            color: var(--primary_color);


            a
            {
                white-space: nowrap;
                text-decoration: none;

                color: currentColor;
            }
        }


        .mini_modal
        {
            left: 50%;

            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_xxs);

            width: 208px;
            margin-top: var(--inner_gap_xxs);
            padding: var(--inner_gap_s);

            transform: translateX(-50%);
            text-align: center;

            border-radius: var(--border_radius_xs);
            background: var(--bg);
            box-shadow: var(--box_shadow);


            & > div
            {
                display: flex;
                flex-direction: column;

                padding-block: var(--inner_gap_xs);
                padding-inline: var(--inner_gap_xs);
            }


            .work_time
            {
                padding-block: 0;

                font-size: var(--font_size_xs);
                font-weight: 700;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_s);

                color: var(--grey_strong_color);
            }
        }
    }



    .links
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: flex-start;


        .btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: flex-start;
            gap: var(--inner_gap_xs);

            height: 52px;
            padding-inline: var(--inner_gap_m);

            font-weight: 500;
            line-height: var(--line_height_l);
            letter-spacing: var(--letter_spacing_l);

            transition: background .2s linear;
            text-decoration: none;

            color: var(--primary_color);
            border-radius: var(--border_radius_max);


            .icon
            {
                position: relative;


                svg
                {
                    display: block;

                    width: 24px;

                    aspect-ratio: 1 / 1;
                }
            }


            .count
            {
                position: absolute;
                top: -10px;
                right: -10px;

                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                min-width: 20px;
                height: 20px;
                padding-inline: var(--inner_gap_xxs);

                font-size: 10px;
                line-height: 11px;

                text-align: center;

                color: var(--light_color);
                border: 2px solid var(--light_color);
                border-radius: 50%;
                background: var(--red_color);
            }


            &:hover
            {
                background: rgb(var(--blue_strong_color) / .12);
            }


            &:active
            {
                background: rgb(var(--blue_color) / .07);
            }
        }
    }



    .menu
    {
        display: flex;
        align-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--inner_gap_m);

        margin-left: calc(var(--inner_gap_xs) * -1);
        padding-top: var(--inner_gap_xxs);


        .item
        {
            position: relative;


            @media (hover: hover) and (pointer: fine)
            {
                &:hover
                {
                    .sub
                    {
                        visibility: visible;

                        pointer-events: auto;

                        opacity: 1;
                    }
                }


                &:hover
                {
                    .overlay
                    {
                        display: block;
                    }
                }
            }


            & > a
            {
                position: relative;

                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;
                gap: var(--inner_gap_xs);

                height: 56px;
                padding-inline: var(--inner_gap_xs);

                font-weight: 300;
                line-height: var(--line_height_l);
                letter-spacing: var(--letter_spacing_l);

                transition: color .2s linear;
                text-decoration: none;

                color: currentColor;


                .arr
                {
                    display: block;

                    width: 24px;

                    aspect-ratio: 1 / 1;
                }


                &:after
                {
                    position: absolute;
                    right: 0;
                    bottom: 0;
                    left: 0;

                    width: 0;
                    height: 4px;
                    margin-inline: auto;

                    content: '';
                    transition: width .3s linear;

                    background: var(--primary_color);
                }
            }


            &:hover > a,
            & > a.active,
            & > a.hover
            {
                color: var(--primary_color);
            }


            &:hover > a:after,
            & > a.active:after,
            & > a.hover:after
            {
                width: 100%;
            }
        }


        .sub
        {
            position: absolute;
            z-index: 5;
            top: 100%;
            left: calc(var(--inner_gap_l) * -1);

            display: flex;
            visibility: hidden;
            flex-direction: column;
            gap: var(--inner_gap_m);

            padding: var(--inner_gap_l);

            transition: .2s linear;
            pointer-events: none;

            opacity: 0;
            border-radius: var(--border_radius);
            background: var(--bg);
            box-shadow: var(--box_shadow);


            &.show
            {
                visibility: visible;

                pointer-events: auto;

                opacity: 1;
            }


            &.show + .overlay
            {
                display: block;
            }


            a
            {
                display: block;

                font-weight: 300;
                line-height: var(--line_height_l);
                letter-spacing: var(--letter_spacing_l);

                transition: .2s linear;
                white-space: nowrap;
                text-decoration: none;

                color: currentColor;


                &:hover,
                &.active
                {
                    font-weight: 500;

                    color: var(--primary_color);
                }
            }
        }


        &.size1
        {
            left: 0;

            width: 395px;


            a
            {
                white-space: normal;
            }
        }
    }


    .order_btn
    {
        width: 242px;
        max-width: 100%;
        height: 40px;
        padding-inline: var(--inner_gap_m);

        font-size: var(--font_size_xs);
        font-weight: 500;
        line-height: var(--line_height_s);
        letter-spacing: var(--letter_spacing_s);

        transition: background .2s linear;

        color: var(--light_color);
        border-radius: var(--border_radius_max);
        background: var(--primary_color);


        &:hover
        {
            background: var(--primary_color_hover);
        }


        &:active
        {
            background: var(--primary_color_active);
        }
    }
}



/*-----------------
    Mob. header
-----------------*/
.mob_header
{
    position: sticky;
    z-index: 10;
    top: 0;

    display: none;

    width: 100%;
    margin-bottom: var(--inner_gap_l);
    padding-block: var(--inner_gap_xs);

    background: var(--bg);
    box-shadow: -1px 0 0 0 rgba(0, 47, 117, .02), 0 0 4px 0 rgba(0, 47, 117, .07), 0 0 24px 0 rgba(0, 47, 117, .10);


    .cont
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: var(--inner_gap_s);
    }



    .mob_menu_btn
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;

        width: 40px;

        aspect-ratio: 1 / 1;


        .icon
        {
            display: block;

            width: 24px;

            aspect-ratio: 1 / 1;
        }
    }


    .logo
    {
        display: block;

        margin-right: auto;

        text-decoration: none;

        color: currentColor;


        img
        {
            display: block;

            width: 65px;
            height: 27px;
        }
    }


    .btns
    {
        display: flex;
        align-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--inner_gap_s);

        margin-left: auto;


        .btn
        {
            position: relative;

            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 40px;

            text-decoration: none;

            color: var(--primary_color);

            aspect-ratio: 1 / 1;


            .icon
            {
                display: block;

                width: 24px;

                aspect-ratio: 1 / 1;
            }


            .count
            {
                position: absolute;
                top: 0;
                right: -2px;

                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                min-width: 16px;
                height: 16px;
                padding-inline: var(--inner_gap_xxs);

                font-size: 10px;
                line-height: 1;

                text-align: center;

                color: var(--light_color);
                border: 2px solid var(--light_color);
                border-radius: 50%;
                background: var(--red_color);
            }
        }
    }
}



/*-----------------
    Mob. search
-----------------*/
.mob_search
{
    display: none;

    padding-block: 0 var(--inner_gap_m);


    .btn
    {
        position: relative;

        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: flex-start;

        width: 100%;
        height: 52px;
        padding-inline: 48px var(--inner_gap_xs);

        font-size: var(--font_size_s);
        font-weight: 300;
        letter-spacing: var(--letter_spacing);

        text-align: left;

        color: var(--dark_color);
        color: rgba(0, 23, 64, .35);
        border-radius: var(--border_radius_max);
        background: rgb(var(--blue_color) / .07);


        .icon
        {
            position: absolute;
            z-index: 3;
            top: 0;
            bottom: 0;
            left: var(--inner_gap_s);

            display: block;

            width: 24px;
            margin-block: auto;

            pointer-events: none;

            color: var(--grey_strong_color);

            aspect-ratio: 1 / 1;
        }
    }



    .data
    {
        position: fixed;
        z-index: 100;
        top: 0;
        left: 0;

        display: none;
        overflow: auto;
        flex-direction: column;
        gap: var(--inner_gap);

        width: 100%;
        height: 100%;
        min-height: -moz-available;
        min-height: -webkit-fill-available;
        min-height:         fill-available;
        padding-block: var(--inner_gap);
        padding-inline: var(--inner_gap_s);

        background: var(--bg);

        overscroll-behavior-y: contain;


        &.show
        {
            display: flex;
        }


        .top
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: space-between;
        }


        form
        {
            position: relative;

            width: calc(100% - 101px);


            .icon
            {
                position: absolute;
                z-index: 3;
                top: 0;
                bottom: 0;
                left: var(--inner_gap_s);

                display: block;

                width: 24px;
                margin-block: auto;

                pointer-events: none;

                color: var(--grey_strong_color);

                aspect-ratio: 1 / 1;
            }


            ::-webkit-input-placeholder
            {
                color: rgba(0, 23, 64, .35);
            }

            :-moz-placeholder
            {
                color: rgba(0, 23, 64, .35);
            }

            ::-moz-placeholder
            {
                opacity: 1;
                color: rgba(0, 23, 64, .35);
            }

            :-ms-input-placeholder
            {
                color: rgba(0, 23, 64, .35);
            }


            .input
            {
                display: block;

                width: 100%;
                height: 52px;
                padding-inline: 40px var(--inner_gap_xs);

                font-family: var(--font_family);
                font-size: var(--font_size_s);
                font-weight: 300;
                letter-spacing: var(--letter_spacing);

                transition: border-color .2s linear;

                color: var(--dark_color);
                border: 1px solid transparent;
                border-radius: var(--border_radius_max);
                background: rgb(var(--blue_color) / .07);


                &:-webkit-autofill
                {
                    -webkit-box-shadow: inset 0 0 0 50px rgb(var(--blue_color) / .07) !important;
                }


                &:hover
                {
                    border-color: rgb(var(--blue_color) / .15);
                }


                &:focus
                {
                    border-color: transparent;
                }
            }


            .clear_btn
            {
                position: absolute;
                z-index: 3;
                top: 0;
                right: 0;
                bottom: 0;

                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 48px;
                margin-block: auto;

                transition: color .2s linear;

                color: var(--grey_strong_color);

                aspect-ratio: 1 / 1;


                .icon
                {
                    display: block;

                    width: 24px;

                    aspect-ratio: 1 / 1;
                }


                &:hover
                {
                    color: var(--primary_color);
                }
            }
        }


        .close_btn
        {
            width: 97px;
            height: 52px;

            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            transition: color .2s linear;

            color: var(--primary_color);


            &:hover
            {
                color: var(--dark_color);
            }
        }


        .tips
        {
            .title
            {
                font-size: var(--font_size_xs);
                font-weight: 500;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_s);
            }


            .loader
            {
                display: none;


                &.show
                {
                    display: block;
                }


                img
                {
                    display: block;

                    width: 32px;
                    margin-inline: auto;

                    aspect-ratio: 1 / 1;
                }
            }
        }


        .research
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: nowrap;
            justify-content: space-between;
            gap: var(--inner_gap_m);

            padding-block: var(--inner_gap_s);

            text-decoration: none;

            color: currentColor;


            .name
            {
                width: 100%;

                font-size: var(--font_size_s);
                font-weight: 300;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_s);

                color: var(--grey_strong_color);


                a
                {
                    display: -webkit-box;
                    overflow: hidden;
                    -webkit-box-orient: vertical;

                    text-decoration: none;
                    text-overflow: ellipsis;

                    color: currentColor;

                    -webkit-line-clamp: 2;
                }


                b
                {
                    font-weight: 500;

                    color: var(--dark_color);
                }
            }


            .price
            {
                font-weight: 500;
                line-height: var(--line_height);
                letter-spacing: var(--letter_spacing);

                text-align: right;
                white-space: nowrap;

                color: var(--primary_color);
            }


            .buy_btn
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 40px;
                min-width: 40px;

                transition: color .2s linear;

                color: var(--primary_color);
                border-radius: 50%;

                aspect-ratio: 1 / 1;


                .icon
                {
                    display: block;

                    width: 24px;

                    aspect-ratio: 1 / 1;
                }


                .icon + .icon
                {
                    display: none;
                }


                &:hover
                {
                    color: var(--dark_color);
                }


                &.active
                {
                    color: var(--primary_color);
                    background: rgb(var(--blue_color) / .07);


                    .icon
                    {
                        display: none;
                    }


                    .icon + .icon
                    {
                        display: block;
                    }
                }


                &.hidden
                {
                    display: flex !important;

                    pointer-events: none;

                    color: var(--grey_color);
                    background: var(--bg_grey);
                }
            }
        }


        .research + .research
        {
            border-top: 1px solid rgb(var(--blue_color) / .07);
        }


        .result
        {
            display: none;


            .loader
            {
                display: none;


                &.show
                {
                    display: block;
                }


                img
                {
                    display: block;

                    width: 32px;
                    margin-inline: auto;

                    aspect-ratio: 1 / 1;
                }
            }


            .empty
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-direction: column;
                gap: var(--inner_gap);

                padding-block: var(--inner_gap_l);


                .icon
                {
                    display: block;

                    width: 100px;
                    max-width: 100%;

                    color: var(--grey_color);

                    aspect-ratio: 1 / 1;
                }


                .desc
                {
                    padding-inline: var(--inner_gap_m);

                    font-size: var(--font_size_s);
                    font-weight: 300;
                    line-height: var(--line_height);
                    letter-spacing: var(--letter_spacing);

                    text-align: center;

                    color: var(--grey_strong_color);
                }


                .link
                {
                    a
                    {
                        display: flex;
                        align-content: center;
                        align-items: center;
                        flex-wrap: wrap;
                        justify-content: center;

                        height: 40px;
                        padding-inline: var(--inner_gap);

                        font-size: var(--inner_gap_s);
                        font-weight: 500;
                        line-height: var(--line_height_s);
                        letter-spacing: var(--letter_spacing_s);

                        transition: background .2s linear;
                        text-align: center;
                        text-decoration: none;

                        color: var(--light_color);
                        border-radius: var(--border_radius_max);
                        background: var(--primary_color);


                        &:hover
                        {
                            background: var(--primary_color_hover);
                        }
                    }
                }
            }


            .research
            {
                .buy_btn
                {
                    color: var(--dark_color);


                    &:hover
                    {
                        color: var(--primary_color);
                    }
                }
            }


            .all_link
            {
                margin-top: var(--inner_gap_m);


                a
                {
                    display: flex;
                    align-content: center;
                    align-items: center;
                    flex-wrap: wrap;
                    justify-content: center;
                    gap: var(--inner_gap_xs);

                    width: 100%;

                    transition: background .2s linear;

                    background: none;


                    &:hover
                    {
                        background: rgb(var(--blue_color) / .07);
                    }
                }


                .icon
                {
                    display: block;

                    width: 20px;

                    transform: rotate(-90deg);

                    aspect-ratio: 1 / 1;
                }
            }
        }
    }
}



/*---------------
    Mob. menu
---------------*/
.mob_menu
{
    position: fixed;
    z-index: 100;
    top: 0;
    right: 100%;

    display: flex;
    overflow-x: hidden;
    overflow-y: auto;
    flex-direction: column;

    width: 100%;
    height: 100%;
    min-height: -moz-available;
    min-height: -webkit-fill-available;
    min-height:         fill-available;
    padding: var(--cont_padding);

    transition: transform .3s linear;

    background: var(--bg);

    overscroll-behavior-y: contain;


    &.show
    {
        transform: translateX(100%);
    }


    .head
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: space-between;

        margin-bottom: var(--inner_gap_m);
    }


    .langs
    {
        .mini_modal_btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: flex-start;
            gap: var(--inner_gap_xxs);

            padding-left: var(--inner_gap_s);

            font-weight: 700;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            color: var(--primary_color);


            .arr
            {
                display: block;

                width: 24px;

                transition: transform .2s linear;

                aspect-ratio: 1 / 1;
            }


            &.active
            {
                .arr
                {
                    transform: rotate(180deg);
                }
            }
        }


        .mini_modal
        {
            right: 0;
            left: auto;

            margin-top: var(--inner_gap_xxs);
            padding-block: var(--inner_gap_xxs);

            border-radius: var(--border_radius_xs);
            background: var(--bg);
            box-shadow: var(--box_shadow);


            .btn
            {
                display: block;

                padding-block: var(--inner_gap_xxs);
                padding-inline: var(--inner_gap_m);

                font-size: var(--font_size_s);
                font-weight: 300;
                line-height: var(--line_height);
                letter-spacing: var(--letter_spacing);

                transition: color .2s linear;
                text-decoration: none;
                text-transform: uppercase;

                color: var(--grey_strong_color);


                &:hover
                {
                    color: var(--primary_color);
                }
            }
        }
    }


    .close_btn
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;

        width: 40px;

        color: var(--grey_strong_color);

        aspect-ratio: 1 / 1;


        .icon
        {
            display: block;

            width: 24px;

            aspect-ratio: 1 / 1;
        }
    }


    .menu
    {
        margin-bottom: auto;


        & > *
        {
            border-bottom: 1px solid rgb(var(--blue_color) / .07);
        }


        .item
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: flex-start;
            gap: var(--inner_gap_xs);

            padding-block: var(--inner_gap_m);
            padding-inline: var(--inner_gap_s);

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing_s);

            transition: .2s linear;
            text-decoration: none;

            color: currentColor;


            .icon
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 24px;

                color: var(--primary_color);

                aspect-ratio: 1 / 1;


                svg
                {
                    display: block;

                    width: 100%;

                    stroke-width: 2px;
                    aspect-ratio: 1 / 1;
                }
            }


            .arr
            {
                display: flex;

                width: 24px;
                margin-left: auto;

                transition: transform .2s linear;

                color: rgba(0, 23, 64, .35);

                aspect-ratio: 1 / 1;
            }


            &:hover,
            &.active
            {
                font-weight: 500;

                color: var(--primary_color);
            }


            &.active .arr
            {
                transform: rotate(180deg);
            }
        }


        .sub
        {
            display: none;

            padding-bottom: var(--inner_gap_m);


            .item
            {
                padding-block: var(--inner_gap_xs);
            }
        }
    }


    .btns
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_m);

        width: 100%;
        margin-top: var(--inner_gap_l);


        .order_btn
        {
            width: 100%;
            height: 52px;
            padding-inline: var(--inner_gap_m);

            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            transition: background .2s linear;

            color: var(--light_color);
            border-radius: var(--border_radius_max);
            background: var(--primary_color);


            &:hover
            {
                background: var(--primary_color_hover);
            }


            &:active
            {
                background: var(--primary_color_active);
            }
        }


        .foundation_btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 100%;
            height: 52px;
            padding-inline: var(--inner_gap_m);

            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            transition: background .2s linear;
            text-align: center;
            text-decoration: none;

            color: var(--primary_color);
            border-radius: var(--border_radius_max);
            background: rgb(var(--blue_color) / .07);


            &:hover
            {
                background: rgb(var(--blue_color) / .1);
            }


            &:active
            {
                background: rgb(var(--blue_color) / .15);
            }
        }
    }


    .apps
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xs);

        margin-top: 30px;
        padding: var(--inner_gap_m);

        border-radius: var(--border_radius_s);
        background: var(--bg_grey);


        .title
        {
            font-weight: 700;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            text-align: center;
        }


        .desc
        {
            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            text-align: center;

            color: var(--grey_strong_color);
        }


        .items
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;
            gap: var(--inner_gap_xs);


            a
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 155px;
                height: 48px;
                padding: var(--inner_gap_xs);

                text-decoration: none;

                color: currentColor;
                border-radius: var(--border_radius_xs);
                background: var(--black_color);
            }


            img
            {
                display: block;

                max-width: 100%;
                max-height: 100%;
            }
        }
    }
}



/*-------------
    Sidebar
-------------*/
aside
{
    position: relative;
    z-index: 3;

    display: flex;
    flex-direction: column;
    gap: var(--cont_padding_double);

    width: var(--sidebar_width);
    max-width: 100%;


    .dila_app
    {
        .data
        {
            padding-block: 20px;
            padding-inline: var(--inner_gap_m);
        }


        .title
        {
            width: 100%;
            margin-bottom: 92px;

            font-size: var(--font_size_l);
            font-weight: 700;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_m);

            text-align: center;
        }


        .bg
        {
            top: var(--block_padding);

            width: 266px;
            margin-left: 0;

            transform: translateX(-50%);
        }


        .qr_code
        {
            flex-direction: column;
            gap: var(--inner_gap_xs);

            margin-inline: auto;


            .code
            {
                width: 200px;

                border-radius: var(--border_radius_s);


                img
                {
                    border-radius: inherit;
                }
            }


            .label
            {
                width: 100%;

                font-size: var(--font_size_xs);
                font-weight: 300;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_s);
            }
        }


        .links
        {
            margin-top: 0;


            .label
            {
                font-size: var(--font_size_xs);
                font-weight: 300;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_s);
            }
        }
    }



    .contacts_informer
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xxs);


        .title
        {
            padding-block: var(--inner_gap_xs);
            padding-inline: var(--inner_gap_s) var(--inner_gap_m);

            font-size: var(--font_size_l);
            font-weight: 700;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_m);

            border-left: 10px solid var(--primary_color);
            background: var(--bg_grey);
        }


        .data
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_m);

            padding: 20px;

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            background: var(--bg_grey);


            .phone,
            .email
            {
                display: flex;
                align-content: flex-start;
                align-items: flex-start;
                flex-wrap: wrap;
                justify-content: space-between;
                gap: var(--inner_gap_xs);


                .label
                {
                    width: 60px;
                    max-width: 100%;
                }


                .val
                {
                    display: flex;
                    flex-direction: column;
                    gap: var(--inner_gap_xxs);

                    width: calc(100% - 60px - var(--inner_gap_xs));
                }
            }


            a
            {
                white-space: nowrap;
                text-decoration: none;

                color: var(--primary_color);


                @media (hover: hover) and (pointer: fine)
                {
                    &:hover
                    {
                        text-decoration: underline;

                        text-decoration-thickness: 1px;
                    }
                }
            }
        }
    }



    .our_labs_informer
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xxs);


        .title
        {
            padding-block: var(--inner_gap_xs);
            padding-inline: var(--inner_gap_s) var(--inner_gap_m);

            font-size: var(--font_size_l);
            font-weight: 700;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_m);

            border-left: 10px solid var(--primary_color);
            background: var(--bg_grey);
        }


        .list
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_xxs);

            counter-reset: number;


            .item
            {
                position: relative;

                display: flex;
                flex-direction: column;
                gap: var(--inner_gap_s);

                padding: var(--inner_gap);

                font-size: var(--font_size_s);
                font-weight: 300;
                line-height: var(--line_height);
                letter-spacing: var(--letter_spacing);

                text-decoration: none;

                color: currentColor;
                background: var(--grey_light_color);


                .number
                {
                    position: absolute;
                    z-index: 3;
                    top: var(--inner_gap);
                    left: var(--inner_gap);

                    display: flex;
                    align-content: center;
                    align-items: center;
                    flex-wrap: wrap;
                    justify-content: center;

                    width: 60px;

                    font-size: var(--font_size_title_s);
                    font-weight: 700;
                    line-height: var(--line_height_l);
                    letter-spacing: -.24px;

                    text-align: center;

                    color: var(--light_color);
                    background: var(--primary_color);

                    aspect-ratio: 1 / 1;


                    &:before
                    {
                        content: counter(number);
                        counter-increment: number;
                    }
                }


                .thumb
                {
                    display: block;

                    border-radius: var(--border_radius);
                    background: var(--light_color);

                    aspect-ratio: 1 / 1;
                }


                .name
                {
                    text-decoration: underline;

                    text-decoration-thickness: 1px;
                }


                @media (hover: hover) and (pointer: fine)
                {
                    &:hover
                    {
                        .name
                        {
                            text-decoration: none;
                        }
                    }
                }
            }
        }


        .details_link
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: space-between;
            gap: var(--inner_gap_xxs);

            width: 100%;
            height: 52px;
            margin-top: var(--inner_gap_m);
            padding-inline: var(--inner_gap);

            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            transition: background .2s linear;
            text-decoration: none;

            color: var(--light_color);
            border-radius: var(--border_radius_max);
            background: var(--primary_color);


            svg
            {
                display: block;

                width: 24px;

                transform: scale(-1, 1);

                aspect-ratio: 1 / 1;
            }


            @media (hover: hover) and (pointer: fine)
            {
                &:hover
                {
                    background: var(--primary_color_hover);
                }
            }


            &:active
            {
                background: var(--primary_color_active);
            }
        }
    }
}



/*---------------
    Page head
---------------*/
.page_head
{
    padding-bottom: var(--block_padding);


    .cont
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap);
    }



    .breadcrumbs
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--inner_gap_xs);

        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);


        a
        {
            transition: color .2s linear;
            text-decoration: none;

            color: #878e94;


            .icon
            {
                display: none;

                width: 20px;

                aspect-ratio: 1 / 1;
            }


            &:hover
            {
                color: var(--primary_color);
            }
        }


        li
        {
            list-style-type: none;
        }


        .sep
        {
            color: #878e94;
        }
    }


    .page_title
    {
        font-size: var(--font_size_title_l);
        font-weight: 500;
        line-height: var(--line_height_s);
        letter-spacing: -1.2px;
    }


    .page_desc
    {
        margin-top: calc(var(--inner_gap_xs) * -1);

        font-weight: 300;
        line-height: var(--line_height_l);
        letter-spacing: var(--letter_spacing_l);

        color: var(--light_soft_color);
    }


    .news_date
    {
        font-weight: 300;
        line-height: var(--line_height_l);
        letter-spacing: var(--letter_spacing_l);

        color: var(--grey_strong_color);
    }


    .exp
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xs);

        width: 600px;
        max-width: 100%;
        padding-block: var(--inner_gap_s);
        padding-inline: var(--inner_gap_s);

        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        color: #002d75;
        border-radius: var(--border_radius_xs);
        background: #e4f2fd;


        b
        {
            font-weight: 500;
        }
    }
}



/*----------------
    Block head
----------------*/
.block_head
{
    display: flex;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: var(--inner_gap);

    margin-bottom: var(--block_head_offset);


    &.center
    {
        justify-content: center;

        text-align: center;
    }


    .title
    {
        font-size: var(--font_size_title);
        font-weight: 500;
        line-height: var(--line_height_s);
        letter-spacing: -.64px;


        &.small
        {
            font-size: var(--font_size_title_s);
        }
    }


    .desc
    {
        font-weight: 300;
        line-height: var(--line_height_l);
        letter-spacing: var(--letter_spacing_l);

        color: var(--grey_strong_color);
    }


    .all_link
    {
        margin: 0;


        a
        {
            width: auto;
            padding-inline: var(--inner_gap);
        }
    }


    &.row
    {
        .title
        {
            width: calc(100% - 200px);
        }
    }
}


/*-----------------
    Main slider
-----------------*/
.main_slider
{
    margin-bottom: var(--outside_gap_s);


    &.mobile
    {
        display: none;
    }


    .swiper
    {
        border-radius: var(--border_radius);
    }


    .swiper-slide
    {
        overflow: clip;
    }


    .data
    {
        position: relative;

        display: flex;
        overflow: hidden;
        flex-direction: column;
        justify-content: center;

        min-height: 400px;
        padding-block: var(--block_padding);
        padding-inline: 109px;

        color: var(--light_color);

        font-feature-settings: 'liga' off, 'clig' off;
    }


    .info
    {
        position: relative;
        z-index: 3;

        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xs);

        width: 369px;
        max-width: 100%;
    }


    .title
    {
        font-size: var(--font_size_title_l);
        font-weight: 500;
        line-height: 110%;
        letter-spacing: -1px;


        br
        {
            display: none;
        }
    }


    .desc
    {
        font-size: var(--font_size_l);
        font-weight: 300;
        line-height: var(--line_height_l);
        letter-spacing: var(--letter_spacing_m);

        opacity: .9;
    }


    .link
    {
        display: block;

        text-decoration: none;

        color: currentColor;
    }


    .image
    {
        position: absolute;
        z-index: 1;
        inset: 0;

        display: block;

        background: rgb(var(--blue_color) / .07);


        /* &:before
        {
            position: absolute;
            inset: 0;

            display: block;

            content: '';

            background: linear-gradient(82deg, rgb(var(--blue_color) / .5) 7.73%, rgb(var(--blue_color) / 0) 90.68%);
        } */


        a
        {
            position: relative;
            z-index: 10;
        }
    }


    .logo
    {
        position: absolute;
        z-index: 3;
        right: var(--block_padding);
        bottom: var(--block_padding);


        img
        {
            display: block;

            width: 96px;
            height: 40px;
        }
    }
}



/*-------------------
    Quike actions
-------------------*/
.quike_actions
{
    .grid_row
    {
        --items_per_line: 4;
    }


    .item
    {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        gap: var(--inner_gap_m);

        padding: var(--inner_gap_s);

        font-size: var(--font_size_s);
        font-weight: 500;
        line-height: var(--line_height_s);
        letter-spacing: var(--letter_spacing_s);

        transition: background .2s linear;
        text-decoration: none;

        color: currentColor;
        border-radius: var(--border_radius);
        background: rgb(var(--blue_color) / .07);


        .icon
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 32px;

            color: var(--primary_color);

            aspect-ratio: 1 / 1;


            svg
            {
                display: block;

                width: 100%;

                aspect-ratio: 1 / 1;
            }
        }


        &:hover
        {
            background: rgb(var(--blue_color) / .1);
        }


        &:active
        {
            background: rgb(var(--blue_color) / .15);
        }
    }
}



/*----------------
    Researches
----------------*/
.researches
{
    padding-bottom: var(--outside_gap_s);


    .swiper
    {
        overflow: visible;
    }


    .swiper-slide
    {
        visibility: hidden;

        transition: opacity .2s linear, visibility .2s linear;
        pointer-events: none;

        opacity: 0;


        &.visible
        {
            visibility: visible;

            pointer-events: auto;

            opacity: 1;
        }
    }


    .research
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xs);

        padding-block: 20px;
        padding-inline: var(--inner_gap_m);

        border: 1px solid rgb(var(--blue_color) / .07);
        border-radius: var(--border_radius);
        background: var(--light_color);


        .name
        {
            flex: 1 0 auto;

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);


            a
            {
                display: -webkit-box;
                overflow: hidden;
                -webkit-box-orient: vertical;

                transition: color .2s linear;
                text-decoration: none;
                text-overflow: ellipsis;

                color: currentColor;

                -webkit-line-clamp: 3;


                &:hover
                {
                    color: var(--primary_color);
                }
            }
        }


        .info
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: flex-start;
            gap: var(--inner_gap_xs);
        }


        .price
        {
            font-weight: 700;
            line-height: var(--line_height);
            letter-spacing: -.16px;

            color: var(--primary_color);
        }


        .sep
        {
            width: 2px;

            border-radius: 50%;
            background: var(--grey_strong_color);

            aspect-ratio: 1 / 1;
        }


        .duration
        {
            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            color: var(--grey_strong_color);
        }

        &.tic-item
        {
            .name
            {
                font-size: var(--font_size);
                font-weight: 700;
                line-height: var(--line_height);

                a
                {
                    -webkit-line-clamp: 2;
                }
            }
            .duration
            {
                font-size: var(--font_size_s);
                line-height: var(--line_height_s);

                color: var(--dark_color_60);
            }
        }


        .buy_btn,
        .city_btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;
            gap: var(--inner_gap_xxs);

            height: 40px;
            margin-top: var(--inner_gap_xxs);
            padding-inline: var(--inner_gap_m);

            font-size: var(--font_size_xs);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            transition: .2s linear;

            color: var(--primary_color);
            border: 1px solid var(--primary_color);
            border-radius: var(--border_radius_max);


            .icon
            {
                display: block;

                width: 20px;

                aspect-ratio: 1 / 1;
            }


            .icon + .icon,
            span + span
            {
                display: none;
            }


            &:hover
            {
                background: rgb(var(--blue_strong_color) / .1);
            }


            &:active
            {
                background: rgb(var(--blue_strong_color) / .15);
            }


            &.active
            {
                border-color: transparent;
                background: rgb(var(--blue_color) / .07);


                .icon,
                span
                {
                    display: none;
                }


                .icon + .icon,
                span + span
                {
                    display: block;
                }


                &:hover
                {
                    background: rgb(var(--blue_color) / .1);
                }


                &:active
                {
                    background: rgb(var(--blue_color) / .15);
                }
            }
        }
    }
}


.search-form-box
{
    position: relative;

    .search-loader
    {
        position: absolute;
        top: 10px;
        right: 10px;

        display: none;
    }


    .search_count,
    .empty_result
    {
        font-size: var(--font_size_s);

        color: var(--grey_strong_color);
    }
}


/*-------------------
    Opportunities
-------------------*/
.opportunities
{
    .cont.row
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: space-between;


        .block_head
        {
            align-content: flex-start;
            align-items: flex-start;
            flex-direction: column;
            justify-content: flex-start;

            width: 436px;
            max-width: 100%;
            margin-bottom: 0;
        }


        .data
        {
            width: 736px;
            max-width: 100%;
        }


        .grid_row
        {
            --items_per_line: 2;
        }
    }


    .grid_row
    {
        --items_per_line: 4;
    }


    .item
    {
        position: relative;

        display: flex;
        overflow: hidden;
        flex-direction: column;
        gap: var(--inner_gap_xs);

        padding-block: 20px;
        padding-inline: var(--inner_gap_m);

        text-decoration: none;

        color: var(--light_color);
        border-radius: var(--border_radius);
        background: var(--primary_color);


        & > *
        {
            position: relative;
            z-index: 3;
        }


        .icon
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 48px;
            margin-bottom: var(--inner_gap_xs);

            aspect-ratio: 1 / 1;


            svg
            {
                display: block;

                width: 100%;

                aspect-ratio: 1 / 1;
            }
        }


        .name
        {
            font-size: var(--font_size_l);
            font-weight: 700;
            line-height: 1.2;
            letter-spacing: var(--letter_spacing_m);
        }


        .desc
        {
            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height_l);
            letter-spacing: var(--letter_spacing);

            color: var(--light_soft_color);
        }


        .bg
        {
            position: absolute;
            z-index: 1;
            top: 0;
            right: 0;

            max-width: 100%;

            pointer-events: none;


            img
            {
                display: block;

                max-width: 100%;
            }
        }
    }
}



/*-----------
    Steps
-----------*/
.steps
{
    .grid_row
    {
        --items_per_line: 4;
    }


    .step
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_s);

        padding-block: calc(var(--inner_gap_m) * 2);
        padding-inline: var(--inner_gap_m);

        text-align: center;

        border: 1px solid rgb(var(--blue_color) / .07);
        border-radius: var(--border_radius_xs);
        background: rgba(255, 255, 255, .10);


        .icon
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 117px;
            margin-inline: auto;
            margin-bottom: var(--inner_gap_xs);

            background: url(../images/bg_step_icon.png) 50%/ 100% 100% no-repeat;

            aspect-ratio: 1 / 1;


            img
            {
                display: block;

                width: 84px;
                max-width: 100%;
                max-height: 100%;

                aspect-ratio: 1 / 1;
            }
        }


        .name
        {
            margin-top: auto;

            font-size: var(--font_size_l);
            font-weight: 700;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_m);
        }


        .desc
        {
            font-weight: 300;
            line-height: var(--line_height_l);
            letter-spacing: var(--letter_spacing_l);

            color: var(--grey_strong_color);
        }
    }
}



/*--------------
    Dila app
--------------*/
.dila_app
{
    .data
    {
        position: relative;

        display: flex;
        overflow: hidden;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: space-between;

        padding-block: 20px;
        padding-inline: var(--block_padding_l);

        color: var(--light_color);
        border-radius: var(--border_radius);
        background: var(--primary_color);


        & > *
        {
            position: relative;
            z-index: 3;
        }
    }


    .block_head
    {
        width: 471px;
        max-width: 100%;
        margin-bottom: 0;
    }


    .qr_code
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--inner_gap_m);


        .label
        {
            width: 169px;
            max-width: 100%;

            font-weight: 700;
            line-height: var(--line_height);
            letter-spacing: -.16px;

            text-align: center;
        }


        .code
        {
            display: block;

            width: 120px;
            max-width: 100%;


            img
            {
                display: block;

                width: 100%;
            }
        }
    }


    .links
    {
        display: none;
        align-content: center;
        align-items: center;
        flex-direction: column;
        gap: var(--inner_gap_xs);

        width: 100%;
        margin-top: 80px;


        .label
        {
            font-size: var(--font_size_xs);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            text-align: center;
        }


        .btns
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;
            gap: var(--inner_gap_xs);


            a
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 155px;
                height: 48px;
                padding: var(--inner_gap_xs);

                text-decoration: none;

                color: currentColor;
                border-radius: var(--border_radius_xs);
                background: var(--black_color);
            }


            img
            {
                display: block;

                max-width: 100%;
                max-height: 100%;
            }
        }
    }


    .bg
    {
        position: absolute;
        z-index: 1;
        top: 50%;
        left: 50%;

        display: block;

        width: 322px;
        max-width: 100%;
        margin-left: -128px;

        transform: translateY(-50%);
        pointer-events: none;


        img
        {
            display: block;

            width: 100%;
        }
    }
}



/*-----------
    Stats
-----------*/
.stats
{
    &:not(.block)
    {
        margin-bottom: var(--cont_padding_double);
    }


    .grid_row
    {
        --items_per_line: 4;
    }


    .item
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xxs);

        padding-block: var(--inner_gap);
        padding-inline: var(--inner_gap_m);

        text-align: center;


        .val
        {
            margin-bottom: var(--inner_gap_xs);

            font-size: calc(var(--font_size_title_l) + 8px);
            font-weight: 500;
            line-height: calc(100% + 2px);
            letter-spacing: -1.5px;

            color: var(--primary_color);


            & + *
            {
                display: flex;
                flex-direction: column;
                gap: var(--inner_gap_xxs);
            }
        }


        .name
        {
            font-weight: 500;
            line-height: var(--line_height_l);
            letter-spacing: var(--letter_spacing_l);
        }


        .desc
        {
            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height_l);
            letter-spacing: var(--letter_spacing);

            color: var(--grey_strong_color);
        }
    }
}



/*------------
    Why we
------------*/
.why_we
{
    .cont
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_m);
    }


    .data
    {
        position: relative;

        display: flex;
        overflow: hidden;
        flex-direction: column;
        justify-content: center;

        min-height: 528px;
        padding: var(--cont_padding_double);

        border-radius: var(--border_radius);
        background: rgb(var(--blue_color) / .07);


        .info
        {
            position: relative;
            z-index: 3;

            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_xs);

            width: 588px;
            max-width: 100%;
        }


        .title
        {
            margin-bottom: var(--inner_gap_m);

            font-size: var(--font_size_title);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: -1px;

            font-feature-settings: 'liga' off, 'clig' off;
        }


        .sub_title
        {
            font-size: var(--font_size_l);
            font-weight: 700;
            line-height: var(--line_height_l);
            letter-spacing: var(--letter_spacing_m);

            font-feature-settings: 'liga' off, 'clig' off;
        }


        .desc
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_m);

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height_l);
            letter-spacing: var(--letter_spacing_m);

            color: var(--grey_strong_color);
        }


        .bg
        {
            position: absolute;
            z-index: 1;
            inset: 0;

            display: block;

            pointer-events: none;


            img
            {
                min-height: 230px;
            }
        }
    }


    .grid_row
    {
        --items_per_line: 4;
    }


    .item
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xs);

        padding: var(--inner_gap_m);


        .icon
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 48px;

            color: var(--primary_color);

            aspect-ratio: 1 / 1;


            svg
            {
                display: block;

                width: 100%;

                aspect-ratio: 1 / 1;
            }
        }


        .name
        {
            font-weight: 700;
            line-height: var(--line_height);
            letter-spacing: -.16px;
        }


        .desc
        {
            margin-top: var(--inner_gap_xs);

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height_l);
            letter-spacing: var(--letter_spacing);

            color: var(--grey_strong_color);


            a
            {
                text-decoration: none;

                color: var(--primary_color);
            }
        }
    }


    .item_body
    {
        display: flex;
        flex-direction: column;
        flex-grow: 1;
    }
}



/*--------------
    Articles
--------------*/
.articles
{
    padding-bottom: var(--inner_gap_xs);


    .swiper
    {
        overflow: visible;
    }


    .swiper-slide
    {
        visibility: hidden;

        transition: opacity .2s linear, visibility .2s linear;
        pointer-events: none;

        opacity: 0;


        &.visible
        {
            visibility: visible;

            pointer-events: auto;

            opacity: 1;
        }
    }


    .list
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_m);


        .article
        {
            align-content: stretch;
            align-items: stretch;
            flex-direction: row;
            flex-wrap: wrap;
            justify-content: space-between;
            gap: 0;


            .image
            {
                width: 332px;
                max-width: 100%;

                aspect-ratio: 1 / .512;
            }


            .thumb
            {
                aspect-ratio: auto;
            }


            .data
            {
                flex: auto;

                width: calc(100% - 331px);
                padding-block: var(--inner_gap_m);
                padding-inline: var(--inner_gap);
            }


            .name
            {
                margin-top: 0;


                &.size_s
                {
                    font-size: var(--font_size);
                    font-weight: 300;
                    line-height: var(--line_height_l);
                    letter-spacing: var(--letter_spacing_l);
                }


                a
                {
                    -webkit-line-clamp: 2;
                }
            }


            .desc
            {
                -webkit-line-clamp: 2;
            }
        }
    }


    .article
    {
        display: flex;
        flex-direction: column;
        gap: 20px;

        border: 1px solid rgb(var(--blue_color) / .07);
        border-radius: var(--border_radius);
        background: var(--bg);


        .image
        {
            display: block;

            margin: -1px;

            text-decoration: none;

            color: currentColor;
            border-radius: var(--border_radius);
        }


        .thumb
        {
            display: block;
            overflow: hidden;

            border-radius: var(--border_radius);
            background: var(--grey_color);

            aspect-ratio: 1 / 1;


            &.thumb-ratio-2x1
            {
                aspect-ratio: 2 / 1;
            }
        }


        .data
        {
            display: flex;
            flex: 1 0 auto;
            flex-direction: column;
            gap: var(--inner_gap_s);

            padding-block: 0 var(--inner_gap);
            padding-inline: var(--inner_gap_m);
        }


        .info
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: flex-start;
            gap: var(--inner_gap_xs);


            .sep
            {
                width: 2px;

                border-radius: 50%;
                background: var(--grey_strong_color);

                aspect-ratio: 1 / 1;
            }
        }


        .category
        {
            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing_s);

            color: var(--primary_color);


            a
            {
                text-decoration: none;

                color: currentColor;
            }
        }


        .date
        {
            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing_s);

            white-space: nowrap;

            color: var(--grey_strong_color);
        }


        .name
        {
            font-size: var(--font_size_l);
            font-weight: 700;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_m);


            a
            {
                display: -webkit-box;
                overflow: hidden;
                -webkit-box-orient: vertical;

                transition: .2s linear;
                text-decoration: none;
                text-overflow: ellipsis;

                color: currentColor;

                -webkit-line-clamp: 3;
            }
        }


        .desc
        {
            display: -webkit-box;
            overflow: hidden;
            -webkit-box-orient: vertical;

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            text-overflow: ellipsis;

            color: var(--grey_strong_color);

            -webkit-line-clamp: 3;
        }


        .link
        {
            margin-top: auto;


            a
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: flex-start;
                gap: var(--inner_gap_xxs);

                width: fit-content;
                padding-block: var(--inner_gap_xs);

                font-size: var(--font_size_xs);
                font-weight: 500;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_s);

                text-decoration: none;

                color: var(--primary_color);
            }


            .icon
            {
                display: block;

                width: 20px;

                transform: scale(-1, 1);

                aspect-ratio: 1 / 1;
            }
        }


        &:hover
        {
            .name
            {
                a
                {
                    color: var(--primary_color);
                }
            }
        }
    }
}



/*-------------
    Warning
-------------*/
.warning
{
    padding-block: 20px;


    .image,
    .image img
    {
        display: block;

        width: 100%;
    }
}



/*----------------------
    For doctors head
----------------------*/
.for_doctors_head
{
    margin-bottom: var(--outside_gap_s);


    .cont
    {
        display: flex;
        align-content: stretch;
        align-items: stretch;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: var(--inner_gap);
    }


    .main_slider
    {
        width: calc(100% - 300px - var(--inner_gap));
        margin: 0;
    }


    .join
    {
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: var(--inner_gap_xs);

        width: 300px;
        max-width: 100%;
        padding-block: var(--outside_gap_m) var(--inner_gap);
        padding-inline: var(--inner_gap);

        text-align: center;

        border-radius: var(--border_radius);
        background: rgb(var(--blue_color) / .07);


        .title
        {
            font-size: var(--font_size_title_s);
            font-weight: 700;
            line-height: var(--line_height_l);
            letter-spacing: -.24px;
        }


        .desc
        {
            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            color: var(--grey_strong_color);
        }


        .btn
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_m);

            margin-top: auto;
            padding: var(--inner_gap_s);

            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            transition: background .2s linear;
            text-align: left;
            text-decoration: none;

            color: var(--light_color);
            border-radius: var(--border_radius);
            background: var(--primary_color);


            .icon
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 32px;

                aspect-ratio: 1 / 1;


                svg
                {
                    display: block;

                    width: 100%;

                    aspect-ratio: 1 / 1;
                }
            }


            &:hover
            {
                background: var(--primary_color_hover);
            }


            &:active
            {
                background: var(--primary_color_active);
            }
        }
    }
}



/*----------------------------
    Collaboration services
----------------------------*/
.collaboration_services
{
    .swiper
    {
        overflow: visible;
    }


    .swiper-slide
    {
        visibility: hidden;

        transition: opacity .2s linear, visibility .2s linear;
        pointer-events: none;

        opacity: 0;


        &.visible
        {
            visibility: visible;

            pointer-events: auto;

            opacity: 1;
        }
    }


    .item
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_s);

        padding-block: var(--inner_gap_l);
        padding-inline: var(--inner_gap_s);

        border: 1px solid rgb(var(--blue_color) / .15);
        border-radius: var(--border_radius_xs);
        background: rgba(255, 255, 255, .10);


        .icon
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 64px;
            margin-inline: auto;
            margin-bottom: var(--inner_gap_m);

            color: var(--primary_color);

            aspect-ratio: 1 / 1;


            img
            {
                display: block;

                width: 100%;

                aspect-ratio: 1 / 1;
            }
        }


        .name
        {
            font-size: var(--font_size_l);
            font-weight: 700;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_m);

            text-align: center;
        }


        .features
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_s);

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            color: var(--grey_strong_color);


            &.small_gap
            {
                gap: var(--inner_gap_xs);
            }
        }


        .feature
        {
            position: relative;

            padding-left: 14px;


            .label
            {
                font-weight: 500;
            }


            &:before
            {
                position: absolute;
                top: .5lh;
                left: 0;

                display: block;

                width: 6px;

                content: '';
                transform: translateY(-50%);

                border-radius: 50%;
                background: var(--primary_color);

                aspect-ratio: 1 / 1;
            }
        }


        .desc
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_s);

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            color: var(--grey_strong_color);


            a
            {
                font-weight: 500;

                text-decoration: none;

                color: var(--primary_color);
            }
        }
    }
}



/*---------------
    Education
---------------*/
.education
{
    .swiper
    {
        overflow: visible;
    }


    .swiper-slide
    {
        visibility: hidden;

        transition: opacity .2s linear, visibility .2s linear;
        pointer-events: none;

        opacity: 0;


        &.visible
        {
            visibility: visible;

            pointer-events: auto;

            opacity: 1;
        }
    }


    .item
    {
        display: flex;
        flex-direction: column;

        border: 1px solid rgb(var(--blue_color) / .07);
        border-radius: var(--border_radius);
        background: var(--bg);


        .thumb
        {
            display: block;

            margin: -1px;

            border-radius: var(--border_radius);
            background: rgb(var(--blue_color) / .07);

            aspect-ratio: 1 / 1;


            &.thumb-ratio-2x1
            {
                aspect-ratio: 2 / 1;
            }
        }


        .data
        {
            position: relative;

            display: flex;
            flex: 1 0 auto;
            flex-direction: column;
            gap: var(--inner_gap_s);

            padding-block: var(--inner_gap_xs) var(--inner_gap);
            padding-inline: var(--inner_gap_m);
        }


        .date
        {
            position: absolute;
            top: -48px;
            right: var(--inner_gap_m);

            display: flex;
            align-content: center;
            align-items: center;
            flex-direction: column;
            justify-content: center;

            width: 80px;

            font-weight: 300;
            line-height: var(--line_height_l);
            letter-spacing: var(--letter_spacing_l);

            text-align: center;

            color: var(--light_color);
            border-radius: 50%;
            background: var(--primary_color);

            aspect-ratio: 1 / 1;


            &.finished
            {
                background: var(--grey_color);
            }


            .day
            {
                margin-bottom: -4px;

                font-size: var(--font_size_title);
                font-weight: 500;
                line-height: var(--line_height_s);
                letter-spacing: -.64px;
            }
        }


        .points
        {
            margin-bottom: var(--inner_gap_xxs);

            font-weight: 500;
            line-height: var(--line_height_l);
            letter-spacing: var(--letter_spacing_l);

            color: var(--primary_color);
        }


        .name
        {
            margin-top: auto;

            font-size: var(--font_size_l);
            font-weight: 700;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_m);


            a
            {
                display: -webkit-box;
                overflow: hidden;
                -webkit-box-orient: vertical;

                transition: .2s linear;
                text-decoration: none;
                text-overflow: ellipsis;

                color: currentColor;
                color: currentColor;

                -webkit-line-clamp: 3;
            }
        }


        .time
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: flex-start;
            gap: var(--inner_gap_xs);

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            color: var(--grey_strong_color);


            .icon
            {
                display: block;

                width: 24px;

                color: var(--primary_color);

                aspect-ratio: 1 / 1;
            }
        }


        .desc
        {
            display: -webkit-box;
            overflow: hidden;
            -webkit-box-orient: vertical;

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            text-overflow: ellipsis;

            color: var(--grey_strong_color);

            -webkit-line-clamp: 2;
        }


        &:hover
        {
            .name
            {
                a
                {
                    color: var(--primary_color);
                }
            }
        }
    }
}



/*--------------------
    Other articles
--------------------*/
.other_articles
{
    padding-block: var(--inner_gap);
    padding-inline: 20px;

    border-radius: var(--border_radius);
    background: rgb(var(--blue_color) / .07);


    .title
    {
        margin-bottom: var(--inner_gap_xs);

        font-size: var(--font_size_title_s);
        font-weight: 700;
        line-height: var(--line_height_l);
        letter-spacing: -.24px;
    }


    .article
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xxs);

        padding-block: var(--inner_gap_m);
        padding-inline: var(--inner_gap_xs);

        text-decoration: none;

        color: currentColor;


        .name
        {
            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            transition: color .2s linear;
        }


        .date
        {
            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            color: var(--grey_strong_color);
        }


        &:hover
        {
            .name
            {
                color: var(--primary_color);
            }
        }
    }


    .article + .article
    {
        border-top: 1px solid rgb(var(--blue_color) / .07);
    }
}



/*----------
    Blog
----------*/
.blog
{
    .categories
    {
        display: flex;
        align-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--inner_gap_xs);

        margin-bottom: var(--inner_gap_l);


        .item
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            padding-block: var(--inner_gap_xxs);
            padding-inline: var(--inner_gap_xs);

            font-size: var(--inner_gap_s);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            transition: .2s linear;
            text-decoration: none;

            color: currentColor;
            border: 1px solid rgb(var(--blue_color) / .07);
            border-radius: var(--border_radius_max);


            .icon,
            .icon img
            {
                display: block;

                width: 24px;
                height: 24px;
            }


            span
            {
                padding-inline: var(--inner_gap_xxs);
            }


            &:hover
            {
                background: rgb(var(--blue_strong_color) / .1);
            }


            &:active
            {
                background: rgb(var(--blue_strong_color) / .15);
            }


            &.active
            {
                border-color: transparent;
                background: rgb(var(--blue_color) / .07);
            }
        }


        .item:nth-child(5) ~ .item
        {
            display: none;
        }


        &.show_all
        {
            .item:nth-child(5) ~ .item
            {
                display: flex;
            }
        }


        .spoler_btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;
            gap: var(--inner_gap_xs);

            padding-block: var(--inner_gap_xxs);
            padding-inline: var(--inner_gap_xs) var(--inner_gap_s);

            font-size: var(--inner_gap_s);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            transition: background .2s linear;

            color: var(--primary_color);
            border: 1px solid var(--primary_color);
            border-radius: var(--border_radius_max);


            .icon
            {
                display: block;

                width: 24px;

                aspect-ratio: 1 / 1;
            }


            &:hover
            {
                background: rgb(var(--blue_strong_color) / .1);
            }


            &:active
            {
                background: rgb(var(--blue_strong_color) / .15);
            }


            .icon + .icon,
            span + span
            {
                display: none;
            }


            &.active
            {
                .icon,
                span
                {
                    display: none;
                }


                .icon + .icon,
                span + span
                {
                    display: block;
                }
            }
        }
    }
}



/*-------------------------
    Research categories
-------------------------*/
.mob_research_categories
{
    display: none;
}


.research_categories
{
    padding: var(--inner_gap_m);

    border-radius: var(--border_radius_l);
    background: rgb(var(--blue_color) / .07);


    .mob_title
    {
        display: none;

        margin-bottom: var(--inner_gap);

        font-size: var(--font_size_title_s);
        font-weight: 700;
        line-height: var(--line_height_l);
        letter-spacing: -.24px;

        text-align: center;
    }


    .list
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xs);


        .item
        {
            overflow: hidden;

            border: 1px solid rgb(var(--blue_color) / .15);
            border-radius: 28px;
            background: var(--light_color);


            .btn
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: nowrap;
                justify-content: flex-start;
                gap: var(--inner_gap_xs);

                width: 100%;
                padding-block: var(--inner_gap_s);
                padding-inline: var(--inner_gap_m);

                font-weight: 700;
                line-height: var(--line_height);
                letter-spacing: -.16px;

                text-align: left;


                .icon
                {
                    display: flex;
                    align-content: center;
                    align-items: center;
                    flex-wrap: wrap;
                    justify-content: center;

                    width: 32px;
                    min-width: 32px;

                    aspect-ratio: 1 / 1;


                    img
                    {
                        display: block;

                        max-width: 100%;
                        max-height: 100%;
                    }
                }


                span
                {
                    width: 100%;
                }


                .arr
                {
                    display: block;

                    width: 24px;
                    min-width: 24px;

                    transition: transform .2s linear;

                    aspect-ratio: 1 / 1;
                }


                &.active
                {
                    .arr
                    {
                        transform: rotate(180deg);
                    }
                }
            }


            .sub
            {
                display: none;

                padding-bottom: var(--inner_gap_s);


                a
                {
                    display: flex;
                    align-content: center;
                    align-items: center;
                    flex-wrap: nowrap;
                    justify-content: flex-start;
                    gap: var(--inner_gap_xs);

                    padding-block: var(--inner_gap_s);
                    padding-inline: var(--inner_gap_m);

                    font-size: var(--font_size_s);
                    font-weight: 300;
                    line-height: var(--line_height);
                    letter-spacing: var(--letter_spacing);

                    transition: .2s linear;
                    text-decoration: none;

                    color: var(--dark_color);


                    .icon
                    {
                        display: none;

                        width: 24px;
                        min-width: 24px;
                        padding: 4px;

                        aspect-ratio: 1 / 1;
                    }


                    span
                    {
                        width: 100%;
                    }


                    &:hover
                    {
                        color: var(--primary_color);
                    }


                    &.active
                    {
                        font-weight: 500;

                        color: var(--primary_color);
                        background: rgb(var(--blue_color) / .07);


                        .icon
                        {
                            display: block;
                        }
                    }
                }
            }
        }
    }
}



/*---------------------
    Research prices
---------------------*/
.research_prices
{
    .search-form-box
    {
        position: sticky;
        z-index: 9;
        top: 0;

        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_m);

        padding-bottom: var(--inner_gap_m);

        background: var(--bg);
    }


    .search
    {
        position: relative;


        ::-webkit-input-placeholder
        {
            color: rgba(0, 23, 64, .35);
        }

        :-moz-placeholder
        {
            color: rgba(0, 23, 64, .35);
        }

        ::-moz-placeholder
        {
            opacity: 1;
            color: rgba(0, 23, 64, .35);
        }

        :-ms-input-placeholder
        {
            color: rgba(0, 23, 64, .35);
        }


        .icon
        {
            position: absolute;
            z-index: 3;
            top: 0;
            bottom: 0;
            left: var(--inner_gap_s);

            display: block;

            width: 24px;
            margin-block: auto;

            pointer-events: none;

            color: var(--grey_strong_color);

            aspect-ratio: 1 / 1;
        }


        .input
        {
            display: block;

            width: 100%;
            height: 52px;
            padding-inline: 40px var(--inner_gap_xs);

            font-family: var(--font_family);
            font-size: var(--font_size_s);
            font-weight: 300;
            letter-spacing: var(--letter_spacing);

            transition: border-color .2s linear;

            color: var(--dark_color);
            border: 1px solid transparent;
            border-radius: var(--border_radius_max);
            background: rgb(var(--blue_color) / .07);


            &:-webkit-autofill
            {
                -webkit-box-shadow: inset 0 0 0 50px rgb(var(--blue_color) / .07) !important;
            }


            &:hover
            {
                border-color: rgb(var(--blue_color) / .15);
            }


            &:focus
            {
                border-color: transparent;
            }
        }
    }


    .alphabet
    {
        display: flex;
        align-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--inner_gap_xs);

        margin-bottom: var(--inner_gap_l);

        font-weight: 300;
        line-height: var(--line_height_l);
        letter-spacing: var(--letter_spacing_l);


        a
        {
            display: block;

            min-width: 32px;
            padding-block: var(--inner_gap_xxs);
            padding-inline: var(--inner_gap_xs);

            transition: .2s linear;
            text-align: center;
            text-decoration: none;

            color: currentColor;


            &:hover
            {
                color: var(--primary_color);
            }


            &.active
            {
                font-weight: 500;

                color: var(--primary_color);
            }


            &.disabled,
            &.disable
            {
                pointer-events: none;

                color: var(--grey_color);
            }
        }

        div.active a
        {
            font-weight: 500;

            color: var(--primary_color);
        }

        div.disable a
        {
            pointer-events: none;

            color: var(--grey_color);
        }
    }


    .col_name
    {
        width: 100%;
    }

    .col_duration
    {
        width: 96px;
        min-width: 96px;
    }

    .col_urgently
    {
        width: 96px;
        min-width: 96px;
    }

    .col_price
    {
        width: 108px;
        min-width: 108px;
    }

    .col_action
    {
        width: 85px;
        min-width: 85px;


        &.big
        {
            width: 193px;
            min-width: 193px;
        }
    }


    .titles
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: nowrap;
        justify-content: flex-start;

        margin-bottom: var(--inner_gap_m);

        font-size: var(--font_size_xs);
        font-weight: 500;
        line-height: var(--line_height_s);
        letter-spacing: var(--letter_spacing_s);

        color: var(--grey_strong_color);
        border: 1px solid transparent;
        border-radius: var(--border_radius_max);
        background: var(--bg_grey);


        & > *
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            padding-block: var(--inner_gap_xs);
            padding-inline: var(--inner_gap_m);

            text-align: center;
        }


        .alighstart
        {
            justify-content: flex-start;

            text-align: left;
        }


        .alignend
        {
            justify-content: flex-end;

            text-align: right;
        }
    }


    .list
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xs);
    }


    .research
    {
        border: 1px solid rgb(var(--blue_color) / .07);
        border-radius: var(--border_radius);
        background: var(--letter_spacing);


        .data
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: nowrap;
            justify-content: flex-start;

            padding-block: var(--inner_gap_m);


            & > *
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                padding-block: var(--inner_gap_xxs);
                padding-inline: var(--inner_gap_m);

                text-align: center;
            }


            .alighstart
            {
                justify-content: flex-start;

                text-align: left;
            }


            .alignend
            {
                justify-content: flex-end;

                text-align: right;
            }
        }


        .col_name
        {
            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            a
            {
                display: inline-block;

                transition: color .2s linear;
                vertical-align: top;
                text-decoration: none;

                color: currentColor;


                &:hover
                {
                    color: var(--primary_color);
                }
            }
        }


        .col_duration
        {
            gap: var(--inner_gap_xxs);

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            color: var(--grey_strong_color);


            span
            {
                font-size: var(--font_size_xs);
            }
        }


        .col_price
        {
            font-weight: 700;
            line-height: var(--line_height);
            letter-spacing: -.16px;

            white-space: nowrap;

            color: var(--primary_color);
        }


        .checkbox
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;
            gap: var(--inner_gap_xs);

            min-width: 40px;

            cursor: pointer;
            transition: background .2s linear;

            border-radius: 50%;

            aspect-ratio: 1 / 1;


            &:hover
            {
                background: rgb(var(--blue_color) / .07);
            }


            input
            {
                display: none;


                &:checked ~ .check
                {
                    border-color: var(--primary_color);


                    .icon
                    {
                        opacity: 1;
                    }
                }
            }


            .check
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 22px;

                transition: border-color .2s linear;

                color: var(--primary_color);
                border: 2px solid rgba(0, 23, 64, .35);
                border-radius: 4px;

                aspect-ratio: 1 / 1;


                .icon
                {
                    display: block;

                    width: 16px;

                    transition: opacity .2s linear;

                    opacity: 0;

                    aspect-ratio: 1 / 1;
                }


                & + *
                {
                    display: none;

                    font-size: var(--font_size_xs);
                    font-weight: 300;
                    line-height: var(--line_height_s);
                    letter-spacing: var(--letter_spacing_s);

                    color: var(--grey_strong_color);
                }
            }
        }


        .buy_btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 40px;

            transition: .2s linear;

            color: var(--light_color);
            border-radius: 50%;
            background: var(--primary_color);

            aspect-ratio: 1 / 1;


            .icon
            {
                display: block;

                width: 24px;

                aspect-ratio: 1 / 1;
            }


            .icon + .icon
            {
                display: none;
            }


            &:hover
            {
                background: var(--primary_color_hover);
            }


            &:active
            {
                background: var(--primary_color_active);
            }


            &.active
            {
                color: var(--primary_color);
                background: rgb(var(--blue_color) / .07);


                .icon
                {
                    display: none;
                }


                .icon + .icon
                {
                    display: block;
                }
            }
        }


        .city_btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;
            gap: var(--inner_gap_xxs);

            width: 100%;
            height: 40px;
            padding-inline: var(--inner_gap_m);

            font-size: var(--font_size_xs);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            transition: .2s linear;

            color: var(--primary_color);
            border: 1px solid var(--primary_color);
            border-radius: var(--border_radius_max);


            .icon
            {
                display: block;

                width: 20px;

                aspect-ratio: 1 / 1;
            }


            span
            {
                max-width: calc(100% - 20px - var(--inner_gap_xxs));
            }


            &:hover
            {
                background: rgb(var(--blue_strong_color) / .1);
            }


            &:active
            {
                background: rgb(var(--blue_strong_color) / .15);
            }
        }


        .exp
        {
            padding-block: 10px;
            padding-inline: var(--inner_gap_s);

            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            color: var(--grey_strong_color);
            border-radius: 0 0 var(--border_radius_xs) var(--border_radius_xs);
            background: var(--bg_grey);


            a
            {
                transition: color .2s linear;
                text-decoration: none;

                color: var(--primary_color);


                &:hover
                {
                    color: var(--primary_color_hover);
                }
            }
        }
    }
}

.col_price .for-curr
{
    margin-left: 3px;
}

.pr-complex-item
{
    margin-bottom: var(--border_radius_xs);
    padding-block: var(--inner_gap_s);
    padding-inline: var(--inner_gap_m);

    border: 1px solid rgb(var(--blue_color) / .07);
    border-radius: var(--border_radius_xs);

    scroll-margin-top: 68px;

    &.open
    {
        border-color: var(--primary_color);

        > .btn > .arr
        {
            transform: rotate(180deg);
        }
    }
}

.pr-complex-item-panel
{
    display: flex;
    align-content: center;
    align-items: center;

    width: 100%;
    min-height: 30px;

    transition: color .2s linear;
    text-align: left;
    text-decoration: none;

    color: currentColor;

    .arr
    {
        display: block;

        width: 24px;
        min-width: 24px;
        margin: 0 0 0 auto;

        transition: transform .2s linear;

        aspect-ratio: 1 / 1;
    }


    &:hover
    {
        color: var(--primary_color);
    }


    &.open .arr
    {
        transform: rotate(180deg);
    }
}

.pr-complex-item-sub
{
    display: none;

    margin-top: 12px;
}

/*---------------------
    Research page
---------------------*/

.price-cart-row
{
    display: flex;
    justify-content: space-between;
}

.price-notaviable-row
{
    position: relative;

    margin-top: -40px;

    .wares-message
    {
        width: calc(100% - 150px);
        max-width: 700px;
    }

    .btn-changecity
    {
        position: absolute;
        top: 42px;
        right: 0;

        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
        gap: var(--inner_gap_xs);


        .icon
        {
            display: block;

            width: 20px;

            aspect-ratio: 1 / 1;
        }
    }
}

.for-rp-price
{
    display: block;
    display: flex;
    align-content: flex-end;
    align-items: flex-end;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: var(--inner_gap_xxs);

    margin-bottom: 8px;

    font-size: var(--font_size_title_l);
    font-weight: 500;
    letter-spacing: -1.2px;

    color: var(--primary_color);


    .for-curr
    {
        margin-bottom: 6px;

        font-size: var(--font_size_l);
    }
}

.page-descr-box
{
    & + .wares-message
    {
        max-width: 700px;
        margin-top: 12px;
    }
}

.page-item-row
{
    .page-descr-box
    {
        max-width: 700px;
    }
}

.btn-rp-cart
{
    display: flex;
    align-items: center;
    justify-content: center;

    min-width: 202px;

    &.active
    {
        color: var(--primary_color);
        border-color: transparent;
        background-color: #edf2fa;

        .icon
        {
            display: block;
        }
    }

    .icon
    {
        display: none;

        width: 20px;
        margin-right: 5px;

        aspect-ratio: 1 / 1;
    }
}

.wares-message
{
    padding: var(--inner_gap_xs) var(--inner_gap_s);

    font-size: var(--font_size_xs);
    font-weight: 300;
    line-height: 22px;
    letter-spacing: var(--letter_spacing_s);

    color: var(--dark_color_60);
    border-radius: var(--border_radius_xs);
    background-color: var(--grey_light_color);

    &.wm-notaviable
    {
        max-width: 700px;
        margin-top: 40px;
        margin-bottom: 40px;
    }


    &.temporary
    {
        margin-top: var(--inner_gap_s);
    }


    &.wares-message-view.text_block
    {
        a
        {
            font-weight: 300;
        }
    }
}

.wmnp
{
    .wares-message
    {
        padding: 0;
    }
}



.page-checkbox
{
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    gap: var(--inner_gap_xs);

    height: 32px;

    cursor: pointer;
    transition: background .2s linear;

    border-radius: 50%;

    aspect-ratio: 1 / 1;


    &:hover .check
    {
        background: rgb(var(--blue_color) / .07);
    }


    input
    {
        display: none;


        &:checked ~ .check
        {
            border-color: var(--primary_color);
            background: var(--primary_color);


            .icon
            {
                opacity: 1;
            }
        }
    }


    .check
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;

        width: 22px;

        transition: .2s linear;

        color: var(--light_color);
        border: 2px solid rgba(0, 23, 64, .35);
        border-radius: 4px;

        aspect-ratio: 1 / 1;


        .icon
        {
            display: block;

            width: 16px;

            transition: opacity .2s linear;

            opacity: 0;

            aspect-ratio: 1 / 1;
        }
    }


    .page-check-text
    {
        font-size: var(--font_size);
        font-weight: 300;
        letter-spacing: var(--letter_spacing_l);

        color: var(--dark_color);
    }
}

.urgent-dedline
{
    display: flex;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
    justify-content: flex-start;

    margin-top: 14px;


    .js-item-time
    {
        margin-left: var(--inner_gap_xxs);

        color: var(--dark_color);
    }
}

.urgent-dedline-item:not(:first-child)
{
    margin-left: 22px;
}

.page-item-urgent
{
    margin-top: 32px;
}

.page-item-header
{
    font-size: var(--font_size);
    font-weight: 700;
    letter-spacing: -.16px;

    color: var(--dark_color);
}

.page-item-rulesbox
{
    margin-top: 24px;
}

.page-item-rule
{
    padding-block: var(--inner_gap_s);

    border-bottom: 1px solid rgb(var(--blue_color) / .07);


    .pir-triger
    {
        display: flex;
        align-content: center;
        align-items: center;

        width: 100%;
        min-height: 48px;

        letter-spacing: -.16px;

        text-align: left;


        .arr
        {
            display: block;

            width: 24px;
            min-width: 24px;
            margin: 0 0 0 auto;

            transition: transform .2s linear;

            aspect-ratio: 1 / 1;
        }
    }

    .pir-sub
    {
        display: none;

        margin-top: 8px;

        .for-icon
        {
            margin-right: 5px;

            line-height: var(--line_height_s);
        }

        .for-text
        {
            font-size: var(--font_size_s);
            line-height: var(--line_height_s);

            color: var(--dark_color_60);
        }
    }

    .pir-sub-info
    {
        margin-top: var(--inner_gap_s);
    }

    .pir-bub-content + .pir-bub-content
    {
        margin-top: var(--block_padding);
    }

    &.open .arr
    {
        transform: rotate(180deg);
    }
}

.together-is-cheaper
{
    &.empty
    {
        display: none;
    }
}

.page-asside-title
{
    margin-bottom: var(--inner_gap);

    font-size: var(--font_size_l);
    font-weight: 700;
    line-height: var(--line_height_l);
    letter-spacing: var(--letter_spacing_m);

    color: var(--dark_color);
}

.tic-box
{
    position: relative;

    .rs-preloader
    {
        img,
        svg
        {
            top: 50px;
        }
    }
}

.tic-item
{
    &:not(:last-child)
    {
        margin-bottom: 16px;
    }

    .name
    {
        color: var(--dark_color);
    }

    .price
    {
        margin-bottom: 7px;

        font-size: var(--font_size_title_s);
    }

    .page-checkbox
    {
        height: 18px;
        margin-left: 32px;

        .check
        {
            width: 18px;
        }
        .check-label-text
        {
            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height_s);

            color: var(--dark_color_60);
        }
    }
}

.tic-more
{
    display: none;

    text-align: center;
}

.loaded .tic-more
{
    display: block;
}

.btn-tic-more
{
    font-size: var(--font_size_s);
    font-weight: 500;
    letter-spacing: var(--letter_spacing);

    color: var(--primary_color);
}

.btn-arrow-icon
{
    .arr
    {
        display: block;

        width: 24px;
        min-width: 24px;
        margin: 0 0 0 auto;

        transition: transform .2s linear;

        aspect-ratio: 1 / 1;
    }

    &.open .arr
    {
        transform: rotate(180deg);
    }

    & + .for-name-text
    {
        margin-left: 7px;
    }
}

.data.complex .col_name
{
    flex-wrap: nowrap;
}

.research.open .data.complex .arr
{
    transform: rotate(180deg);
}

.prc-research-items
{
    display: none;

    padding-inline: var(--inner_gap_m);
    padding-bottom: var(--inner_gap_m);

    div
    {
        font-size: var(--font_size_xs);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing_s);
        &:not(:last-child)
        {
            margin-bottom: 8px;
        }

        a
        {
            text-decoration: none;
        }
    }
}

.research.open
{
    border-color: var(--primary_color);
}

#togeter_modal
{
    --modal_width: 800px;

    .list
    {
        position: relative;

        overflow-x: clip;
        overflow-y: auto;

        width: calc(100% + 20px);
        min-height: 90px;
        max-height: 416px;
        margin-top: var(--inner_gap_m);
        margin-right: calc(var(--block_padding) * -1);

        --custom_scroll_width: 15px;
        --custom_scroll_height: 15px;
        overscroll-behavior-y: contain;


        &::-webkit-scrollbar
        {
            width: var(--custom_scroll_width);
            height: var(--custom_scroll_height);

            background-color: transparent;
        }


        &::-webkit-scrollbar-thumb
        {
            border: 4px solid var(--bg);
            border-radius: var(--border_radius);
            background-color: var(--primary_color);
        }

        .rs-preloader
        {
            img,
            svg
            {
                top: 12px;
            }
        }
    }
}

.result-loadbox
{
    margin-top: 32px;
}



/*--------------------------
    Covid19 contact info
--------------------------*/
.covid19-contact-info
{
    width: 700px;
    max-width: 100%;
    padding-block: var(--inner_gap_xs);
    padding-inline: var(--inner_gap_s) var(--inner_gap_xs);

    font-size: var(--font_size_s);
    font-weight: 300;
    line-height: var(--line_height);
    letter-spacing: var(--letter_spacing);

    color: var(--primary_color);
    border-radius: var(--border_radius_xs);
    background: #e4f2fd;


    a
    {
        font-weight: 500;

        white-space: nowrap;

        color: currentColor;

        text-decoration-thickness: 1px;
    }


    b,
    strong
    {
        font-weight: 500;
    }
}



/*---------------------
    Filter features
---------------------*/
#js-select-filter-features
{
    .items
    {
        display: flex;
        align-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--inner_gap_xs);


        &.show_all
        {
            .btn:nth-child(6) ~ .btn
            {
                display: flex;
            }
        }
    }


    .btn
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;

        padding-block: var(--inner_gap_xxs);
        padding-inline: var(--inner_gap_xs);

        font-size: var(--inner_gap_s);
        font-weight: 500;
        line-height: var(--line_height_s);
        letter-spacing: var(--letter_spacing_s);

        list-style-type: none;

        cursor: pointer;
        transition: .2s linear;

        border: 1px solid rgb(var(--blue_color) / .07);
        border-radius: var(--border_radius_max);


        img,
        .icon
        {
            display: block;

            width: 24px;

            color: var(--primary_color);

            aspect-ratio: 1 / 1;
        }


        span
        {
            padding-inline: var(--inner_gap_xxs);
        }


        &:hover
        {
            background: rgb(var(--blue_strong_color) / .1);
        }


        &:active
        {
            background: rgb(var(--blue_strong_color) / .15);
        }


        &.active
        {
            border-color: transparent;
            background: rgb(var(--blue_color) / .07);
        }
    }


    .btn:nth-child(6) ~ .btn
    {
        display: none;
    }


    .spoler_btn
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
        gap: var(--inner_gap_xs);

        padding-block: var(--inner_gap_xxs);
        padding-inline: var(--inner_gap_xs) var(--inner_gap_s);

        font-size: var(--inner_gap_s);
        font-weight: 500;
        line-height: var(--line_height_s);
        letter-spacing: var(--letter_spacing_s);

        transition: background .2s linear;

        color: var(--primary_color);
        border: 1px solid var(--primary_color);
        border-radius: var(--border_radius_max);


        .icon
        {
            display: block;

            width: 24px;

            aspect-ratio: 1 / 1;
        }


        &:hover
        {
            background: rgb(var(--blue_strong_color) / .1);
        }


        &:active
        {
            background: rgb(var(--blue_strong_color) / .15);
        }


        .icon + .icon,
        span + span
        {
            display: none;
        }


        &.active
        {
            .icon,
            span
            {
                display: none;
            }


            .icon + .icon,
            span + span
            {
                display: block;
            }
        }
    }


    &:empty
    {
        display: none;
    }
}



/*------------------------
    Table laboratories
------------------------*/
.table-laboratories-head,
.block-contact-filters
{
    display: flex;
    align-content: center;
    align-items: center;
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: var(--inner_gap);

    margin-bottom: var(--inner_gap_l);


    &.no_m
    {
        margin-bottom: 0;
    }


    .depart-box
    {
        position: relative;

        width: 100%;


        ::-webkit-input-placeholder
        {
            color: rgba(0, 23, 64, .35);
        }

        :-moz-placeholder
        {
            color: rgba(0, 23, 64, .35);
        }

        ::-moz-placeholder
        {
            opacity: 1;
            color: rgba(0, 23, 64, .35);
        }

        :-ms-input-placeholder
        {
            color: rgba(0, 23, 64, .35);
        }


        #depart_search_button
        {
            position: absolute;
            z-index: 3;
            top: 0;
            bottom: 0;
            left: var(--inner_gap_s);

            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 24px;
            height: 24px;
            margin-block: auto;

            color: var(--grey_strong_color);


            .icon
            {
                display: block;

                width: 100%;

                aspect-ratio: 1 / 1;
            }
        }


        .depart-search
        {
            display: block;

            width: 100%;
            height: 52px;
            padding-inline: 40px var(--inner_gap_m);

            font-family: var(--font_family);
            font-size: var(--font_size_s);
            font-weight: 300;
            letter-spacing: var(--letter_spacing);

            transition: border-color .2s linear;

            color: var(--dark_color);
            border: 1px solid transparent;
            border-radius: var(--border_radius_max);
            background: rgb(var(--blue_color) / .07);


            &:-webkit-autofill
            {
                -webkit-box-shadow: inset 0 0 0 50px rgb(var(--blue_color) / .07) !important;
            }


            &:hover
            {
                border-color: rgb(var(--blue_color) / .15);
            }


            &:focus
            {
                border-color: transparent;
            }
        }
    }


    .js-city-dropdown
    {
        position: relative;

        width: 100%;


        select
        {
            display: none;


            & ~ .icon
            {
                position: absolute;
                top: 0;
                bottom: 0;
                left: var(--inner_gap_m);

                display: block;

                width: 24px;
                margin-block: auto;

                transition: transform .2s linear;
                pointer-events: none;

                color: var(--primary_color);

                aspect-ratio: 1 / 1;
            }


            & ~ .arr
            {
                position: absolute;
                top: 0;
                right: var(--inner_gap_m);
                bottom: 0;

                display: block;

                width: 24px;
                margin-block: auto;

                transition: transform .2s linear;
                pointer-events: none;

                aspect-ratio: 1 / 1;
            }
        }


        .nice-select
        {
            position: relative;

            cursor: pointer;


            & > .current,
            .multiple-options
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: flex-start;

                height: 52px;
                padding-inline: 47px 51px;

                font-size: var(--font_size_s);
                font-weight: 300;
                line-height: var(--line_height);
                letter-spacing: var(--letter_spacing);

                transition: border-color .2s linear;

                border: 1px solid rgb(var(--blue_color) / .07);
                border-radius: var(--border_radius_xs);
                background: var(--light_color);


                &:hover
                {
                    border-color: var(--primary_color);
                }
            }


            & > .current
            {
                span
                {
                    overflow: hidden;

                    white-space: nowrap;
                    text-overflow: ellipsis;
                }
            }


            .nice-select-dropdown
            {
                position: absolute;
                z-index: 9;
                top: 100%;
                right: 0;

                visibility: hidden;
                overflow: hidden;

                min-width: 100%;
                margin-top: var(--inner_gap_xxs);
                padding: var(--inner_gap_xxs);

                transition: .2s linear;
                transform: none;

                opacity: 0;
                border: 1px solid rgb(var(--blue_color) / .07);
                border-radius: var(--border_radius_xs);
                background: var(--light_color);
            }


            .nice-select-search-box
            {
                margin-bottom: var(--inner_gap_xs);


                .nice-select-search
                {
                    display: block;

                    width: 100%;
                    height: 40px;
                    padding-inline: var(--inner_gap_m);

                    font-family: var(--font_family);
                    font-size: var(--font_size_s);
                    font-weight: 300;
                    letter-spacing: var(--letter_spacing);

                    transition: border-color .2s linear;

                    color: var(--dark_color);
                    border: 1px solid transparent;
                    border-radius: var(--border_radius_xs);
                    background: rgb(var(--blue_color) / .07);


                    &:-webkit-autofill
                    {
                        -webkit-box-shadow: inset 0 0 0 50px rgb(var(--blue_color) / .07) !important;
                    }


                    &:hover
                    {
                        border-color: rgb(var(--blue_color) / .15);
                    }


                    &:focus
                    {
                        border-color: transparent;
                    }
                }
            }


            .list
            {
                display: flex;
                overflow-x: hidden;
                overflow-y: auto;
                flex-direction: column;
                gap: 2px;

                max-height: 280px;
                padding-right: var(--inner_gap_xxs);

                overscroll-behavior-y: contain;


                &::-webkit-scrollbar
                {
                    width: 4px;
                    height: 4px;

                    border-radius: var(--border_radius_xs);
                    background-color: var(--bg);
                }


                &::-webkit-scrollbar-thumb
                {
                    border-radius: var(--border_radius_xs);
                    background-color: var(--primary_color);
                }


                .option
                {
                    display: block;

                    padding-block: var(--inner_gap_s);
                    padding-inline: var(--inner_gap_m);

                    font-size: var(--font_size_s);

                    list-style-type: none;

                    cursor: pointer;
                    transition: .2s linear;

                    color: var(--dark_color);
                    border-radius: var(--border_radius_xs);


                    &:hover,
                    &.selected
                    {
                        color: var(--primary_color);
                        background: rgb(var(--blue_color) / .07);
                    }


                    &:empty
                    {
                        display: none;
                    }
                }
            }


            &.open ~ .arr
            {
                transform: rotate(180deg);
            }


            &.open
            {
                & > .current,
                .multiple-options
                {
                    border-color: var(--primary_color);
                }


                .nice-select-dropdown
                {
                    visibility: visible;

                    transform: none;

                    opacity: 1;
                }
            }
        }
    }


    .filter-works-weekends
    {
        display: none;


        label
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: nowrap;
            justify-content: center;
            gap: var(--inner_gap_xs);

            height: 32px;

            cursor: pointer;
            white-space: nowrap;


            input
            {
                display: none;


                &:checked ~ .check
                {
                    border-color: var(--primary_color);


                    .icon
                    {
                        opacity: 1;
                    }
                }
            }


            .check
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 22px;
                min-width: 22px;

                transition: border-color .2s linear;

                color: var(--primary_color);
                border: 2px solid rgba(0, 23, 64, .35);
                border-radius: 4px;

                aspect-ratio: 1 / 1;


                .icon
                {
                    display: block;

                    width: 16px;

                    transition: opacity .2s linear;

                    opacity: 0;

                    aspect-ratio: 1 / 1;
                }


                & + *
                {
                    font-size: var(--font_size_xs);
                    font-weight: 300;
                    line-height: var(--line_height_s);
                    letter-spacing: var(--letter_spacing_s);

                    color: var(--grey_strong_color);
                }
            }
        }
    }


    .show_city_on_map,
    .show_city_on_list
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: nowrap;
        justify-content: center;
        gap: var(--inner_gap_xxs);

        height: 52px;
        padding-inline: var(--inner_gap);

        font-size: var(--font_size_s);
        font-weight: 500;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        transition: background .2s linear;
        white-space: nowrap;
        text-decoration: none;

        color: var(--light_color);
        border-radius: var(--border_radius_max);
        background: var(--primary_color);


        svg
        {
            display: block;

            width: 24px;
            min-width: 24px;

            aspect-ratio: 1 / 1;
        }


        &:hover
        {
            background: var(--primary_color_hover);
        }


        &:active
        {
            background: var(--primary_color_active);
        }
    }
}



.js-block-filter-features
{
    margin-bottom: var(--inner_gap);


    &:empty
    {
        display: none;
    }
}



.contact-loading
{
    display: block;

    width: 40px;
    margin-block: var(--inner_gap);
    margin-inline: auto;

    aspect-ratio: 1 / 1;


    &.hide
    {
        display: none;
    }
}



.mob_bottom_fixed_btn
{
    position: sticky;
    z-index: 9;
    bottom: var(--cont_padding);
    left: var(--cont_padding);

    display: none;

    width: calc(100% - 52px - var(--cont_padding));
    margin-top: var(--inner_gap_l);

    font-size: var(--font_size_s);
    font-weight: 500;
    line-height: var(--line_height);
    letter-spacing: var(--letter_spacing);

    text-decoration: none;

    color: var(--light_color);


    &.short
    {
        width: calc(100% - 52px - var(--cont_padding) * 3);
    }


    & > span
    {
        position: relative;
        z-index: 10;

        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
        gap: var(--inner_gap_xxs);

        width: 100%;
        height: 52px;
        padding-inline: var(--inner_gap);

        transition: background .2s linear;

        border-radius: var(--border_radius_max);
        background: var(--primary_color);
    }


    .btn-dila
    {
        z-index: 10;

        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
        gap: var(--inner_gap_xxs);

        width: 100%;
        height: 52px;
        margin-top: 20px;
        padding-inline: var(--inner_gap);
    }


    svg
    {
        display: block;

        width: 24px;
        min-width: 24px;

        aspect-ratio: 1 / 1;
    }


    &:hover
    {
        & > span
        {
            background: var(--primary_color_hover);
        }
    }


    &:active
    {
        & > span
        {
            background: var(--primary_color_active);
        }
    }


    &.is-stuck:before
    {
        position: fixed;
        z-index: 5;
        bottom: 0;
        left: 0;

        display: block;

        width: 100vw;
        height: 105px;

        content: '';

        background: linear-gradient(180deg, rgba(255, 255, 255, 0) 3.57%, var(--light_color) 50%);
    }


    &.mob_research_prices_categories_btn,
    &.btn-orderresearch,
    &.btn-becomepartner-mob
    {
        margin-top: 0;
        margin-bottom: var(--inner_gap_l);
    }
}



.table-laboratories
{
    .contact-loading
    {
        display: block;

        margin: auto;
        padding-top: 50px;
        padding-bottom: 50px;


        @media screen and (max-width: 992px)
        {
            &
            {
                padding-top: 20px;
            }
        }
    }


    table
    {
        width: 100%;

        border-spacing: 0 8px;
        border-collapse: separate;


        th
        {
            height: 32px;
            padding-block: var(--inner_gap_xxs);
            padding-inline: var(--inner_gap_m);

            font-size: var(--font_size_xs);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            text-align: left;
            vertical-align: middle;

            color: var(--grey_strong_color);
            background: var(--bg_grey);


            &:first-child
            {
                border-left: 1px solid transparent;
                border-top-left-radius: var(--border_radius_xs);
                border-bottom-left-radius: var(--border_radius_xs);
            }


            &:last-child
            {
                border-right: 1px solid transparent;
                border-top-right-radius: var(--border_radius_xs);
                border-bottom-right-radius: var(--border_radius_xs);
            }
        }


        td
        {
            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            text-align: left;
            vertical-align: middle;

            border: 1px solid rgb(var(--blue_color) / .07);
            border-radius: var(--border_radius_s);
            background: var(--light_color);


            .row
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: nowrap;
                justify-content: flex-start;


                & > *
                {
                    padding-block: var(--inner_gap_m);
                    padding-inline: var(--inner_gap_m);
                }
            }


            .location
            {
                display: flex;
                flex-direction: column;
                gap: var(--inner_gap_xxs);

                width: 100%;


                .address
                {
                    font-weight: 500;
                }
            }


            .map_link
            {
                a
                {
                    display: inline-block;

                    padding: 8px;

                    vertical-align: middle;
                    text-decoration: none;

                    color: var(--primary_color);


                    .icon
                    {
                        display: block;

                        width: 24px;

                        aspect-ratio: 1 / 1;
                    }
                }
            }


            .work_time
            {
                display: flex;
                flex-direction: column;
                gap: var(--inner_gap_xxs);
            }


            .features
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: flex-start;
                gap: var(--inner_gap_xs);

                color: var(--primary_color);


                .icon
                {
                    position: relative;


                    img
                    {
                        display: block;

                        width: 20px;
                    }


                    .tooltip
                    {
                        position: absolute;
                        top: 100%;
                        left: 100%;

                        display: none;

                        padding-block: var(--inner_gap_xxs);
                        padding-inline: var(--inner_gap_xs);

                        font-size: var(--font_size_xs);
                        font-weight: 300;
                        line-height: calc(100% + 2px);
                        letter-spacing: var(--letter_spacing_l);

                        white-space: nowrap;
                        pointer-events: none;

                        color: var(--light_color);
                        border-radius: 4px;
                        background: #282d34;
                    }


                    &:hover
                    {
                        .tooltip
                        {
                            display: block;
                        }
                    }
                }
            }


            .logo
            {
                img
                {
                    display: block;

                    max-width: 100%;
                    max-height: 48px;
                    margin-inline: auto;
                }
            }


            .comment
            {
                width: 100%;
                padding-block: var(--inner_gap_xs);
                padding-inline: var(--inner_gap_s);

                font-size: var(--font_size_xs);
                font-weight: 300;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_s);

                color: #e56300;
                border-radius: 0 0 var(--border_radius_s) var(--border_radius_s);
                background: var(--alert-warning-bg, #fef5e5);
            }
        }


        .map_link
        {
            width: 100px;
            min-width: 100px;

            table-layout: fixed;

            text-align: center;
        }


        .work_time
        {
            width: 234px;
            min-width: 234px;

            table-layout: fixed;
        }


        .features
        {
            width: 240px;
            min-width: 240px;

            table-layout: fixed;
        }


        .logo
        {
            width: 152px;
            min-width: 152px;

            table-layout: fixed;

            text-align: center;
        }
    }


    .wrapper-accordions-dep
    {
        display: none;
        flex-direction: column;
        gap: var(--inner_gap_xs);


        .accordion-dep
        {
            cursor: pointer;
            transition: .2s linear;

            border: 1px solid rgb(var(--blue_color) / .07);
            border-radius: var(--border_radius_s);
            background: var(--light_color);


            .accordion-head
            {
                display: flex;
                align-content: flex-start;
                align-items: flex-start;
                flex-wrap: nowrap;
                justify-content: space-between;
                gap: var(--inner_gap_xs);

                padding: var(--inner_gap_m);


                .block-title
                {
                    display: flex;
                    flex-direction: column;
                    gap: var(--inner_gap_xxs);

                    font-size: var(--font_size_s);
                    font-weight: 300;
                    line-height: var(--line_height);
                    letter-spacing: var(--letter_spacing);


                    .address
                    {
                        font-weight: 500;
                    }
                }


                .arr
                {
                    display: block;

                    width: 20px;
                    min-width: 20px;
                    margin-left: auto;

                    transition: transform .2s linear;

                    color: var(--primary_color);

                    aspect-ratio: 1 / 1;
                }
            }


            &.open
            {
                border-color: var(--primary_color);
                box-shadow: 0 0 0 3px rgb(var(--blue_color) / .07);


                .accordion-head
                {
                    .arr
                    {
                        transform: rotate(180deg);
                    }
                }


                .accordion-content
                {
                    display: flex;
                }
            }
        }


        .accordion-content
        {
            display: none;
            flex-direction: column;
            gap: var(--inner_gap_m);

            padding-block: var(--inner_gap_m);
            padding-inline: var(--inner_gap_m);


            .item-content
            {
                display: flex;
                align-content: flex-start;
                align-items: flex-start;
                flex-wrap: wrap;
                justify-content: space-between;


                .label-title
                {
                    font-size: var(--font_size_xs);
                    font-weight: 300;
                    line-height: var(--line_height_s);
                    letter-spacing: var(--letter_spacing_s);

                    white-space: nowrap;

                    color: var(--grey_strong_color);
                }


                .block-logo
                {
                    img
                    {
                        display: block;

                        height: 36px;
                    }
                }


                .block-time
                {
                    display: flex;
                    align-content: flex-end;
                    align-items: flex-end;
                    flex-direction: column;
                    gap: var(--inner_gap_xxs);

                    font-size: var(--font_size_s);
                    font-weight: 500;
                    line-height: var(--line_height);
                    letter-spacing: var(--letter_spacing);

                    text-align: right;
                }


                .block-icons
                {
                    display: flex;
                    align-content: center;
                    align-items: center;
                    flex-wrap: wrap;
                    justify-content: flex-end;
                    gap: var(--inner_gap_xxs);


                    img
                    {
                        display: block;

                        width: 20px;

                        aspect-ratio: 1 / 1;
                    }
                }
            }

            .comment
            {
                margin-block: 0 calc(var(--inner_gap_m) * -1);
                margin-inline: calc(var(--inner_gap_m) * -1);
                padding-block: var(--inner_gap_xs);
                padding-inline: var(--inner_gap_s);

                font-size: var(--font_size_xs);
                font-weight: 300;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_s);

                color: #e56300;
                border-radius: 0 0 var(--border_radius_s) var(--border_radius_s);
                background: var(--alert-warning-bg, #fef5e5);
            }
        }
    }
}


.map-laboratories
{
    position: relative;

    --sidebar_width: 302px;


    .content
    {
        display: none;
        gap: var(--inner_gap);


        .map-i-block-map
        {
            position: relative;

            overflow: hidden;
            flex-grow: 1;

            border-radius: var(--border_radius_m);
            background: var(--bg_grey);
        }
    }


    .js-block-filter-features
    {
        margin-bottom: 0;
    }


    #js-select-filter-features
    {
        .btn:nth-child(6) ~ .btn
        {
            display: flex;
        }


        .btn:nth-child(4) ~ .btn
        {
            display: none;
        }
    }


    aside
    {
        display: none;
    }


    #map-select-address
    {
        .scroll
        {
            overflow-x: hidden;
            overflow-y: auto;

            max-height: 708px;

            overscroll-behavior-y: contain;


            &::-webkit-scrollbar
            {
                width: 15px;
                height: 15px;

                border-radius: 0;
                background-color: var(--bg);
            }


            &::-webkit-scrollbar-thumb
            {
                border: var(--inner_gap_xxs) solid var(--bg);
                border-radius: var(--border_radius_xs);
                background-color: var(--primary_color);
            }


            #js-list-points
            {
                display: flex;
                flex-direction: column;
                gap: var(--inner_gap_xxs);

                padding-right: var(--inner_gap_xs);

                border-right: 1px solid rgb(var(--blue_color) / .07);


                .branches-not-found-text
                {
                    padding-block: var(--inner_gap_xs);
                    padding-inline: var(--inner_gap_s);

                    font-size: var(--font_size_s);
                    font-weight: 300;
                    line-height: var(--line_height);
                    letter-spacing: var(--letter_spacing);

                    color: #e56300;
                    border-radius: var(--border_radius_xs);
                    background: #fef5e5;
                }


                li
                {
                    position: relative;

                    display: block;

                    list-style-type: none;
                }


                a
                {
                    display: flex;
                    overflow: hidden;
                    flex-direction: column;
                    gap: var(--inner_gap_xxs);

                    padding: var(--inner_gap_m);

                    font-size: var(--font_size_s);
                    font-weight: 300;
                    line-height: var(--line_height);
                    letter-spacing: var(--letter_spacing);

                    transition: .2s linear;
                    text-decoration: none;

                    color: currentColor;
                    border: 1px solid rgb(var(--blue_color) / .07);
                    border-radius: var(--border_radius_s);


                    .address
                    {
                        font-weight: 500;
                    }


                    .comment
                    {
                        margin-block: var(--inner_gap_s) calc(var(--inner_gap_m) * -1);
                        margin-inline: calc(var(--inner_gap_m) * -1);
                        padding-block: var(--inner_gap_xs);
                        padding-inline: var(--inner_gap_s);

                        font-size: var(--font_size_xs);
                        line-height: var(--line_height_s);
                        letter-spacing: var(--letter_spacing_s);

                        color: #e56300;
                        background: #fef5e5;
                    }


                    &:hover,
                    &.active
                    {
                        border-color: var(--primary_color);
                        background: rgb(var(--blue_color) / .07);
                    }
                }
            }
        }
    }


    &.loaded
    {
        aside
        {
            display: block;
        }


        .content
        {
            display: flex;

            height: 708px;
        }
    }
}



/*-------------------
    Map info item
-------------------*/
.map-i-info-block,
.map-infowindow
{
    position: absolute;
    z-index: 10;
    top: 50%;
    right: 48px;

    display: none;
    flex-direction: column;
    gap: var(--inner_gap_m);

    width: 320px;
    padding: var(--inner_gap_m);

    transform: translateY(-50%);

    border: 1px solid var(--primary_color);
    border-radius: var(--border_radius_s);
    background: var(--light_color);
    box-shadow: var(--box_shadow);


    .map-header
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xxs);

        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);


        .address
        {
            font-weight: 500;
        }
    }


    .map-item-info
    {
        display: flex;
        align-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        justify-content: space-between;


        &.wrapper-map-logo
        {
            padding-block: var(--inner_gap_xs);
        }


        .label
        {
            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            color: var(--grey_strong_color);
        }


        .block-map-logo
        {
            img
            {
                display: block;

                width: 140px;
                height: 40px;

                object-fit: contain;
                object-position: right center;
            }
        }


        .block-map-times
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_xxs);

            font-size: var(--font_size_xs);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);
        }


        .map-icons
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: flex-end;
            gap: var(--inner_gap_xxs);


            img
            {
                display: block;

                width: 20px;

                aspect-ratio: 1 / 1;
            }
        }
    }


    .comment
    {
        margin-block: 0 calc(var(--inner_gap_m) * -1);
        margin-inline: calc(var(--inner_gap_m) * -1);
        padding-block: var(--inner_gap_xs);
        padding-inline: var(--inner_gap_s);

        font-size: var(--font_size_xs);
        font-weight: 300;
        line-height: var(--line_height_s);
        letter-spacing: var(--letter_spacing_s);

        color: #e56300;
        border-radius: 0 0 var(--border_radius_s) var(--border_radius_s);
        background: var(--alert-warning-bg, #fef5e5);
    }
}


/* основной контейнер */
.gm-style-iw-c
{
    padding: 0 !important;

    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* стрелка снизу */
.gm-style-iw-t::after
{
    display: none !important;
}

/* внутренний скролл-контейнер */
.gm-style-iw-d
{
    overflow: hidden !important;

    padding: 0 !important;
}

/* кнопка закрытия */
.gm-style-iw-chr
{
    display: none !important;
}

/* фоновый оверлей */
.gm-style-iw-tc
{
    display: none !important;
}


.map-infowindow
{
    position: relative;
    inset: 0;

    display: flex;

    font-family: var(--font_family);
    font-size: var(--font_size);
    font-weight: 400;
    line-height: normal;

    transform: none;

    color: var(--dark_color);
}


.mob-map-i-info-block.modal
{
    gap: var(--inner_gap_m);

    margin-top: auto;


    .map-header
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xxs);

        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);


        .address
        {
            font-weight: 500;
        }
    }


    .map-item-info
    {
        display: flex;
        align-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        justify-content: space-between;


        .label
        {
            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            color: var(--grey_strong_color);
        }


        .wrapper-map-logo
        {
            padding-block: var(--inner_gap_xs);


            .block-map-logo
            {
                img
                {
                    display: block;

                    width: 56px;
                    max-width: 100%;
                }
            }
        }


        .block-map-times
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_xxs);

            font-size: var(--font_size_xs);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);
        }


        .map-icons
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: flex-end;
            gap: var(--inner_gap_xxs);


            img
            {
                display: block;

                width: 20px;

                aspect-ratio: 1 / 1;
            }
        }
    }


    .comment
    {
        padding-block: var(--inner_gap_xs);
        padding-inline: var(--inner_gap_s);

        font-size: var(--font_size_xs);
        font-weight: 300;
        line-height: var(--line_height_s);
        letter-spacing: var(--letter_spacing_s);

        color: #e56300;
        border-radius: var(--border_radius_s);
        background: var(--alert-warning-bg, #fef5e5);
    }
}



/*--------------
    VMD page
--------------*/
.vmd_page
{
    display: flex;
    align-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    justify-content: space-between;


    .data
    {
        display: flex;
        flex-direction: column;
        gap: var(--block_padding_l);

        width: calc(100% - 412px - var(--inner_gap));


        .block_title
        {
            margin-bottom: var(--inner_gap);

            font-size: var(--font_size_title);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: -.64px;


            &.center
            {
                text-align: center;
            }


            &.s_m
            {
                margin-bottom: var(--inner_gap_m);
            }


            &.l_m
            {
                margin-bottom: var(--block_padding);
            }
        }


        .prices
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_s);


            .col_name
            {
                width: calc(100% - 132px);
            }

            .col_price
            {
                width: 132px;
                max-width: 100%;
            }


            .titles
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: flex-start;

                font-size: var(--font_size_xs);
                font-weight: 500;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_s);

                color: var(--grey_strong_color);
                border-radius: var(--border_radius_xxs);
                background: var(--bg_grey);


                & > *
                {
                    display: flex;
                    align-content: center;
                    align-items: center;
                    flex-wrap: wrap;
                    justify-content: flex-start;

                    padding-block: var(--inner_gap_xs);
                    padding-inline: var(--inner_gap_m);


                    &.alignend
                    {
                        justify-content: flex-end;

                        text-align: right;
                    }
                }
            }


            .region
            {
                display: flex;
                flex-direction: column;
                gap: var(--inner_gap_xxs);


                .city
                {
                    padding-block: var(--inner_gap_xxs);
                    padding-inline: var(--inner_gap_m);

                    font-size: var(--font_size_s);
                    font-weight: 700;
                    line-height: var(--line_height);
                    letter-spacing: var(--letter_spacing);

                    text-align: center;

                    border-radius: var(--border_radius_xxs);
                    background: rgb(var(--blue_color) / .07);
                }


                .items
                {
                    display: flex;
                    flex-direction: column;
                    gap: var(--inner_gap_xs);
                }


                .item
                {
                    display: flex;
                    overflow: hidden;
                    align-content: center;
                    align-items: center;
                    flex-wrap: wrap;
                    justify-content: flex-start;

                    font-size: var(--font_size_s);
                    font-weight: 300;
                    line-height: var(--line_height);
                    letter-spacing: var(--letter_spacing);

                    border: 1px solid rgb(var(--blue_color) / .07);
                    border-radius: var(--border_radius_s);
                    background: var(--light_color);


                    & > *
                    {
                        display: flex;
                        align-content: center;
                        align-items: center;
                        flex-wrap: wrap;
                        justify-content: flex-start;

                        padding-block: var(--inner_gap_m);
                        padding-inline: var(--inner_gap_m);


                        &.col_price
                        {
                            justify-content: flex-end;

                            font-size: var(--font_size);
                            font-weight: 700;
                            letter-spacing: -.16px;

                            text-align: right;

                            color: var(--primary_color);
                        }


                        &.col_exp
                        {
                            width: 100%;
                            padding-block: var(--inner_gap_xs);

                            font-size: var(--font_size_xs);
                            font-weight: 300;
                            line-height: var(--line_height_s);
                            letter-spacing: var(--letter_spacing_s);

                            color: var(--grey_strong_color);
                            background: var(--bg_grey);


                            b,
                            strong
                            {
                                font-weight: 500;
                            }
                        }


                        &.col_name
                        {
                            b,
                            strong
                            {
                                font-weight: 500;
                            }
                        }
                    }
                }
            }
        }


        .message
        {
            margin-top: var(--block_padding);
            padding-block: var(--inner_gap_xs);
            padding-inline: var(--inner_gap_s);

            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            color: #e56300;
            border-radius: var(--border_radius_xs);
            background: #fef5e5;
        }


        .available
        {
            .search
            {
                display: flex;
                flex-direction: column;
                gap: 2px;


                .exp
                {
                    padding-block: var(--inner_gap_xs);
                    padding-inline: var(--inner_gap_m);

                    font-size: var(--font_size_xs);
                    font-weight: 300;
                    line-height: var(--line_height_s);
                    letter-spacing: var(--letter_spacing_s);

                    color: var(--grey_strong_color);
                }


                ::-webkit-input-placeholder
                {
                    color: rgba(0, 23, 64, .35);
                }

                :-moz-placeholder
                {
                    color: rgba(0, 23, 64, .35);
                }

                ::-moz-placeholder
                {
                    opacity: 1;
                    color: rgba(0, 23, 64, .35);
                }

                :-ms-input-placeholder
                {
                    color: rgba(0, 23, 64, .35);
                }


                .field
                {
                    position: relative;


                    .icon
                    {
                        position: absolute;
                        z-index: 3;
                        top: 0;
                        bottom: 0;
                        left: var(--inner_gap_s);

                        display: block;

                        width: 24px;
                        margin-block: auto;

                        pointer-events: none;

                        color: var(--grey_strong_color);

                        aspect-ratio: 1 / 1;
                    }


                    .input
                    {
                        display: block;

                        width: 100%;
                        height: 52px;
                        padding-inline: 40px var(--inner_gap_xs);

                        font-family: var(--font_family);
                        font-size: var(--font_size_s);
                        font-weight: 300;
                        letter-spacing: var(--letter_spacing);

                        transition: border-color .2s linear;

                        color: var(--dark_color);
                        border: 1px solid transparent;
                        border-radius: var(--border_radius_max);
                        background: rgb(var(--blue_color) / .07);


                        &:-webkit-autofill
                        {
                            -webkit-box-shadow: inset 0 0 0 50px rgb(var(--blue_color) / .07) !important;
                        }


                        &:hover
                        {
                            border-color: rgb(var(--blue_color) / .15);
                        }


                        &:focus
                        {
                            border-color: transparent;
                        }
                    }
                }
            }


            .result
            {
                display: flex;
                flex-direction: column;
                gap: var(--inner_gap_s);

                margin-top: var(--inner_gap);


                .col_city
                {
                    width: 100%;
                }

                .col_work_time
                {
                    width: 220px;
                    min-width: 220px;
                }

                .col_inside_city
                {
                    width: 160px;
                    min-width: 160px;
                }

                .col_for_kids
                {
                    width: 220px;
                    min-width: 220px;
                }


                .titles
                {
                    display: flex;
                    align-content: center;
                    align-items: center;
                    flex-wrap: nowrap;
                    justify-content: flex-start;

                    font-size: var(--font_size_xs);
                    font-weight: 500;
                    line-height: var(--line_height_s);
                    letter-spacing: var(--letter_spacing_s);

                    color: var(--grey_strong_color);
                    border-radius: var(--border_radius_xs);
                    background: var(--bg_grey);


                    & > *
                    {
                        display: flex;
                        flex-direction: column;
                        justify-content: center;

                        max-width: 100%;
                        padding-block: var(--inner_gap_xxs);
                        padding-inline: var(--inner_gap_m);


                        &.col_inside_city,
                        &.col_for_kids
                        {
                            align-content: center;
                            align-items: center;

                            text-align: center;
                        }
                    }
                }


                .items
                {
                    display: flex;
                    flex-direction: column;
                    gap: var(--inner_gap_xs);


                    &.hide
                    {
                        display: none;
                    }
                }


                .item
                {
                    display: flex;
                    align-content: center;
                    align-items: center;
                    flex-wrap: nowrap;
                    justify-content: flex-start;

                    font-size: var(--font_size_s);
                    font-weight: 300;
                    line-height: var(--line_height);
                    letter-spacing: var(--letter_spacing);

                    border: 1px solid rgb(var(--blue_color) / .07);
                    border-radius: var(--border_radius_s);
                    background: var(--light_color);


                    &.hide
                    {
                        display: none;
                    }


                    & > *
                    {
                        display: flex;
                        flex-direction: column;
                        justify-content: center;

                        max-width: 100%;
                        min-height: 96px;
                        padding-block: var(--inner_gap_m);
                        padding-inline: var(--inner_gap_m);


                        &.col_city
                        {
                            position: relative;

                            font-weight: 500;


                            .arr
                            {
                                position: absolute;
                                top: 0;
                                right: var(--inner_gap_m);
                                bottom: 0;

                                display: none;

                                width: 20px;
                                margin-block: auto;

                                transition: transform .2s linear;
                                transition: .2s linear;

                                aspect-ratio: 1 / 1;
                            }
                        }


                        &.col_work_time
                        {
                            gap: 2px;
                        }


                        &.col_inside_city,
                        &.col_for_kids
                        {
                            align-content: center;
                            align-items: center;

                            text-align: center;
                        }
                    }


                    &.open
                    {
                        & > *
                        {
                            &.col_city
                            {
                                .arr
                                {
                                    transform: rotate(180deg);
                                }
                            }
                        }
                    }
                }
            }
        }


        .advantages
        {
            .grid_row
            {
                --items_per_line: 2;
                --gap_x: var(--inner_gap);
                --gap_y: var(--inner_gap_xs);
            }


            .item
            {
                display: flex;
                flex-direction: column;
                gap: var(--inner_gap_xxs);

                padding-block: var(--inner_gap_m);
                padding-inline: var(--inner_gap);

                border-radius: var(--border_radius_xs);


                .icon
                {
                    display: flex;
                    align-content: center;
                    align-items: center;
                    flex-wrap: wrap;
                    justify-content: center;

                    width: 56px;

                    color: var(--primary_color);

                    aspect-ratio: 1 / 1;


                    svg
                    {
                        display: block;

                        max-width: 100%;
                        max-height: 100%;
                    }
                }


                .name
                {
                    font-weight: 700;
                    line-height: var(--line_height);
                    letter-spacing: -.16px;
                }


                .desc
                {
                    margin-top: var(--inner_gap_xxs);

                    font-size: var(--font_size_s);
                    font-weight: 300;
                    line-height: var(--line_height_l);
                    letter-spacing: var(--letter_spacing);

                    color: var(--grey_strong_color);
                }
            }
        }


        .rules
        {
            padding-block: var(--block_padding);
            padding-inline: var(--cont_padding_double);

            border-radius: var(--border_radius);
            background: rgb(var(--blue_color) / .07);


            .text_block
            {
                font-size: var(--font_size_s);
                font-weight: 300;
                line-height: var(--line_height_l);
                letter-spacing: var(--letter_spacing);

                color: var(--grey_strong_color);


                & > *
                {
                    margin-bottom: 20px;
                }


                .big
                {
                    font-size: var(--font_size);

                    color: var(--dark_color);


                    b,
                    strong
                    {
                        font-weight: 700;
                    }
                }


                * + .big
                {
                    margin-top: var(--inner_gap);
                }


                b,
                strong
                {
                    font-weight: 500;

                    color: var(--dark_color);
                }
            }
        }
    }
}


.vmd_action_block
{
    position: sticky;
    top: var(--inner_gap_s);

    display: flex;
    flex-direction: column;

    width: 412px;
    max-width: 100%;
    padding-block: var(--inner_gap_l);
    padding-inline: 20px;

    border: 1px solid rgb(var(--blue_color) / .07);
    border-radius: var(--border_radius_l);
    background: var(--letter_spacing);


    .title
    {
        font-size: var(--font_size_title_s);
        font-weight: 700;
        line-height: var(--line_height_l);
        letter-spacing: -.24px;

        text-align: center;
    }


    .desc
    {
        margin-top: var(--inner_gap_xs);

        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        text-align: center;

        color: var(--grey_strong_color);
    }


    .steps
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xs);

        margin-top: var(--inner_gap);


        .label
        {
            font-weight: 700;
            line-height: var(--line_height);
            letter-spacing: -.16px;
        }


        ol
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_s);

            counter-reset: li;


            & > li
            {
                position: relative;

                display: block;
                overflow: hidden;

                padding-left: 20px;

                font-size: var(--font_size_s);
                font-weight: 300;
                line-height: var(--line_height);
                letter-spacing: var(--letter_spacing);

                list-style-type: none;

                color: var(--grey_strong_color);


                &:before
                {
                    position: absolute;
                    top: 0;
                    left: 0;

                    content: counter(li) '.';
                    counter-increment: li;
                }
            }
        }
    }


    .btns
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_m);

        margin-top: var(--inner_gap_l);


        .btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;
            gap: var(--inner_gap_xxs);

            height: 52px;
            padding-inline: var(--inner_gap_m);

            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            transition: background .2s linear;
            text-align: center;
            text-decoration: none;

            color: var(--light_color);
            border-radius: var(--border_radius_max);
            background: var(--primary_color);


            &:hover
            {
                background: var(--primary_color_hover);
            }


            &:active
            {
                background: var(--primary_color_active);
            }


            &.outlined
            {
                font-size: var(--font_size_l);
                line-height: var(--line_height_l);
                letter-spacing: -.4px;

                color: var(--primary_color);
                border: 1px solid rgb(var(--blue_color) / .15);
                background: none;
            }


            .icon
            {
                display: block;

                width: 24px;

                aspect-ratio: 1 / 1;
            }
        }
    }
}



/*-------------------
    Contacts info
-------------------*/
.contacts_info
{
    .grid_row
    {
        --items_per_line: 2;
        --gap_x: var(--inner_gap);
        --gap_y: var(--inner_gap);
    }


    .col
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap);

        padding: var(--block_padding);

        background: var(--bg_grey);
    }


    .title
    {
        font-size: var(--font_size_title_s);
        font-weight: 700;
        line-height: var(--line_height_l);
        letter-spacing: -.24px;
    }


    .data
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap);
    }


    .item
    {
        display: flex;
        align-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--inner_gap_l);


        .icon
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 40px;

            color: var(--light_color);
            border-radius: 50%;
            background: var(--primary_color);

            aspect-ratio: 1 / 1;


            svg
            {
                display: block;

                width: 20px;

                aspect-ratio: 1 / 1;
            }
        }


        .val
        {
            width: 200px;
            max-width: 100%;
            padding-top: var(--inner_gap_xxs);

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);


            .contacts-tel
            {
                font-size: var(--font_size_title_s);
                font-weight: 400;
                line-height: var(--line_height_l);
                letter-spacing: -.24px;
            }


            .contacts-email
            {
                font-weight: 600;
            }


            a
            {
                white-space: nowrap;
                text-decoration: none;

                color: var(--primary_color);
            }
        }


        .desc
        {
            width: calc(100% - 304px);
            padding-top: var(--inner_gap_xxs);

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            color: var(--grey_strong_color);


            &.l_w
            {
                width: calc(100% - 40px - var(--inner_gap_l));
            }


            a
            {
                white-space: nowrap;
                text-decoration: none;

                color: var(--primary_color);
            }


            .cell-50
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: flex-start;

                min-height: calc(40px - var(--inner_gap_xxs));
            }


            .cell-100
            {
                width: calc(100% + 200px + var(--inner_gap_l));
                margin-top: var(--inner_gap_m);
                margin-left: calc(-200px - var(--inner_gap_l));
            }
        }


        .warning
        {
            width: 100%;
            margin-block: calc(var(--inner_gap_s) * -1) 0;
            padding: 0;

            font-size: var(--font_size_s);

            color: var(--red_color);
        }


        .btn
        {
            width: 100%;
            height: 48px;
            padding-inline: var(--inner_gap);

            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            transition: background .2s linear;

            color: var(--light_color);
            border-radius: var(--border_radius_max);
            background: var(--primary_color);


            &:hover
            {
                background: var(--primary_color_hover);
            }


            &:active
            {
                background: var(--primary_color_active);
            }
        }
    }


    .item + .item
    {
        padding-top: var(--inner_gap);

        border-top: 2px solid rgb(var(--blue_strong_color) / .07);
    }
}



/*-----------------
    Career page
-----------------*/
.career-page
{
    margin-block: calc(var(--outside_gap_s) * -1) 0;
}



/*--------------------
    Vacancies head
--------------------*/
.vacancies_head
{
    position: relative;

    margin-block: 0 var(--block_padding);
    padding-block: var(--block_padding) var(--outside_gap_m);

    color: var(--light_color);
    background: var(--primary_color);


    .cont
    {
        position: relative;
        z-index: 3;
    }


    .breadcrumbs
    {
        a,
        .sep
        {
            color: rgba(255, 255, 255, .30);
        }
    }


    .filter
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--inner_gap_s);

        margin-top: var(--inner_gap_s);


        .region
        {
            position: relative;

            width: 400px;
            max-width: 100%;


            .icon
            {
                position: absolute;
                z-index: 3;
                top: 0;
                bottom: 0;
                left: var(--inner_gap_s);

                width: 24px;
                margin-block: auto;

                pointer-events: none;

                color: var(--primary_color);

                aspect-ratio: 1 / 1;
            }


            select
            {
                display: none;


                & ~ .icon
                {
                    position: absolute;
                    top: 0;
                    bottom: 0;
                    left: var(--inner_gap_m);

                    display: block;

                    width: 24px;
                    margin-block: auto;

                    transition: transform .2s linear;
                    pointer-events: none;

                    color: var(--primary_color);

                    aspect-ratio: 1 / 1;
                }


                & ~ .arr
                {
                    position: absolute;
                    z-index: 3;
                    top: 0;
                    right: var(--inner_gap_m);
                    bottom: 0;

                    display: block;

                    width: 24px;
                    margin-block: auto;

                    transition: transform .2s linear;
                    pointer-events: none;

                    color: var(--dark_color);

                    aspect-ratio: 1 / 1;
                }
            }


            .nice-select
            {
                position: relative;

                cursor: pointer;


                & > .current,
                .multiple-options
                {
                    display: flex;
                    align-content: center;
                    align-items: center;
                    flex-wrap: wrap;
                    justify-content: flex-start;

                    height: 52px;
                    padding-inline: 47px 51px;

                    font-size: var(--font_size_s);
                    font-weight: 300;
                    line-height: var(--line_height);
                    letter-spacing: var(--letter_spacing);

                    transition: border-color .2s linear;

                    color: var(--dark_color);
                    border: 1px solid rgb(var(--blue_color) / .07);
                    border-radius: var(--border_radius_xs);
                    background: var(--light_color);


                    &:hover
                    {
                        border-color: var(--primary_color);
                    }
                }


                & > .current
                {
                    span
                    {
                        overflow: hidden;

                        white-space: nowrap;
                        text-overflow: ellipsis;
                    }
                }


                .nice-select-dropdown
                {
                    position: absolute;
                    z-index: 9;
                    top: 100%;
                    right: 0;

                    visibility: hidden;
                    overflow: hidden;

                    min-width: 100%;
                    margin-top: var(--inner_gap_xxs);
                    padding: var(--inner_gap_xxs);

                    transition: .2s linear;
                    transform: none;

                    opacity: 0;
                    border: 1px solid rgb(var(--blue_color) / .07);
                    border-radius: var(--border_radius_xs);
                    background: var(--light_color);
                }


                .nice-select-search-box
                {
                    margin-bottom: var(--inner_gap_xs);


                    .nice-select-search
                    {
                        display: block;

                        width: 100%;
                        height: 40px;
                        padding-inline: var(--inner_gap_m);

                        font-family: var(--font_family);
                        font-size: var(--font_size_s);
                        font-weight: 300;
                        letter-spacing: var(--letter_spacing);

                        transition: border-color .2s linear;

                        color: var(--dark_color);
                        border: 1px solid transparent;
                        border-radius: var(--border_radius_xs);
                        background: rgb(var(--blue_color) / .07);


                        &:-webkit-autofill
                        {
                            -webkit-box-shadow: inset 0 0 0 50px rgb(var(--blue_color) / .07) !important;
                        }


                        &:hover
                        {
                            border-color: rgb(var(--blue_color) / .15);
                        }


                        &:focus
                        {
                            border-color: transparent;
                        }
                    }
                }


                .list
                {
                    display: flex;
                    overflow-x: hidden;
                    overflow-y: auto;
                    flex-direction: column;
                    gap: 2px;

                    max-height: 280px;
                    padding-right: var(--inner_gap_xxs);

                    overscroll-behavior-y: contain;


                    &::-webkit-scrollbar
                    {
                        width: 4px;
                        height: 4px;

                        border-radius: var(--border_radius_xs);
                        background-color: var(--bg);
                    }


                    &::-webkit-scrollbar-thumb
                    {
                        border-radius: var(--border_radius_xs);
                        background-color: var(--primary_color);
                    }


                    .option
                    {
                        display: block;

                        padding-block: var(--inner_gap_s);
                        padding-inline: var(--inner_gap_m);

                        font-size: var(--font_size_s);

                        list-style-type: none;

                        cursor: pointer;
                        transition: .2s linear;

                        color: var(--dark_color);
                        border-radius: var(--border_radius_xs);


                        &:hover,
                        &.selected
                        {
                            color: var(--primary_color);
                            background: rgb(var(--blue_color) / .07);
                        }


                        &:empty
                        {
                            display: none;
                        }
                    }
                }


                &.open ~ .arr
                {
                    transform: rotate(180deg);
                }


                &.open
                {
                    & > .current,
                    .multiple-options
                    {
                        border-color: var(--primary_color);
                    }


                    .nice-select-dropdown
                    {
                        visibility: visible;

                        transform: none;

                        opacity: 1;
                    }
                }
            }
        }


        .checkbox
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;
            gap: var(--inner_gap_xs);

            min-height: 32px;
            padding-left: var(--inner_gap_xs);

            cursor: pointer;
            transition: .2s linear;

            color: var(--primary_color);


            input
            {
                display: none;


                &:checked ~ .check
                {
                    border-color: var(--light_color);
                    background: var(--light_color);


                    .icon
                    {
                        opacity: 1;
                    }
                }
            }


            .check
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 20px;

                transition: border-color .2s linear;

                color: var(--primary_color);
                border: 2px solid rgba(255, 255, 255, .50);
                border-radius: 4px;

                aspect-ratio: 1 / 1;


                .icon
                {
                    display: block;

                    width: 16px;

                    transition: opacity .2s linear;

                    opacity: 0;

                    aspect-ratio: 1 / 1;
                }
            }


            span
            {
                font-weight: 300;
                line-height: var(--line_height_l);
                letter-spacing: var(--letter_spacing_l);

                color: var(--light_color);
            }
        }
    }


    .bg
    {
        position: absolute;
        z-index: 1;
        top: 50%;
        right: 50%;

        display: block;

        width: 427px;
        margin-right: -682px;

        transform: translateY(-50%);
        pointer-events: none;


        img
        {
            display: block;

            width: 100%;
        }
    }
}



/*------------------
    Vacancy head
------------------*/
.vacancy_head
{
    .row
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--inner_gap_xxs);
    }


    .city
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--inner_gap_xxs);

        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);


        .icon
        {
            display: block;

            width: 20px;

            color: var(--primary_color);

            aspect-ratio: 1 / 1;
        }
    }


    .type
    {
        position: relative;

        margin-left: 2px;
        padding-left: 8px;

        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        color: var(--grey_strong_color);


        &:before
        {
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;

            display: block;

            width: 2px;
            height: 2px;
            margin-block: auto;

            content: '';

            border-radius: 50%;
            background: rgba(0, 23, 64, .35);
        }
    }
}



/*---------------
    Vacancies
---------------*/
.vacancies
{
    .count
    {
        margin-bottom: var(--inner_gap_l);

        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        color: var(--grey_strong_color);
    }


    .vacancy
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xxs);

        min-height: 204px;
        padding-block: 20px;
        padding-inline: var(--inner_gap_s);

        text-decoration: none;

        color: currentColor;
        border: 1px solid rgb(var(--blue_color) / .07);
        border-radius: var(--border_radius_s);
        background: var(--light_color);


        .new
        {
            width: fit-content;
            margin-bottom: var(--inner_gap_xxs);
            padding-block: var(--inner_gap_xxs);
            padding-inline: var(--inner_gap_xs);

            font-size: var(--font_size_xs);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            color: #e56300;
            border-radius: var(--border_radius_max);
            background: #fef5e5;
        }


        .name
        {
            font-size: var(--font_size_l);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_m);
        }


        .location
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: flex-start;
            gap: var(--inner_gap_xxs);

            margin-top: var(--inner_gap_s);

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);


            .icon
            {
                display: block;
                gap: var(--inner_gap_xxs);

                width: 20px;

                color: var(--primary_color);

                aspect-ratio: 1 / 1;
            }


            span
            {
                width: calc(100% - 20px -
                var(--inner_gap_xxs));
            }
        }


        .type
        {
            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            color: var(--grey_strong_color);
        }
    }
}



/*-------------------
    Career action
-------------------*/
.career_action
{
    .data
    {
        position: relative;

        display: flex;
        overflow: hidden;
        flex-direction: column;
        justify-content: center;

        min-height: 362px;
        padding: var(--block_padding_l);

        text-align: center;

        color: var(--light_color);
        border-radius: var(--border_radius);
        background: var(--primary_color);
    }


    .info
    {
        position: relative;
        z-index: 3;

        display: flex;
        align-content: center;
        align-items: center;
        flex-direction: column;
        gap: var(--inner_gap_s);

        width: 327px;
        max-width: 100%;
        margin-left: 26.718%;
    }


    .title
    {
        font-size: var(--font_size_title);
        font-weight: 500;
        line-height: var(--line_height_s);
        letter-spacing: -.64px;
    }

    .desc
    {
        font-size: var(--font_size_l);
        font-weight: 300;
        line-height: var(--line_height_l);
        letter-spacing: -.4px;

        color: var(--light_soft_color);
    }


    .btn
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;

        width: fit-content;
        min-width: 231px;
        max-width: 100%;
        height: 52px;
        margin-top: var(--inner_gap_s);
        padding-inline: var(--inner_gap_l);

        font-size: var(--font_size_s);
        font-weight: 500;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        color: var(--light_color);
        border-radius: var(--border_radius_max);
        background: #0080ff;
    }


    .bg
    {
        position: absolute;
        z-index: 1;
        top: 0;
        left: 0;

        display: block;

        height: 100%;

        pointer-events: none;


        img
        {
            position: absolute;
            top: 50%;
            left: 0;

            display: block;

            height: 613px;

            transform: translate(-20%, -50%);

            mix-blend-mode: plus-lighter;
        }
    }


    .image
    {
        position: absolute;
        z-index: 1;
        top: 0;
        right: 10.546%;

        display: block;

        width: 386px;

        pointer-events: none;


        img
        {
            display: block;

            width: 100%;
        }
    }
}



/*---------------------
    Career benefits
---------------------*/
.career_benefits
{
    .grid_row
    {
        --items_per_line: 5;
    }


    .item
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xs);

        padding: var(--inner_gap_s);

        text-align: center;


        .icon
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            height: 40px;
            margin-bottom: var(--inner_gap_xs);


            img
            {
                display: block;

                max-width: 100%;
                max-height: 100%;
            }
        }


        .name
        {
            font-weight: 700;
            line-height: var(--line_height);
            letter-spacing: -.16px;
        }


        .desc
        {
            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height_l);
            letter-spacing: var(--letter_spacing);

            color: var(--grey_strong_color);
        }
    }
}



/*------------------
    Vacancy info
------------------*/
.vacancy_info
{
    .response_btn
    {
        display: block;

        width: fit-content;
        margin-inline: auto;
        margin-top: var(--block_padding);


        span
        {
            padding-inline: var(--outside_gap_m);
        }
    }
}



/*------------------------------
    Send resume notification
------------------------------*/
#send_resume_notification
{
    position: fixed;
    z-index: 9;
    right: 0;
    bottom: var(--cont_padding);

    display: flex;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: var(--inner_gap_xs);

    width: 351px;
    max-width: calc(100% - 52px - var(--cont_padding) * 3);
    padding-block: var(--inner_gap_xxs);
    padding-inline: var(--inner_gap_m) var(--inner_gap_xs);

    font-size: var(--font_size_xs);
    font-weight: 300;
    line-height: var(--line_height_s);
    letter-spacing: var(--letter_spacing_s);

    transition: .2s linear;
    transform: translateX(100%);

    color: var(--light_color);
    border-radius: var(--border_radius_xs);
    background: var(--dark_color);
    box-shadow: var(--box_shadow);


    &.show
    {
        transform: translateX(calc(-68px - var(--cont_padding)));
    }


    span
    {
        width: calc(100% - 88px);
    }


    .close_btn
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;

        width: 40px;
        margin-left: var(--inner_gap_xs);

        aspect-ratio: 1 / 1;


        .icon
        {
            display: block;

            width: 24px;

            aspect-ratio: 1 / 1;
        }
    }
}



/*------------------
    Article head
------------------*/
.article_head
{
    .info
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--inner_gap_xs);

        margin-top: calc(var(--inner_gap_xs) * -1);


        .sep
        {
            width: 2px;

            border-radius: 50%;
            background: var(--grey_strong_color);

            aspect-ratio: 1 / 1;
        }
    }


    .category
    {
        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        color: var(--primary_color);


        a
        {
            text-decoration: none;

            color: currentColor;
        }
    }


    .date
    {
        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        color: var(--grey_strong_color);
    }
}



/*------------------
    Article info
------------------*/
.article_info
{
    .image
    {
        display: block;

        border-radius: var(--border_radius_m);
        background: var(--bg_grey);

        aspect-ratio: 1 / .511;


        &.new_size
        {
            margin-bottom: var(--block_padding);

            aspect-ratio: auto;
        }
    }


    .other_articles
    {
        position: sticky;
        top: 0;
    }
}



/*----------------------
    Instruction info
----------------------*/
.instruction_info
{
    .accordion_data
    {
        .item
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_xxs);


            .link
            {
                font-size: var(--font_size_s);
                font-weight: 300;
                line-height: var(--line_height);
                letter-spacing: var(--letter_spacing);


                a
                {
                    display: inline-block;

                    transition: color .2s linear;
                    vertical-align: top;
                    text-decoration: none;

                    color: var(--primary_color);


                    &:hover
                    {
                        color: var(--primary_color_hover);
                    }


                    &:active
                    {
                        color: var(--primary_color_active);
                    }
                }
            }


            .info
            {
                font-size: var(--font_size_s);
                font-weight: 300;
                line-height: var(--line_height_l);
                letter-spacing: var(--letter_spacing);

                color: var(--grey_strong_color);
            }
        }


        .item + .item
        {
            margin-top: var(--inner_gap_m);
        }
    }
}



/*---------------------
    Article gallery
---------------------*/
.article-gallery
{
    margin-top: var(--inner_gap_l);


    .big
    {
        .swiper
        {
            border-radius: var(--border_radius_l);

            --spaceBetween: 0;
            --slidesPerView: 1;


            .swiper-controls
            {
                position: absolute;
                z-index: 5;
                top: 50%;

                justify-content: space-between;

                width: 100%;
                padding-inline: var(--inner_gap);

                transform: translateY(-50%);
            }


            .swiper-button-next,
            .swiper-button-prev
            {
                background: rgba(255,255,255,.4);


                &:hover
                {
                    background: rgba(255,255,255,.8);
                }
            }
        }


        .thumb
        {
            display: block;

            background: var(--bg_grey);

            aspect-ratio: 1 / .511;


            img
            {
                min-height: 200px;
            }
        }
    }


    .thumbs
    {
        margin-top: var(--inner_gap_s);


        .swiper
        {
            padding-inline: 60px;

            --spaceBetween-0: var(--inner_gap_xs);
            --slidesPerView-0: 3;
            --spaceBetween-768: var(--inner_gap_xs);
            --slidesPerView-768: 4;
            --spaceBetween-1280: var(--inner_gap_xs);
            --slidesPerView-1280: 5;


            &:not(.swiper-initialized)
            {
                .swiper-wrapper
                {
                    gap: var(--spaceBetween-1280);
                }


                .swiper-slide
                {
                    width: calc(100% / var(--slidesPerView-1280) - var(--spaceBetween-1280));
                }
            }


            .swiper-slide
            {
                visibility: hidden;

                transition: opacity .2s linear, visibility .2s linear;
                pointer-events: none;

                opacity: 0;


                &.visible
                {
                    visibility: visible;

                    pointer-events: auto;

                    opacity: 1;
                }


                &.swiper-slide-thumb-active
                {
                    .thumb
                    {
                        opacity: 1;
                    }
                }
            }
        }


        .thumb
        {
            display: block;

            cursor: pointer;
            transition: opacity .2s linear;

            opacity: .4;
            border-radius: var(--border_radius_xs);
            background: var(--bg_grey);

            aspect-ratio: 1 / .511;
        }
    }
}



/*--------------------
    Download files
--------------------*/
.download_files
{
    display: flex;
    flex-direction: column;
    gap: var(--inner_gap_xxs);


    .file
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--inner_gap_xs);

        padding-block: var(--inner_gap_xs);
        padding-inline: var(--inner_gap_xs);

        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        transition: color .2s linear;
        text-decoration: none;

        color: currentColor;
        background: var(--grey_light_color);


        .type
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 33px;

            aspect-ratio: 1 / 1;


            img
            {
                display: block;

                max-width: 100%;
                max-height: 100%;
            }
        }


        .name
        {
            width: calc(100% - 61px - var(--inner_gap_xs) * 2);
        }


        .download
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 28px;
            margin-left: auto;

            aspect-ratio: 1 / 1;


            img
            {
                display: block;

                max-width: 100%;
                max-height: 100%;
            }
        }


        @media (hover: hover) and (pointer: fine)
        {
            &:hover
            {
                color: var(--primary_color);
            }
        }
    }
}



/*-----------------
    Partnership
-----------------*/
.partnership
{
    .send_btn
    {
        position: sticky;
        top: var(--inner_gap);

        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
        gap: var(--inner_gap_xxs);

        width: 100%;
        height: 52px;
        padding-inline: var(--inner_gap_m);

        font-size: var(--font_size_s);
        font-weight: 500;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        transition: background .2s linear;
        text-align: center;
        text-decoration: none;

        color: var(--light_color);
        border-radius: var(--border_radius_max);
        background: var(--primary_color);


        &:hover
        {
            background: var(--primary_color_hover);
        }


        &:active
        {
            background: var(--primary_color_active);
        }
    }
}



/*----------------------
    Partnership info
----------------------*/
.partnership_info
{
    padding-bottom: var(--inner_gap);


    .grid_row
    {
        --items_per_line: 2;
        --gap_x: var(--block_padding);
        --gap_y: var(--block_padding);
    }


    .col
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap);


        .title
        {
            padding-block: var(--inner_gap_s);

            font-size: var(--font_size);

            border-bottom: 5px solid var(--primary_color);
        }


        .items
        {
            display: flex;
            flex-direction: column;
            gap: var(--block_padding);
        }


        .item
        {
            display: flex;
            align-content: flex-start;
            align-items: flex-start;
            flex-wrap: wrap;
            justify-content: space-between;
            gap: 0 var(--inner_gap_m);


            .icon
            {
                width: 34px;
                height: 45px;

                border-bottom: 4px solid var(--primary_color);
                background: url(../images/icon-article.png) 0 0 no-repeat;


                &.icon1
                {
                    background-position: 0 2px;
                }

                &.icon2
                {
                    background-position: 0 -78px;
                }

                &.icon3
                {
                    background-position: 0 -181px;
                }

                &.icon4
                {
                    background-position: 0 -260px;
                }

                &.icon5
                {
                    background-position: 0 -371px;
                }

                &.icon6
                {
                    background-position: 0 -455px;
                }

                &.icon7
                {
                    background-position: 0 -568px;
                }

                &.icon8
                {
                    background-position: 0 -641px;
                }

                &.icon9
                {
                    background-position: 0 -756px;
                }

                &.icon10
                {
                    background-position: 0 -832px;
                }

                &.icon11
                {
                    background-position: 0 -945px;
                }

                &.icon12
                {
                    background-position: 0 -1024px;
                }
            }


            .name
            {
                width: calc(100% - 50px);

                font-size: var(--font_size);
            }


            .desc
            {
                width: 100%;
                padding-block: var(--inner_gap_s);
                padding-left: var(--inner_gap_m);

                border-left: 34px solid #f4f4f4;
            }
        }
    }
}



/*--------------
    Lead ups
--------------*/
.lead_ups
{
    .list
    {
        display: flex;
        flex-direction: column;
    }


    .item
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: var(--inner_gap_l);

        padding-block: 20px;
        padding-inline: var(--inner_gap);

        line-height: var(--line_height);
        letter-spacing: -.16px;

        transition: color .2s linear;
        text-decoration: none;

        color: var(--primary_color);
        border-bottom: 1px solid rgb(var(--blue_color) / .07);


        .icon
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 64px;

            transition: opacity .2s linear;

            border-radius: 50%;

            aspect-ratio: 1 / 1;


            img
            {
                display: block;

                max-width: 100%;
                max-height: 100%;
            }


            & + .name
            {
                width: calc(100% - 64px - var(--inner_gap_l));
            }
        }


        @media (hover: hover) and (pointer: fine)
        {
            &:hover
            {
                color: var(--primary_color_hover);


                .icon
                {
                    opacity: .8;
                }
            }
        }
    }
}



/*--------------
    Licenses
--------------*/
.licenses
{
    list
    {
        display: flex;
        flex-direction: column;
    }


    .item
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_s);


        .name
        {
            font-weight: 700;
            line-height: var(--line_height);
            letter-spacing: -.16px;

            color: var(--primary_color);


            a
            {
                display: inline-block;

                transition: .2s linear;
                vertical-align: top;
                text-decoration: none;

                color: currentColor;


                @media (hover: hover) and (pointer: fine)
                {
                    &:hover
                    {
                        color: var(--primary_color_hover);
                    }


                    &:active
                    {
                        color: var(--primary_color_active);
                    }
                }
            }
        }


        .date
        {
            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            color: var(--grey_strong_color);
        }


        .desc
        {
            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);
        }
    }


    .item + .item
    {
        margin-top: var(--inner_gap);
        padding-top: var(--inner_gap);

        border-top: 1px solid var(--grey_color);
    }
}



/*-------------------
    Doctor events
-------------------*/
.doctor_events
{
    .event
    {
        display: flex;
        align-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: var(--block_padding);


        .image
        {
            position: relative;

            display: block;

            width: 360px;
            max-width: 100%;

            text-decoration: none;

            color: currentColor;
        }


        .thumb
        {
            display: block;
            overflow: hidden;

            border-radius: var(--border_radius);
            background: var(--grey_color);

            aspect-ratio: 1 / .866;
        }


        .points
        {
            position: absolute;
            z-index: 3;
            bottom: 0;
            left: 0;

            width: 100%;
            padding-block: 10px;
            padding-inline: 20px;

            font-size: var(--font_size_l);
            font-weight: 700;
            line-height: var(--line_height_l);
            letter-spacing: var(--letter_spacing_l);

            color: var(--light_color);
            border-radius: 10px;
            background: rgba(255, 255, 255, .2);

            backdrop-filter: blur(5px);
        }


        .data
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_s);

            width: calc(100% - 360px - var(--block_padding));
        }


        .register-completed
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: flex-start;
            gap: var(--inner_gap_xs);

            margin-bottom: var(--inner_gap_xs);

            font-size: var(--font_size_l);
            font-weight: 700;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_m);

            color: var(--red_color);


            .sign-info
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 20px;

                font-size: 13px;
                line-height: 20px;

                text-align: center;

                color: var(--light_color);
                border-radius: 50%;
                background: var(--red_color);

                aspect-ratio: 1 / 1;
            }
        }


        .name
        {
            font-size: var(--font_size_l);
            font-weight: 700;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_m);


            a
            {
                display: -webkit-box;
                overflow: hidden;
                -webkit-box-orient: vertical;

                transition: .2s linear;
                text-decoration: none;
                text-overflow: ellipsis;

                color: currentColor;

                -webkit-line-clamp: 3;
            }
        }


        .date_time
        {
            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing_s);

            white-space: nowrap;

            color: var(--grey_strong_color);
        }


        .desc
        {
            display: -webkit-box;
            overflow: hidden;
            -webkit-box-orient: vertical;

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            text-overflow: ellipsis;

            color: var(--grey_strong_color);

            -webkit-line-clamp: 6;
        }


        .link
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: flex-start;
            gap: var(--inner_gap_xxs);

            width: fit-content;
            margin-top: auto;
            padding-block: var(--inner_gap_xs);

            font-size: var(--font_size_xs);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            text-decoration: none;

            color: var(--primary_color);



            .icon
            {
                display: block;

                width: 20px;

                transform: scale(-1, 1);

                aspect-ratio: 1 / 1;
            }
        }


        &:hover
        {
            .name
            {
                a
                {
                    color: var(--primary_color);
                }
            }
        }
    }


    .event + .event
    {
        margin-top: var(--inner_gap_l);
        padding-top: var(--inner_gap_l);

        border-top: 1px solid rgb(var(--blue_color) / .15);
    }


    .btn-founding-documents
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
        gap: var(--inner_gap_xs);

        width: 100%;
        height: 52px;
        margin-top: var(--block_padding);
        padding-inline: var(--inner_gap_m);

        font-size: var(--font_size_s);
        font-weight: 500;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        transition: background .2s linear;
        text-align: center;
        text-decoration: none;

        color: var(--light_color);
        border-radius: var(--border_radius_max);
        background: var(--primary_color);


        svg
        {
            display: block;

            width: 24px;

            aspect-ratio: 1 / 1;
        }


        span
        {
            max-width: calc(100% - 24px - var(--inner_gap_xs));
        }


        &:hover
        {
            background: var(--primary_color_hover);
        }


        &:active
        {
            background: var(--primary_color_active);
        }
    }
}



/*-----------------------
    Doctor event head
-----------------------*/
.doctor_event_head
{
    .register-completed
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--inner_gap_xs);

        margin-bottom: var(--inner_gap_xs);

        font-size: var(--font_size_l);
        font-weight: 700;
        line-height: var(--line_height_s);
        letter-spacing: var(--letter_spacing_m);

        color: var(--red_color);


        .sign-info
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 20px;

            font-size: 13px;
            line-height: 20px;

            text-align: center;

            color: var(--light_color);
            border-radius: 50%;
            background: var(--red_color);

            aspect-ratio: 1 / 1;
        }
    }
}



/*------------------
    Doctor event
------------------*/
.doctor_event
{
    .data
    {
        position: relative;

        border-radius: var(--border_radius_m);
        background: var(--bg_grey);


        .image
        {
            display: block;

            border-radius: var(--border_radius_m);
            background: var(--bg_grey);

            aspect-ratio: 1 / .511;
        }


        .info
        {
            position: absolute;
            top: 50%;
            left: 50%;

            width: 500px;
            max-width: 90%;
            padding: var(--inner_gap);

            text-align: center;

            color: var(--light_color);
            border-radius: var(--border_radius);
            background: rgb(var(--blue_strong_color) / .5);

            translate: -50% -50%;


            .title
            {
                margin-bottom: var(--inner_gap);
                padding-bottom: var(--inner_gap);

                font-size: var(--font_size_l);
                font-weight: 700;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_m);

                border-bottom: 1px solid var(--light_color);
            }


            .date_time
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: space-between;

                font-size: var(--font_size_xs);
                font-weight: 300;
                line-height: var(--line_height);
                letter-spacing: var(--letter_spacing_s);

                column-gap: var(--block_padding);
                row-gap: var(--inner_gap_xs);
            }


            .btn
            {
                display: block;

                width: fit-content;
                height: 52px;
                margin-inline: auto;
                margin-top: var(--inner_gap_l);
                padding-inline: var(--block_padding);

                font-size: var(--font_size_s);
                font-weight: 500;
                line-height: var(--line_height);
                letter-spacing: var(--letter_spacing);

                transition: background .2s linear;
                text-align: center;
                text-decoration: none;

                color: var(--light_color);
                border-radius: var(--border_radius_max);
                background: var(--primary_color);


                &:hover
                {
                    background: var(--primary_color_hover);
                }


                &:active
                {
                    background: var(--primary_color_active);
                }
            }
        }
    }


    .btns
    {
        .btn
        {
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            gap: var(--inner_gap_m);

            padding: var(--inner_gap_s);

            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            transition: background .2s linear;
            text-decoration: none;

            color: currentColor;
            border-radius: var(--border_radius);
            background: rgb(var(--blue_color) / .07);


            .icon
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 32px;

                color: var(--primary_color);

                aspect-ratio: 1 / 1;


                svg
                {
                    display: block;

                    width: 100%;

                    aspect-ratio: 1 / 1;
                }
            }


            &:hover
            {
                background: rgb(var(--blue_color) / .1);
            }


            &:active
            {
                background: rgb(var(--blue_color) / .15);
            }
        }
    }


    .register_btn
    {
        display: block;

        width: fit-content;
        height: 52px;
        margin-inline: auto;
        padding-inline: var(--block_padding);

        font-size: var(--font_size_s);
        font-weight: 500;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        transition: background .2s linear;
        text-align: center;
        text-decoration: none;

        color: var(--light_color);
        border-radius: var(--border_radius_max);
        background: var(--primary_color);


        &:hover
        {
            background: var(--primary_color_hover);
        }


        &:active
        {
            background: var(--primary_color_active);
        }
    }


    .speakers
    {
        overflow: hidden;

        padding: var(--block_padding);

        border-radius: var(--border_radius);
        background: rgb(var(--blue_color) / .15);


        .swiper
        {
            overflow: visible;
        }


        .swiper-slide
        {
            width: 220px;
        }


        .speaker
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap);


            .photo
            {
                display: block;

                border-radius: var(--border_radius_m);
                background: var(--light_color);

                aspect-ratio: 1 / 1;
            }


            .info
            {
                display: flex;
                flex-direction: column;
                gap: var(--inner_gap_xs);
            }


            .name
            {
                font-weight: 700;
                line-height: var(--line_height);
                letter-spacing: -.16px;
            }


            .city
            {
                font-size: var(--font_size_xs);
                font-weight: 300;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_s);
            }


            .regalia
            {
                font-size: var(--font_size_xs);
                font-weight: 300;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_s);

                color: var(--grey_strong_color);
            }
        }
    }
}



/*---------------------
    Laboratory page
---------------------*/
.laboratory_page
{
    .text_block
    {
        .mobile
        {
            display: none;
        }
    }
}



.laboratory_page,
.laboratory_info,
.about_page
{
    .certs
    {
        padding-top: var(--inner_gap);
    }


    .managers
    {
        padding-top: var(--inner_gap);


        .grid_row
        {
            margin-top: var(--block_padding);

            --gap_x: var(--inner_gap);
            --gap_y: var(--block_padding);
        }


        .item
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_s);


            .photo
            {
                display: block;

                background: var(--bg_grey);

                aspect-ratio: 1 / .627;
            }


            .name
            {
                padding-bottom: var(--inner_gap_xs);

                font-weight: 700;
                line-height: var(--line_height);
                letter-spacing: var(--letter_spacing);

                border-bottom: 2px solid var(--primary_color);
            }


            .post
            {
                font-size: var(--font_size_s);
                font-weight: 300;
                line-height: var(--line_height_l);
                letter-spacing: var(--letter_spacing);

                color: var(--grey_strong_color);
            }
        }
    }



    .labs-block
    {
        padding-top: var(--block_padding);

        border-top: 4px solid var(--grey_light_color);


        .block_head
        {
            &.row
            {
                .title
                {
                    width: calc(100% - 300px);
                }
            }
        }


        .grid_row
        {
            counter-reset: number;
        }


        .item
        {
            position: relative;

            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_s);

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            text-decoration: none;

            color: var(--primary_color);


            .number
            {
                position: absolute;
                z-index: 3;
                top: 0;
                left: 0;

                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 60px;

                font-size: var(--font_size_title_s);
                font-weight: 700;
                line-height: var(--line_height_l);
                letter-spacing: -.24px;

                text-align: center;

                color: var(--light_color);
                background: var(--primary_color);

                aspect-ratio: 1 / 1;


                &:before
                {
                    content: counter(number);
                    counter-increment: number;
                }
            }


            .thumb
            {
                display: block;

                border-radius: var(--border_radius);
                background: var(--bg_grey);

                aspect-ratio: 1 / 1;
            }
        }
    }
}



/*-----------
    Certs
-----------*/
.certs
{
    .block_head
    {
        &.row
        {
            .title
            {
                width: calc(100% - 300px);
            }
        }
    }


    .swiper
    {
        padding-inline: 52px;
    }


    .swiper-slide
    {
        visibility: hidden;

        transition: opacity .2s linear, visibility .2s linear;
        pointer-events: none;

        opacity: 0;


        &.visible
        {
            visibility: visible;

            pointer-events: auto;

            opacity: 1;
        }
    }


    .swiper-button-next,
    .swiper-button-prev
    {
        position: absolute;

        height: 100%;

        border-radius: 0;
        background: var(--primary_color);

        aspect-ratio: auto;
        --swiper-navigation-color: var(--light_color);
        --swiper-navigation-size: 52px;
    }


    .swiper-button-prev
    {
        right: auto !important;
    }

    .swiper-button-next
    {
        left: auto !important;
    }


    .swiper-button-next:hover,
    .swiper-button-prev:hover
    {
        background: var(--primary_color_hover);

        --swiper-navigation-color: var(--light_color);
    }


    .item
    {
        display: block;

        text-decoration: none;

        color: currentColor;
        border-inline: 1px solid var(--primary_color);


        .thumb
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            padding: var(--inner_gap_m);

            background: var(--bg_grey);

            aspect-ratio: 1 / 1;
        }
    }
}



/*-------------
    History
-------------*/
.history
{
    padding-block: var(--inner_gap);


    .title
    {
        width: fit-content;
        margin-inline: auto;
        margin-bottom: var(--inner_gap_l);
        padding-block: var(--inner_gap_m);
        padding-inline: var(--inner_gap_l);

        font-size: 18px;
        font-weight: 500;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing_m);

        color: var(--light_color);
        border-radius: var(--border_radius_max);
        background: var(--primary_color);
    }


    .list
    {
        position: relative;

        display: flex;
        flex-direction: column;
        gap: 2px;
    }


    .item
    {
        width: calc(50% + 1px);
        margin-left: auto;
        padding-block: var(--inner_gap_m);

        border-left: 2px dotted var(--primary_color);


        &:nth-child(2n)
        {
            margin-left: 0;

            border-right: 2px dotted #00bbbd;
            border-left: none;


            .top
            {
                padding-right: 30px;
                padding-left: 0;
            }


            .year
            {
                right: 0;
                left: auto;

                background: #00bbbd;

                translate: 50% 50%;
            }


            .name
            {
                padding-inline: var(--inner_gap) var(--block_padding);

                border-color: #00bbbd;
            }


            .desc
            {
                margin-right: 30px;
                margin-left: 0;
                padding-inline: var(--inner_gap) var(--block_padding);
            }
        }


        .top
        {
            position: relative;

            padding-left: 30px;
        }


        .year
        {
            position: absolute;
            bottom: 0;
            left: 0;

            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 60px;

            font-size: 18px;
            font-weight: 500;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing_m);

            color: var(--light_color);
            border-radius: 50%;
            background: var(--primary_color);

            translate: -50% 50%;
            aspect-ratio: 1 / 1;


            &:before,
            &:after
            {
                position: absolute;
                right: 0;
                bottom: 100%;
                left: 0;

                display: block;

                width: 5px;
                height: 8px;
                margin-inline: auto;

                content: '';
                pointer-events: none;

                background: var(--bg);
            }


            &:after
            {
                top: 100%;
                bottom: auto;
            }
        }


        .name
        {
            padding-inline: var(--block_padding) var(--inner_gap);
            padding-bottom: var(--inner_gap_m);

            font-size: 18px;
            font-weight: 500;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing_m);

            border-bottom: 2px solid var(--primary_color);
        }


        .desc
        {
            margin-top: var(--inner_gap_m);
            margin-left: 30px;
            padding-inline: var(--block_padding) var(--inner_gap);
        }
    }
}



/*----------------
    Error page
----------------*/
.error_page
{
    .cont
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
        gap: var(--outside_gap_m);
    }


    .image
    {
        &,
        img
        {
            display: block;

            width: 183px;
            max-width: 100%;
        }
    }


    .data
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_m);

        text-align: center;


        .title
        {
            font-size: var(--font_size_title_s);
            font-weight: 700;
            line-height: var(--line_height_l);
            letter-spacing: -.24px;
        }


        .code
        {
            font-size: var(--font_size_title_l);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: -1.2px;
        }


        .desc
        {
            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);
        }


        .link
        {
            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);


            a
            {
                color: var(--primary_color);
            }
        }
    }
}







.wares-info-price-multiply-widget
{
    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 140% !important;

    white-space: nowrap;

    color: var(--primary_color);
}


.wares-info-term-multiply-widget
{
    padding-left: 22px;

    font-size: 16px !important;
    line-height: 140% !important;

    color: #222;
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNyIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE3IDE2IiBmaWxsPSJub25lIj4KICA8Y2lyY2xlIGN4PSI4LjUiIGN5PSI4IiByPSI3IiBzdHJva2U9IiMwMEI4RTQiIHN0cm9rZS13aWR0aD0iMiIvPgogIDxwYXRoIGQ9Ik04LjUgMy40MjMzNFY4LjAwMDI2TDEwLjc4ODUgOS40ODEwMyIgc3Ryb2tlPSIjMDBCOEU0IiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4=');
    background-repeat: no-repeat;
    background-position: 0 50%;
    background-size: 16px;
}


.wares-info-price-multiply-widget + .wares-info-term-multiply-widget
{
    margin-left: 20px;
}


.dila-btn.add-to-cart-btn
{
    display: flex;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--inner_gap_xxs);

    width: 200px;
    max-width: 100%;
    height: 52px;
    padding-inline: var(--inner_gap_m);

    font-size: var(--font_size_s);
    font-weight: 500;
    line-height: var(--line_height);
    letter-spacing: var(--letter_spacing);

    cursor: pointer;
    transition: background .2s linear;
    text-align: center;
    text-decoration: none;

    color: var(--light_color);
    border-radius: var(--border_radius_max);
    background: var(--primary_color);


    b,
    strong
    {
        color: currentColor;
    }


    &:hover
    {
        background: var(--primary_color_hover);
    }


    &:active
    {
        background: var(--primary_color_active);
    }
}



/*------------
    Footer
------------*/
footer
{
    .data
    {
        padding-block: var(--cont_padding_double);

        color: var(--light_color);
        background: var(--primary_color);
    }


    .bottom
    {
        padding-block: var(--inner_gap_s);

        color: var(--light_color);
        background: var(--dark_color);


        .cont
        {
            justify-content: center;
            gap: var(--inner_gap_m);
        }


        .logo
        {
            padding: 0;


            img
            {
                &:not(.bg)
                {
                    width: 48px;
                    height: 20px;
                }
            }
        }
    }


    .cont
    {
        display: flex;
        align-content: stretch;
        align-items: stretch;
        flex-wrap: wrap;
        justify-content: space-between;
    }


    .title
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: var(--inner_gap_s);

        font-weight: 700;
        line-height: var(--line_height);
        letter-spacing: -.16px;

        pointer-events: none;


        .arr
        {
            display: none;

            width: 24px;

            transition: transform .2s linear;

            aspect-ratio: 1 / 1;
        }


        &.active
        {
            .arr
            {
                transform: rotate(180deg);
            }
        }
    }


    .col
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap);
    }



    .logo
    {
        position: relative;

        display: block;

        padding-block: var(--inner_gap_m);

        text-decoration: none;

        color: currentColor;


        img
        {
            &:not(.bg)
            {
                position: relative;
                z-index: 3;

                display: block;

                width: 152px;
                height: 64px;
            }


            &.bg
            {
                position: absolute;
                z-index: 1;
                top: 0;
                left: 56px;

                display: block;

                width: 166px;
                height: 168px;

                pointer-events: none;
            }
        }
    }


    .socials
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--inner_gap_s);

        margin-top: auto;


        a
        {
            display: block;

            text-decoration: none;

            color: currentColor;


            .icon
            {
                display: block;

                width: 28px;

                aspect-ratio: 1 / 1;
            }
        }
    }


    .links
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_m);


        .items
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_s);

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);


            a
            {
                display: inline-block;

                vertical-align: top;
                text-decoration: none;

                color: currentColor;


                &:hover,
                &.active
                {
                    text-decoration: underline;

                    text-decoration-thickness: 1px;
                }
            }
        }
    }


    .contacts
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap);

        width: 220px;
        max-width: 100%;


        .location
        {
            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            a
            {
                text-decoration: none;

                color: currentColor;
                color: currentColor;
            }
        }


        .feedback_btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;
            gap: var(--inner_gap_xxs);

            width: 100%;
            height: 40px;
            padding-inline: var(--inner_gap_m);

            font-size: var(--font_size_xs);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            transition: background .2s linear;

            border-radius: var(--border_radius_max);
            background: rgba(184, 190, 194, .15);


            .icon
            {
                display: block;

                width: 20px;

                aspect-ratio: 1 / 1;
            }


            &:hover
            {
                background: rgba(184, 190, 194, .20);
            }


            &:active
            {
                background: rgba(184, 190, 194, .30);
            }
        }
    }


    .phones
    {
        .mini_modal_btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: space-between;
            gap: var(--inner_gap_s);

            width: 100%;
            padding-block: var(--inner_gap_xs);

            text-align: left;

            border-bottom: 1px solid rgba(255, 255, 255, .20);


            & > span
            {
                display: flex;
                flex-direction: column;
                gap: var(--inner_gap_xxs);
            }


            .arr
            {
                display: block;

                width: 24px;

                transition: transform .2s linear;

                aspect-ratio: 1 / 1;
            }


            &.active .arr
            {
                transform: rotate(180deg);
            }
        }


        .label
        {
            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            color: var(--light_soft_color);
        }


        .val
        {
            font-size: var(--font_size_l);
            font-weight: 700;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_m);


            a
            {
                white-space: nowrap;
                text-decoration: none;

                color: currentColor;
            }
        }


        .mini_modal
        {
            left: 50%;

            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_xxs);

            width: 208px;
            min-width: 100%;
            margin-top: var(--inner_gap_xxs);
            padding: var(--inner_gap_s);

            transform: translateX(-50%);
            text-align: center;

            color: var(--dark_color);
            border-radius: var(--border_radius_xs);
            background: var(--bg);
            box-shadow: var(--box_shadow);


            & > div
            {
                display: flex;
                flex-direction: column;

                padding-block: var(--inner_gap_xs);
                padding-inline: var(--inner_gap_xs);
            }


            .label
            {
                opacity: .6;
                color: currentColor;
            }


            .val
            {
                color: var(--primary_color);
            }


            .work_time
            {
                padding-block: 0;

                font-size: var(--font_size_xs);
                font-weight: 700;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_s);

                color: var(--grey_strong_color);
            }
        }
    }


    .apps
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap);


        .items
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_xs);
        }


        a
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 149px;
            height: 48px;
            padding: var(--inner_gap_xs);

            text-decoration: none;

            color: currentColor;
            border-radius: var(--border_radius_xs);
            background: var(--black_color);
        }


        img
        {
            display: block;

            max-width: 100%;
            max-height: 100%;
        }
    }


    .copyright
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
        gap: var(--inner_gap_m);

        font-size: var(--font_size_xs);
        font-weight: 300;
        line-height: 143%;
        letter-spacing: var(--letter_spacing_s);

        font-feature-settings: 'liga' off, 'clig' off;
    }
}



/*-----------
    PopUp
-----------*/
.modal
{
    display: none;
    visibility: visible !important;
    flex-direction: column;
    gap: var(--inner_gap_xs);

    width: var(--modal_width);
    max-width: 100%;
    padding-block: 56px var(--block_padding);
    padding-inline: var(--block_padding);

    cursor: default;

    color: var(--dark_color);
    border-radius: var(--border_radius_m);
    background: var(--bg);
    box-shadow: var(--box_shadow);

    --modal_width: 600px;


    .modal_title
    {
        font-size: var(--font_size_title_s);
        font-weight: 700;
        line-height: var(--line_height_l);
        letter-spacing: -.24px;

        text-align: center;
    }


    .modal_desc
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_m);

        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        text-align: center;

        color: var(--grey_strong_color);


        span
        {
            font-size: var(--font_size);
            line-height: var(--line_height_l);
            letter-spacing: var(--letter_spacing_l);

            color: var(--primary_color);
        }


        b,
        strong
        {
            font-weight: 500;
        }
    }


    .type_links
    {
        .grid_row
        {
            --items_per_line: 2;
            --gap_x: var(--inner_gap_m);
            --gap_y: var(--inner_gap_m);
        }


        .link
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_xs);

            margin-top: var(--inner_gap_m);
            padding: var(--inner_gap_m);

            transition: background .2s linear;
            text-align: center;
            text-decoration: none;

            color: currentColor;
            border-radius: var(--border_radius_s);
            background: var(--bg_grey);


            &:hover,
            &:active
            {
                background: #ebedee;
            }
        }


        .icon
        {
            display: block;

            width: 40px;
            margin-inline: auto;
            margin-bottom: var(--inner_gap_xs);

            color: var(--primary_color);

            aspect-ratio: 1 / 1;
        }


        .name
        {
            font-weight: 700;
            line-height: var(--line_height);
            letter-spacing: -.16px;
        }


        .desc
        {
            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            color: var(--grey_strong_color);
        }
    }


    .app
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xs);

        margin-top: var(--inner_gap_xs);
        padding: var(--inner_gap_m);

        text-align: center;

        border-radius: var(--border_radius_s);
        background: var(--bg_grey);


        .title
        {
            font-weight: 700;
            line-height: var(--line_height);
            letter-spacing: -.16px;
        }


        .desc
        {
            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            color: var(--grey_strong_color);
        }


        .links
        {
            display: flex;
            align-content: stretch;
            align-items: stretch;
            flex-wrap: wrap;
            justify-content: center;
            gap: var(--inner_gap_m);

            margin-top: var(--inner_gap_xs);


            a
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: center;

                width: 149px;
                height: 48px;
                padding: var(--inner_gap_xs);

                text-decoration: none;

                color: currentColor;
                border-radius: var(--border_radius_xs);
                background: var(--black_color);
            }


            img
            {
                display: block;

                max-width: 100%;
                max-height: 100%;
            }
        }
    }


    .close_btn
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
        gap: var(--inner_gap_xxs);

        width: 100%;
        height: 52px;
        margin-top: var(--inner_gap_m);
        padding-inline: var(--inner_gap_m);

        font-size: var(--font_size_s);
        font-weight: 500;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        transition: background .2s linear;
        text-align: center;
        text-decoration: none;

        color: var(--light_color);
        border-radius: var(--border_radius_max);
        background: var(--primary_color);


        &:hover
        {
            background: var(--primary_color_hover);
        }


        &:active
        {
            background: var(--primary_color_active);
        }
    }


    &.success_modal
    {
        .icon
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 72px;
            margin-inline: auto;

            color: #00a32c;
            border-radius: 50%;
            background: #e7fde3;

            aspect-ratio: 1 / 1;


            svg
            {
                display: block;

                width: 48px;

                aspect-ratio: 1 / 1;
            }
        }


        .text
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_xs);

            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            text-align: center;

            color: var(--grey_strong_color);


            span
            {
                display: block;

                margin-bottom: var(--inner_gap_m);

                font-size: var(--font_size_title_s);
                font-weight: 700;
                line-height: var(--line_height_l);
                letter-spacing: -.24px;

                color: var(--dark_color);
            }


            b,
            strong
            {
                font-weight: 500;
            }
        }


        .btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;
            gap: var(--inner_gap_xxs);

            width: 100%;
            height: 52px;
            margin-top: var(--inner_gap_m);
            padding-inline: var(--inner_gap_m);

            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            transition: background .2s linear;
            text-align: center;
            text-decoration: none;

            color: var(--light_color);
            border-radius: var(--border_radius_max);
            background: var(--primary_color);


            &:hover
            {
                background: var(--primary_color_hover);
            }


            &:active
            {
                background: var(--primary_color_active);
            }
        }
    }


    &.dilaModalPopupAvailableLab
    {
        .modal_title
        {
            margin-bottom: var(--inner_gap_m);
        }


        .tabs
        {
            margin-bottom: var(--inner_gap_m);
        }


        .tab_content.active
        {
            padding-bottom: var(--inner_gap_m);
        }


        .search
        {
            position: relative;

            margin-top: var(--inner_gap_xs);


            ::-webkit-input-placeholder
            {
                color: rgba(0, 23, 64, .35);
            }

            :-moz-placeholder
            {
                color: rgba(0, 23, 64, .35);
            }

            ::-moz-placeholder
            {
                opacity: 1;
                color: rgba(0, 23, 64, .35);
            }

            :-ms-input-placeholder
            {
                color: rgba(0, 23, 64, .35);
            }


            .icon
            {
                position: absolute;
                z-index: 3;
                top: 0;
                bottom: 0;
                left: var(--inner_gap_s);

                display: block;

                width: 24px;
                margin-block: auto;

                pointer-events: none;

                color: var(--primary_color);

                aspect-ratio: 1 / 1;
            }


            .input
            {
                display: block;

                width: 100%;
                height: 52px;
                padding-inline: 40px var(--inner_gap_xs);

                font-family: var(--font_family);
                font-size: var(--font_size_s);
                font-weight: 300;
                letter-spacing: var(--letter_spacing);

                transition: border-color .2s linear;

                color: var(--dark_color);
                border: 1px solid transparent;
                border-radius: var(--border_radius_max);
                background: rgb(var(--blue_color) / .07);


                &:-webkit-autofill
                {
                    -webkit-box-shadow: inset 0 0 0 50px rgb(var(--blue_color) / .07) !important;
                }


                &:hover
                {
                    border-color: rgb(var(--blue_color) / .15);
                }


                &:focus
                {
                    border-color: transparent;
                }
            }
        }


        .scroll
        {
            overflow-x: clip;
            overflow-y: auto;

            max-height: 416px;

            --custom_scroll_width: 15px;
            --custom_scroll_height: 15px;
            overscroll-behavior-y: contain;


            &::-webkit-scrollbar
            {
                width: var(--custom_scroll_width);
                height: var(--custom_scroll_height);

                background-color: transparent;
            }


            &::-webkit-scrollbar-thumb
            {
                border: 4px solid var(--bg);
                border-radius: var(--border_radius);
                background-color: var(--primary_color);
            }
        }


        .contact-loading
        {
            display: block;

            width: 40px;
            margin-block: var(--inner_gap);
            margin-inline: auto;

            aspect-ratio: 1 / 1;


            &.hide
            {
                display: none;
            }
        }


        .list
        {
            display: none;
            flex-direction: column;

            margin-top: var(--inner_gap);
            padding-right: var(--inner_gap);


            &.show
            {
                display: flex;
            }
        }


        .item
        {
            position: relative;

            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: nowrap;
            justify-content: space-between;

            padding: var(--inner_gap_m);

            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            transition: .2s linear;
            text-decoration: none;

            color: currentColor;
            border-radius: var(--border_radius_xxs);


            &:after
            {
                position: absolute;
                right: 0;
                bottom: 0;
                left: 0;

                display: block;

                width: calc(100% - var(--inner_gap_m) * 2);
                height: 1px;
                margin-inline: auto;

                content: '';
                transition: opacity .2s linear;
                pointer-events: none;

                background: rgb(var(--blue_color) / .07);
            }


            .view-lab-on-map
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: flex-start;

                width: 24px;
                min-width: 24px;

                color: var(--primary_color);


                .icon
                {
                    display: block;

                    width: 100%;

                    aspect-ratio: 1 / 1;
                }
            }


            &:hover
            {
                background: var(--bg_grey);


                &:after
                {
                    opacity: 0;
                }
            }
        }
    }
}



/*------------------
    PopUp - City
------------------*/
#city_modal,
#avialable_cities
{
    --modal_width: 800px;


    .search
    {
        position: relative;

        margin-top: var(--inner_gap_m);


        ::-webkit-input-placeholder
        {
            color: rgba(0, 23, 64, .35);
        }

        :-moz-placeholder
        {
            color: rgba(0, 23, 64, .35);
        }

        ::-moz-placeholder
        {
            opacity: 1;
            color: rgba(0, 23, 64, .35);
        }

        :-ms-input-placeholder
        {
            color: rgba(0, 23, 64, .35);
        }


        .icon
        {
            position: absolute;
            z-index: 3;
            top: 0;
            bottom: 0;
            left: var(--inner_gap_s);

            display: block;

            width: 24px;
            margin-block: auto;

            pointer-events: none;

            color: var(--grey_strong_color);

            aspect-ratio: 1 / 1;
        }


        .input
        {
            display: block;

            width: 100%;
            height: 52px;
            padding-inline: 40px var(--inner_gap_xs);

            font-family: var(--font_family);
            font-size: var(--font_size_s);
            font-weight: 300;
            letter-spacing: var(--letter_spacing);

            transition: border-color .2s linear;

            color: var(--dark_color);
            border: 1px solid transparent;
            border-radius: var(--border_radius_max);
            background: rgb(var(--blue_color) / .07);


            &:-webkit-autofill
            {
                -webkit-box-shadow: inset 0 0 0 50px rgb(var(--blue_color) / .07) !important;
            }


            &:hover
            {
                border-color: rgb(var(--blue_color) / .15);
            }


            &:focus
            {
                border-color: transparent;
            }
        }
    }


    .scroll
    {
        overflow-x: clip;
        overflow-y: auto;

        width: calc(100% + var(--block_padding));
        max-height: 416px;
        margin-top: var(--inner_gap_m);
        margin-right: calc(var(--block_padding) * -1);

        --custom_scroll_width: 15px;
        --custom_scroll_height: 15px;
        overscroll-behavior-y: contain;


        &::-webkit-scrollbar
        {
            width: var(--custom_scroll_width);
            height: var(--custom_scroll_height);

            background-color: transparent;
        }


        &::-webkit-scrollbar-thumb
        {
            border: 4px solid var(--bg);
            border-radius: var(--border_radius);
            background-color: var(--primary_color);
        }
    }


    .list
    {
        padding-right: var(--inner_gap);

        border-right: 1px solid rgb(var(--blue_color) / .07);


        a
        {
            position: relative;

            display: block;

            padding: var(--inner_gap_m);

            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            transition: .2s linear;
            text-decoration: none;

            color: currentColor;
            border-radius: var(--border_radius_xxs);


            &:after
            {
                position: absolute;
                right: 0;
                bottom: 0;
                left: 0;

                display: block;

                width: calc(100% - var(--inner_gap_m) * 2);
                height: 1px;
                margin-inline: auto;

                content: '';
                transition: opacity .2s linear;
                pointer-events: none;

                background: rgb(var(--blue_color) / .07);
            }


            &:hover
            {
                background: var(--bg_grey);


                &:after
                {
                    opacity: 0;
                }
            }


            &[data-selected='1']
            {
                cursor: default;

                color: var(--bg_grey);
                background: var(--primary_color);
            }
        }
    }
}

/* #avialable_cities
{
    --modal_width: 800px;


    .search
    {
        position: relative;

        margin-top: var(--inner_gap_m);


        ::-webkit-input-placeholder
        {
            color: rgba(0, 23, 64, .35);
        }

        :-moz-placeholder
        {
            color: rgba(0, 23, 64, .35);
        }

        ::-moz-placeholder
        {
            opacity: 1;
            color: rgba(0, 23, 64, .35);
        }

        :-ms-input-placeholder
        {
            color: rgba(0, 23, 64, .35);
        }


        .icon
        {
            position: absolute;
            top: 0;
            bottom: 0;
            left: var(--inner_gap_s);

            display: block;

            width: 24px;
            margin-block: auto;

            z-index: 3;
            pointer-events: none;

            color: var(--grey_strong_color);

            aspect-ratio: 1 / 1;
        }


        .input
        {
            display: block;

            width: 100%;
            height: 52px;
            padding-inline: 40px var(--inner_gap_xs);

            font-family: var(--font_family);
            font-size: var(--font_size_s);
            font-weight: 300;

            transition: border-color .2s linear;
            letter-spacing: var(--letter_spacing);

            color: var(--dark_color);
            border: 1px solid transparent;
            border-radius: var(--border_radius_max);
            background: rgb(var(--blue_color) / .07);


            &:-webkit-autofill
            {
                -webkit-box-shadow: inset 0 0 0 50px rgb(var(--blue_color) / .07) !important;
            }


            &:hover
            {
                border-color: rgb(var(--blue_color) / .15);
            }


            &:focus
            {
                border-color: transparent;
            }
        }
    }


    .scroll
    {
        overflow-x: clip;
        overflow-y: auto;

        width: calc(100% + var(--block_padding));
        max-height: 416px;
        margin-top: var(--inner_gap_m);
        margin-right: calc(var(--block_padding) * -1);

        --custom_scroll_width: 15px;
        --custom_scroll_height: 15px;
        overscroll-behavior-y: contain;


        &::-webkit-scrollbar
        {
            width: var(--custom_scroll_width);
            height: var(--custom_scroll_height);

            background-color: transparent;
        }


        &::-webkit-scrollbar-thumb
        {
            border: 4px solid var(--bg);
            border-radius: var(--border_radius);
            background-color: var(--primary_color);
        }
    }


    .list
    {
        padding-right: var(--inner_gap);

        border-right: 1px solid rgb(var(--blue_color) / .07);


        a
        {
            position: relative;

            display: block;

            padding: var(--inner_gap_m);

            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height);

            transition: .2s linear;
            text-decoration: none;
            letter-spacing: var(--letter_spacing);

            color: currentColor;


            &:after
            {
                position: absolute;
                right: 0;
                bottom: 0;
                left: 0;

                display: block;

                width: calc(100% - var(--inner_gap_m) * 2);
                height: 1px;
                margin-inline: auto;

                content: '';
                transition: opacity .2s linear;
                pointer-events: none;

                background: rgb(var(--blue_color) / .07);
            }


            &:hover
            {
                background: var(--bg_grey);


                &:after
                {
                    opacity: 0;
                }
            }


            &[data-selected='1']
            {
                cursor: default;

                color: var(--bg_grey);
                background: var(--primary_color);
            }
        }
    }
} */

/*----------------------
    PopUp - Feedback
----------------------*/
#feedback_modal
{
    .messengers
    {
        margin-top: var(--inner_gap_m);


        .grid_row
        {
            --items_per_line: 2;
            --gap_x: var(--inner_gap_m);
            --gap_y: var(--inner_gap_m);
        }


        a
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_xs);

            padding: var(--inner_gap_m);

            font-size: var(--font_size_xs);
            font-weight: 500;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            transition: background .2s linear;
            text-align: center;
            text-decoration: none;

            color: currentColor;
            border-radius: var(--border_radius_s);
            background: var(--bg_grey);


            &:hover,
            &:active
            {
                background: #ebedee;
            }
        }


        .icon
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 40px;
            margin-inline: auto;

            color: var(--light_color);
            border-radius: var(--border_radius_xs);
            background: var(--primary_color);

            aspect-ratio: 1 / 1;


            svg
            {
                display: block;

                width: 22px;

                aspect-ratio: 1 / 1;
            }
        }


        .tg_link
        {
            .icon
            {
                background: #2aabee;
            }
        }


        .viber_link
        {
            .icon
            {
                background: #7360f2;
            }
        }
    }


    .phones
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_m);

        margin-top: var(--inner_gap_xs);


        a
        {
            display: flex;
            flex-direction: column;
            gap: 2px;

            padding-block: 14px;
            padding-inline: var(--inner_gap_m);

            letter-spacing: var(--letter_spacing_s);

            transition: background .2s linear;
            text-align: center;
            text-decoration: none;

            color: currentColor;
            border-radius: var(--border_radius_s);
            background: var(--bg_grey);


            &:hover,
            &:active
            {
                background: #ebedee;
            }
        }


        .label
        {
            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            color: var(--grey_strong_color);
        }


        .val
        {
            font-size: var(--font_size_title_s);
            font-weight: 700;
            line-height: var(--line_height_l);
            letter-spacing: -.24px;
        }
    }


    .faq_link
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;
        gap: var(--inner_gap_xs);

        margin-top: var(--inner_gap_xs);
        padding: var(--inner_gap_m);

        font-size: var(--font_size_s);
        font-weight: 500;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        transition: background .2s linear;
        text-decoration: none;

        color: currentColor;
        border-radius: var(--border_radius_s);
        background: var(--bg_grey);


        .icon
        {
            display: block;

            width: 24px;

            aspect-ratio: 1 / 1;
        }


        &:hover,
        &:active
        {
            background: #ebedee;
        }
    }
}



/*-----------------------
    PopUp - VMD order
-----------------------*/
.vmd_order_modal
{
    form
    {
        margin-top: var(--inner_gap_m);


        .section.disable
        {
            pointer-events: none;

            opacity: .5;
        }


        .block-area-city
        {
            display: none;
        }


        .select2-container--default .select2-results > .select2-results__options
        {
            --custom_scroll_width: 4px;
            --custom_scroll_height: 4px;


            &::-webkit-scrollbar
            {
                width: var(--custom_scroll_width);
                height: var(--custom_scroll_height);

                background-color: var(--bg);
            }


            &::-webkit-scrollbar-thumb
            {
                background-color: var(--primary_color);
            }
        }


        .form_element__control__checkbox
        {
            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            color: var(--grey_strong_color);
        }


        .exp
        {
            margin-bottom: var(--inner_gap_m);

            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            color: var(--grey_strong_color);


            span
            {
                color: var(--red_color);
            }
        }


        .text_body_s
        {
            font-size: var(--font_size_s);
            font-weight: 300;
            line-height: 20px;
            letter-spacing: var(--letter_spacing_s);
        }


        .wrapper-captcha
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_xs);


            img
            {
                display: block;

                width: 248px;
                height: 82px;

                border-radius: var(--border_radius_s);
            }


            .refresh-captcha-btn
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: flex-start;
                gap: var(--inner_gap_xxs);

                width: fit-content;
                height: 40px;
                padding-inline: var(--inner_gap_xs);

                font-size: var(--font_size_xs);
                font-weight: 500;
                line-height: var(--line_height_s);
                letter-spacing: var(--letter_spacing_s);

                color: var(--dark_color);


                .icon
                {
                    display: block;

                    width: 20px;

                    aspect-ratio: 1 / 1;
                }
            }
        }
    }


    .error-response-vmd
    {
        display: none;

        margin-top: 20px;

        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: var(--line_height_s);
        letter-spacing: var(--letter_spacing_s);

        text-align: center;

        color: var(--red_color);
    }


    .result
    {
        position: absolute;
        z-index: 50;
        inset: 0;

        display: none;
        align-content: center;
        align-items: center;
        flex-direction: column;
        justify-content: center;
        gap: var(--inner_gap_l);

        padding: var(--inner_gap_l);

        line-height: var(--line_height_l);
        letter-spacing: var(--letter_spacing);

        text-align: center;

        color: var(--dark_color);
        border-radius: var(--border_radius_m);
        background: var(--bg);


        &.show
        {
            display: flex;
        }


        svg
        {
            display: block;

            width: 120px;

            fill: var(--primary_color);
            aspect-ratio: 1 / 1;
        }
    }
}



/*----------------------
    PopUp - Urgent Labs
----------------------*/
#urgentlabs_modal
{
    .scroll
    {
        overflow-x: clip;
        overflow-y: auto;

        width: calc(100% + var(--block_padding));
        max-height: 416px;
        margin-top: var(--inner_gap_m);
        margin-right: calc(var(--block_padding) * -1);

        --custom_scroll_width: 15px;
        --custom_scroll_height: 15px;
        overscroll-behavior-y: contain;


        &::-webkit-scrollbar
        {
            width: var(--custom_scroll_width);
            height: var(--custom_scroll_height);

            background-color: transparent;
        }


        &::-webkit-scrollbar-thumb
        {
            border: 4px solid var(--bg);
            border-radius: var(--border_radius);
            background-color: var(--primary_color);
        }
    }

    .list
    {
        padding-right: var(--inner_gap);

        border-right: 1px solid rgb(var(--blue_color) / .07);


        .item
        {
            position: relative;

            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: nowrap;
            justify-content: space-between;

            padding: var(--inner_gap_m);

            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            transition: .2s linear;
            text-decoration: none;

            color: currentColor;


            &:after
            {
                position: absolute;
                right: 0;
                bottom: 0;
                left: 0;

                display: block;

                width: calc(100% - var(--inner_gap_m) * 2);
                height: 1px;
                margin-inline: auto;

                content: '';
                transition: opacity .2s linear;
                pointer-events: none;

                background: rgb(var(--blue_color) / .07);
            }


            .view-lab-on-map
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: flex-start;

                width: 24px;
                min-width: 24px;

                color: var(--primary_color);


                .icon
                {
                    display: block;

                    width: 100%;

                    aspect-ratio: 1 / 1;
                }
            }


            &:hover
            {
                background: var(--bg_grey);


                &:after
                {
                    opacity: 0;
                }
            }
        }
    }
}


/*-----------------------------------
    PopUp - Directional templates
-----------------------------------*/
#directional_templates_modal
{
    --modal_width: 800px;


    .grid_row
    {
        margin-top: var(--inner_gap_m);

        --gap_x: var(--inner_gap_m);
        --gap_y: var(--inner_gap_m);
    }


    .link
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_xs);

        padding: var(--inner_gap_m);

        transition: background .2s linear;
        text-align: center;
        text-decoration: none;

        color: currentColor;
        border-radius: var(--border_radius_s);
        background: var(--bg_grey);


        .icon
        {
            display: block;

            width: 40px;
            margin-inline: auto;
            margin-bottom: var(--inner_gap_xs);

            color: var(--primary_color);

            aspect-ratio: 1 / 1;


            & + *
            {
                display: flex;
                flex-direction: column;
                gap: var(--inner_gap_xs);
            }
        }


        .name
        {
            font-weight: 700;
            line-height: var(--line_height);
            letter-spacing: -.16px;
        }


        .desc
        {
            font-size: var(--font_size_xs);
            font-weight: 300;
            line-height: var(--line_height_s);
            letter-spacing: var(--letter_spacing_s);

            color: var(--grey_strong_color);
        }


        &:hover,
        &:active
        {
            background: #ebedee;
        }
    }
}



/*-------------------------
    PopUp - Send resume
-------------------------*/
#send_resume_modal
{
    .modal_title
    {
        margin-bottom: var(--inner_gap);
    }


    form
    {
        position: relative;
    }


    .loading
    {
        position: absolute;
        z-index: 9999;
        inset: 0;

        display: none;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;

        background: rgba(255, 255, 255, .65);


        &.show
        {
            display: flex;
        }


        img
        {
            display: block;

            width: 40px;

            aspect-ratio: 1 / 1;
        }
    }


    .exp
    {
        margin-bottom: var(--inner_gap_m);

        font-size: var(--font_size_xs);
        font-weight: 300;
        line-height: var(--line_height_s);
        letter-spacing: var(--letter_spacing_s);

        color: var(--grey_strong_color);


        span
        {
            color: var(--red_color);
        }
    }


    .field-resumeform-captcha
    {
        display: flex;
        align-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        justify-content: space-between;

        margin-bottom: 20px;


        &:after
        {
            display: none;
        }


        .captcha_image
        {
            display: flex;
            flex-direction: column;
            gap: var(--inner_gap_xxs);

            width: 200px;
            max-width: 100%;


            img
            {
                display: block;

                width: 100%;
            }


            #refresh-career-captcha
            {
                font-size: var(--font_size_s);
                font-weight: 500;
                line-height: var(--line_height);
                letter-spacing: var(--letter_spacing);

                color: var(--primary_color);
            }
        }


        .form_element__input
        {
            width: calc(100% - 240px);
            margin-block: 15px;
        }


        .help-block
        {
            display: none !important;
        }
    }


    .agree
    {
        padding-block: var(--inner_gap_xs);

        font-size: var(--font_size_xs);
        font-weight: 300;
        line-height: var(--line_height_s);
        letter-spacing: var(--letter_spacing_s);

        text-align: center;

        color: var(--grey_strong_color);
    }
}



/*-------------------------------
    PopUp - Send resume error
-------------------------------*/
#send_resume_popup_error
{
    .btns
    {
        display: flex;
        flex-direction: column;
        gap: var(--inner_gap_m);

        width: 404px;
        max-width: 100%;
        margin-inline: auto;
        margin-top: var(--inner_gap);


        .btn
        {
            display: flex;
            align-content: center;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;

            width: 100%;
            height: 52px;
            padding-inline: var(--inner_gap_m);

            font-size: var(--font_size_s);
            font-weight: 500;
            line-height: var(--line_height);
            letter-spacing: var(--letter_spacing);

            transition: .2s linear;
            text-align: center;
            text-decoration: none;

            color: var(--primary_color);
            border: 1px solid rgb(var(--blue_color) / .15);
            border-radius: var(--border_radius_max);


            &:hover
            {
                background: rgb(var(--blue_strong_color) / .1);
            }


            &:active
            {
                background: rgb(var(--blue_strong_color) / .15);
            }


            &.primary
            {
                color: var(--light_color);
                border-color: var(--primary_color);
                background: var(--primary_color);


                &:hover
                {
                    background: var(--primary_color_hover);
                }


                &:active
                {
                    background: var(--primary_color_active);
                }
            }
        }
    }
}



/*-----------------------------------
    PopUp - Modal Basket
-----------------------------------*/

.modal_basket
{
    .price
    {
        color: var(--primary_color);
    }


    .description
    {
        margin: 20px 0;
        padding: 10px;

        color: rgba(0, 45, 117, 1);
        border-radius: var(--border_radius_xs);
        background-color: rgba(228, 242, 253, 1);


        a
        {
            color: var(--primary_color);
        }
    }

    .text_body_s
    {
        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing_s);
    }

    .text_title_s
    {
        font-size: var(--font_size);
        font-weight: 700;
        line-height: 24px;
        letter-spacing: var(--letter_spacing_s);
    }

    .text_title_l
    {
        font-size: var(--font_size_title_s);
        font-weight: 700;
        line-height: var(--line_height_l);
        letter-spacing: var(--letter_spacing_l);
    }

    .for-mb-sub-text
    {
        font-size: var(--font_size_xs);
        font-weight: 400;
        line-height: var(--line_height_s);

        color: var(--dark_color);
    }

    .text_body_xs
    {
        font-size: var(--font_size_xs);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);
    }

    .city_btn
    {
        display: inline-flex;
        align-content: center;
        align-items: center;
        justify-content: center;
        gap: var(--inner_gap_xxs);

        padding: 1px 2px;

        font-size: var(--font_size_xs);
        font-weight: 500;
        letter-spacing: var(--letter_spacing_s);

        transition: .2s linear;

        color: var(--primary_color);
        border-radius: var(--border_radius_max);


        .icon
        {
            display: block;

            width: 20px;

            aspect-ratio: 1 / 1;
        }


        span
        {
            max-width: calc(100% - 20px - var(--inner_gap_xxs));
        }


        &:hover
        {
            background: rgb(var(--blue_strong_color) / .1);
        }


        &:active
        {
            background: rgb(var(--blue_strong_color) / .15);
        }
    }
}

.modal_basket_item
{
    margin-bottom: 8px;

    border: 1px solid rgba(0, 73, 183, .07);
    border-radius: var(--border_radius_s);


    .body
    {
        padding: var(--inner_gap_s);
    }


    .name
    {
        display: flex;
        align-items: center;
        justify-content: space-between;

        font-weight: 300;
    }


    .duration
    {
        display: flex;

        font-size: var(--font_size_xs);
        font-weight: 300;
        line-height: var(--line_height_s);

        color: var(--dark_color_60);
    }


    .urgent
    {
        margin-left: 30px;

        color: var(--grey_color);

        .app_icon
        {
            margin-right: 8px;
        }
    }


    .remove
    {
        margin-left: var(--inner_gap_s);
        padding-inline: 0;

        color: var(--grey_strong_color);
        border-radius: 50%;

        aspect-ratio: 1 / 1;
    }


    .info
    {
        height: 32px;
        padding-top: 12px;
    }


    .footer
    {
        padding: var(--inner_gap_xs) var(--inner_gap_m);

        color: rgba(0, 23, 64, .6);
        border-radius: 0 0 var(--border_radius_s) var(--border_radius_s);
        background-color: rgba(245, 246, 247, 1);
    }
}

.modal_basket_item_count
{
    padding: var(--inner_gap_xxs) 0;

    .text_body_s
    {
        font-size: var(--font_size_xs);
        font-weight: 300;
        line-height: var(--line_height_s);
        letter-spacing: var(--letter_spacing_s);

        color: var(--dark_color_60);
    }
}


.modal_basket_items
{
    margin-bottom: 20px;
}


.modal_basket_total
{
    gap: var(--inner_gap_s);

    margin-bottom: 20px;
    padding: 0 var(--inner_gap_s);


    .text_title_s
    {
        line-height: var(--line_height_l);
    }
}


.modal_basket_actions_utils
{
    --items_per_line: 3;
    --gap_x: var(--inner_gap_s);

    a
    {
        border: 1px solid rgba(0, 73, 183, .15);
    }


    .app_btn
    {
        width: auto;
        padding-inline: 10px;

        background-color: #0049b712;
    }
}


.modal_basket_actions_order
{
    --gap_x: var(--inner_gap_m);
    --gap_y: var(--inner_gap_m);
    --items_per_line: 2;
}


.modal_basket_actions
{
    padding-top: 20px;

    border-top: 1px solid rgba(0, 73, 183, .15);


    .action_order_self
    {
        height: 52px;

        font-size: var(--font_size_s);

        color: var(--light_color);
        background-color: var(--primary_color);
    }


    .action_order_other
    {
        height: 52px;

        font-size: var(--font_size_s);

        color: var(--primary_color);
        border: 1px solid;
    }
}

.link-disabled
{
    cursor: not-allowed;

    opacity: .6;
}



#cooperation_modal_form,
#contact_form,
#become_partner_modal,
#get_result_modal
{
    .text_body_s
    {
        font-size: var(--font_size_xs);
        font-weight: 300;
        line-height: var(--line_height_s);
        letter-spacing: var(--letter_spacing_s);

        color: var(--dark_color_60);
    }
}


#cooperation_modal_form,
#expert_question_modal
{
    .modal_title
    {
        br
        {
            display: none;
        }
    }


    .js-success-pe
    {
        display: none;

        margin-bottom: 20px;

        font-size: var(--font_size_s);
        font-weight: 300;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);


        &.error-form-g
        {
            color: var(--red_color);
        }
    }
}



/*-----------------------------------
    Other and Fixes
-----------------------------------*/

.snackbar
{
    position: fixed;
    z-index: 10001;
    bottom: 20px;
    left: 100%;

    display: flex;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 8px;

    width: 351px;
    max-width: calc(100% - 12px);
    padding: 6px 16px;

    font-size: var(--font_size_xs);
    font-weight: 300;
    line-height: 143%;
    letter-spacing: var(--letter_spacing_s);

    transition: .2s linear;

    color: var(--light_soft_color);
    border-radius: 4px;
    background: var(--dark_color);

    &.show
    {
        transform: translateX(-100%);

        box-shadow: 0 1px 18px 0 rgba(0, 0, 0, .12), 0 6px 10px 0 rgba(0, 0, 0, .14), 0 3px 5px -1px rgba(0, 0, 0, .2);
    }

    .btn-toopen-cart
    {
        width: auto;
        margin-right: 5px;
        margin-left: auto;
        padding: 4px 10px;

        font-family: inherit;
        font-size: 10px;
        font-weight: 500;
        line-height: 14px;

        cursor: pointer;

        color: #5da0e9;
        border: none;
        border-radius: 4px;
        background: transparent;
    }

    .close_btn
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: center;

        width: 34px;
        height: 34px;
        padding: 0;

        cursor: pointer;

        color: currentColor;
        border: none;
        background: 0 0;

        svg
        {
            display: block;

            width: 100%;
            height: 100%;
        }
    }

    .for-snack-icon
    {
        margin-bottom: -4px;
    }
}

.scroll.scroll_s
{
    --custom_scroll_width: 5px;
    --custom_scroll_height: 5px;
}

body .datepicker-container.datepicker-dropdown
{
    position: absolute !important;
    z-index: 99999999 !important; /* Робимо шар вищим за Fancybox */
}
.fancybox__container
{
    z-index: 99999 !important;
}

.form_element
{
    margin-bottom: 20px;
}


.form_element__control
{
    position: relative;

    font-size: 16px;
    line-height: 1.5;

    background-color: #fff;
}


.form_element__input
{
    display: block;

    width: 100%;
    min-height: 52px;
    padding: 12px 16px;

    font-family: inherit;
    font-size: inherit;

    color: rgba(0, 23, 64);
    border: 1px solid rgba(0, 73, 183, .07);
    border-radius: 12px!important;

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;


    &.error
    {
        border-color: var(--red_color);
        box-shadow: 0 0 0 3px rgba(220, 0, 0, .07);
    }
}


.form_element__input--date
{
    padding-right: 59px;


    & + .icon
    {
        position: absolute;
        z-index: 3;
        top: 0;
        right: var(--inner_gap);
        bottom: 0;

        width: 24px;
        margin-block: auto;

        pointer-events: none;

        color: var(--grey_strong_color);

        aspect-ratio: 1 / 1;
    }
}


.form_element__file
{
    display: flex;
    align-content: center;
    align-items: center;
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: var(--inner_gap_xs);

    cursor: pointer;


    .form-group
    {
        display: none;
    }


    .path
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: flex-start;

        width: 100%;
        min-width: 0;
        height: 52px;
        padding-inline: 16px;

        font-family: inherit;
        font-size: inherit;

        color: var(--grey_strong_color);
        border: 1px solid rgb(var(--blue_color) / .07);
        border-radius: var(--border_radius_xs);

        -webkit-appearance: none;
           -moz-appearance: none;
                appearance: none;


        span
        {
            overflow: hidden;

            white-space: nowrap;
            text-overflow: ellipsis;
        }
    }


    .btn
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: nowrap;
        justify-content: center;
        gap: var(--inner_gap_xxs);

        height: 52px;
        padding-inline: var(--inner_gap_m);

        font-size: var(--font_size_s);
        font-weight: 500;
        line-height: var(--line_height);
        letter-spacing: var(--letter_spacing);

        transition: background .2s linear;
        white-space: nowrap;

        color: var(--primary_color);
        border: 1px solid var(--primary_color);
        border-radius: var(--border_radius_max);


        .icon
        {
            display: block;

            width: 24px;
            min-width: 24px;

            aspect-ratio: 1 / 1;
        }


        &:hover
        {
            background: rgb(var(--blue_strong_color) / .1);
        }


        &:active
        {
            background: rgb(var(--blue_strong_color) / .15);
        }
    }
}


.form_element__control label:not(.form_element__file)
{
    position: absolute;
    z-index: 10;
    top: 12px;
    left: 0;

    overflow: hidden;

    max-width: 100%;
    margin: 0 14px;
    padding: 0 8px;

    transition: .1s ease-out;
    transform-origin: left top;
    white-space: nowrap;
    pointer-events: none;

    color: rgba(0, 23, 64, .6);
    background-color: inherit;
}


.form_element__control.focused .form_element__input
{
    border-color: var(--primary_color);
    box-shadow: 0 0 0 3px rgba(0, 73, 183, .07);
}


.form_element__control label.fix_position,
.form_element__control.focused label
{
    top: 0;

    font-size: 90%;

    transform: translateY(-50%) scale(.8) !important;
}


.required::after
{
    content: '*';

    color: var(--red_color);
}


label.required::after
{
    margin-left: var(--inner_gap_xxs);
}


.form_element__error
{
    margin-top: 6px;

    font-size: 75%;

    color: var(--red_color);
}

.form-code-panel
{
    display: flex;
    align-items: center;
    justify-content: center;

    .form_element
    {
        max-width: 55px;
        margin: 0 6px;

        .form_element__input
        {
            text-align: center;
        }
    }
}

#js-lb-analyzes-success
{
    position: relative;

    min-height: 95px;


    .rs-preloader
    {
        .custom-spinner
        {
            top: 20px;
        }
    }


    .text_block
    {
        ul
        {
            li
            {
                display: flex;
                align-content: center;
                align-items: center;
                flex-wrap: wrap;
                justify-content: flex-start;
                gap: var(--inner_gap_xs);
            }
        }
    }
}


.select2
{
    width: 100%!important;
}


.select2-dropdown
{
    overflow: hidden;

    border: 1px solid var(--primary_color);
    border-radius: 12px;
    box-shadow: 0 0 0 3px rgba(0, 73, 183, .07);

    clip-path: inset(0 -3px -3px -3px);
}


.select2-container--default .select2-selection--single
{
    min-height: 52px;

    border: 1px solid rgba(0, 73, 183, .07);
    border-radius: 12px;
}


.error + .select2-container--default .select2-selection--single
{
    border-color: var(--red_color);
    box-shadow: 0 0 0 3px rgba(220, 0, 0, .07);
}


.focused .select2-container--default .select2-selection--single
{
    border-color: var(--primary_color);
    box-shadow: 0 0 0 3px rgba(0, 73, 183, .07);
}


.select2-container--default.select2-container--open .select2-selection--single
{
    border-bottom: 0;
}


.select2-results__option
{
    padding: 12px 16px;

    font-weight: 300;

    cursor: pointer;

    color: var(--dark_color);
}


.select2-results__option:hover
{
    background-color: var(--bg_grey);
}


.select2-container--default .select2-results__option[aria-selected=true]
{
    color: #fff;
    background-color: var(--primary_color);
}


.select2-results__option:empty
{
    display: none;
}


.select2-container .select2-selection--single .select2-selection__rendered
{
    min-height: 52px;
    padding: 12px 16px;
}


.select2.select2-container--default .select2-selection--single .select2-selection__arrow
{
    top: 0;
    top: 50%;
    right: 15px;

    width: 20px;

    transform: translateY(-50%);
}


.select2-container--default .select2-selection--single .select2-selection__arrow b
{
    right: 0;
    left: 0;

    width: 12px;
    height: 8px;
    margin: auto;

    transform: translateY(-50%);

    border: none;
    background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOS4wLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9Ii00NzMgMjc3IDEyIDgiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgLTQ3MyAyNzcgMTIgODsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6IzhBOTNBNjt9DQo8L3N0eWxlPg0KPHBhdGggY2xhc3M9InN0MCIgZD0iTS00NzEuNiwyNzcuM2w0LjYsNC42bDQuNi00LjZsMS40LDEuNGwtNiw2bC02LTZMLTQ3MS42LDI3Ny4zeiIvPg0KPC9zdmc+DQo=) no-repeat 0 0;
    background-size: 100% 100%;
}


.form_element__control__checkbox
{
    position: relative;
}


.form_element__control__checkbox input[type='checkbox']
{
    display: none;


    &.error + label
    {
        .checkmark
        {
            border-color: var(--red_color);
        }
    }
}


.form_element__control__checkbox label
{
    display: block;

    padding-left: 40px;

    cursor: pointer;

    color: var(--grey_strong_color);
}


.form_element__control__checkbox .checkmark
{
    position: absolute;
    top: 10px;
    left: 7px;

    display: block;

    width: 18px;
    height: 18px;

    border: 2px solid var(--grey_strong_color);
    border-radius: 4px;
}


.form_element__control__checkbox input:checked + label .checkmark
{
    border-color: var(--primary_color);
    background-color: var(--primary_color);
}


.form_element__control__checkbox input:checked + label .checkmark:after
{
    position: absolute;
    top: 0;
    left: var(--inner_gap_xxs);

    display: block;

    width: 6px;
    height: 12px;

    content: '';
    transform: rotate(45deg);

    border: solid #fff;
    border-width: 0 2px 2px 0;
}


textarea.form_element__input
{
    min-height: 80px;

    font-size: var(--font_size_xs);

    resize: vertical;
}


.form_element__submit
{
    display: flex;
    align-content: center;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--inner_gap_xxs);

    width: 100%;
    min-height: 52px;
    padding-inline: var(--inner_gap_m);

    font-size: var(--font_size_s);
    font-weight: 500;
    line-height: var(--line_height_s);
    letter-spacing: var(--letter_spacing_s);

    transition: .2s linear;
    text-decoration: none;

    color: #fff;
    border-radius: var(--border_radius_max);
    background-color: var(--primary_color);
}


.form_element__submit:hover
{
    background-color: var(--primary_color_hover);
}


.form_element__submit:disabled
{
    pointer-events: none;

    color: rgba(184, 190, 194, 1);
    background-color: rgba(245, 246, 247, 1);
}
