*
{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

*:before,
*:after
{
    box-sizing: border-box;
}

img
{
    border: none;
}

textarea
{
    overflow: auto;
}

input,
textarea,
input:active,
textarea:active
{
    -webkit-border-radius: 0;
            border-radius: 0;
         outline: none transparent !important;
    box-shadow: none;

    -webkit-appearance: none;
            appearance: none;
    -moz-outline: none !important;
}

input[type=submit],
button[type=submit],
input[type=reset],
button[type=reset]
{
    -webkit-border-radius: 0;

    -webkit-appearance: none;
}

:focus
{
    outline: none;
}

:hover,
:active
{
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    -webkit-touch-callout: none;
}


::-ms-clear
{
    display: none;
}



/*---------------
    Main styles
---------------*/
:root
{
    --bg: #fff;
    --scroll_width: 17px;
    --text_color: #000;
    --font_size: 16px;
    --font_size_title: 30px;
    --font_family: 'Noto Sans', 'Arial', sans-serif;
}



.clear
{
    clear: both;
}


.left
{
    float: left;
}


.right
{
    float: right;
}


.hidden
{
	display: none !important;
}


html
{
    height: 100%;

    background: var(--bg);

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
        -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}


body
{
    color: var(--text_color);
    font-family: var(--font_family);
    font-size: var(--font_size);

    height: 100%;

    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
    -webkit-overflow-scrolling: touch;
    text-rendering: optimizeLegibility;
    text-decoration-skip: objects;
}

body.lock
{
    overflow: hidden;
}


.wrap
{
    position: relative;

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

    min-height: 100%;
}


.main
{
    flex: 1 0 auto;
}


.cont
{
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 20px;
}


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

    display: none;

    width: 100%;
    height: 100vh;

    opacity: .65;
    background: #000;
}


.compensate-for-scrollbar
{
    margin-right: var(--scroll_width) !important;
}


.lozad
{
    transition: .5s linear;

    opacity: 0;
}

.lozad.loaded
{
    opacity: 1;
}


.flex
{
    display: flex;

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



.page_head
{
    margin-top: -5px;
    margin-bottom: 30px;
}

.page_head .cont > * + *
{
    margin-top: 10px;
}


.date_head
{
    margin-top: -25px;
    margin-bottom: 30px;
    font-size: 13px;
    color: #94918f;
}


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

.breadcrumbs a
{
    color: #94918f;

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

.breadcrumbs a:hover
{
    color: #ff6900;

    text-decoration: underline;
}

.breadcrumbs .sep
{
    position: relative;
    top: -1px;

    display: inline-block;

    width: 6px;
    height: 8px;
    margin: 0 6px;

    vertical-align: middle;
}

.breadcrumbs .sep:after
{
    position: absolute;
    top: 50%;
    left: 50%;

    display: block;

    width: 6px;
    height: 6px;
    margin-top: -3px;
    margin-left: -4px;

    content: '';
    transform: rotate(-45deg);

    border-right: 1px solid #94918f;
    border-bottom: 1px solid #94918f;
}


.page_title
{
    font-size: var(--font_size_title);
    line-height: normal;
}

.page_desc
{
    margin-top: 20px !important;
}



.block
{
    margin-bottom: 70px;
}

.block.bg
{
    padding: 70px 0;

    background: #f5f5f5;
}

.block.no_margin
{
    margin-bottom: 0;
}


.block_head
{
    display: flex;

    width: 100%;
    margin-bottom: 45px;

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

.block_head.center
{
    text-align: center;

    justify-content: center;
}

.block_head .title
{
    font-size: var(--font_size_title);
    font-weight: 700;
    line-height: 34px;

    position: relative;

    padding-top: 17px;

    text-transform: uppercase;
}

.block_head .title:before
{
    position: absolute;
    top: 0;
    right: 0;
    left: 0;

    display: block;

    width: 60px;
    height: 2px;
    margin: auto;

    content: '';

    background: #ff6900;
}

.block_head .desc
{
    color: #686868;
    font-size: 18px;
    line-height: 28px;

    width: 100%;
    max-width: 100%;
    margin-top: 10px;
}



.form
{
    --form_border_color: #d5d5d5;
    --form_focus_color: #ff6900;
    --form_error_color: red;
    --form_success_color: green;
    --form_border_radius: 0;
    --form_bg_color: #f5f5f5;
    --form_placeholder_color: #000;
}


.form ::-webkit-input-placeholder
{
    color: var(--form_placeholder_color);
}

.form :-moz-placeholder
{
    color: var(--form_placeholder_color);
}

.form :-ms-input-placeholder
{
    color: var(--form_placeholder_color);
}


.form .cols
{
    margin-left: -20px;
}

.form .cols .col
{
    width: calc(50% - 20px);
    margin-left: 20px;
}


.form .columns
{
    margin-left: calc(var(--form_columns_offset) * -1);

    --form_columns_offset: 20px;
}

.form .columns > *
{
    width: calc(50% - var(--form_columns_offset));
    margin-left: var(--form_columns_offset);
}


.form .line,
.form .cols .col .submit
{
    margin-bottom: 25px;
}


.form .label
{
    font-size: 14px;
    font-weight: 700;
    line-height: 18px;

    overflow: hidden;

    margin-bottom: 7px;

    white-space: nowrap;
    text-transform: uppercase;
    text-overflow: ellipsis;
}

.form .required
{
    color: #fc2424;
}


.form .field
{
    position: relative;
}

.form .field + .field
{
    margin-top: 10px;
}


.form .input
{
    color: var(--text_color);
    font: var(--font_size) var(--font_family);

    display: block;

    width: 100%;
    height: 50px;
    padding: 0 20px;

    transition: .2s linear;

    border: 1px solid var(--form_border_color);
    border-radius: var(--form_border_radius);
    background: var(--form_bg_color);
}

.form textarea
{
    color: var(--text_color);
    font: var(--font_size) var(--font_family);

    display: block;

    width: 100%;
    height: 150px;
    padding: 12px 20px;

    resize: none;
    transition: .2s linear;

    border: 1px solid var(--form_border_color);
    border-radius: var(--form_border_radius);
    background: var(--form_bg_color);
}


.form .input:focus,
.form textarea:focus,
.form .nice-select.open .current
{
    border-color: var(--form_focus_color);
}

.form .success,
.form .success + .nice-select .current
{
    border-color: var(--form_success_color);
}

.form .error,
.form .error + .nice-select .current
{
    border-color: var(--form_error_color);
}


.form .input:disabled,
.form textarea:disabled,
.form select:disabled + .nice-select
{
    cursor: default;
    pointer-events: none;

    opacity: .5;
}


.form span.error
{
    color: var(--form_error_color);
    font-size: 11px;
    line-height: 13px;
    margin-top: 5px;
}


.form select
{
    display: none;
}

.form .nice-select
{
    position: relative;

    display: block;
}

.form .nice-select .current
{
    color: var(--form_placeholder_color);
    line-height: 48px;

    position: relative;

    display: block;
    overflow: hidden;

    height: 50px;
    padding: 0 50px 0 20px;

    cursor: pointer;
    transition: .2s linear;
    white-space: nowrap;
    text-overflow: ellipsis;

    border: 1px solid var(--form_border_color);
    border-radius: var(--form_border_radius);
    background: var(--form_bg_color);
}

.form .nice-select .current.selected
{
    color: var(--text_color);
}

.form .nice-select .current:after
{
    position: absolute;
    top: 50%;
    right: 20px;

    display: block;

    width: 10px;
    height: 10px;
    margin-top: -8px;

    content: '';
    transform: rotate(-45deg);

    border-bottom: 2px solid #3e3e3f;
    border-left: 2px solid #3e3e3f;
}

.form .nice-select .list
{
    position: absolute;
    z-index: 9;
    top: calc(100% + 30px);
    left: 0;

    visibility: hidden;
    overflow: hidden;

    min-width: 100%;
    padding: 5px 0;

    transition: .2s linear;

    opacity: 0;
    border: 1px solid var(--form_focus_color);
    border-radius: var(--form_border_radius);
    background: #fff;
}

.form .nice-select.open .list
{
    top: calc(100% - 1px);

    visibility: visible;

    opacity: 1;
}

.form .nice-select .list .scrollbar
{
    overflow: auto;

    max-height: 240px;
}

.form .nice-select .list .list_item
{
    padding: 5px 20px;

    cursor: pointer;
    transition: .2s linear;
}

.form .nice-select .list .list_item:empty
{
    display: none;
}

.form .nice-select .list .list_item:hover,
.form .nice-select .list .list_item.selected
{
    color: #ff6900;
}


.form input[type=file] + label
{
    cursor: pointer;

    flex-wrap: nowrap;
}

.form input[type=file] + label .btn
{
    line-height: 38px;

    display: block;

    width: var(--file_btn);
    padding: 0 20px;

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

    border: 1px solid var(--btn_bg);
    border-radius: var(--form_border_radius);
    background: var(--btn_bg);

    --file_btn: 200px;
}

.form input[type=file] + label .path
{
    line-height: 40px;

    overflow: hidden;

    width: calc(100% - var(--file_btn) - 20px);
    margin-left: auto;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.form input[type=file] + label:hover .btn
{
    border-color: var(--btn_bg_h);
    background: var(--btn_bg_h);
}


.form .submit
{
    display: flex;

    padding-top: 25px;

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

.form .submit_btn
{
    color: #ff6900;
    font: var(--font_size) var(--font_family);

    display: inline-block;

    width: 100%;
    height: 50px;
    padding: 0 30px;

    cursor: pointer;
    transition: .2s linear;
    vertical-align: top;
    text-transform: uppercase;

    border: 2px solid #ff6900;
    border-radius: var(--form_border_radius);
    background: none;
}

.form .submit_btn:hover
{
    color: #fff;

    background: #ff6900;
}



.text_block
{
    line-height: 24px;
}

.text_block > :last-child,
.text_block .cols .col > :last-child,
.text_block .block > :last-child,
.text_block .info_block .desc > :last-child
{
    margin-bottom: 0 !important;
}

.text_block > :first-child
{
    margin-top: 0 !important;
}


.text_block h2
{
    font-size: 26px;
    font-weight: 700;
    line-height: 30px;

    margin-bottom: 20px;
}

.text_block h1 + h2,
.text_block img.left + h2,
.text_block img.right + h2,
.text_block .iframe.left + h2,
.text_block .iframe.right + h2,
.text_block figure.left + h2,
.text_block figure.right + h2
{
    margin-top: 0 !important;
}


.text_block h3
{
    font-size: 22px;
    font-weight: 700;
    line-height: 24px;

    margin-bottom: 20px;
}

.text_block h1 + h3,
.text_block h2 + h3,
.text_block img.left + h3,
.text_block img.right + h3,
.text_block .iframe.left + h3,
.text_block .iframe.right + h3,
.text_block figure.left + h3,
.text_block figure.right + h3
{
    margin-top: 0 !important;
}


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

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

.text_block h1 + *,
.text_block h2 + *,
.text_block h3 + *,
.text_block h4 + *,
.text_block h5 + *,
.text_block h6 + *
{
    margin-top: 0 !important;
}


.text_block p,
.text_block img,
.text_block .iframe,
.text_block figure,
.text_block ul,
.text_block ol
{
    margin-bottom: 24px;
}


.text_block img,
.text_block .iframe,
.text_block figure
{
    display: block;

    max-width: 100%;
}

.text_block img.left,
.text_block .iframe.left,
.text_block figure.left
{
    max-width: calc(65% - 40px);
    margin-top: 4px;
    margin-right: 40px;
}

.text_block img.right,
.text_block .iframe.right,
.text_block figure.right
{
    max-width: calc(65% - 40px);
    margin-top: 4px;
    margin-left: 40px;
}

.text_block img.loaded
{
    height: auto !important;
}


.text_block .iframe
{
    position: relative;

    overflow: hidden;

    padding-bottom: 56.5%;

    background: #ddd;
}

.text_block .iframe.left,
.text_block .iframe.right
{
    width: 570px;
    padding-bottom: 25.5%;
}

.text_block .iframe iframe
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100% !important;
    height: 100% !important;

    object-fit: cover;
}


.text_block figure img
{
    display: block;

    margin: 0;
}

.text_block figure figcaption
{
    color: #686868;

    display: block;

    margin-top: 10px;
}


.text_block .cols
{
    display: flex;

    margin: 40px 0;

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

.text_block .clear + .cols
{
    margin-top: 20px;
}

.text_block .cols .col
{
    width: calc(50% - 35px);
}

.text_block .cols .col.aligncenter
{
    align-self: center;
}


.text_block .block
{
    margin: 40px 0;
}

.text_block .block + .block
{
    margin-top: -20px;
}

.text_block .block img
{
    margin-top: 0;
}


.text_block .table_wrap
{
    overflow: auto;

    max-width: 100%;
    margin: 40px 0;
}

.text_block table
{
    width: 100%;

    table-layout: fixed;
    border-spacing: 0;
    border-collapse: collapse;
}

.text_block table th
{
    font-size: 15px;
    font-weight: 700;
    line-height: 24px;

    padding: 15px;

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

    background: #d9d9d9;
}

.text_block table td
{
    padding: 15px;

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

.text_block table tbody tr:nth-child(2n) td
{
    background: #f5f5f5;
}

.text_block table th:first-child,
.text_block table td:first-child
{
    padding-left: 30px;
}

.text_block table th:last-child,
.text_block table td:last-child
{
    padding-right: 30px;
}

.text_block table .aligncenter
{
    text-align: center;
}


.text_block ul
{
    padding: 0 20px;
}

.text_block ul li
{
    position: relative;

    padding-left: 24px;

    list-style-type: none;
}

.text_block ul li + li
{
    margin-top: 7px;
}

.text_block ul li:before
{
    position: absolute;
    top: 9px;
    left: 0;

    display: block;

    width: 6px;
    height: 6px;

    content: '';

    background: #ff6900;
}


.text_block ol
{
    counter-reset: li;
}

.text_block ol li
{
    position: relative;

    padding-left: 20px;

    list-style-type: none;
}

.text_block ol li + li
{
    margin-top: 7px;
}

.text_block ol li:before
{
    color: #ff6900;
    font-weight: 700;

    position: absolute;
    top: 0;
    left: 0;

    content: counters(li, '.') '.';
    counter-increment: li;
}


.text_block .accordion,
.text_block .gallery
{
    margin: 40px 0;
}


.text_block .info_block
{
    display: flex;

    margin: 50px 0;

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

.text_block .info_block .info
{
    color: #686868;

    width: calc(50% - 15px);

    align-self: center;
}

.text_block .info_block .title
{
    color: var(--text_color);
    font-size: 24px;
    font-weight: 700;
    line-height: 28px;

    margin-bottom: 20px;
}

.text_block .info_block .link
{
    color: #ff6900;
    font-family: var(--font_family);
    font-size: var(--font_size);
    font-weight: normal;
    line-height: 20px;

    display: inline-block;

    min-width: 200px;
    margin-top: 25px;
    padding: 13px 26px;

    cursor: pointer;
    transition: .2s linear;
    text-align: center;
    vertical-align: top;
    text-decoration: none;
    text-transform: uppercase;

    border: 2px solid #ff6900;
    background: none;
}

.text_block .info_block .link:hover
{
    color: #fff;

    background: #ff6900;
}

.text_block .info_block .img
{
    width: calc(50% - 15px);
}

.text_block .info_block .img img
{
    display: block;

    max-width: 100%;
    margin: 0 auto;
}


.text_block a
{
    color: #ff6900;
    font-weight: 700;
}

.text_block a:hover
{
    text-decoration: none;
}

.text_block .error_code
{
    color: #ff7300;
    font: 900 100px/80px 'Noto Sans';
    width: 215px;
}

.text_block .error_info 
{
    width: calc(100% - 250px);
}



.tab_content
{
    position: relative;

    visibility: hidden;

    height: 0;

    pointer-events: none;

    opacity: 0;
}

.tab_content.active
{
    visibility: visible;

    height: auto;

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

    opacity: 1;
}



.accordion .item
{
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}

.accordion .item + .item
{
    margin-top: -1px;
}

.accordion .item .title
{
    font-size: 20px;
    line-height: 26px;

    position: relative;

    display: flex;

    min-height: 84px;
    padding: 15px 105px 15px 30px;

    cursor: pointer;
    transition: .2s linear;

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

.accordion .item .title .icon
{
    position: absolute;
    top: 50%;
    right: 30px;

    display: flex;

    width: 44px;
    height: 44px;
    margin-top: -22px;

    transition: .2s linear;

    border: 2px solid #ff6900;
    border-radius: 50%;

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

.accordion .item .title .icon > *
{
    display: block;

    width: 15px;
    height: 15px;
    margin-top: 1px;
    margin-left: 1px;

    transition: .2s linear;
    transform: rotate(90deg);

    fill: #ff6900;
}

.accordion .item .title:hover .icon
{
    background: #ff6900;
}

.accordion .item .title:hover .icon > *
{
    fill: #fff;
}

.accordion .item.active .title .icon > *
{
    margin-top: -1px;

    transform: rotate(-90deg);
}

.accordion .item .data
{
    display: none;

    padding: 30px 35px 35px;

    background: #f5f5f5;
}

.accordion .item .data > *:last-child
{
    margin-bottom: 0;
}



.sticky
{
    z-index: 90;
}

.is_stuck
{
    margin-bottom: 0 !important;
}



.supports_error
{
    font-family: 'Arial', sans-serif;
    font-size: 20px;
    line-height: 30px;

    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;

    display: none;

    width: 100%;
    height: 100%;
    padding: 20px;

    text-align: center;

    background: #fff;

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

.supports_error.show
{
    display: flex;
}



@-webkit-keyframes tada
{
    from
    {
        -webkit-transform: scale3d(1, 1, 1);
                transform: scale3d(1, 1, 1);
    }

    10%,
    20%
    {
        -webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
                transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
    }

    30%,
    50%,
    70%,
    90%
    {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
                transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    }

    40%,
    60%,
    80%
    {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
                transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    }

    to
    {
        -webkit-transform: scale3d(1, 1, 1);
                transform: scale3d(1, 1, 1);
    }
}

@keyframes tada
{
    from
    {
        -webkit-transform: scale3d(1, 1, 1);
                transform: scale3d(1, 1, 1);
    }

    10%,
    20%
    {
        -webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
                transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
    }

    30%,
    50%,
    70%,
    90%
    {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
                transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    }

    40%,
    60%,
    80%
    {
        -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
                transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    }

    to
    {
        -webkit-transform: scale3d(1, 1, 1);
                transform: scale3d(1, 1, 1);
    }
}



/*---------------
   Header
---------------*/
.header_wrap,
header
{
    margin-bottom: 20px;
}

.header_wrap header
{
    margin-bottom: 0;
}

header
{
    position: relative;
    z-index: 99;
    top: 0;
    left: 0;

    width: 100%;

    background: #fff;
}



header > .close
{
    position: absolute;
    top: 0;
    left: 100%;

    display: none;

    width: 50px;
    height: 50px;
    padding: 13px;

    cursor: pointer;

    border: none;
    background: none;

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

header.show > .close
{
    display: flex;
}

header > .close span
{
    position: relative;

    display: block;

    width: 100%;
    height: 2px;

    background: #fff;
}

header > .close span:nth-child(1)
{
    top: 1px;

    transform: rotate(45deg);
}

header > .close span:nth-child(2)
{
    top: -1px;

    transform: rotate(-45deg);
}



header .top
{
    border-bottom: 1px solid #d1d1d1;
}

header .top .cont.flex
{
    justify-content: space-between;
    align-items: center;
    align-content: center;
}


header .info
{
    padding: 19px 0;
}

header .info .cont.flex
{
    justify-content: space-between;
    align-items: center;
    align-content: center;
}


header .bottom
{
    background: #ff6900;
}



header .links
{
    display: flex;

    margin-right: auto;

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

header .links > * + *
{
    margin-left: 22px;
}

header .links a
{
    color: #686868;
    font-size: 13px;
    line-height: 39px;

    display: inline-block;

    transition: .2s linear;
    vertical-align: top;
    text-decoration: none;
    text-transform: uppercase;
}

header .links a:hover,
header .links .active a
{
    color: #f96915;
}



header .time
{
    color: #686868;
    font-size: 13px;
    line-height: 39px;

    white-space: nowrap;
    text-transform: uppercase;
}



header .contacts_link
{
    color: #686868;
    font-size: 13px;
    line-height: 39px;

    display: flex;

    margin-left: 26px;

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

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

header .contacts_link .icon
{
    display: block;

    width: 17px;
    height: 17px;
    margin-right: 7px;

    transition: .2s linear;

    fill: #686868;
}

header .contacts_link:hover,
header .contacts_link.active
{
    color: #f96915;
}

header .contacts_link:hover .icon,
header .contacts_link.active .icon
{
    fill: #f96915;
}



header .logo a,
header .logo img
{
    display: block;

    max-width: 100%;
    height: 46px;
    margin: 0 auto;
}



header .slogan
{
    color: #686868;
    font-size: 14px;
    line-height: 20px;

    width: 280px;
    max-width: 100%;
    margin-right: auto;
    margin-left: 26px;
}



header .search
{
    width: 380px;
    max-width: 100%;
    margin-left: auto;
}

header .search form
{
    display: flex;

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

header .search ::-webkit-input-placeholder
{
    color: #686868;
}

header .search :-moz-placeholder
{
    color: #686868;
}

header .search :-ms-input-placeholder
{
    color: #686868;
}

header .search .input
{
    color: var(--text_color);
    font-family: var(--font_family);
    font-size: 14px;

    display: block;

    width: 100%;
    height: 44px;
    padding: 0 45px 0 14px;

    border: 1px solid #e9ecf0;
    background: none;
}

header .search .submit_btn
{
    position: relative;

    display: flex;

    width: 41px;
    height: 44px;
    margin-left: -42px;

    cursor: pointer;

    border: none;
    background: none;

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

header .search .submit_btn .icon
{
    display: block;

    width: 21px;
    height: 21px;

    transition: .2s linear;

    fill: #727272;
}

.mse2-ac-wrapper
{
    border-bottom: 1px solid #ddd;
}

.mse2-ac-wrapper:last-child
{
    border: none;
}

.mse2-ac-wrapper .ui-state-active
{
    border: 1px solid #fff !important;
    background: #ff6900 !important;
}

.mse2-ac-item
{
    font-size: 14px;
    padding: 5px 0;
}

.mse2-ac-item span
{
    font-weight: bold;
}

.mse2-ac-item small
{
    display: block;
    padding-left: 17px;
    font-size: 10px;
    padding-top: 2px;
}



header .phone
{
    color: #3d3d3f;
    font-size: 19px;
    font-weight: 700;
    line-height: 21px;

    display: flex;

    margin-left: 31px;

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

header .phone .icon
{
    display: flex;

    width: 44px;
    height: 44px;
    margin-right: 13px;
    padding: 9px;

    border-radius: 50%;
    background: #3e3e3f;

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

header .phone .icon > *
{
    display: block;

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

    -webkit-animation-duration: 1s;
            animation-duration: 1s;

    fill: #fff;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
}

header .phone a
{
    color: #3d3d3f;

    display: inline-block;

    transition: .2s linear;
    vertical-align: top;
    white-space: nowrap;
    text-decoration: none;
}

header .phone a:hover
{
    color: #f96915;
}

header .phone:hover .icon > *
{
    -webkit-animation-name: tada;
            animation-name: tada;
}



header .menu
{
    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
}

header .menu .item
{
    position: relative;
}

header .menu .item > a
{
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    line-height: 19px;

    position: relative;

    display: flex;

    min-height: 45px;
    padding: 0 23px;

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

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

header .menu .item:hover > a,
header .menu .item.active > a
{
    background: #eb6202;
}



.mob_header
{
    position: relative;
    z-index: 98;
    top: 0;
    left: 0;

    display: none;

    width: 100%;
    margin-bottom: 20px;
    padding: 20px 0;

    transition: .2s linear;

    border-bottom: 4px solid #ff6900;
    background: #fff;
}

.mob_header.fixed
{
    transform: translateY(-100%);
}

.mob_header.fixed.show
{
    transform: translateY(0%);
}

.mob_header .cont
{
    display: flex;

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


.mob_header .logo
{
    margin-right: auto;
}

.mob_header .logo a,
.mob_header .logo img
{
    display: block;

    max-width: 100%;
    height: 46px;
    margin: 0 auto;
}


.mob_header .phone
{
    color: #3d3d3f;
    font-size: 19px;
    font-weight: 700;
    line-height: 21px;

    display: flex;

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

.mob_header .phone .icon
{
    display: flex;

    width: 44px;
    height: 44px;
    margin-right: 13px;
    padding: 9px;

    border-radius: 50%;
    background: #3e3e3f;

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

.mob_header .phone .icon > *
{
    display: block;

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

    -webkit-animation-duration: 1s;
            animation-duration: 1s;

    fill: #fff;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
}

.mob_header .phone a
{
    color: #3d3d3f;

    display: inline-block;

    transition: .2s linear;
    vertical-align: top;
    white-space: nowrap;
    text-decoration: none;
}

.mob_header .phone a:hover
{
    color: #f96915;
}

.mob_header .phone:hover .icon > *
{
    -webkit-animation-name: tada;
            animation-name: tada;
}


.mob_header .search
{
    margin-left: 30px;
}

.mob_header .search .link
{
    display: flex;

    width: 44px;
    height: 44px;

    cursor: pointer;

    border: none;
    background: none;

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

.mob_header .search .link .icon
{
    display: block;

    width: 21px;
    height: 21px;

    transition: .2s linear;

    fill: #727272;
}

.mob_header .search form
{
    position: absolute;
    top: calc(100% + 4px);
    left: 0;

    display: flex;
    visibility: hidden;

    width: 100%;

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

    opacity: 0;
    background: #fff;

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

.mob_header .search form.show
{
    visibility: visible;

    pointer-events: auto;

    opacity: 1;
}

.mob_header .search ::-webkit-input-placeholder
{
    color: #686868;
}

.mob_header .search :-moz-placeholder
{
    color: #686868;
}

.mob_header .search :-ms-input-placeholder
{
    color: #686868;
}

.mob_header .search .input
{
    color: var(--text_color);
    font-family: var(--font_family);
    font-size: 14px;

    display: block;

    width: 100%;
    height: 44px;
    padding: 0 45px 0 14px;

    border: 1px solid #e9ecf0;
    background: none;
}

.mob_header .search .submit_btn
{
    position: relative;

    display: flex;

    width: 41px;
    height: 44px;
    margin-left: -42px;

    cursor: pointer;

    border: none;
    background: none;

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

.mob_header .search .submit_btn .icon
{
    display: block;

    width: 21px;
    height: 21px;

    transition: .2s linear;

    fill: #727272;
}


.mob_header .mob_menu_link
{
    display: block;

    width: 50px;
    height: 38px;
    margin-right: -10px;
    margin-left: 20px;
    padding: 10px;

    cursor: pointer;

    border: none;
    background: none;
}

.mob_header .mob_menu_link span
{
    position: relative;

    display: block;

    width: 100%;
    height: 2px;

    transition: .2s linear;

    background: var(--text_color);
}

.mob_header .mob_menu_link span + span
{
    margin-top: 6px;
}



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



/*---------------
   Main section
---------------*/
.owl-carousel,
.owl-carousel .slide:first-child
{
    display: block;
}

.owl-carousel .slide
{
    display: none;
}

.owl-carousel .owl-stage
{
    white-space: nowrap;
}

.owl-carousel .owl-item
{
    display: inline-block;
    float: none;

    vertical-align: top;
    white-space: normal;
}

.owl-carousel .slide .lozad
{
    transition: .2s linear;
}



.cats_wall .grid
{
    display: grid;

    grid-gap: 10px;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: auto;
}

.cats_wall .grid > *
{
    padding-bottom: 81%;
}

.cats_wall .item
{
    color: #fff;

    position: relative;

    display: block;
    overflow: hidden;

    text-decoration: none;

    background: #ddd;
}

.cats_wall .item:before
{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';
    transition: .2s linear;

    opacity: .2;
    background: #000;
}

.cats_wall .item:after
{
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    opacity: .7;
    background: url(../images/sh_cats_wall.png) 50% 100% repeat-x;
}

.cats_wall .item img
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    display: block;

    min-width: 100%;
    min-height: 100%;

    transition: transform .3s;
}

.cats_wall .item .name
{
    font-size: 22px;
    line-height: 24px;

    position: absolute;
    z-index: 5;
    bottom: 20px;
    left: 20px;

    width: calc(100% - 40px);
    padding-left: 8px;

    border-left: 2px solid #ff6900;
}


.cats_wall .item:hover:before
{
    opacity: .5;
}

.cats_wall .item:hover img
{
    transform: scale(1.03);
}



.brands .slider
{
    padding: 0 30px;
}

.brands .slide a
{
    display: flex;

    width: 100%;
    height: 80px;

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

.brands .slide img
{
    display: block;

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

    transition: .2s linear;

    opacity: .65;

    -webkit-filter: grayscale(100%);
       -moz-filter: grayscale(100%);
        -ms-filter: grayscale(100%);
         -o-filter: grayscale(100%);
            filter: grayscale(100%);
}

.brands .slide a:hover img
{
    opacity: 1;

    -webkit-filter: grayscale(0%);
       -moz-filter: grayscale(0%);
        -ms-filter: grayscale(0%);
         -o-filter: grayscale(0%);
            filter: grayscale(0%);
}


.brands .flex
{
    margin-bottom: -20px;
    margin-left: -20px;

    align-items: stretch;
    align-content: stretch;
}

.brands .flex > *
{
    width: calc(25% - 20px);
    margin-bottom: 20px;
    margin-left: 20px;
}


.brands .item
{
    display: flex;

    height: 120px;
    padding: 15px;

    transition: .2s linear;

    border: 2px solid #e9ecf0;

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

.brands .item img
{
    display: block;

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

.brands .item:hover
{
    border-color: transparent;
    box-shadow: 0 9px 16px 0 rgba(0, 3, 1, .1);
}



.cats .flex
{
    margin-bottom: -20px;
    margin-left: -20px;

    align-items: stretch;
    align-content: stretch;
}

.cats .flex > *
{
    width: calc(33.333% - 20px);
    margin-bottom: 20px;
    margin-left: 20px;
}


.cats .cat
{
    color: #686868;
    line-height: 24px;

    display: flex;
    flex-direction: column;

    text-align: center;
    text-decoration: none;

    border: 2px solid #e9ecf0;
    background: #fff;
}

.cats .cat .info
{
    padding: 30px 25px;

    flex: 1 0 auto;
}

.cats .cat .name
{
    color: #0b1019;
    font-size: 24px;
    font-weight: 700;
    line-height: 28px;

    margin-bottom: 20px;

    transition: .2s linear;
}

.cats .cat .thumb
{
    position: relative;

    overflow: hidden;

    padding-bottom: 52%;

    background: #ddd;
}

.cats .cat .thumb img
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    display: block;

    min-width: 100%;
    min-height: 100%;

    transition: transform .3s;
}


.cats .flex.four > *
{
    width: calc(25% - 20px);
}

.cats .flex.four > *.big
{
    width: calc(50% - 20px);
}

.cats .flex.four .cat .info
{
    padding: 35px 20px 25px;
}

.cats .flex.four > * .thumb
{
    padding-bottom: 66.666%;
}

.cats .flex.four > *.big .thumb
{
    padding-bottom: 48%;
}


.cats .cat:hover .name
{
    color: #ff6900;
}

.cats .cat:hover .thumb img
{
    transform: scale(1.03);
}



.slider_block .slide
{
    position: relative;

    overflow: hidden;

    background: #ddd;
}

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

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.slider_block .data
{
    position: relative;
    z-index: 5;

    display: flex;

    min-height: 450px;
    padding: 60px 105px;

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


.slider_block .info
{
    color: #686868;
    line-height: 24px;

    width: 430px;
    max-width: 100%;
    padding: 50px;

    background: #fff;
}

.slider_block .title
{
    color: #000;
    font-size: 30px;
    font-weight: 700;
    line-height: 32px;

    margin-bottom: 20px;

    text-transform: uppercase;
}

.slider_block .link
{
    color: #fff;
    font-size: 22px;
    line-height: 26px;

    display: block;

    height: 50px;
    margin-top: 20px;
    padding: 10px 26px 14px;

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

    background: #ff6900;
}



.advantages .flex
{
    margin-bottom: -30px;
    margin-left: -20px;

    justify-content: center;
}

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


.advantages .item
{
    color: #686868;
    font-size: 15px;
    line-height: 24px;

    padding: 0 20px;

    text-align: center;
}

.advantages .item .icon
{
    display: flex;

    width: 95px;
    height: 95px;
    margin: 0 auto;
    padding: 12px;

    border-radius: 50%;
    background: #f5f5f5;

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

.advantages .item .icon img
{
    display: block;

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

.advantages .item .name
{
    color: #000;
    font-size: 20px;
    font-weight: 700;
    line-height: 28px;

    margin-top: 20px;
}

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



.scopes .flex
{
    margin-bottom: -5px;
    margin-left: -5px;

    justify-content: start;
    align-items: stretch;
    align-content: stretch;
}

.scopes .flex > *
{
    width: calc(20% - 5px);
    margin-bottom: 5px;
    margin-left: 5px;
}


.scopes .scope
{
    color: #fff;

    position: relative;

    display: block;
    overflow: hidden;

    padding-bottom: 37%;

    text-align: center;
    text-decoration: none;
    text-transform: uppercase;

    background: #ddd;
}

.scopes .scope:before
{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';
    transition: .2s linear;

    opacity: .2;
    background: #000;
}

.scopes .scope:after
{
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    content: '';

    opacity: .7;
    background: url(../images/sh_cats_wall.png) 50% 100% repeat-x;
}

.scopes .scope img
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    display: block;

    min-width: 100%;
    min-height: 100%;

    transition: transform .3s;
}

.scopes .scope .info
{
    position: absolute;
    z-index: 5;
    bottom: 0;
    left: 0;

    display: flex;

    width: 100%;
    height: 154px;
    padding: 35px 20px;

    transition: .25s linear;

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

.scopes .scope .name
{
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;

    position: relative;

    width: 100%;
    padding-top: 12px;
}

.scopes .scope .name:before
{
    position: absolute;
    top: 0;
    right: 0;
    left: 0;

    display: block;

    width: 22px;
    height: 2px;
    margin: auto;

    content: '';

    background: #ff6900;
}


.scopes .scope:hover:before
{
    opacity: .5;
}

.scopes .scope:hover .info
{
    height: 100%;
}

.scopes .scope:hover img
{
    transform: scale(1.03);
}



.clients .slide a
{
    display: flex;

    width: 100%;
    height: 80px;

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

.clients .slide img
{
    display: block;

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

    transition: .2s linear;

    opacity: .65;

    -webkit-filter: grayscale(100%);
       -moz-filter: grayscale(100%);
        -ms-filter: grayscale(100%);
         -o-filter: grayscale(100%);
            filter: grayscale(100%);
}

.clients .slide a:hover img
{
    opacity: 1;

    -webkit-filter: grayscale(0%);
       -moz-filter: grayscale(0%);
        -ms-filter: grayscale(0%);
         -o-filter: grayscale(0%);
            filter: grayscale(0%);
}



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

    align-items: stretch;
    align-content: stretch;
}

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


.reviews .review_wrap
{
    height: 293px;
}

.reviews .review
{
    position: relative;
    z-index: 3;

    display: flex;
    overflow: hidden;

    width: 100%;
    height: 100%;
    padding: 30px 30px 40px;

    transition: .2s linear;

    background: #fff;

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

.reviews .review .col_left
{
    width: 100px;
    max-width: 100%;
}

.reviews .review .info
{
    width: calc(100% - 130px);
}


.reviews .review .logo
{
    margin-bottom: 22px;
}

.reviews .review .logo img
{
    display: block;

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


.reviews .review .thumb
{
    display: block;

    width: 100%;

    border: 1px solid #eceff2;
}

.reviews .review .thumb img
{
    display: block;

    max-width: 100%;
    margin: 0 auto;
}


.reviews .review .name
{
    font-size: 16px;
    font-weight: 700;

    padding: 6px 0;
}

.reviews .review .text
{
    font-size: 15px;
    line-height: 24px;

    margin-top: 20px;

    cursor: pointer;
}

.reviews .review .author
{
    color: #686868;
    font-size: 14px;

    margin-top: 20px;
}

.reviews .review .author .name
{
    color: #000;
    font-size: 16px;
    font-weight: 700;
}


.reviews .review .more
{
    position: absolute;
    z-index: 9;
    bottom: 0;
    left: 0;

    display: flex;

    width: 100%;
    height: 80px;
    padding-top: 34px;

    cursor: pointer;

    border: none;
    background:    -moz-linear-gradient(top,  rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
    background: -webkit-linear-gradient(top,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 50%,rgba(255,255,255,1) 100%);
    background:         linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 50%,rgba(255,255,255,1) 100%);

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

.reviews .review .more > *
{
    display: block;

    width: 6px;
    height: 6px;

    transition: .2s linear;

    border-radius: 50%;
    background: #a7a7a7;
}

.reviews .review .more > * + *
{
    margin-left: 5px;
}


.reviews .review.active
{
    z-index: 9;
    box-shadow: 0 9px 16px 0 rgba(0, 3, 1, .1);
}

.reviews .review.active .more > *,
.reviews .review .more:hover > *
{
    background: #ff6900;
}



.certs .flex
{
    margin-bottom: -20px;
    margin-left: -20px;

    align-items: stretch;
    align-content: stretch;
    justify-content: center;
}

.certs .flex > *
{
    width: calc(25% - 20px);
    margin-bottom: 20px;
    margin-left: 20px;
}


.certs .cert
{
    color: #fff;

    position: relative;

    display: block;

    padding-bottom: 33%;

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

    border: 1px solid #efefef;
}

.certs .cert.hide
{
    display: none;
}

.certs .cert .img
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    display: flex;

    width: 100%;
    height: 100%;
    padding: 10px;

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

.certs .cert img
{
    display: block;

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

.certs .cert .more
{
    font-size: 48px;
    line-height: 50px;

    position: absolute;
    z-index: 5;
    top: -1px;
    left: -1px;

    display: flex;

    width: calc(100% + 2px);
    height: calc(100% + 2px);
    padding: 15px;

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

    background: rgba(0,0,0,.55);

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

.certs .cert:hover
{
    border-color: transparent;
    box-shadow: 0 9px 16px 0 rgba(0, 3, 1, .1);
}



.articles .flex
{
    margin-bottom: -20px;
    margin-left: -20px;

    align-items: stretch;
    align-content: stretch;
    justify-content: start;
}

.articles .flex > *
{
    width: calc(33.333% - 20px);
    margin-bottom: 20px;
    margin-left: 20px;
}


.articles .article
{
    color: #686868;
    font-size: 15px;
    line-height: 24px;

    position: relative;

    display: block;

    text-decoration: none;

    border: 2px solid #e9ecf0;
    background: #fff;
}

.articles .article .thumb
{
    position: relative;

    overflow: hidden;

    padding-bottom: 60%;

    background: #ddd;
}

.articles .article .thumb img
{
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: block;

    min-width: 100%;
    min-height: 100%;
    margin: auto;

    transition: transform .3s;
}

.articles .article .thumb .img
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    transition: transform .3s;
}

.articles .article .info
{
    padding: 20px 30px;

    flex: 1 0 auto;
}

.articles .article .date
{
    color: #b0b0b0;
    line-height: normal;

    margin-bottom: 15px;
}

.articles .article .name
{
    color: #0b1019;
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;

    transition: .2s linear;
}

.articles .article .desc
{
    margin-top: 15px;
}


.articles .article:hover .name
{
    color: #ff6900;
}

.articles .article:hover .thumb img
{
    transform: scale(1.03);
}



.has_question
{
    position: relative;

    overflow: hidden;

    padding: 60px 0;

    background: #e1e1e1;
}

.has_question > .bg
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.has_question .cont
{
    position: relative;
    z-index: 5;

    display: flex;

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

.has_question .block_head
{
    width: 695px;
    max-width: calc(100% - 440px);
    margin: 0;
}

.has_question .block_head .title
{
    padding-top: 0;
}

.has_question .block_head .title:before
{
    display: none;
}

.has_question .block_head .desc
{
    width: 580px;
    margin-top: 15px;
}


.has_question .info
{
    color: #fff;

    position: relative;
    z-index: 9;

    overflow: hidden;

    width: 400px;
    max-width: 100%;
    padding: 40px;

    background: #ff6900;
}

.has_question .info .title
{
    font-size: 30px;
    font-weight: 700;
    line-height: 28px;

    margin-bottom: 25px;

    text-transform: uppercase;
}

.has_question .info .phone
{
    font-size: 19px;
    font-weight: 700;
    line-height: 21px;

    display: flex;

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

.has_question .info .phone .icon
{
    display: flex;

    width: 44px;
    height: 44px;
    margin-right: 13px;
    padding: 9px;

    border-radius: 50%;
    background: #fff;

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

.has_question .info .phone .icon > *
{
    display: block;

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

    -webkit-animation-duration: 1s;
            animation-duration: 1s;

    fill: #000;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
}

.has_question .info .phone a
{
    color: #fff;

    display: inline-block;

    transition: .2s linear;
    vertical-align: top;
    white-space: nowrap;
    text-decoration: none;
}

.has_question .info .phone a:hover
{
    color: #000;
}

.has_question .info .phone:hover .icon > *
{
    -webkit-animation-name: tada;
            animation-name: tada;
}

.has_question .info .link
{
    color: #fff;
    font-family: var(--font_family);
    font-size: var(--font_size);
    line-height: 46px;

    display: inline-block;

    height: 50px;
    margin-top: 25px;
    padding: 0 33px;

    cursor: pointer;
    transition: .2s linear;
    vertical-align: top;
    text-decoration: none;
    text-transform: uppercase;

    border: 2px solid #fff;
    background: none;
}

.has_question .info .link:hover
{
    color: #ff6900;

    border-color: #fff;
    background: #fff;
}

.has_question .info .bg
{
    position: absolute;
    z-index: -1;
    right: 30px;
    bottom: 15px;

    display: block;

    width: 170px;
    height: 170px;
    max-height: calc(100% - 30px);

    opacity: .07;

    fill: #000;
}



.products .tabs
{
    margin-bottom: 40px;

    background: #f5f5f5;
}

.products .tabs .cont,
.products .tabs .cont .filter_category
{
    display: flex;

    justify-content: flex-start;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: wrap;
}

.products .tabs a,
.products .tabs label > span,
.products .tabs label > button
{
    color: #545454;
    font-family: var(--font_family);
    font-size: var(--font_size);
    line-height: 20px;

    position: relative;

    display: flex;

    height: 59px;
    padding: 14px 0;

    cursor: pointer;
    transition: .2s linear;
    text-align: center;
    letter-spacing: -.03em;

    border: none;
    background: none;
    text-decoration: none;

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

.products .tabs a:after,
.products .tabs span:after,
.products .tabs button:after
{
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;

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

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

    background: #ff6900;
}

.products .tabs a + a,
.products .tabs label + label
{
    margin-left: 25px;
}

.products .tabs a:hover,
.products .tabs span:hover,
.products .tabs button:hover
{
    color: #ff6900;
}

.products .tabs a.active,
.products .tabs label > input:checked + span,
.products .tabs button.active
{
    color: var(--text_color);
}

.products .tabs a.active:after,
.products .tabs label input:checked + span:after,
.products .tabs button.active:after
{
    width: 100%;
}


.products .flex
{
    margin-bottom: -20px;
    margin-left: -20px;

    align-items: stretch;
    align-content: stretch;
}

.products .flex > *
{
    width: calc(25% - 20px);
    margin-bottom: 20px;
    margin-left: 20px;
}


.products .owl-stage-outer
{
    overflow: visible !important;
}

.products .owl-item
{
    visibility: hidden;

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

    opacity: 0;
}

.products .owl-item.active
{
    visibility: visible;

    pointer-events: auto;

    opacity: 1;
}


.products .product
{
    position: relative;

    display: flex;
    flex-direction: column;

    border: 2px solid #e9ecf0;
    background: #fff;
}


.products .product .status
{
    color: #fff;
    font-size: 9px;
    font-weight: 700;
    line-height: 25px;

    position: absolute;
    z-index: 9;
    top: 20px;
    right: 0;

    width: 73px;
    height: 24px;

    text-align: center;
    text-transform: uppercase;

    background: #ff6900;
}

.products .product .status:before
{
    position: absolute;
    top: 0;
    right: 100%;

    display: block;

    width: 12px;
    height: 24px;

    content: '';

    border-top: 12px solid transparent;
    border-right: 6px solid #ff6900;
    border-bottom: 12px solid #ff6900;
    border-left: 6px solid transparent;
}


.products .product .stickers
{
    position: absolute;
    z-index: 9;
    top: 10px;
    left: 10px;

    width: 54px;
}

.products .product .stickers img
{
    display: block;

    max-width: 100%;
    margin: 0 auto;
}

.products .product .stickers img + img
{
    margin-top: 10px;
}


.products .product .thumb
{
    position: relative;

    display: block;
    overflow: hidden;

    padding-bottom: 109%;

    background: #ddd url(../images/bg_product_thumb.jpg) 50%/cover no-repeat;
}

.products .product .thumb .img
{
    position: absolute;
    top: 0;
    left: 0;

    display: flex;

    width: 100%;
    height: 100%;
    padding: 20px;

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

.products .product .thumb img
{
    display: block;

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

    transition: transform .3s;
}

.products .product:hover .thumb img
{
    transform: scale(1.03);
}


.products .product .info
{
    display: flex;

    padding: 20px;

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

.products .product .info > *
{
    width: 100%;
}


.products .product .name
{
    color: #0b1019;
    font-size: 20px;
    font-weight: 700;

    text-align: center;
}

.products .product .name a
{
    color: #0b1019;

    display: inline-block;

    transition: .2s linear;
    vertical-align: top;
    text-decoration: none;
}

.products .product .thumb:hover ~ .info .name a,
.products .product .name a:hover
{
    color: #ff6900;
}


.products .product .features
{
    color: #686868;
    font-size: 12px;
    line-height: 11px;

    display: flex;

    margin-top: 15px;

    text-align: center;

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

.products .product .features > *
{
    position: relative;
}

.products .product .features > * + *
{
    margin-left: 20px;
}

.products .product .features .icon
{
    display: flex;

    height: 26px;
    margin-bottom: 6px;

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

.products .product .features img
{
    display: block;

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

.products .product .features .hover
{
    color: #686868;
    font-size: 14px;
    line-height: 18px;

    position: absolute;
    z-index: 10;
    bottom: calc(100% + 30px);
    left: 50%;

    visibility: hidden;

    width: 196px;
    margin-left: -98px;
    padding: 10px 15px;

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

    opacity: 0;
    border: 1px solid #e4e4e4;
    border-radius: 5px;
    background: #fff;
    box-shadow: 0 9px 16px rgba(0,0,0,.1);
}

.products .product .features .hover:before
{
    position: absolute;
    z-index: 1;
    bottom: -6px;
    left: 50%;

    display: block;

    width: 12px;
    height: 12px;
    margin-left: -6px;

    content: '';
    transform: rotate(45deg);

    border: 1px solid #e4e4e4;
    background: #fff;
    box-shadow: 0 9px 16px rgba(0,0,0,.1);
}

.products .product .features .hover:after
{
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 10px;

    content: '';

    border-radius: 0 0 5px 5px;
    background: #fff;
}

.products .product .features > *:hover .hover
{
    bottom: calc(100% + 9px);

    visibility: visible;

    opacity: 1;
}


.products .product .get_price_link
{
    color: #ff6900;
    font-family: var(--font_family);
    font-size: var(--font_size);
    line-height: 46px;

    display: block;

    width: 100%;
    height: 50px;
    margin-top: 15px;
    padding: 0 20px;

    cursor: pointer;
    transition: .2s linear;
    text-transform: uppercase;

    border: 2px solid #ff6900;
    background: none;
}

.products .product .get_price_link:hover
{
    color: #fff;

    background: #ff6900;
}



.get_offer .cols
{
    margin-bottom: -25px;
}



.manager
{
    position: relative;

    overflow: hidden;

    padding: 50px 0;

    background: #e1e1e1;
}

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

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.manager .cont
{
    position: relative;
    z-index: 5;

    display: flex;

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


.manager .foto
{
    position: relative;

    overflow: hidden;

    width: 295px;
    max-width: 100%;
    height: 245px;

    background: #fff url(../images/default_img.jpg) 50%/cover no-repeat;
}

.manager .foto img
{
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}


.manager .info
{
    width: calc(100% - 355px);

    align-self: center;
}

.manager .title
{
    font-size: 26px;
    font-weight: 700;
}

.manager .desc
{
    font-size: 20px;

    margin-top: 3px;
}

.manager .name
{
    font-size: 20px;
    font-weight: 700;

    margin-top: 20px;
}

.manager .post
{
    color: #686868;

    margin-top: 5px;
}


.manager .contacts
{
    display: flex;

    margin-top: 25px;

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


.manager .phone
{
    color: #3d3d3f;
    font-size: 19px;
    font-weight: 700;
    line-height: 21px;

    display: flex;

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

.manager .phone .icon
{
    display: flex;

    width: 44px;
    height: 44px;
    margin-right: 13px;
    padding: 9px;

    border-radius: 50%;
    background: #3e3e3f;

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

.manager .phone .icon > *
{
    display: block;

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

    -webkit-animation-duration: 1s;
            animation-duration: 1s;

    fill: #fff;
    -webkit-animation-fill-mode: both;
            animation-fill-mode: both;
}

.manager .phone a
{
    color: #3d3d3f;

    display: inline-block;

    transition: .2s linear;
    vertical-align: top;
    white-space: nowrap;
    text-decoration: none;
}

.manager .phone a:hover
{
    color: #f96915;
}

.manager .phone:hover .icon > *
{
    -webkit-animation-name: tada;
            animation-name: tada;
}


.manager .get_consult_link
{
    color: #ff6900;
    font-family: var(--font_family);
    font-size: var(--font_size);
    line-height: 46px;

    display: block;

    height: 50px;
    margin-left: 20px;
    padding: 0 20px;

    cursor: pointer;
    transition: .2s linear;
    text-transform: uppercase;

    border: 2px solid #ff6900;
    background: none;
}

.manager .get_consult_link:hover
{
    color: #fff;

    background: #ff6900;
}



.contacts_info .cont
{
    display: flex;

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


.contacts_info .info
{
    width: calc(50% - 10px);
}


.contacts_info .info .company
{
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
}


.contacts_info .info .adres
{
    line-height: 24px;

    margin-top: 20px;
}

.contacts_info .info .adres div
{
    display: inline-block;

    vertical-align: top;
}

.contacts_info .info .map_link
{
    color: #ff6900;
    font-family: var(--font_family);
    font-size: var(--font_size);
    line-height: 24px;

    display: inline-block;

    margin-left: 6px;

    cursor: pointer;
    vertical-align: top;
    white-space: nowrap;

    border: none;
    background: none;
}

.contacts_info .info .map_link:hover
{
    text-decoration: none;
}


.contacts_info .info .items
{
    display: flex;

    margin-top: 30px;
    margin-bottom: -30px;
    margin-left: -30px;

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

.contacts_info .info .items > *
{
    width: calc(50% - 30px);
    margin-bottom: 30px;
    margin-left: 30px;
}

.contacts_info .info .items .title
{
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;

    margin-bottom: 15px;

    text-transform: uppercase;
}

.contacts_info .info .items .val
{
    line-height: 20px;
}

.contacts_info .info .items .val > * + *
{
    margin-top: 8px;
}

.contacts_info .info .items .phone
{
    display: flex;

    justify-content: flex-end;
    align-items: flex-start;
    align-content: flex-start;
    flex-wrap: wrap;
}

.contacts_info .info .items .phone > *:first-child
{
    font-weight: 700;

    width: 65px;
    margin-right: auto;
}

.contacts_info .info .items .phone > * + *
{
    width: calc(100% - 65px);
}

.contacts_info .info .items a
{
    color: #ff6900;

    display: inline-block;

    vertical-align: top;
    white-space: nowrap;
}

.contacts_info .info .items a:hover
{
    text-decoration: none;
}



.contacts_info .callback
{
    display: flex;

    width: calc(50% - 10px);
    padding: 40px;

    background: #e5e5e5 url(../images/bg_callback.jpg) 50%/cover no-repeat;

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

.contacts_info .callback .title
{
    font-size: 26px;
    font-weight: 700;

    width: 100%;
}

.contacts_info .callback .desc
{
    font-size: 20px;

    width: 100%;
    margin-top: 3px;
}

.contacts_info .callback .form
{
    display: flex;

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

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

.contacts_info .callback .form .line
{
    width: calc(100% - 234px);
    margin-bottom: 0;
}

.contacts_info .callback .form .submit
{
    width: 210px;
    max-width: 100%;
    padding: 0;
}



.gallery .flex
{
    margin-bottom: -20px;
    margin-left: -20px;

    align-items: stretch;
    align-content: stretch;
    justify-content: center;
}

.gallery .flex > *
{
    width: calc(25% - 20px);
    margin-bottom: 20px;
    margin-left: 20px;
}

.gallery .flex > *.big
{
    width: calc(50% - 20px);
}


.gallery .item
{
    color: #fff;

    position: relative;

    display: block;

    padding-bottom: 198px;

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

    border: 1px solid #efefef;
    background: #ddd;
}

.gallery .item.big
{
    padding-bottom: 33.333%;
}

.gallery .item.hide
{
    display: none;
}

.gallery .item img
{
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100% !important;
    margin: 0 !important;

    object-fit: cover;
}

.gallery .item .more
{
    font-size: 48px;
    line-height: 50px;

    position: absolute;
    z-index: 5;
    top: -1px;
    left: -1px;

    display: flex;

    width: calc(100% + 2px);
    height: calc(100% + 2px);
    padding: 15px;

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

    background: rgba(0,0,0,.55);

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

.gallery .item:hover
{
    border-color: transparent;
    box-shadow: 0 9px 16px 0 rgba(0, 3, 1, .1);
}



.map_block
{
    position: relative;

    overflow: hidden;

    height: 400px;

    background: #ddd;
}



.pickup .item
{
    display: flex;

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

.pickup .img
{
    position: relative;

    overflow: hidden;

    width: calc(41.5% - 10px);

    background: #ddd;
}

.pickup .img img
{
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.pickup .slider.owl-carousel .owl-nav button.owl-prev{
    left: -5px;
}

.pickup .slider.owl-carousel .owl-nav button.owl-next{
    right: -5px;
}

.pickup .map
{
    position: relative;

    overflow: hidden;

    width: calc(58.5% - 10px);
    height: 350px;

    background: #ddd;
}



.page_head + .product_info
{
    margin-top: -10px;
}

.product_info > *:last-child
{
    margin-bottom: 0 !important;
}


.product_info .head
{
    margin-bottom: 50px;
    padding-top: 35px;

    background: url(../images/bg_product_head.jpg) 50% 0/100% 275px no-repeat;
}

.product_info .head .cont
{
    display: flex;

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


.product_info .head .info
{
    width: calc(50% - 10px);
    padding-top: 10px;
}


.product_info .head .product_name
{
    font-size: 40px;
    font-weight: normal;
    line-height: 50px;
}


.product_info .head .brand
{
    margin-top: 30px;
}

.product_info .head .brand a
{
    display: inline-block;

    vertical-align: top;
}

.product_info .head .brand img
{
    display: block;

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


.product_info .head .stickers
{
    display: flex;

    margin-top: 35px;

    justify-content: flex-start;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    min-height: 64px;
}

.product_info .head .stickers img
{
    display: block;
}

.product_info .head .stickers img + img
{
    margin-left: 14px;
}


.product_info .head .features
{
    color: #686868;
    font-size: 18px;
    line-height: 20px;

    display: flex;

    margin-top: 25px;
    margin-bottom: -10px;
    margin-left: -30px;

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

.product_info .head .brand + .features
{
    margin-top: 105px;
}

.product_info .head .features > *
{
    position: relative;

    display: flex;

    margin-bottom: 10px;
    margin-left: 30px;

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

.product_info .head .features .icon
{
    margin-right: 8px;
}

.product_info .head .features img
{
    display: block;
    width: 35px;
    height: 35px;
}

.product_info .head .features .hover
{
    color: #686868;
    font-size: 14px;
    line-height: 18px;

    position: absolute;
    z-index: 10;
    bottom: calc(100% + 30px);
    left: 50%;

    visibility: hidden;

    width: 196px;
    margin-left: -98px;
    padding: 10px 15px;

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

    opacity: 0;
    border: 1px solid #e4e4e4;
    border-radius: 5px;
    background: #fff;
    box-shadow: 0 9px 16px rgba(0,0,0,.1);
}

.product_info .head .features .hover:before
{
    position: absolute;
    z-index: 1;
    bottom: -6px;
    left: 50%;

    display: block;

    width: 12px;
    height: 12px;
    margin-left: -6px;

    content: '';
    transform: rotate(45deg);

    border: 1px solid #e4e4e4;
    background: #fff;
    box-shadow: 0 9px 16px rgba(0,0,0,.1);
}

.product_info .head .features .hover:after
{
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 10px;

    content: '';

    background: #fff;
}

.product_info .head .features > *:hover .hover
{
    bottom: calc(100% + 9px);

    visibility: visible;

    opacity: 1;
}


.product_info .head .pluses
{
    font-size: 18px;
    line-height: 24px;

    margin-top: 25px;
}

.product_info .head .brand + .pluses
{
    margin-top: 120px;
}

.product_info .head .pluses > *
{
    position: relative;

    padding-left: 30px;
}

.product_info .head .pluses > * + *
{
    margin-top: 10px;
}

.product_info .head .pluses > *:before,
.product_info .head .pluses > *:after
{
    position: absolute;
    top: 11px;
    left: 0;

    display: block;

    width: 10px;
    height: 2px;

    content: '';

    background: #ff6900;
}

.product_info .head .pluses > *:after
{
    top: 7px;
    left: 4px;

    width: 2px;
    height: 10px;
}


.product_info .head .image
{
    width: calc(50% - 10px);
}

.product_info .head .image img
{
    display: block;

    max-width: 100%;
    margin: 0 auto;
}



.product_info .bottom
{
    margin-bottom: 35px;
}

.product_info .bottom .cont
{
    display: flex;

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


.product_info .payments
{
    font-size: 18px;
    line-height: 24px;

    display: flex;

    margin-left: -25px;

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

.product_info .payments > *
{
    margin-left: 25px;
}

.product_info .payments div
{
    font-size: 16px;
    font-weight: 700;

    text-transform: uppercase;
}

.product_info .payments a
{
    color: #ff6900;

    display: inline-block;

    vertical-align: top;
}

.product_info .payments a:hover
{
    text-decoration: none;
}


.product_info .print_link
{
    color: #686868;
    font-size: 14px;
    line-height: 22px;

    display: flex;

    margin-left: auto;

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

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

.product_info .print_link .icon
{
    display: block;

    width: 22px;
    height: 22px;
    margin-right: 9px;

    transition: .2s linear;

    fill: #686868;
}

.product_info .print_link:hover
{
    text-decoration: underline;
}



.product_info .has_question
{
    margin-bottom: 40px;
}



.product_info .prices
{
    margin-bottom: 40px;
}

.product_info .prices .flex
{
    display: flex;

    margin-bottom: -20px;
    margin-left: -20px;

    justify-content: flex-start;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: wrap;
}

.product_info .prices .flex > *
{
    width: calc(33.333% - 20px);
    margin-bottom: 20px;
    margin-left: 20px;
}

.product_info .prices .item
{
    padding: 35px 25px 40px;

    text-align: center;

    border: 2px solid #e9ecf0;
}

.product_info .prices .name
{
    color: #0b1019;
    font-size: 24px;
    font-weight: 700;
    line-height: 28px;

    text-transform: uppercase;
}

.product_info .prices .name a
{
    color: #0b1019;

    display: inline-block;

    transition: .2s linear;
    vertical-align: top;
    text-decoration: none;
}

.product_info .prices .name a:hover
{
    color: #ff6900;
}

.product_info .prices .get_price_link
{
    color: #ff6900;
    font-family: var(--font_family);
    font-size: var(--font_size);
    line-height: 46px;

    display: inline-block;

    width: 270px;
    max-width: 100%;
    height: 50px;
    margin-top: 20px;
    padding: 0 20px;

    cursor: pointer;
    transition: .2s linear;
    vertical-align: top;
    text-transform: uppercase;

    border: 2px solid #ff6900;
    background: none;
}

.product_info .prices .get_price_link:hover
{
    color: #fff;

    background: #ff6900;
}



.product_info .prod_features
{
    margin-bottom: 40px;
}

.product_info .prod_features .flex
{
    margin-left: -20px;
}

.product_info .prod_features .flex > *
{
    width: calc(50% - 20px);
    margin-left: 20px;
}

.product_info .prod_features .item
{
    display: flex;

    padding: 14px 28px;

    background: #e9e9e9;

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

.product_info .prod_features .item:nth-child(4n+3),
.product_info .prod_features .item:nth-child(4n+4)
{
    background: #f5f5f5;
}

.product_info .prod_features .val
{
    width: 176px;
    padding-left: 14px;
}



.prod_reviews .tabs
{
    display: flex;

    margin-bottom: 40px;

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

.prod_reviews .tabs button
{
    color: #545454;
    font-family: var(--font_family);
    font-size: var(--font_size);
    line-height: 20px;

    position: relative;

    display: flex;

    height: 80px;
    padding: 14px;

    cursor: pointer;
    transition: .2s linear;
    text-align: center;
    letter-spacing: -.03em;

    border: none;
    background: none;

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

.prod_reviews .tabs button:after
{
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;

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

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

    background: #ff6900;
}

.prod_reviews .tabs img
{
    display: block;

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

    transition: .2s linear;

    opacity: .5;

    -webkit-filter: grayscale(100%);
       -moz-filter: grayscale(100%);
        -ms-filter: grayscale(100%);
         -o-filter: grayscale(100%);
            filter: grayscale(100%);
}

.prod_reviews .tabs button:hover img,
.prod_reviews .tabs button.active img
{
    opacity: 1;

    -webkit-filter: grayscale(0%);
       -moz-filter: grayscale(0%);
        -ms-filter: grayscale(0%);
         -o-filter: grayscale(0%);
            filter: grayscale(0%);
}

.prod_reviews .tabs button.active:after
{
    width: 100%;
}


.prod_reviews .review
{
    display: flex;

    padding: 0 30px;

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

.prod_reviews .review .thumb
{
    width: 338px;
    max-width: 100%;

    border: 1px solid #e9ecf0;
    background: #fff;
}

.prod_reviews .review .thumb img
{
    display: block;

    width: 100%;
}

.prod_reviews .review .thumb + .info
{
    width: calc(100% - 398px);

    align-self: center;
}

.prod_reviews .review .text
{
    line-height: 24px;
}

.prod_reviews .review .author
{
    color: #686868;

    margin-top: 30px;
}

.prod_reviews .review .author .name
{
    color: #000;
    font-size: 20px;
    font-weight: 700;
}

.prod_reviews .review .author .post
{
    margin-top: 5px;
}



.prod_help .tabs_container
{
    display: flex;

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

.prod_help .accordion
{
    width: 400px;
    max-width: 100%;
    margin-right: auto;

    border-top: 1px solid #e9ecf0;
    border-right: 2px solid #e9ecf0;
    border-bottom: 1px solid #e9ecf0;
    border-left: 2px solid #e9ecf0;
}

.prod_help .accordion .item .title
{
    font-weight: 700;

    min-height: 80px;
    padding: 15px 80px 15px 17px;
}

.prod_help .accordion .item .title .icon
{
    right: 18px;
}

.prod_help .accordion .item .data
{
    padding: 0;

    border-top: 1px solid #e9ecf0;
    background: none;
}

.prod_help .accordion .item button
{
    font-family: var(--font_family);
    font-size: var(--font_size);

    display: flex;

    width: 100%;
    min-height: 50px;
    padding: 14px 17px;

    cursor: pointer;
    transition: .2s linear;
    text-align: left;

    border: none;
    background: none;

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

.prod_help .accordion .item button + button
{
    border-top: 1px dashed #e9ecf0;
}

.prod_help .accordion .item button:hover,
.prod_help .accordion .item button.active
{
    background: #f5f5f5;
}


.prod_help .tab_content
{
    width: 0;

    background: #f5f5f5;
}

.prod_help .tab_content.active
{
    width: calc(100% - 400px);
    padding: 30px;
}



.prod_media .gallery + .video
{
    margin-top: 20px;
}

.prod_media .video
{
    position: relative;

    overflow: hidden;

    padding-bottom: 56.5%;

    background: #ddd;
}

.prod_media .video iframe
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100% !important;
    height: 100% !important;

    object-fit: cover;
}



.prod_technologies .item
{
    display: flex;

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

.prod_technologies .item + .item
{
    margin-top: 40px;
}


.prod_technologies .item .info
{
    color: #686868;
    line-height: 24px;

    position: relative;
    z-index: 3;

    display: flex;

    width: 400px;
    max-width: 100%;
    min-height: 280px;
    padding: 30px 45px 30px 30px;

    border: 2px solid #e9ecf0;
    background: #fff;

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

.prod_technologies .item .name
{
    color: #000;
    font-size: 24px;
    font-weight: 700;
    line-height: 28px;

    width: 100%;
    margin-bottom: 18px;
}

.prod_technologies .item .name a
{
    color: #000;

    display: inline-block;

    transition: .2s linear;
    vertical-align: top;
    text-decoration: none;
}

.prod_technologies .item .name a:hover
{
    color: #ff6900;
}

.prod_technologies .item .desc
{
    width: 100%;
}

.prod_technologies .item .link
{
    color: #ff6900;
    line-height: 20px;

    display: flex;

    min-width: 210px;
    max-width: 100%;
    min-height: 50px;
    margin-top: 25px;
    padding: 10px 20px 12px;

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

    border: 2px solid #ff6900;

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

.prod_technologies .item .link:hover
{
    color: #fff;

    background: #ff6900;
}


.prod_technologies .item .img
{
    position: relative;

    display: block;
    overflow: hidden;

    width: calc(100% - 285px);
    margin-left: -115px;
    padding-bottom: 320px;

    text-decoration: none;

    background: #ddd;
}

.prod_technologies .item .img img
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}



.prod_downloads .flex
{
    margin-bottom: -35px;
    margin-left: -80px;
}

.prod_downloads .flex > *
{
    width: calc(50% - 80px);
    margin-bottom: 35px;
    margin-left: 80px;
}

.prod_downloads .item a
{
    color: #000;
    font-size: 18px;
    line-height: 24px;

    position: relative;

    display: flex;

    min-height: 50px;
    padding-left: 55px;

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

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

.prod_downloads .item .icon
{
    position: absolute;
    top: 0;
    left: -6px;

    display: block;

    width: 49px;
    height: 49px;

    transition: .2s linear;

    fill: #adadad;
}

.prod_downloads .item .name
{
    font-weight: 700;

    width: 100%;
}

.prod_downloads .item .link
{
    color: #ff6900;

    margin-top: 3px;

    text-decoration: underline;
}

.prod_downloads .item a:hover
{
    color: #ff6900;
}

.prod_downloads .item a:hover .link
{
    text-decoration: none;
}



.prod_models .table_wrap
{
    overflow: auto;

    max-width: 100%;
}

.prod_models table
{
    width: 100%;

    table-layout: fixed;
    border-spacing: 0;
    border-collapse: collapse;
}

.prod_models table th
{
    font-size: 15px;
    font-weight: 700;
    line-height: 24px;

    padding: 15px;

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

    background: #d9d9d9;
}

.prod_models table td
{
    padding: 15px;

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

.prod_models table tbody tr:nth-child(2n) td
{
    background: #f5f5f5;
}

.prod_models table th:first-child,
.prod_models table td:first-child
{
    padding-left: 30px;
}

.prod_models table th:last-child,
.prod_models table td:last-child
{
    padding-right: 30px;
}

.prod_models table .aligncenter
{
    text-align: center;
}



.video_block .video
{
    position: relative;

    overflow: hidden;

    padding-bottom: 56.5%;

    background: #ddd;
}

.video_block .video iframe
{
    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 100% !important;
    height: 100% !important;

    object-fit: cover;
}



.specialists .flex
{
    margin-bottom: -20px;
    margin-left: -20px;

    align-items: stretch;
    align-content: stretch;
}

.specialists .flex > *
{
    width: calc(33.333% - 20px);
    margin-bottom: 20px;
    margin-left: 20px;
}


.specialists .item
{
    display: flex;

    padding: 20px;

    background: #fff;

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

.specialists .item .foto
{
    position: relative;

    overflow: hidden;

    width: 112px;
    height: 135px;

    background: #ddd;
}

.specialists .item .foto img
{
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.specialists .item .foto + .info
{
    width: calc(100% - 132px);
}

.specialists .item .name
{
    font-weight: 700;
}

.specialists .item .post
{
    font-size: 15px;

    margin-top: 10px;
}

.specialists .item .imgs
{
    display: flex;

    margin-top: 15px;
    margin-bottom: -4px;
    margin-left: -4px;

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

.specialists .item .imgs > *
{
    color: #fff;

    position: relative;

    display: block;

    margin-bottom: 4px;
    margin-left: 4px;

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

    border: 1px solid #ebeef1;
}

.specialists .item .imgs > *.hide
{
    display: none;
}

.specialists .item .imgs img
{
    display: block;
}

.specialists .item .more
{
    font-size: 20px;
    line-height: 20px;

    position: absolute;
    z-index: 5;
    top: -1px;
    left: -1px;

    display: flex;

    width: calc(100% + 2px);
    height: calc(100% + 2px);
    padding: 10px;

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

    background: rgba(0,0,0,.55);

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



.case_info .head
{
    font-size: 18px;
    line-height: 24px;

    margin-bottom: 25px;
}

.case_info .head > *
{
    position: relative;

    padding-left: 30px;
}

.case_info .head > * + *
{
    margin-top: 10px;
}

.case_info .head > *:before,
.case_info .head > *:after
{
    position: absolute;
    top: 11px;
    left: 0;

    display: block;

    width: 10px;
    height: 2px;

    content: '';

    background: #ff6900;
}

.case_info .head > *:after
{
    top: 7px;
    left: 4px;

    width: 2px;
    height: 10px;
}

.case_info .head b
{
    margin-right: 6px;
}



.se_reviews
{
    margin-bottom: 40px;
}

.se_reviews .flex
{
    margin-bottom: -20px;
    margin-left: -20px;

    justify-content: space-between;
    align-items: stretch;
    align-content: stretch;
}

.se_reviews .flex > *
{
    width: 474px;
    max-width: calc(50% - 20px);
    margin-bottom: 20px;
    margin-left: 20px;
}


.se_reviews .item
{
    color: var(--text_color);
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;

    display: flex;

    padding: 25px 28px;

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

    border: 2px solid #e9ecf0;

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

.se_reviews .item img
{
    display: block;

    margin-top: 25px;
}

.se_reviews .item img + img
{
    margin-left: 30px;
}

.se_reviews .item:hover
{
    border-color: transparent;
    box-shadow: 0 9px 16px 0 rgba(0, 3, 1, .1);
}



* + .information_block
{
    margin-top: 20px;
}

.information_block + .information_block
{
    margin-top: -1px;
}

.information_block .tabs
{
    display: flex;

    margin-bottom: 0;
    padding: 17px 0;

    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;

    justify-content: flex-end;
    align-items: center;
    align-content: center;
    flex-wrap: nowrap;
}

.information_block .tabs .title
{
    font-size: 20px;
    font-weight: 700;
    line-height: 24px;

    margin-right: auto;
    padding: 0 30px;
}

.information_block .tabs button
{
    color: var(--text_color);
    font-family: var(--font_family);
    font-size: 20px;
    line-height: 28px;

    display: flex;

    height: 50px;
    padding: 10px 40px;

    cursor: pointer;
    white-space: nowrap;

    border: none;
    background: none;

    justify-content: center;
    align-items: center;
    align-content: center;
    flex-wrap: nowrap;
}

.information_block .tabs button + button
{
    border-left: 1px solid #ddd;
}

.information_block .tabs button .icon
{
    position: relative;

    display: block;

    width: 23px;
    height: 20px;
    margin-left: 38px;
}

.information_block .tabs button .icon:after
{
    position: absolute;
    top: 50%;
    left: 50%;

    display: block;

    width: 18px;
    height: 18px;
    margin-top: -14px;
    margin-left: -9px;

    content: '';
    transition: .2s linear;
    transform: rotate(-45deg);

    border-bottom: 2px solid #8b8b8b;
    border-left: 2px solid #8b8b8b;
}

.information_block .tabs button:hover,
.information_block .tabs button.active
{
    font-weight: 700;
}

.information_block .tabs button.active .icon:after
{
    margin-top: -5px;

    transform: rotate(-225deg);

    border-color: var(--text_color);
}

.information_block .tab_content
{
    overflow: hidden;

    background: #f5f5f5;
}


.information_block .products
{
    width: 925px;
    max-width: 100%;
    margin: 0 auto 24px;
}

.information_block .products .flex
{
    justify-content: center;
}

.information_block .products .flex > *
{
    width: calc(33.333% - 20px);
}


.information_block .tab_content.active
{
    padding: 40px 40px 16px;

    border-bottom: 1px solid #ddd;
}



.bottom_links
{
    display: flex;

    margin-top: 60px;

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

.bottom_links > *
{
    color: #ff6900;

    display: flex;

    height: 50px;
    padding: 0 25px;

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

    border: 2px solid #ff6900;

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

.bottom_links > * .icon
{
    position: relative;

    display: block;

    width: 8px;
    height: 12px;
}

.bottom_links > * .icon:after
{
    position: absolute;
    top: 50%;
    left: 50%;

    display: block;

    width: 10px;
    height: 10px;
    margin-top: -5px;
    margin-left: -5px;

    content: '';
    transition: .2s linear;
    transform: rotate(-45deg);

    border-top: 2px solid #ff6900;
    border-left: 2px solid #ff6900;
}

.bottom_links > *.prev .icon
{
    margin-right: 10px;
}

.bottom_links > *.next .icon
{
    margin-left: 10px;

    transform: rotate(-180deg);
}

.bottom_links > *:hover
{
    color: #fff;

    background: #ff6900;
}

.bottom_links > *:hover .icon:after
{
    border-color: #fff;
}



.page_links
{
    margin-bottom: 40px;

    background: #f5f5f5;
}

.page_links.is_stuck
{
    box-shadow: 0 0 10px rgba(0, 0, 0, .2);
}

.page_links .cont
{
    display: flex;

    justify-content: flex-start;
    align-items: stretch;
    align-content: stretch;
    flex-wrap: wrap;
}

.page_links .link
{
    color: #545454;
    font-family: var(--font_family);
    font-size: var(--font_size);
    line-height: 20px;

    position: relative;

    display: flex;

    height: 59px;
    padding: 14px 0;

    cursor: pointer;
    transition: .2s linear;
    text-align: center;
    text-decoration: none;
    letter-spacing: -.03em;

    border: none;
    background: none;

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

.page_links .link:after
{
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;

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

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

    background: #ff6900;
}

.page_links .link + .link
{
    margin-left: 38px;
}

.page_links .link:hover
{
    color: #ff6900;
}

.page_links .link.active
{
    color: var(--text_color);
}

.page_links .link.active:after
{
    width: 100%;
}



.all
{
    margin-top: 40px;

    text-align: center;
}

.all > *
{
    color: #ff6900;
    font-family: var(--font_family);
    font-size: var(--font_size);
    line-height: 20px;

    display: inline-block;

    min-width: 210px;
    padding: 12px 26px;

    cursor: pointer;
    transition: .2s linear;
    vertical-align: top;
    text-decoration: none;
    text-transform: uppercase;

    border: 2px solid #ff6900;
    background: none;
}

.all > *:hover
{
    color: #fff;

    background: #ff6900;
}



/*---------------
   Footer
---------------*/
footer
{
    background: #f5f5f5;

    flex: 0 0 auto;
}


footer .top
{
    padding: 25px 0;

    border-top: 1px solid #d5d5d5;
}

footer .top .cont.flex
{
    position: relative;

    justify-content: space-between;
    align-items: center;
    align-content: center;
}


footer .info
{
    padding: 35px 0;

    border-top: 1px solid #d5d5d5;
}

footer .info .cont.flex
{
    justify-content: space-between;
}


footer .bottom
{
    color: #686868;
    font-size: 15px;
    line-height: 20px;

    padding: 14px 0;

    border-top: 1px solid #d5d5d5;
}

footer .bottom .cont.flex
{
    justify-content: space-between;
    align-items: center;
    align-content: center;
}



footer .buttonUp
{
    position: fixed;
    z-index: 99;
    right: 20px;
    bottom: 60px;

    display: none;
}

footer .buttonUp button
{
    position: relative;

    display: flex;

    width: 47px;
    height: 47px;

    cursor: pointer;
    transition: .2s linear;

    opacity: .75;
    border: none;
    border-radius: 50%;
    background: #ff6900;

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

footer .buttonUp button .icon
{
    display: block;

    width: 19px;
    height: 19px;

    fill: #fff;
}

footer .buttonUp button:hover
{
    opacity: 1;
}



footer .logo img
{
    display: block;

    height: 46px;
}



footer .adres
{
    line-height: 20px;
}



footer .contacts
{
    line-height: 20px;
}

footer .contacts > *
{
    display: flex;

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

footer .contacts > * + *
{
    margin-top: 5px;
}

footer .contacts a
{
    color: #000;

    display: inline-block;

    transition: .2s linear;
    vertical-align: top;
    white-space: nowrap;
    text-decoration: none;
}

footer .contacts .phone .icon
{
    width: 20px;
    height: 20px;
    margin: 0 9px 0 -2px;
}

footer .contacts .email .icon
{
    width: 17px;
    height: 17px;
    margin: 0 11px 0 0;
}

footer .contacts .icon
{
    display: block;

    fill: #ff6900;
}

footer .contacts a:hover
{
    color: #ff6900;
}



footer .socials
{
    display: flex;

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

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

footer .socials a
{
    display: flex;

    width: 29px;
    height: 28px;
    padding: 5px;

    transition: .2s linear;

    border-radius: 4px;
    background: #acacac;

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

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

footer .socials .icon
{
    display: block;

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

    fill: #fff;
}

footer .socials a.soc1:hover
{
    background: #3a5ba0;
}

footer .socials a.soc2:hover
{
    background: #54769b;
}

footer .socials a.soc3:hover
{
    background: #cf3427;
}

footer .socials a.soc4:hover
{
    background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%,#d6249f 60%,#285aeb 90%);
}



footer .info .title a
{
	color: #000;
    font-weight: 700;
    line-height: 20px;
	display: inline-block;
    transition: .2s linear;
    text-decoration: none;
    margin-bottom: 15px;
    text-transform: uppercase;
}

footer .info .title a:hover
{
	color: #ff6900;
}


footer .info .links
{
    width: 295px;
    max-width: 25%;
}

footer .info .links .list > * + *
{
    margin-top: 3px;
}

footer .info .links .list a
{
    color: #686868;

    display: inline-block;

    transition: .2s linear;
    vertical-align: top;
    text-decoration: none;
}

footer .info .links .list a.bold
{
    color: #000;
    font-weight: 700;

    text-transform: uppercase;
}

footer .info .links .list a:hover
{
    color: #ff6900;
}



footer .bottom .links
{
    display: flex;

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

footer .bottom .links > * + *
{
    margin-left: 26px;
}

footer .bottom .links a
{
    color: #686868;

    display: inline-block;

    transition: .2s linear;
    vertical-align: top;
    text-decoration: none;
}

footer .bottom .links a:hover
{
    color: #ff6900;
}



footer .creator a
{
    color: #686868;

    display: inline-block;

    transition: .2s linear;
    vertical-align: top;
    text-decoration: none;
}

footer .creator a:hover
{
    color: #ff6900;
}



/*---------------
   PopUp
---------------*/
.modal
{
    display: none;
    visibility: visible !important;

    width: 343px;
    max-width: 100%;
    padding: 40px;

    background: #d4d4d4 url(../images/bg_modal.jpg) 50% 0/100% auto no-repeat;
    box-shadow: 0 11px 13px 0 rgba(0, 3, 1, .28);
}

.modal_title
{
    font-size: 20px;
    line-height: 24px;

    margin-bottom: 20px;

    text-align: center;
    text-transform: uppercase;
}


.modal .form .input
{
    height: 42px;
}

.modal .form .submit
{
    padding-top: 0;
}

.modal .form .submit_btn
{
    color: #fff;

    background: #ff6900;
}

.modal .form .submit_btn:hover
{
    color: #ff6900;

    background: none;
}


.jGrowl
{
    z-index: 99993 !important;
}

.jGrowl .jGrowl-notification
{
    border: none !important;
}

.jGrowl .jGrowl-message
{
    color: #fff !important;
}