@font-face
{
    font-family: 'AvenirBold';
    src: url('../fonts/avenir/woff2/avenir_bold.woff2') format('woff2'), url('../fonts/avenir/ttf/avenir_bold.ttf') format('truetype'), url('../fonts/avenir/otf/avenir_bold.otf') format('opentype');
    font-display: block;
}
@font-face
{
    font-family: 'AvenirRegular';
    src: url('../fonts/avenir/woff2/avenir_regular.woff2') format('woff2'), url('../fonts/avenir/ttf/avenir_regular.ttf') format('truetype'), url('../fonts/avenir/otf/avenir_regular.otf') format('opentype');
    font-display: block;
}
@font-face
{
    font-family: 'AvenirDemi';
    src: url('../fonts/avenir/woff2/avenir_demi.woff2') format('woff2'), url('../fonts/avenir/ttf/avenir_demi.ttf') format('truetype'), url('../fonts/avenir/otf/avenir_demi.otf') format('opentype');
    font-display: block;
}
:root
{
    --color-grey-light: #757575;
    --color-orange-light: #e98228;
    --color-dark: #333333;
    --color-white: #fdf7f2;

    --bg-orange-light: rgba(188, 163, 132, 1);
}
*
{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
html,
body
{
    width: 100%;
    height: 100%;
}
body
{
    color: #333;
}
/* ------------------------------ Common [PRE] ------------------------------ */
header,
footer
{
    padding: 0 15px;
}
main
{
    height: auto;
    min-height: 100%;
    margin: -115px 0 -203px 0;
    padding: 115px 15px 203px 15px;
}
li
{
    list-style: none;
}
a
{
    text-decoration: none;
    color: var(--color-grey-light);
    transition: color .3s;
}
a:hover
{
    color: var(--color-orange-light);
}
button
{
    outline: unset;
    background: unset;
    color: var(--color-grey-light);
    transition: color .3s;
    border: unset;
}
button:hover
{
    cursor: pointer;
    color: var(--color-orange-light);
}
.heading-center
{
    display: flex;
    justify-content: center;
}
.heading-center h2
{
    margin: 45px 0 36px 0;
    padding: 8px 0 0 0;
    font: bold 36px/34px "AvenirBold", sans-serif;
}
.color-orange
{
    color: var(--color-orange-light);
}
.avenir-regular-14
{
    padding-top: 1px;
    font: normal 14px/12px "AvenirRegular", sans-serif;
}
.avenir-regular-16
{
    padding-top: 1px;
    font: normal 16px/14px "AvenirRegular", sans-serif;
}
.bg-grey
{
    background: #f2f4f7;
    margin: 0 -15px;
    padding: 0 15px;
}
.page-center
{
    display: flex;
    justify-content: center;
}
.template-width
{
    width: 100%;
    max-width: 1440px;
}
.template-width-1236
{
    width: 100%;
    max-width: 1236px;
}
.lazy-load
{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: #f2f4f7;
    opacity: 1;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 990;
}
.lazy-load .icon
{
    position: absolute;
    animation: rotation 1.5s linear infinite;
}
.lazy-load .icon svg
{
    width: 40px;
    height: 40px;
    color: var(--color-orange-light);
}
.lazy-load .linear
{
    width: 0;
    height: 100%;
    transform: rotate(15deg);
    position: absolute;
    animation: linearLoading 2.5s infinite ease-in-out;
}
.image-lazy-load
{
    transition: .5s;
    opacity: 0;
}
.logotype a
{
    display: block;
    height: 16px;
}
.logotype a:hover
{
    color: var(--color-orange-light) !important;
}
.logotype a svg
{
    width: 320px;
    height: 16px;
}
.alert-success
{
    width: 100%;
    margin-bottom: 14px;
    padding: 18px 14px 13px 14px;
    background: rgba(192, 255, 192, .5);
    border: 1px solid #d0d0d0;
    border-radius: 10px;
}
.alert-success p
{
    font: normal 16px "AvenirDemi", sans-serif;
}
/* ------------------------------ Common [END] ------------------------------ */
/* ------------------------------ Header [PRE] ------------------------------ */
header
{
    display: flex;
    align-items: center;
    flex-direction: column;
    width: 100%;
    background: white;
    position: relative;
    box-shadow: 0 4px 10px 4px #d7d7d7;
    z-index: 1000;
}
header .header-main
{
    padding-top: 26px;
}
header .header-main,
header .header-right-row
{
    display: flex;
    align-items: center;
}
header .header-main .logotype
{
    margin-right: 150px;
}
header .header-main .logotype a
{
    color: #1A1919;
}
header .header-main .contacts,
header .header-main .contacts a
{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
header .header-main .contacts a
{
    align-items: center;
    margin-right: 28px;
    padding: 6px 0 5px 0;
    white-space: nowrap;
    font: normal 14px/12px "AvenirRegular", sans-serif;
}
header .header-main .contacts a svg
{
    margin-right: 6px;
}
header .language
{
    position: relative;
}
header .language button
{
    justify-content: center;
    width: 47px;
}
header .language button,
header .language .language-dropdown a
{
    display: flex;
    align-items: center;
    padding: 6px 4px 5px 4px;
    font: normal 14px/12px "AvenirRegular", sans-serif;
    border-radius: 4px;
}
header .language.open button,
header .language a.active
{
    color: var(--color-orange-light);
    pointer-events: none;
}
header .language button,
header .language.open .language-dropdown
{
    box-shadow: 0 0 6px 1px #eae9e9;
}
header .language button img,
header .language .language-dropdown a img
{
    width: 16px;
    height: 16px;
    margin-right: 4px;
    margin-top: -1px;
    pointer-events: none;
}
header .language .language-dropdown
{
    width: 100%;
    height: 0;
    margin-top: 8px;
    background: white;
    overflow: hidden;
    transition: all .3s;
    position: absolute;
    top: 100%;
    left: 0;
    box-shadow: 0 0 0 0 #eae9e9;
    border-radius: 4px;
}
header nav
{
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 25px;
}
header nav .navigation-menu-open-background
{
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    transition: opacity .5s;
    opacity: 0;
    position: fixed;
    top: 0;
    left: 0;
    pointer-events: none;
    z-index: 900;
}
header nav.open .navigation-menu-open-background
{
    opacity: 1;
    pointer-events: auto;
}
header #navigation-menu
{
    position: relative;
}
header .navigation-button-close-row
{
    display: none;
}
header #navigation-menu > ul
{
    display: flex;
}
header #navigation-menu .navigation-item
{
    margin: 0 20px;
    padding-bottom: 20px;
    position: relative;
}
header #navigation-menu li a
{
    display: flex;
    padding: 4px 0 0 0;
    font: normal 16px/14px "AvenirRegular", sans-serif;
}
header #navigation-menu li.dropdown .dropdown-icon
{
    display: none;
}
header #navigation-menu .dropdown .dropdown-content
{
    min-width: 200px;
    height: 0;
    background-color: var(--bg-orange-light);
    transition: height .5s;
    overflow: hidden;
    position: absolute;
    top: 100%;
    left: 0;
}
header #navigation-menu .dropdown.open .dropdown-content
{
    z-index: 1000;
}
header #navigation-menu .dropdown .dropdown-content li a
{
    padding: 11px 24px;
    white-space: nowrap;
    color: var(--color-dark);
    position: relative;
    transition: .4s;
}
header #navigation-menu .dropdown .dropdown-content li.active a,
header #navigation-menu .dropdown .dropdown-content li a:hover
{
    background-color: var(--color-orange-light);
    color: var(--color-white);
}
header #navigation-menu .dropdown .dropdown-content li:last-child a
{
    position: unset;
}
header #navigation-menu .dropdown .dropdown-content li a::before
{
    content: '';
    width: calc(100% - 24px);
    height: 1px;
    background-color: #ffffff;
    position: absolute;
    bottom: 0;
    left: 12px;
}
header #navigation-menu .dropdown .dropdown-content li.active a::before,
header #navigation-menu .dropdown .dropdown-content li a:hover::before
{
    background-color: var(--color-orange-light);
    transition: inherit;
}
header #navigation-menu .dropdown .dropdown-content li:last-child a::before
{
    content: unset;
}
header #navigation-menu #snake-line
{
    width: 0;
    height: 4px;
    background-color: var(--color-orange-light);
    transition: .5s;
    position: absolute;
    bottom: 0;
    pointer-events: none;
}
/* ------------------------------ Header [END] ------------------------------ */
/* ------------------------------ Breadcrumbs [PRE] ------------------------------ */
.breadcrumbs
{
    margin: 34px 0 36px 0;
}
.breadcrumbs ul
{
    display: flex;
    align-items: center;
}
.breadcrumbs ul li a
{
    display: flex;
    align-items: center;
    padding-top: 2px;
    color: #c1c1c1;
    font: normal 14px/12px "AvenirRegular", sans-serif;
}
.breadcrumbs ul li a.active
{
    pointer-events: none;
}
.breadcrumbs ul li a.active,
.breadcrumbs ul li a:hover
{
    color: var(--color-dark);
}
.breadcrumbs ul li a svg
{
    width: 14px;
    height: 14px;
    margin: 0 3px;
}
/* ------------------------------ Breadcrumbs [END] ------------------------------ */
/* ------------------------------ Slider [PRE] ------------------------------ */
.swiper-container
{
    width: 100%;
    height: 100%;
}
.swiper-container.swiper-no-swiping
{
    cursor: auto !important;
}
.swiper-container.async
{
    display: none;
}
.swiper-container.no-async .swiper-wrapper
{
    display: flex;
}
.swiper-container .swiper-slide
{
    user-select: none;
}
.swiper-container .buttons-row
{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    padding: 0 15px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 900;
    pointer-events: none;
}
.swiper-container .buttons-row .slider-button
{
    width: 40px;
    height: 40px;
    background: var(--bg-orange-light);
    color: var(--color-dark);
    border-radius: 4px;
    pointer-events: auto;
    transition: all .4s;
}
.swiper-container .buttons-row .slider-button:hover
{
    background: var(--color-orange-light);
    color: var(--color-white);
    cursor: pointer;
}
.swiper-container .buttons-row .slider-button svg
{
    width: 100%;
    height: 100%;
}
.swiper-container .slider-pagination-outer
{
    display: flex;
    justify-content: center;
    width: 100%;
    position: absolute;
    bottom: 10px;
}
.swiper-container .slider-pagination-outer .swiper-pagination
{
    display: flex;
    align-items: center;
    height: 20px;
    padding: 0 8px;
    background: var(--color-white);
    position: relative;
    border-radius: 4px;
}
.swiper-container .swiper-pagination-bullet
{
    background: var(--bg-orange-light);
    transition: all .4s;
    opacity: 1;
}
.swiper-container .swiper-pagination-bullet:nth-child(n+2)
{
    margin-left: 6px;
}
.swiper-container .swiper-pagination-bullet.swiper-pagination-bullet-active
{
    background: var(--color-orange-light);
}
.swiper-container.async .swiper-pagination,
.swiper-container.no-async .swiper-pagination
{
    display: none;
}
.swiper-container .swiper-pagination.swiper-pagination-lock
{
    display: none;
}
/* ------------------------------ Slider [END] ------------------------------ */
/* ------------------------------ Main slider [PRE] ------------------------------ */
.main-slider
{
    height: 705px;
    margin: -5px -15px 0 -15px;
    background: #f1f1f1;
    position: relative;
    overflow: hidden;
    box-shadow: 0 4px 10px 4px #d7d7d7;
}
.main-slider .swiper-slide img
{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: bottom;
}
/* ------------------------------ Main slider [END] ------------------------------ */
/* ------------------------------ Product slider [PRE] ------------------------------ */
.product-slider
{
    width: 100%;
    max-width: 1150px;
    position: relative;
}
.product-slider .swiper-wrapper
{
    padding-bottom: 40px;
    transform: translate3d(0, 0, 0);
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box;
}
.product-slider .swiper-slide
{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: column;
    position: relative !important;
}
.product-slider .no-async .swiper-slide
{
    width: calc(100% / 5);
}
.product-slider .no-async .swiper-slide
{
    flex-shrink: 0;
    /*width: 100%;*/
    /*height: 100%;*/
    position: relative;
    transition-property: transform;
}
.product-slider .swiper-slide .image
{
    width: 160px;
    height: 150px;
    position: relative;
}
.product-slider .swiper-slide .image img
{
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.product-slider .swiper-slide .image .lazy-load
{
    border-radius: 10px;
}
.product-slider .swiper-slide .heading
{
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(100% - 60px);
    height: 78px;
    margin-top: 15px;
    border-bottom: 2px solid #c2c2c2;
}
.product-slider .swiper-slide h3
{
    text-align: center;
}
.product-slider .swiper-slide h3 a
{
    display: flex;
    padding: 4px 0 0 0;
    color: #333;
    font: normal 16px/14px "AvenirBold", sans-serif;
    line-height: 21px;
}
.product-slider .swiper-slide h3 a:hover
{
    color: var(--color-orange-light);
}
.product-slider .swiper-slide .description
{
    display: flex;
    flex-direction: column;
    align-items: center;
    width: calc(100% - 50px);
    margin: 14px 0 0 10px;
}
.product-slider .swiper-slide .description p
{
    font: normal 14px/22px "AvenirRegular", sans-serif;
}
.product-slider .swiper-slide .description ul
{
    width: 100%;
    margin-top: 10px;
    font: normal 15px/18px "AvenirRegular", sans-serif;
}
.product-slider .swiper-slide .description li
{
    list-style: unset;
    margin-left: 24px;
}
/* ------------------------------ Product slider [END] ------------------------------ */
/* ------------------------------ Company actions [PRE] ------------------------------ */
.company-actions
{
    display: flex;
    justify-content: space-evenly;
    flex-wrap: wrap;
    margin-top: 60px;
}
.company-actions .counter-increment-row
{
    display: flex;
    align-items: center;
    flex-direction: column;
    min-width: 233px;
    margin: 0 5px;
}
.company-actions .counter-increment-row .image svg
{
    color: #4d4d4d;
}
.company-actions .counter-increment-row .counting
{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 54px;
    margin-top: 34px;
}
.company-actions .counter-increment-row .counting span
{
    position: absolute;
    color: var(--color-orange-light);
    font: bold 45px/44px 'AvenirDemi', sans-serif;
}
.company-actions .counter-increment-row .description
{
    margin-top: 28px;
}
.company-actions .counter-increment-row .description p
{
    padding-top: 4px;
    color: var(--color-grey-light);
    font: bold 22px/22px "AvenirRegular", sans-serif;
}
/* ------------------------------ Company actions [END] ------------------------------ */
/* ------------------------------ Block image text center [PRE] ------------------------------ */
.block-image-text-center
{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    position: relative;
}
.block-image-text-center::before
{
    content: '';
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 20;
}
.block-image-text-center .image
{
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    user-select: none;
}
.block-image-text-center .image img
{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.block-image-text-center .description
{
    position: relative;
    z-index: 30;
}
.block-image-text-center .description h2,
.block-image-text-center .description p
{
    color: var(--color-white);
    text-shadow: 0 0 3px #333;
}
/* ------------------------------ Block image text center [END] ------------------------------ */
/* ------------------------------ Products grid cards [PRE] ------------------------------ */
.products-grid-cards
{
    display: flex;
    justify-content: space-evenly;
    flex-wrap: wrap;
    width: 100%;
    max-width: 1002px;
}
.products-grid-cards .card
{
    display: block;
    align-items: unset;
    justify-content: unset;
    width: calc((100% - 70px) / 3);
    min-width: 310px;
    height: 180px;
    margin-bottom: 35px;
    transition: .3s;
    overflow: hidden;
    border-radius: 10px;
}
.products-grid-cards .card:hover
{
    box-shadow: 0 0 10px 2px #c9c9c9;
    transform: scale(1.111111111);
}
.products-grid-cards .card:nth-child(3n+2),
.products-grid-cards .card:nth-child(3n+3)
{
    margin-left: 35px;
}
.products-grid-cards .card h2
{
    width: 100%;
    height: 100%;
}
.products-grid-cards .card .description
{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
}
.products-grid-cards .card .description p
{
    padding: 0 80px;
    font: bold 16px/24px "AvenirDemi", sans-serif;
    text-align: center;
}
/* ------------------------------ Products grid cards [END] ------------------------------ */
/* ------------------------------ Product view [PRE] ------------------------------ */
.product-view
{
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 450px;
    padding: 33px 0 30px 0;
    position: relative;
}
.spare-parts-heading-center
{
    text-align: center;
    margin-bottom: 37px;
}
.spare-parts-heading-center p
{
    font: normal 20px/34px "AvenirRegular", sans-serif !important;
}
.product-view > .left-row
{
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    width: calc(100% - 624px);
    height: 100%;
    z-index: 10;
}
.product-view > .left-row .text-box
{
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    margin-bottom: 20px;
}
.product-view > .left-row p,
.product-view > .left-row span
{
    font: normal 20px/34px "AvenirRegular", sans-serif !important;
}
.product-view .alert-success p
{
    font: normal 16px "AvenirDemi", sans-serif;
}
.product-view .absolute-right-image
{
    display: flex;
    align-items: flex-start;
    justify-content: center;
    width: 624px;
    height: 100%;
    position: relative;
    pointer-events: none;
    user-select: none;
    z-index: 0;
}
.product-view.vehicles .absolute-right-image
{
    height: calc(100% + 52px);
}
.product-view .absolute-right-image img
{
    max-height: 359px;
    max-width: 355px;
    object-fit: contain;
    object-position: center;
}
/* ------------------------------ Product view [END] ------------------------------ */
/* ------------------------------ Logos slider [PRE] ------------------------------ */
.logos-slider
{
    height: 190px;
    margin-bottom: 10px;
    position: relative;
}
.logos-slider .lazy-load
{
    border-radius: 10px;
}
.logos-slider .swiper-slide
{
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: column;
    height: 150px;
    padding: 0 5px;
}
.logos-slider .swiper-slide .image
{
    width: 100%;
    height: 62px;
    position: relative;
}
.logos-slider .swiper-slide .image img
{
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}
/* ------------------------------ Logos slider [END] ------------------------------ */
/* ------------------------------ About company [PRE] ------------------------------ */
.about-company .block-image-text-center
{
    height: 206px;
}
.about-company .block-image-text-center .description h2
{
    padding-top: 1px;
    font: lighter 28px/28px "AvenirDemi", sans-serif;
}
.about-company .top-row
{
    margin-top: 36px;
}
.about-company .top-row p:nth-child(n+2)
{
    margin-top: 21px;
}
.about-company .text
{
    font: lighter 17px "AvenirRegular", sans-serif;
    letter-spacing: 0.1px;
}
.about-company .bottom-row
{
    margin-top: 62px;
}
.about-company .bottom-row h3,
.about-company .bottom-row p
{
    text-align: center;
}
.about-company .bottom-row p
{
    margin-top: 29px;
}
.about-company .first-letter-margin:first-letter
{
    margin-left: 30px;
}
.about-company .heading
{
    color: var(--color-orange-light);
    font: lighter 20px "AvenirBold", sans-serif;
    letter-spacing: 0.7px;
}
/* ------------------------------ About company [END] ------------------------------ */
/* ------------------------------ Information cards [PRE] ------------------------------ */
.information-cards .column-cards
{
    padding: 15px;
}
.information-cards .row-cards
{
    display: flex;
    justify-content: space-evenly;
    width: 100%;
}
.information-cards .column-cards,
.information-cards .row-cards .card
{
    background: white;
    border-radius: 10px;
    box-shadow: 0 0 4px 1px #e5eaf2;
}
.information-cards .column-cards .card:nth-child(1)
{
    margin-bottom: 10px;
}
.information-cards .row-cards .card
{
    width: calc(100% / 5 - 18px);
    margin: 18px 9px 0 9px;
    padding: 10px;
}
.information-cards .row-cards .card h3
{
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: 4px;
    font-weight: lighter;
    border-bottom: 1px solid #e0e0e0;
}
.information-cards .row-cards .card h3 svg
{
    width: 24px;
    height: 24px;
    margin: 0 8px 4px 0;
}
.information-cards h3,
.information-cards p,
.information-cards a
{
    font-family: "AvenirRegular", sans-serif;
}
.information-cards .column-cards h3
{
    margin-bottom: 6px;
    font-size: 18px;
}
.information-cards .row-cards h3
{
    font-size: 15px;
    margin-bottom: 10px;
}
.information-cards .row-cards a
{
    padding: 0 5px 1px 5px;
    font-size: 14px;
    border-bottom: 1px solid #c6c6c6;
}
.information-cards .column-cards p
{
    margin-left: 5px;
    line-height: 24px;
}
/* ------------------------------ Information cards [END] ------------------------------ */
/* ------------------------------ Map [PRE] ------------------------------ */
.map-outer
{
    height: 400px;
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid #e0e0e0;
}
.map-outer > div
{
    width: 100%;
    height: 100%;
    position: relative;
    border: 1px solid #dcdcdc;
    border-radius: 10px;
}
.map-outer .lazy-load
{
    background: white;
    border-radius: 10px;
}
/* ------------------------------ Map [END] ------------------------------ */
/* ------------------------------ Contact us [PRE] ------------------------------ */
.contact-us
{
    display: flex;
    align-items: center;
    justify-content: unset;
    flex-direction: column;
    width: 100%;
    padding: 0 15px 30px 15px;
}
.contact-us .forms-card
{
    width: 100%;
    max-width: 810px;
    padding: 40px 86px;
}
.contact-us .skype-icon
{
    display: flex;
    justify-content: flex-end;
    width: 100%;
    max-width: 810px;
    margin-top: 31px;
}
.contact-us .skype-icon a
{
    display: flex;
    align-items: center;
}
.contact-us .skype-icon a .icon
{
    width: 21px;
    height: 21px;
}
.contact-us .skype-icon a span
{
    padding-top: 1px;
    font: normal 14px/12px "AvenirRegular", sans-serif;
}
/* ------------------------------ Contact us [END] ------------------------------ */
/* ------------------------------ Static page [PRE] ------------------------------ */
.static-page
{
    align-items: center;
    flex-direction: column;
    padding-bottom: 30px;
}
/* ------------------------------ Static page [END] ------------------------------ */
/* ------------------------------ Forms card [PRE] ------------------------------ */
.forms-card
{
    background: #ffffff;
    box-shadow: 0 0 18px 8px #e5eaf2;
    border-radius: 10px;
}
/* ------------------------------ Forms card [END] ------------------------------ */
/* ------------------------------ Forms [PRE] ------------------------------ */
.default-forms #attach-file
{
    display: none;
}
.default-forms .top-text
{
    padding: 0 90px 13px 10px;
    font: bold 20px/30px "AvenirRegular", sans-serif;
}
.default-forms .form-group .with-icon
{
    display: flex;
    align-items: center;
    position: relative;
}
.default-forms .form-group .with-icon .input-control
{
    padding-left: 34px;
}
.default-forms .form-group .input-control
{
    height: 40px;
    padding-left: 14px;
}
.default-forms .form-group .with-icon .icon
{
    transition: color .3s ease-in-out;
    position: absolute;
    left: 10px;
}
.default-forms .form-group .with-icon .input-control:focus + .icon
{
    color: var(--color-dark);
}
.default-forms .form-group.textarea .input-control
{
    height: 178px;
    max-height: 178px;
    padding: 23px 0 0 32px;
}
.default-forms .two-form-group
{
    display: flex;
    justify-content: space-between;
}
.default-forms .with-margin
{
    margin-bottom: 18px;
}
.default-forms .two-form-group .form-group
{
    width: calc(50% - 8px);
}
.default-forms .input-control
{
    width: 100%;
    height: 100%;
    padding-top: 5px;
    background: #f1f3f4;
    color: var(--color-grey-light);
    outline: none;
    transition: .3s ease-in-out;
    font: lighter 15px 'AvenirRegular', sans-serif;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0);
}
.default-forms.firefox .input-control
{
    padding-top: 2px;
    box-shadow: unset;
}
.default-forms.safari .input-control
{
    padding-top: 3px;
}
.default-forms.safari .input-control::placeholder
{
    padding-bottom: 2px;
}
.default-forms .input-control:focus
{
    color: var(--color-dark);
    box-shadow: 0 0 4px 2px #e5eaf2;
}
.default-forms .input-control.invalid
{
    border: 1px solid #ff9191;
}
.default-forms .input-control.valid
{
    border: 1px solid #b0d7fc;
}
.default-forms .auto-fields
{
    width: 100%;
    margin-bottom: 18px;
}
.default-forms .columns
{
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding-right: 24px;
    position: relative;
}
.default-forms .columns .first
{
    width: calc(100% / 2.4);
}
.default-forms .columns .second
{
    width: calc(100% / 3.225);
    margin-left: 15px;
}
.default-forms .columns label
{
    padding: 6px 0 0 10px;
    color: var(--color-grey-light);
    font: normal 15px "AvenirRegular", sans-serif;
}
.default-forms #button-close
{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 40px;
    position: absolute;
    right: 0;
    pointer-events: none;
}
.default-forms #button-close svg
{
    width: 15px;
    height: 15px;
    transition: color .3s;
    pointer-events: auto;
}
.default-forms #button-close svg:hover
{
    color: var(--color-orange-light);
    cursor: pointer;
}
.submit-group
{
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 42px;
    position: relative;
}
.submit-group .attach-file
{
    display: flex;
    align-items: center;
    margin-right: 10px;
    color: var(--color-grey-light);
    transition: color .3s;
    position: absolute;
    left: 0;
}
.submit-group .attach-file:hover
{
    cursor: pointer;
    color: var(--color-dark);
}
.submit-group .attach-file .icon
{
    min-width: 13px;
    max-width: 13px;
    min-height: 17px;
    max-height: 17px;
    margin-right: 6px;
}
.submit-group .attach-file span
{
    display: inline-block;
    max-width: 190px;
    padding-top: 6px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font: lighter 15px "AvenirRegular", sans-serif;
}
.default-forms .input-error
{
    padding: 2px 0 0 8px;
    color: #fd5555;
    font: bold 13px "AvenirRegular", sans-serif;
}
.file-error
{
    margin-bottom: 14px;
    padding: 2px 0 0 8px;
    color: #fd5555;
    font: bold 13px "AvenirRegular", sans-serif;
}
/* ------------------------------ Forms [END] ------------------------------ */
/* ------------------------------ Buttons [PRE] ------------------------------ */
.button-group .button-control,
.submit-group .button-control
{
    padding: 12px 35px 8px 35px;
    background: #4caeff;
    color: var(--color-white);
    transition: background-color .3s;
    font: bold 16px 'AvenirRegular', sans-serif;
    border-radius: 10px;
    box-shadow: 0 2px 8px 1px rgba(76, 174, 255, .4);
}
.button-group .button-control:hover,
.submit-group .button-control:hover
{
    background: var(--color-orange-light);
}
.button-group .button-control:active,
.submit-group .button-control:active
{
    padding: 12px 25px 8px 25px;
    background: var(--bg-orange-light);
}
.button-group.center,
.submit-group.center
{
    display: flex;
    justify-content: center;
}
/* ------------------------------ Buttons [END] ------------------------------ */
/* ------------------------------ Modal window [PRE] ------------------------------ */
.modal-window
{
    display: none;
    width: 100%;
    height: 100%;
    padding: 15px 10px;
    background: rgba(242, 244, 247, .8);
    opacity: 0;
    transition: .3s;
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10000;
}
.modal-window.show
{
    opacity: 1;
}
.modal-window.open
{
    display: block;
}
.modal-window .outer-box
{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 100%;
}
.modal-window .outer-box .header
{
    display: flex;
    justify-content: flex-end;
    padding: 10px;
}
.modal-window .button-close
{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: #fff;
    box-shadow: 0 0 18px 8px #e5eaf2;
    border-radius: 4px;
}
.modal-window .button-close svg
{
    pointer-events: none;
}
.modal-window .button-close:hover
{
    color: #ff4646;
}
.modal-window.form .outer-box .content
{
    width: 100%;
    max-width: 700px;
    transition: .4s;
    transform: translateY(-200px);
}
.modal-window.show.form .outer-box .content
{
    width: 100%;
    max-width: 700px;
    transform: translateY(-0);
}
.modal-window.form .outer-box .body
{
    padding: 32px 23px 40px 23px;
    background: #fff;
    box-shadow: 0 0 18px 8px #e5eaf2;
    border-radius: 10px;
}
/* ------------------------------ Modal window [END] ------------------------------ */
/* ------------------------------ Left / right image row [PRE] ------------------------------ */
.left-image-row,
.right-image-row
{
    display: flex;
    margin-top: 61px;
}
.left-image-row .image,
.right-image-row .image
{
    width: 435px;
    height: 310px;
    position: relative;
}
.left-image-row .image img,
.right-image-row .image img
{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.left-image-row .image .lazy-load,
.right-image-row .image .lazy-load
{
    border-radius: 10px;
}
.left-image-row .description,
.right-image-row .description
{
    width: calc(100% - 435px);
    padding-top: 38px;
}
.left-image-row .description h3
{
    text-align: center;
}
.right-image-row .description h3
{
    margin-left: 160px;
}
.left-image-row .description p
{
    margin-top: 28px;
    padding: 0 40px 0 54px;
}
.right-image-row .description p
{
    margin-top: 28px;
    padding-right: 113px;
}
/* ------------------------------ Left / right image row [END] ------------------------------ */
/* ------------------------------ Footer [PRE] ------------------------------ */
footer
{
    margin-top: 51px;
}
footer .footer-main
{
    align-items: center;
    margin: 0 -15px;
    height: 111px;
    background: #333333;
}
footer .footer-main .logotype
{
    margin-right: 108px;
}
footer .footer-main .logotype a
{
    color: var(--color-white);
}
footer .footer-main .navigation-links
{
    display: flex;
}
footer .footer-main .navigation-links li:nth-child(n+2)
{
    margin-left: 36px;
}
footer .footer-main .navigation-links li a
{
    display: block;
    padding-top: 3px;
    color: var(--color-white);
    font: lighter 15px/15px "AvenirDemi", sans-serif;
    letter-spacing: 1px;
    position: relative;
}
footer .footer-main .navigation-links li a:hover
{
    color: var(--color-orange-light);
}
footer .footer-main .navigation-links li a::before
{
    content: '';
    width: 0;
    height: 6px;
    background: var(--color-orange-light);
    transition: width .3s ease-in-out;
    position: absolute;
    bottom: -10px;
    left: 0;
    pointer-events: none;
}
footer .footer-main .navigation-links li a:hover::before
{
    width: 100%;
}
footer .copyright
{
    align-items: center;
    height: 41px;
    margin: 0 -15px;
    background: #000000;
}
footer .copyright h5
{
    padding-top: 3px;
    color: var(--color-white);
    font: lighter 14px/14px "AvenirRegular", sans-serif;
    letter-spacing: 1px;
}
/* ------------------------------ Footer [END] ------------------------------ */
/* ------------------------------ Move up [PRE] ------------------------------ */
#move-up
{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: var(--color-white);
    color: var(--color-dark);
    transition: .3s;
    position: fixed;
    right: 20px;
    bottom: -100px;
    outline: none;
    border: 1px solid var(--color-grey-light);
    border-radius: 50%;
    z-index: 10000;
}
#move-up.show
{
    bottom: 20px;
}
#move-up:hover
{
    background: var(--color-orange-light);
    cursor: pointer;
}
#move-up svg
{
    color: var(--color-dark);
    width: 26px;
    height: 26px;
    transition: inherit;
}
#move-up:hover svg
{
    color: var(--color-white);
}
/* ------------------------------ Move up [END] ------------------------------ */
/* ------------------------------ Animations [PRE] ------------------------------ */
@keyframes rotation
{
    0%
    {
        transform: rotate(0deg);
    }
    100%
    {
        transform: rotate(360deg);
    }
}
@keyframes linearLoading
{
    0%
    {
        left: -150px;
        box-shadow: 0 0 60px 10px var(--color-orange-light);
    }
    100%
    {
        left: calc(100% + 150px);
        box-shadow: 0 0 20px 8px var(--color-orange-light);
    }
}
/* ------------------------------ Animations [END] ------------------------------ */
@media (max-width: 1300px)
{
    .main-slider
    {
        height: 500px;
    }
    .product-view > .left-row
    {
        width: 100%;
    }
    .product-view .absolute-right-image
    {
        width: unset;
    }
}
@media (max-width: 1199px)
{
    .product-slider .swiper-slide .heading
    {
        width: calc(100% - 30px);
        margin-top: 0;
    }
    .product-slider .swiper-slide .description
    {
        width: calc(100% - 30px);
        margin: 0;
    }
}
@media (max-width: 1180px)
{
    footer .footer-main .logotype
    {
        margin-right: 50px;
    }
    footer .footer-main .navigation-links li:nth-child(n+2)
    {
        margin-left: 15px;
    }
}
@media (max-width: 1149px)
{
    .product-slider .no-async .swiper-slide
    {
        width: calc(100% / 4);
    }
    .product-slider .no-async .swiper-slide:nth-child(n+5)
    {
        position: absolute;
        opacity: 0;
    }
}
@media (max-width: 1080px)
{
    .information-cards .row-cards
    {
        flex-wrap: wrap;
    }
    .information-cards .row-cards .card
    {
        width: calc(100% / 3 - 18px);
    }
    footer .footer-main
    {
        flex-direction: column;
    }
    footer .footer-main .logotype
    {
        margin-right: 0;
        margin-bottom: 30px;
    }
}
@media (max-width: 1030px)
{
    .products-grid-cards .card
    {
        margin: 10px !important;
    }
    .products-grid-cards .card:nth-child(3n+2), .products-grid-cards .card:nth-child(3n+3)
    {
        margin-left: 0;
    }
    .left-image-row .image,
    .right-image-row .image
    {
        width: 385px;
        height: 280px
    }
    .left-image-row .description,
    .right-image-row .description
    {
        width: calc(100% - 385px);
    }
    .product-view .absolute-right-image
    {
        align-items: center;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        opacity: 0.15;
    }
    .product-view .absolute-right-image img
    {
        max-width: 100%;
        max-height: 100%;
    }
}
@media (max-width: 1000px)
{
    header .header-main .logotype
    {
        margin-right: 100px;
    }
}
@media (max-width: 899px)
{
    .product-slider .no-async .swiper-slide
    {
        width: calc(100% / 3);
    }
    .product-slider .no-async .swiper-slide:nth-child(n+4)
    {
        position: absolute;
        opacity: 0;
    }
    .left-image-row,
    .right-image-row
    {
        align-items: center;
    }
    .left-image-row .image,
    .right-image-row .image
    {
        width: 325px;
        height: 240px
    }
    .left-image-row .description,
    .right-image-row .description
    {
        width: calc(100% - 325px);
    }
}
@media (max-width: 850px)
{
    main
    {
        margin: -100px 0 -203px 0;
        padding: 100px 15px 203px 15px;
    }
    header .header-main .logotype
    {
        margin-right: 50px;
    }
    header .language
    {
        margin-right: 15px;
    }
    header .language button
    {
        box-shadow: unset;
    }
    header nav
    {
        justify-content: flex-end;
        margin: 15px 0;
    }
    header #navigation-button-open
    {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        width: 27px;
        height: 19px;
        position: relative;
    }
    header #navigation-button-open span
    {
        width: 100%;
        height: 3px;
        background: var(--color-orange-light);
        transition: .5s ease-in-out;
        transition-delay: .2s;
        position: absolute;
        border-radius: 3px;
        pointer-events: none;
    }
    header #navigation-button-open span:first-child
    {
        top: 0;
    }
    header .open #navigation-button-open span:first-child
    {
        width: 75%;
    }
    header .open #navigation-button-open span:nth-child(2)
    {
        width: 50%;
    }
    header #navigation-button-open span:last-child
    {
        bottom: 0;
    }
    header .open #navigation-button-open span:last-child
    {
        width: 25%;
    }
    header .navigation-button-close-row
    {
        width: 100%;
        padding: 10px;
    }
    header #navigation-button-close svg
    {
        width: 30px;
        height: 30px;
        pointer-events: none;
    }
    header #navigation-menu
    {
        width: 300px;
        height: 100%;
        background-color: white;
        transition: .5s;
        overflow: auto;
        position: fixed;
        top: 0;
        left: -300px;
        z-index: 910;
    }
    header #navigation-menu > ul
    {
        display: block;
    }
    header #navigation-menu .navigation-item
    {
        margin: 0;
        padding: 0;
    }
    header #navigation-menu .navigation-item a
    {
        align-items: center;
        justify-content: space-between;
        height: 41px;
        padding: 4px 10px 0 10px;
        transition: all .3s;
        position: relative;
    }
    header #navigation-menu .navigation-item a::before
    {
        content: '';
        width: calc(100% - 20px);
        height: 1px;
        background-color: #c6c6c6;
        position: absolute;
        bottom: 0;
        left: 10px;
    }
    header #navigation-menu li.dropdown.open > a,
    header #navigation-menu li a.active,
    header #navigation-menu li a:hover
    {
        background-color: var(--color-orange-light);
        color: var(--color-white);
    }
    header #navigation-menu li.dropdown .dropdown-icon
    {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 30px;
        height: 30px;
        margin-bottom: 5px;
        color: var(--color-dark);
        transition: all .3s;
        border: 1px solid #c6c6c6;
        border-radius: 6px;
    }
    header #navigation-menu li.dropdown.open .dropdown-icon,
    header #navigation-menu li.dropdown .dropdown-icon:hover
    {
        color: var(--color-white);
        border-color: var(--color-white);
    }
    header #navigation-menu li.dropdown .dropdown-icon svg
    {
        width: 19px;
        height: 19px;
        color: inherit;
        pointer-events: none;
    }
    header #navigation-menu .dropdown .dropdown-content
    {
        position: relative;
        background-color: white;
        transition: .5s;
        border-bottom: 0 solid rgba(255, 255, 255, 0);
    }
    header #navigation-menu .dropdown.open .dropdown-content
    {
        border-bottom: 2px solid var(--color-grey-light);
    }
    header #navigation-menu .dropdown .dropdown-content li a::before
    {
        width: calc(100% - 48px);
        background-color: #c6c6c6;
        left: 24px;
    }
    header #navigation-menu .dropdown .dropdown-content li a span
    {
        padding-top: 4px;
        overflow: hidden;
        text-overflow: ellipsis;
        line-height: 16px;
    }
    header #navigation-menu #snake-line
    {
        display: none;
    }
}
@media (max-width: 800px)
{
    .information-cards .row-cards .card
    {
        width: calc(100% / 2 - 18px);
    }
}
@media (max-width: 759px)
{
    .product-slider .no-async .swiper-slide
    {
        width: calc(100% / 2);
    }
    .product-slider .no-async .swiper-slide:nth-child(n+3)
    {
        position: absolute;
        opacity: 0;
    }
    .left-image-row,
    .right-image-row
    {
        justify-content: center;
    }
    .left-image-row
    {
        flex-direction: column;
    }
    .right-image-row
    {
        flex-direction: column-reverse;
    }
    .left-image-row .description,
    .right-image-row .description
    {
        width: 100%;
        border-bottom: 1px solid var(--color-orange-light);
        padding-bottom: 10px;
    }
    .left-image-row .description p
    {
        padding: 0 !important;
    }
    .right-image-row .description p
    {
        padding-right: 0 !important;
    }
    .right-image-row .description h3
    {
        margin-left: 0 !important;
        text-align: center;
    }
    .contact-us .forms-card
    {
        padding: 40px 40px;
    }
}
@media (max-width: 758px)
{
    .company-actions .counter-increment-row
    {
        margin-bottom: 15px;
        padding-bottom: 15px;
        border-bottom: 1px solid var(--color-grey-light);
    }
    .company-actions .counter-increment-row:last-child
    {
        margin-bottom: 0;
        padding-bottom: 15px;
    }
}
@media (max-width: 710px)
{
    main
    {
        margin: -120px 0 -203px 0;
        padding: 120px 15px 203px 15px;
    }
    .main-slider
    {
        height: 350px;
    }
    header .header-main
    {
        flex-direction: column;
        padding-top: 15px;
    }
    header .header-main .logotype
    {
        margin-right: 0;
    }
    header .header-main .contacts
    {
        margin-top: 15px;
    }
    header .header-main .contacts a
    {
        justify-content: center;
        width: 50%;
        margin: 0;
    }
    header nav
    {
        justify-content: space-between;
    }
    .company-actions
    {
        margin-top: 30px;
    }
    footer .footer-main
    {
        height: unset;
        padding: 20px 0;
    }
    footer .footer-main .logotype
    {
        transform: scale(0.9);
    }
    footer .footer-main .navigation-links
    {
        display: block;
        width: 100%;
        padding: 0 10px;
    }
    footer .footer-main .navigation-links li
    {
        margin-bottom: 18px;
    }
    footer .footer-main .navigation-links li:nth-child(n+2)
    {
        margin-left: 0;
    }
    footer .copyright h5
    {
        padding-top: 1px;
            font: lighter 12px/12px 'AvenirRegular', sans-serif;
            text-align: center;
    }
    .product-view > .top-text p
    {
        font: bold 18px/22px 'AvenirBold', sans-serif;
    }
    .product-view > .top-text p.lighter
    {
        font: bold 16px 'AvenirRegular', sans-serif;
    }
    .default-forms .two-form-group
    {
        flex-direction: column;
    }
    .default-forms .two-form-group .form-group
    {
        width: 100%;
    }
    .default-forms .two-form-group .form-group:first-child
    {
        margin-bottom: 18px;
    }
    .submit-group
    {
        align-items: unset;
    }
    .submit-group .button-control
    {
        margin-top: 40px;
    }
    .default-forms .auto-fields
    {
        overflow: auto;
    }
    .default-forms .auto-fields > div
    {
        min-width: 600px;
    }
    .default-forms .columns .first,
    .default-forms .columns .second
    {
        width: calc(100% / 3);
    }
}
@media (max-width: 689px)
{
    .products-grid-cards .card
    {
        min-width: 280px;
    }
    .products-grid-cards .card:hover
    {
        box-shadow: 0 0 10px 2px #c9c9c9;
        transform: scale(1);
    }
    .contact-us .forms-card
    {
        padding: 40px 20px;
    }
    .product-view > .left-row p,
    .product-view > .left-row span
    {
        font: normal 18px/24px 'AvenirRegular', sans-serif !important;
    }
    .spare-parts-heading-center
    {
        margin-bottom: 27px;
    }
    .spare-parts-heading-center p
    {
        font: normal 18px/24px 'AvenirRegular', sans-serif !important;
    }
}
@media (max-width: 599px)
{
    .product-slider .no-async .swiper-slide
    {
        width: calc(100% / 1);
    }
    .product-slider .no-async .swiper-slide:nth-child(n+2)
    {
        position: absolute;
        opacity: 0;
    }
    .product-slider .swiper-slide .heading
    {
        width: calc(100%);
        margin-top: 0;
    }
    .product-slider .swiper-slide .description
    {
        width: 100%;
        margin-left: 0;
    }
    .product-slider .swiper-slide .description p
    {
        text-align: center;
    }
    .heading-center h2
    {
        margin: 35px 0 26px 0;
        font-size: 30px;
    }
    .company-actions .counter-increment-row .counting
    {
        height: 44px;
        margin-top: 20px;
    }
    .company-actions .counter-increment-row .counting span
    {
        font-size: 30px;
    }
    .company-actions .counter-increment-row .description
    {
        margin-top: 18px;
    }
    .default-forms .top-text
    {
        padding: 0 10px 13px 10px;
        font-size: 16px;
        line-height: 20px;
    }
}
@media (max-width: 570px)
{
    .information-cards .row-cards .card
    {
        width: 100%;
    }
    .contact-us .information-cards-heading h2
    {
        font-size: 20px;
    }
    .contact-us .forms-card
    {
        padding: 20px 10px;
    }
    .breadcrumbs ul
    {
        align-items: flex-start;
        flex-direction: column;
    }
    .breadcrumbs ul li:nth-child(n+2)
    {
        margin-top: 8px;
    }
}
@media (max-width: 460px)
{
    .product-view > .left-row p,
    .product-view > .left-row span
    {
        font: normal 15px/18px 'AvenirRegular', sans-serif !important;
        text-indent: 0 !important;
        margin-left: 0 !important;
    }
    .spare-parts-heading-center p
    {
        font: normal 15px/18px 'AvenirRegular', sans-serif !important;
    }
    .modal-window.form .outer-box .body
    {
        padding: 32px 14px 40px 14px;
    }
    .contact-us
    {
        padding: 0 0 30px 0;
    }
    .about-company .text
    {
        font-size: 15px !important;
    }
    .about-company .heading
    {
        font-size: 17px !important;
    }
    .left-image-row,
    .right-image-row
    {
        margin-top: 31px;
    }
    .left-image-row .description,
    .right-image-row .description
    {
        padding-top: 20px !important;
    }
    .left-image-row .description p,
    .right-image-row .description p
    {
        margin-top: 10px !important;
    }
    .about-company .bottom-row
    {
        margin-top: 32px;
    }
}
@media (max-width: 370px)
{
    header .header-main .logotype
    {
        transform: scale(0.85);
    }
    .products-grid-cards .card
    {
        min-width: 100%;
    }
    .left-image-row .image,
    .right-image-row .image
    {
        width: 290px;
        height: 210px;
    }
}
