@font-face {
    font-family: "Helvetica Neue Bold";
    src: url("../fonts/HelveticaNeueCyr-Bold.woff");
    src: url("../fonts/HelveticaNeueCyr-Bold.woff2");
    src: url("../fonts/HelveticaNeueCyr-Bold.ttf");
    font-style: normal;
    font-weight: 700
}

@font-face {
    font-family: "Helvetica Neue";
    src: url("../fonts/HelveticaNeueCyr-Roman.woff");
    src: url("../fonts/HelveticaNeueCyr-Roman.woff2");
    src: url("../fonts/HelveticaNeueCyr-Roman.ttf");
    font-style: normal;
    font-weight: 400
}

#page {
    background: #fff
}

* {
    box-sizing: border-box
}

img {
    max-width: 100%
}

body {
    font-family: "Helvetica Neue", sans-serif;
    padding: 0;
    margin: 0
}

ul {
    padding: 0;
    margin: 0
}

li {
    padding: 0;
    list-style: none
}

a {
    text-decoration: none;
    color: #0066b3
}

a:not(.btn):not(.logo) {
    opacity: 1;
    transition: opacity .3s
}

.copywrite a {
    color: #fff;
    display: flex;
    align-items: center;
    flex-wrap: nowrap
}

.container {
    padding: 14px 24px
}

.first-screen {
    height: 100vh;
    position: relative;
    z-index: 200
}

.first-screen-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: -1
}

.first-screen--overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 90%;
    height: 100%;
    background-image: linear-gradient(90deg, #000 0, rgba(0, 0, 0, 0) 100%);
    opacity: .85;
    z-index: 1
}

.video__vd {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 200;
    padding-top: 16px;
    background-image: linear-gradient(180deg, #000 0, rgba(0, 0, 0, 0) 100%);
    height: 140px;
    width: 100%;
    transition: all .3s ease
}

.header.out {
    opacity: 0;
    transition: all .3s ease
}

.hero {
    position: relative;
    z-index: 20
}

.header-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    padding: 0 40px 10px 40px;
    position: relative;
    z-index: 2;
    height: 100%
}

.header-logo {
    display: flex;
    align-items: center
}

.header-logo__img {
    margin-right: 12px
}

.logo-name {
    color: #fff;
    font-size: 31px;
    font-weight: 400
}

.logo-about {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 11px;
    font-weight: 400
}

.header-block {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: auto
}

.header-nav .menu-list {
    display: flex
}

.header-nav .menu-list .menu-item {
    position: relative;
    padding: 13px;
    border-bottom: 5px solid transparent;
    transition: .3s
}

.header-nav .menu-list .menu-item a {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 16px;
    font-weight: 400
}

.submenu {
    display: none
}

.header-search {
    padding: 0 12px;
    margin-top: 10px
}

.header-search__link {
    display: inline-block
}

.header-contacts {
    display: flex;
    flex-direction: column;
    margin-right: 30px
}

.header-tel {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 10px;
    white-space: nowrap
}

.header-email {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 16px;
    font-weight: 400;
    text-decoration: underline
}

.header-contacts .link-icon {
    margin-right: 17px
}

.header-lang {
    display: flex;
    flex-direction: column;
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 16px;
    font-weight: 700;
    row-gap: 11px;
    position: relative;
    cursor: pointer;
    margin-top: 34px
}

.header-lang:before {
    content: url('../img/leng-icon.svg');
    position: absolute;
    left: 0;
    top: -24px
}

.header-lang:after {
    content: url('../img/menu-arrow.svg');
    color: #fff;
    position: absolute;
    right: -22px;
    bottom: -5px
}

.lang-sub {
    display: flex;
    flex-direction: column;
    opacity: 0;
    position: absolute;
    top: 50px;
    left: -5px;
    transition: .3s;
    padding: 10px;
    z-index: 50;
    border-radius: 10px;
    background-color: #0066b3
}

.lang-sub span {
    padding: 10px 0
}

.submenu {
    display: block;
    position: absolute;
    left: 0;
    list-style: none;
    top: 40px;
    width: 250px;
    z-index: 50;
    border-radius: 5px;
    background-color: #0066b3;
    opacity: 1;
    max-height: 0;
    overflow: hidden;
    padding: 0 22px;
    transition: .3s
}

.jq-selectbox__dropdown ul {
    z-index: 50;
    border-radius: 10px;
    background-color: #0066b3;
    opacity: .95;
    padding: 10px;
    left: -10px;
    top: 10px
}

.submenu li {
    padding: 14px 0;
    border: 3px solid transparent !important;
    border-bottom: 3px solid transparent !important;
    transition: .3s;
    border-radius: 10px !important
}

.submenu li a {
    color: #fff;
    padding: 0 !important;
    margin-bottom: 10px
}

.has-children:after {
    content: url('../img/menu-arrow.svg');
    color: #fff;
    position: absolute;
    right: -10px;
    top: 20%
}

.hero-wrapper {
    padding-top: 250px;
    padding-bottom: 150px;
    position: relative
}

.hero-block {
    padding: 0 100px
}

.hero-title {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 44px;
    font-weight: 700;
    text-transform: uppercase;
    text-align: left;
    padding: 0 !important
}

.hero-item {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 18px;
    font-weight: 400;
    position: relative;
    padding-left: 30px;
    padding-bottom: 22px
}

.hero-item:before {
    content: "";
    position: absolute;
    background-color: #0066b3;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    left: 0;
    top: 3px
}

.hero__main-button {
    color: #5ab8ff;
    font-family: "Helvetica Neue";
    font-size: 20px;
    font-weight: 400;
    padding: 24px;
    border-radius: 10px;
    border: 4px solid #5ab8ff;
    display: inline-block;
    margin-top: 15px;
    transition: .3s;
    min-width: 230px;
    text-align: center
}

.hero-buttons {
    display: flex;
    flex-direction: column;
    row-gap: 15px;
    position: absolute;
    right: 30px;
    bottom: 30px;
    z-index: 50
}

.hero-button {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 20px;
    font-weight: 700;
    padding: 19px 40px;
    border-radius: 10px;
    background-color: #e31e23;
    min-width: 260px;
    max-width: 280px;
    text-align: center;
    display: inline-block;
    border: 4px solid #e31e23;
    transition: .3s
}

.hero-down {
    position: absolute;
    bottom: 0;
    left: calc(50% - 72px);
    z-index: 21;
    animation: MoveUpDown 1s linear infinite
}

@keyframes MoveUpDown {

    0%,
    100% {
        bottom: 0
    }

    50% {
        bottom: 16px
    }
}

.second-screen {
    position: relative
}

.second-screen-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover
}

.products-wrapper {
    padding-top: 64px
}

h2 {
    text-align: center !important;
    color: #0c223c;
    font-family: "Helvetica Neue";
    font-size: 34px;
    font-weight: 700;
    text-transform: uppercase
}

.products-list {
    display: flex;
    justify-content: space-between
}

.products-item {
    width: 24%
}

.products-item__link {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 59px 95px
}

.products-item__link img {
    width: 120px;
    height: 115px;
    margin: auto
}

.products-item__name {
    color: #0c223c;
    font-family: "Helvetica Neue";
    font-size: 18px;
    font-weight: 400;
    text-align: center;
    margin-top: 28px;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: start
}

.products-item__hover {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    border-radius: 10px;
    background-color: rgba(0, 102, 179, .8);
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    row-gap: 44px;
    opacity: 0;
    transition: all .9s;
    transform: translateY(400px);
    display: none !important
}

.products-item__hover span {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 18px;
    font-weight: 400;
    margin-bottom: 44px
}

.hover-button {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 20px;
    font-weight: 400;
    border-radius: 10px;
    border: 4px solid #fff;
    padding: 22px 55px;
    background-color: transparent
}

.services-wrapper {
    padding-bottom: 64px
}

.services-list {
    display: flex;
    justify-content: space-between;
    align-items: stretch
}

.services-item {
    width: 24%
}

.services-item__link {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 70px 70px 40px 70px
}

.services-item__name {
    color: #0c223c;
    font-family: "Helvetica Neue";
    font-size: 18px;
    font-weight: 400;
    text-align: center;
    margin: auto;
    margin-top: 28px;
    max-width: 170px;
    min-height: 65px;
    display: flex;
    justify-content: center;
    align-items: start;
    overflow: hidden;
    opacity: 1;
    transition: .3s
}

.services-item__img {
    width: 100px;
    margin: auto
}

.services-item__hover {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    border-radius: 10px;
    pointer-events: none;
    background-color: rgba(0, 102, 179, .8);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    row-gap: 44px;
    opacity: 0;
    transition: all .9s;
    transform: translateY(300px);
    padding: 70px 70px 40px 70px;
    display: none !important
}

.services-item__hover span {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 18px;
    font-weight: 400;
    max-width: 170px;
    margin: auto;
    text-align: center
}

.hover-button {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 20px;
    font-weight: 400;
    border-radius: 10px;
    border: 4px solid #fff;
    padding: 22px 55px;
    background-color: transparent
}

.gallery {
    background-color: #fff;
    padding: 52px 0
}

.gallery h2 {
    margin-bottom: 28px
}

.gallery-list {
    display: flex;
    flex-wrap: wrap;
    row-gap: 15px
}

.gallery-item {
    position: relative;
    width: calc((100% - 45px)/ 4);
    border-radius: 10px;
    min-height: 212px;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    align-items: flex-end;
    background-color: #000;
    overflow: hidden;
    transition: .3s
}

.gallery-item:not(:nth-child(4n)) {
    margin-right: 15px
}

.gallery-item h3 {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 18px;
    font-weight: 400;
    text-align-last: left
}

.gallery-item__link {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    position: relative;
    z-index: 50;
    padding: 0 20px;
    width: 100%;
    height: 100%;
    transition: .3s
}

.gallery-item__link img {
    margin: 18px 0
}

.about {
    background-color: #0066b3;
    padding: 70px 100px;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: 100% 50%
}

.about h2 {
    color: #fff;
    text-align: left;
    font-family: "Helvetica Neue Bold"
}

.about p {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 18px;
    font-weight: 400;
    line-height: 28px
}

.about-buttons {
    display: flex;
    column-gap: 17px;
    margin-top: 40px
}

.about-button {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 18px;
    font-weight: 400;
    padding: 20px 25px;
    border-radius: 10px;
    border: 4px solid #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 250px
}

.about-button img {
    margin-right: 8px
}

.news {
    padding: 90px 0;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    background-color: #000
}

.news h2 {
    color: #fff
}

.news-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 38px
}

.news-item {
    border-radius: 10px;
    border: 1px solid #dbdbdb;
    background-color: #fff;
    width: 24%;
    padding: 20px;
    transition: all .3s ease
}

.news-grid .news-item a {
    display: flex
}

.news-item span {
    color: #000;
    font-family: "Helvetica Neue";
    font-size: 14px;
    font-weight: 400
}

.news-grid .news-item a img {
    max-width: 200px;
    height: auto;
    object-fit: cover;
    border-radius: 10px;
    margin-right: 20px
}

.news-item h3 {
    color: #000;
    font-family: "Helvetica Neue";
    font-size: 18px;
    font-weight: 700;
    margin: 5px 0;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical
}

.news-item p {
    color: #000;
    font-family: "Helvetica Neue";
    font-size: 14px;
    font-weight: 400;
    margin: 10px 0;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical
}

.news-button {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 20px;
    font-weight: 400;
    border-radius: 10px;
    background-color: #0066b3;
    padding: 18px 25px;
    display: inline-block;
    border: 4px solid #0066b3;
    transition: .3s
}

.news__button {
    margin-top: 37px;
    text-align: center
}

.partners {
    padding: 58px 0
}

.partners h2 {
    margin-bottom: 29px
}

.partners-slider .owl-stage {
    position: relative;
    overflow: hidden;
    display: flex !important;
    align-items: center !important
}

.partners-slider .owl-carousel .owl-item img {
    width: auto !important
}

.partners-slider img {
    max-width: 160px;
    max-height: 110px;
    width: auto !important
}

.advantage-carousel .owl-nav,
.category-slider .owl-nav,
.partners-slider .owl-nav,
.services-list .owl-nav {
    position: absolute;
    margin: 0 !important;
    width: 100%;
    top: 0
}

.partners-slider .owl-nav {
    top: 30px
}

.advantage-carousel .owl-nav .owl-prev,
.category-slider .owl-nav .owl-prev,
.services-list .owl-nav .owl-prev {
    position: absolute;
    left: 0 !important
}

.partners-slider .owl-nav .owl-prev {
    position: absolute;
    left: -5px !important
}

.advantage-carousel .owl-nav .owl-next,
.category-slider .owl-nav .owl-next,
.services-list .owl-nav .owl-next {
    position: absolute;
    right: 0 !important
}

.partners-slider .owl-nav .owl-next {
    position: absolute;
    right: -5px !important
}

.advantage-carousel .owl-nav .owl-next img,
.advantage-carousel .owl-nav .owl-prev img,
.category-slider .owl-nav .owl-next img,
.category-slider .owl-nav .owl-prev img,
.partners-slider .owl-nav .owl-next img,
.partners-slider .owl-nav .owl-prev img,
.services-list .owl-nav .owl-next img,
.services-list .owl-nav .owl-prev img {
    width: 50px
}

.map {
    margin-top: 42px;
    display: flex;
    justify-content: center;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-attachment: fixed;
    position: relative
}

.mark {
    position: absolute
}

.mark--1 {
    top: 50%;
    left: 30%
}

.mark--2 {
    top: 40%;
    left: 40%
}

.mark--3 {
    top: 60%;
    left: 20%
}

.mark--4 {
    top: 80%;
    left: 60%
}

.mark--5 {
    top: 31%;
    left: 31%
}

.footer-logo {
    display: flex;
    align-items: center;
    margin-bottom: 62px
}

.footer-logo__img {
    margin-right: 12px
}

.footer-wrapper {
    display: flex
}

.footer-nav {
    background-color: #0066b3;
    width: 70%;
    padding-top: 41px;
    padding-left: 48px;
    padding-bottom: 40px
}

.footer-menus {
    display: flex;
    justify-content: space-between;
    padding: 0 70px
}

.footer-contacts {
    background-color: #0c223c;
    width: 30%
}

.footer-menus a {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 14px;
    font-weight: 400;
    margin-bottom: 20px;
    display: inline-block
}

.main-item a {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase
}

.footer-buttons {
    display: flex;
    flex-direction: column;
    row-gap: 15px
}

.footer-button {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    border-radius: 10px;
    background-color: #e31e23;
    transition: .3s;
    border: 4px solid #e31e23;
    max-width: 212px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 20px 21px
}

.footer-contacts {
    padding: 50px 100px
}

.footer-contacts h3 {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase
}

.footer-contacts p {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 14px;
    font-weight: 400
}

.footer-tel {
    margin-top: 22px;
    margin-bottom: 33px
}

.footer-tel a {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 24px;
    font-weight: 700;
    color: #fff
}

.footer-email a {
    text-decoration: underline;
    color: #fff
}

.footer-social {
    display: flex;
    align-items: center;
    margin-bottom: 13px
}

.social-item {
    margin-right: 16px
}

.copywrite {
    background-color: #0c223c;
    padding: 20px 95px
}

.copywrite-wrapper {
    display: flex;
    justify-content: space-between
}

.copywrite-wrapper p {
    color: #fff;
    font-family: "Helvetica Neue";
    font-size: 12px;
    font-weight: 400;
    display: flex;
    align-items: center;
    margin: 0
}

.m2-logo {
    margin-left: 15px
}

.advantages-advantage__zone {
    background: #fff;
    padding: 70px 70px 40px 70px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    height: 100%;
    position: relative;
    border-radius: 10px;
    border: 1px solid #dbdbdb;
    transition: all .3s ease
}

.advantages-advantage-icon {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-transform: translateZ(100px);
    transform: translateZ(100px)
}

.advantages-advantage-text {
    -webkit-transform: translateZ(50px);
    transform: translateZ(50px)
}

.gall__img {
    position: absolute;
    display: block;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: .5;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover
}

.mob-menu {
    display: none
}

#nav-menu::after {
    content: '';
    width: 30px;
    height: 45px;
    display: block;
    position: fixed;
    top: 30px;
    right: 30px;
    transform: rotate(0);
    transition: .5s ease-in-out;
    cursor: pointer;
    z-index: 10
}

#nav-icon {
    width: 30px;
    height: 45px;
    display: block;
    position: absolute;
    top: 30px;
    left: 15px;
    transform: rotate(0);
    transition: .5s ease-in-out;
    cursor: pointer
}

#nav-icon span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #5ab8ff;
    border-radius: 0;
    opacity: 1;
    left: 0;
    transform: rotate(0);
    transition: .25s ease-in-out
}

#nav-icon span:nth-child(1) {
    top: 0;
    transform-origin: left center
}

#nav-icon span:nth-child(2) {
    top: 8px;
    transform-origin: left center
}

#nav-icon span:nth-child(3) {
    top: 16px;
    transform-origin: left center
}

.mm-opening #nav-icon span:nth-child(1) {
    transform: rotate(45deg);
    top: -3px;
    left: 8px
}

.mm-opening #nav-icon span:nth-child(2) {
    width: 0;
    opacity: 0
}

.mm-opening #nav-icon span:nth-child(3) {
    transform: rotate(-45deg);
    top: 19px;
    left: 8px
}

.hero-wrapper {
    padding-top: 0;
    padding-bottom: 0
}

.hero {
    display: flex;
    align-items: center;
    height: 100%;
    flex-wrap: nowrap
}

.container {
    width: 100%
}

.owl-carousel .owl-item img {
    margin: 0 auto
}

.category-slider.owl-carousel .owl-item {
    height: 300px
}

.category-slider.owl-carousel .owl-item img {
    height: 100%;
    border-radius: 10px;
    object-fit: cover
}

.map img {
    max-width: 100%
}

.about,
.copywrite,
.footer,
.gallery,
.news,
.partners,
.second-screen {
    position: relative;
    z-index: 100
}

.atropos {
    height: 100%
}

.second-screen {
    padding-bottom: 25px
}

.banner-header .first-screen--overlay {
    background-image: url("../img/banner-header.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    opacity: 1;
    z-index: 1
}

.header.banner-header {
    background: 0 0;
    height: 106px
}

.banner-header .first-screen--overlay::before {
    content: '';
    background-color: rgba(0, 0, 0, .85);
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.first-screen.inside-pages {
    height: 106px
}

.btn-nav-pages {
    width: 51px;
    height: 51px;
    border-radius: 10px;
    background: #0066b3;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #0066b3;
    position: absolute;
    top: 85px;
    left: 24px;
    z-index: 10;
    transition: .3s ease
}

.breadcrumbs {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    padding-top: 40px;
    color: #0c223c;
    opacity: .75
}

.breadcrumbs .products-list {
    display: inline
}

.breadcrumbs span,
.breadcrumbs span a {
    font-weight: 400;
    font-size: 14px;
    text-align: center;
    color: #0c223c;
    opacity: .75;
    margin: 0 2px
}

.news-grid {
    flex-direction: column;
    max-width: 870px;
    margin: 0 auto
}

.news-grid .news-item {
    border-radius: 0;
    border: none;
    border-bottom: 1px solid #dbdbdb;
    width: 100%;
    padding: 28px 0
}

.news-grid .news-item:first-child {
    border-top: 1px solid #dbdbdb
}

.news-grid .news-item h3 {
    margin: 16px 0;
    -webkit-line-clamp: 2
}

.pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 43px
}

.pagination li a,
.pagination li span {
    font-weight: 400;
    font-size: 18px;
    line-height: 21px;
    color: #000;
    display: block;
    text-align: center;
    border-radius: 10px;
    padding: 14px 20px 15px;
    transition: all .3s;
    background: #fff
}

.pagination li span {
    background: #0066b3;
    color: #fff;
    transition: all .3s
}

.h1,
h1 {
    font-weight: 700;
    font-size: 44px;
    line-height: 50px;
    text-align: center;
    color: #0c223c;
    text-transform: uppercase;
    margin-top: 20px;
    margin-bottom: 30px;
    padding: 0 50px
}

.news-date {
    font-weight: 700;
    font-size: 18px;
    line-height: 24px;
    text-align: center;
    color: #000;
    padding-bottom: 35px
}

.footer {
    clear: both
}

img[style*="float: left"] {
    margin: 0 40px 40px 0;
    max-width: 50%
}

img[style*="float: right"] {
    margin: 0 0 0 40px;
    max-width: 50%
}

.page-content {
    max-width: 85%;
    margin: 0 auto
}

.page-content p {
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    text-align: left;
    color: #000
}

.news.news-in-page {
    background-color: #fff;
    padding: 60px 0 0 0;
    clear: both
}

.news.news-in-page h2 {
    color: #0c223c
}

.contacts-grid {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-bottom: 30px
}

.w-50 {
    width: 50%
}

.contacts-grid .subtitle {
    font-weight: 700;
    font-size: 18px;
    line-height: 24px;
    text-align: left;
    color: #000;
    margin-bottom: 20px
}

.contacts-grid p,
.contacts-grid p a {
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    text-align: left;
    color: #000
}

.contacts-grid p {
    max-width: 320px;
    margin-top: 0;
    margin-bottom: 20px
}

.contacts-grid p + .subtitle {
    margin-top: 71px
}

.contacts-grid .btn-link.phone {
    font-weight: 700;
    font-size: 24px;
    line-height: 24px;
    text-align: left;
    color: #000
}

.contacts-grid .hero-button {
    font-weight: 400;
    padding: 16px 32px;
    background-color: #0066b3;
    min-width: auto;
    max-width: 100%;
    border: 4px solid #0066b3
}

.contact-maps {
    display: flex;
    flex-direction: column;
    row-gap: 28px;
    margin-bottom: 68px
}

.contact-maps a {
    font-weight: 700;
    text-decoration: underline;
    font-size: 18px;
    line-height: 24px;
    text-align: left;
    color: #0066b3;
    margin-left: 24px;
    position: relative;
    max-width: 485px
}

.contact-maps a::before {
    content: '';
    display: block;
    position: absolute;
    top: 3px;
    left: -24px;
    background: url("../img/maps-and-flags.svg") no-repeat center;
    background-size: contain;
    width: 16px;
    height: 22px
}

.contact-map iframe {
    width: 100%;
    border: none
}

h3 {
    font-weight: 700;
    font-size: 24px;
    line-height: 24px;
    text-align: left;
    color: #000
}

.contact-sales-grid {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    row-gap: 87px;
    padding-top: 15px
}

.sales-item {
    width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end
}

.sales-item .item-img {
    width: 111px;
    height: 111px;
    border: 1px solid #d3d3d3;
    border-radius: 50%;
    overflow: hidden;
    flex: none
}

.sales-item .item-content .name {
    font-weight: 700;
    font-size: 18px;
    line-height: 24px;
    text-align: left;
    color: #000;
    margin-bottom: 7px
}

.sales-item .name0 {
    font-weight: 700;
    font-size: 24px;
    line-height: 24px;
    text-align: left;
    color: #000;
    margin-bottom: 20px
}

.sales-item .name1 {
    font-weight: 700;
    font-size: 18px;
    line-height: 24px;
    text-align: left;
    color: #000;
    margin-bottom: 27px
}

.sales-item .sales-content {
    display: flex;
    align-items: center;
    column-gap: 20px
}

.sales-item .item-content .state {
    font-weight: 400;
    font-style: italic;
    font-size: 16px;
    line-height: 24px;
    text-align: left;
    color: #000;
    margin-bottom: 8px
}

.sales-item .item-content a {
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    text-align: left;
    color: #000
}

.contact-sales {
    margin-bottom: 75px
}

.fancybox-is-open .fancybox-bg {
    background: #0c223c
}

.fancybox-content {
    border-radius: 10px;
    background: #fff;
    border: 1px solid #dbdbdb
}

.fancybox-content h3 {
    font-weight: 700;
    font-size: 24px;
    line-height: 28px;
    text-align: left;
    color: #0c223c;
    text-transform: uppercase
}

.fancybox-content form {
    display: flex;
    flex-direction: column;
    row-gap: 15px
}

.fancybox-content form input,
.fancybox-content form textarea {
    width: 100%;
    height: 54px;
    border-radius: 10px;
    background: #fff;
    border: 1px solid #dbdbdb;
    font-family: "Helvetica Neue";
    font-weight: 400;
    font-style: normal;
    font-size: 18px;
    line-height: 24px;
    text-align: left;
    color: #b4b4b4;
    padding: 5px 20px;
    color: #000
}

#ajaxsearchlite1 .probox .proinput input,
div.asl_w .probox .proinput input {
    width: 100%;
    border-radius: 10px !important;
    background: #fff;
    font-family: "Helvetica Neue";
    font-weight: 400;
    font-style: normal;
    font-size: 18px !important;
    line-height: 24px;
    text-align: left;
    padding: 5px 0 !important;
    color: #000;
    margin-bottom: 5px !important
}

#ajaxsearchlite1 .probox .proinput input,
.fancybox-content form input::placeholder,
.fancybox-content form textarea::placeholder,
div.asl_w .probox .proinput input::placeholder {
    color: #b4b4b4
}

div.asl_w {
    box-shadow: 0 0 0 0 transparent !important;
    border: 1px solid transparent !important
}

div[id*=ajaxsearchlite].wpdreams_asl_container {
    margin-bottom: 50px !important
}

#ajaxsearchlite1 .probox,
div.asl_w .probox {
    box-shadow: 0 0 0 0 transparent !important;
    border: 1px solid #dbdbdb !important;
    border-radius: 10px 10px 10px 10px !important;
    padding: 5px 20px !important;
    height: 35px !important;
    display: flex !important;
    align-items: center !important
}

#ajaxsearchlite1 .probox .proinput,
div.asl_w .probox .proinput {
    padding: 0 !important;
    margin: 0 !important;
    margin-bottom: 5px !important
}

.fancybox-content form input {
    margin-bottom: 20px
}

.wpcf7-list-item {
    display: flex !important;
    align-items: center;
    margin: 0 !important
}

.fancybox-content form input[type=checkbox] {
    width: 18px;
    height: 18px;
    border-radius: 3px;
    margin: 3px 10px 0 0
}

.fancybox-content form label {
    font-weight: 400;
    font-size: 14px;
    line-height: 24px;
    text-align: left;
    color: #000;
    display: flex
}

.fancybox-content form .check-box {
    display: flex;
    align-items: flex-start;
    flex-wrap: nowrap
}

.fancybox-content form textarea {
    height: 170px
}

.fancybox-content form .hero-button {
    font-weight: 400;
    padding: 16px 32px;
    background-color: #0066b3;
    min-width: auto;
    max-width: 100%;
    border: 4px solid #0066b3;
    text-align: center;
    color: #fff;
    height: 60px
}

.category-slider {
    margin-bottom: 20px
}

.advantage-carousel.owl-carousel .owl-nav,
.category-slider.owl-carousel .owl-nav,
.services-list.owl-carousel .owl-nav {
    top: calc(50% - 25px)
}

.advantage-carousel.owl-carousel .owl-nav button,
.category-slider.owl-carousel .owl-nav button,
.services-list.owl-carousel .owl-nav button {
    width: 51px;
    height: 51px;
    border-radius: 10px;
    background: #0066b3;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #0066b3;
    top: 0;
    margin: 0;
    z-index: 10;
    transition: .3s ease
}

.advantage-carousel.owl-carousel .owl-nav .owl-next,
.category-slider.owl-carousel .owl-nav .owl-next,
.services-list.owl-carousel .owl-nav .owl-next {
    transform: rotate(180deg)
}

.products-grid {
    display: flex;
    flex-direction: column;
    padding-top: 13px
}

.prod-item {
    border-bottom: 1px solid #dbdbdb
}

.prod-item:first-child {
    border-top: 1px solid #dbdbdb
}

.prod-item-box {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    background: #fff;
    width: 100%;
    border-radius: 10px;
    padding: 25px 111px 30px 44px;
    min-height: 187px;
    transition: .3s
}

.prod-item-img {
    width: 128px;
    flex: none
}

.prod-item-description .title {
    font-weight: 700;
    font-size: 24px;
    line-height: 28px;
    text-align: left;
    color: #0c223c;
    text-transform: uppercase;
    margin-bottom: 12px;
    transition: .3s;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical
}

.prod-item-description p {
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    text-align: left;
    color: #000;
    margin: 0;
    transition: .3s;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    max-width: 300px;
    max-width: 100%
}

.prod-item-more {
    height: 64px;
    border-radius: 10px;
    background: 0 0;
    border: 4px solid #fff;
    font-weight: 400;
    font-size: 20px;
    text-align: center;
    color: #fff;
    width: 100%;
    max-width: 0;
    transition: .3s;
    padding: 5px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden
}

.prod-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    padding-left: 64px
}

.center-btns {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    margin: 76px 0
}

.center-btns a {
    height: 64px;
    border-radius: 10px;
    background: #0066b3;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #0066b3;
    padding: 5px 30px;
    margin: 8px;
    font-weight: 400;
    font-size: 20px;
    text-align: left;
    z-index: 10;
    transition: .3s ease
}

.category-description {
    padding-top: 12px
}

.category-description h2 {
    text-align: left;
    margin-top: 0;
    margin-bottom: 25px
}

.category-description p {
    margin-top: 0;
    line-height: 24px;
    margin-bottom: 24px
}

.category-description p:last-child {
    margin-bottom: 0
}

.services-in-page {
    padding-top: 52px;
    padding-bottom: 30px
}

.services-grid {
    display: flex
}

.sub-h1 p {
    margin: 0 auto;
    max-width: 650px;
    font-weight: 700;
    font-size: 18px;
    line-height: 24px;
    text-align: center;
    color: #000
}

.count-of-images {
    position: absolute;
    bottom: 10px;
    left: 10px;
    height: 37px;
    border-radius: 10px;
    background: #0c223c;
    overflow: hidden;
    display: flex;
    align-items: center;
    padding: 0 10px
}

.count-of-images span {
    font-size: 21px;
    line-height: 24px;
    font-weight: 400;
    text-align: left;
    color: #fff;
    margin-left: 7px
}

.wrap-404 .center-btns {
    margin: 20px 0
}

.gallery-in {
    padding-top: 0;
    padding-bottom: 0
}

.owl-carousel .services-item {
    width: 100%
}

.services-list.owl-carousel .services-item {
    width: 100%;
    height: 296px
}

.services-list.owl-carousel .services-item .advantages-advantage-icon {
    padding: 30px
}

.services-list.owl-carousel .services-item .advantages-advantage-icon img {
    margin: auto;
    width: auto;
    max-height: 100px
}

.card-two-half {
    margin-top: 50px;
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    justify-content: space-between;
    min-height: 360px;
    margin-bottom: 105px
}

.card-two-half .title {
    font-weight: 700;
    font-size: 24px;
    line-height: 28px;
    text-align: left;
    color: #0c223c;
    text-transform: uppercase;
    margin-bottom: 14px
}

.card-two-half .w-50:first-child {
    display: flex;
    align-items: center
}

.card-two-half .disc p {
    margin: 0 0 24px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    text-align: left;
    color: #000
}

.img-bg {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    height: 100%;
    border-radius: 10px;
    border: 1px solid #dbdbdb
}

.card-two-half .btn {
    height: 64px;
    border-radius: 10px;
    background: #0066b3;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #0066b3;
    padding: 5px 30px;
    margin: 0;
    font-weight: 400;
    font-size: 20px;
    text-align: left;
    z-index: 10;
    transition: .3s ease
}

.card-two-half .disc {
    padding-right: 44px
}

.advantage-item {
    height: 515px;
    border-radius: 10px;
    overflow: hidden;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center
}

.advantage-img {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1
}

.advantage-img::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .5);
    pointer-events: none;
    z-index: 1
}

.advantage-content {
    position: relative;
    max-width: 650px;
    margin: 0 auto;
    text-align: center;
    color: #fff;
    z-index: 2
}

.advantage-content .number {
    font-weight: 400;
    font-size: 161px;
    line-height: 143px;
    -webkit-text-stroke-width: 3px;
    -webkit-text-stroke-color: #fff;
    color: transparent
}

.advantage-content .title {
    font-weight: 700;
    font-size: 34px;
    line-height: 39px;
    text-transform: uppercase;
    margin-top: 5px;
    margin-bottom: 12px
}

.advantage-content p {
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    margin: 0
}

.advantage-carousel .owl-nav {
    left: calc(15% / 2);
    width: 85%
}

.banner-bg {
    margin-bottom: 20px
}

.banner-bg-content,
.banner-bg-product {
    padding: 123px 0;
    background-repeat: repeat;
    background-attachment: fixed;
    background-size: 100% auto;
    background-color: #000;
    position: relative;
    border-radius: 10px;
    overflow: hidden;
    background-position-y: 83px
}

.banner-bg-product {
    display: flex;
    align-items: center;
    justify-content: center
}

.banner-bg .btn {
    height: 64px;
    border-radius: 10px;
    background: #0066b3;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #0066b3;
    padding: 5px 65px;
    margin: 0;
    font-weight: 400;
    font-size: 20px;
    text-align: left;
    z-index: 10;
    transition: .3s ease;
    margin-top: 40px
}

.banner-bg .btn:hover {
    color: #fff;
    border: 2px solid #fff;
    background-color: transparent;
    transition: .3s ease
}

.banner-bg-content::before {
    content: '';
    background-color: rgba(0, 0, 0, .4);
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.banner-bg-product::before {
    content: '';
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.banner-content {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    max-width: 100%;
    margin: 0 auto;
    text-align: center
}

.banner-content p {
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    text-align: center;
    color: #fff;
    margin: 0
}

.banner-content .title {
    font-weight: 700;
    font-size: 34px;
    line-height: 39px;
    text-align: center;
    color: #fff;
    text-transform: uppercase;
    margin: 13px 0 24px
}

.banner-content .btn {
    height: 64px;
    border-radius: 10px;
    background: #0066b3;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #0066b3;
    padding: 5px 30px;
    margin: 0;
    font-weight: 400;
    font-size: 20px;
    text-align: center;
    z-index: 10;
    transition: .3s ease
}

.about-anim {
    background-color: transparent;
    padding: 0;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: -50% 0
}

.box-with-sidebar {
    display: flex;
    flex-wrap: wrap;
    padding-top: 67px
}

.sidebar-menu li {
    margin: 3px 0 18px
}

.sidebar-menu a {
    font-weight: 400;
    font-size: 18px;
    line-height: 21px;
    text-align: left;
    color: #224676
}

.sidebar {
    width: 300px;
    margin-left: calc(15% / 2 + 24px)
}

.box-with-sidebar .content-box {
    width: calc(100% - 300px - 15% / 2 - 24px)
}

.box-with-sidebar .content-box p {
    margin: 0 0 28px;
    font-size: 18px;
    line-height: 24px;
    text-align: left;
    color: #000
}

.box-with-sidebar .content-box .card-to-border {
    border-radius: 10px 0 0 10px;
    background: #0066b3;
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    padding: 60px 80px 50px 110px;
    column-gap: 70px;
    margin-bottom: 48px
}

.box-with-sidebar .content-box .text-box {
    margin-right: calc(15% / 2 + 24px);
    margin-bottom: 50px;
    padding-left: 34px
}

.box-with-sidebar .content-box .card-to-border p {
    font-weight: 700;
    font-size: 28px;
    line-height: 34px;
    text-align: left;
    color: #fff
}

.banner-animated .banner-content {
    font-size: 161px;
    text-align: center;
    font-weight: 400;
    line-height: 185px;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #fff;
    color: transparent;
    white-space: nowrap
}

.banner-animated .banner-bg-content {
    padding: 112px 0;
    background-attachment: scroll
}

.services-in-about {
    padding-top: 22px
}

.services-in-about .products-wrapper {
    padding-top: 0
}

.main-advantage {
    margin-bottom: 102px
}

.category-slider-item-box {
    transition: .3s;
    border-radius: 10px
}

.category-slider .owl-stage {
    padding-top: 5px
}

.category-slider-item-box a {
    height: 192px;
    display: block;
    border-radius: 10px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover
}

.card-downloading .card-two-half .btn {
    background: #fff;
    color: #0066b3
}

.card-downloading .card-two-half .btn::before {
    content: '';
    display: inline-flex;
    background: url("../img/document-blue.svg") no-repeat center;
    background-size: cover;
    width: 18px;
    height: 25px;
    margin-right: 10px
}

.sidebar-menu ul {
    margin-bottom: 45px
}

.sidebar-menu .menu-title {
    margin-bottom: 18px
}

.sidebar-menu .menu-title a {
    font-weight: 700;
    font-size: 24px;
    line-height: 23px;
    text-align: left;
    color: #224676
}

.about-company .box-with-sidebar {
    padding-top: 0
}

.about-company .box-with-sidebar .text-box ul li {
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    text-align: left;
    color: #000;
    position: relative;
    margin-bottom: 24px
}

.about-company .box-with-sidebar .text-box ul {
    margin-left: 20px
}

.about-company .box-with-sidebar .text-box ul li::before {
    content: '';
    background: #0066b3;
    display: inline-flex;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    position: absolute;
    top: 8px;
    left: -21px
}

.box-with-sidebar h3 {
    margin-top: 0
}

.card-downloading {
    margin-top: 87px
}

.card-downloading .card-two-half {
    margin-bottom: 86px
}

.title-left h2,
.title-left h3 {
    text-align: left
}

.title-left {
    text-align: center !important;
}

.prod-card-info {
    display: flex;
    flex-wrap: nowrap;
    padding-top: 18px
}

.right-descr .title {
    font-weight: 700;
    font-size: 24px;
    text-align: left;
    color: #0c223c;
    line-height: 28px;
    text-transform: uppercase;
    margin-bottom: 25px
}

.right-descr p {
    font-weight: 400;
    font-size: 18px;
    line-height: 28px;
    text-align: left;
    color: #000;
    margin-top: 0
}

.right-descr .btn {
    height: 64px;
    border-radius: 10px;
    background: #0066b3;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #0066b3;
    padding: 5px 65px;
    margin: 0;
    font-weight: 400;
    font-size: 20px;
    text-align: left;
    z-index: 10;
    transition: .3s ease;
    margin-top: 40px
}

.left-gallery > a {
    border-radius: 10px;
    background: #fff;
    border: 1px solid #dbdbdb;
    position: relative;
    padding: 60px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff
}

.right-descr {
    width: 85%;
    margin: auto;
    padding-top: 22px;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.card-box-prod-p .card-two-half {
    min-height: 460px
}

h4 {
    font-weight: 700;
    font-size: 18px;
    line-height: 24px;
    text-align: left;
    color: #000
}

.grid-steps ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    row-gap: 48px
}

.grid-steps ul li {
    font-weight: 700;
    font-size: 16px;
    line-height: 24px;
    text-align: center;
    color: #000;
    width: 25%;
    padding: 0 40px;
    position: relative;
    height: 65px;
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.grid-steps ul li::after,
.grid-steps ul li::before {
    content: '';
    display: block;
    width: 19px;
    height: 38px;
    background: url("../img/steps.svg") no-repeat center;
    background-size: cover;
    position: absolute
}

.grid-steps ul li::after {
    right: -10px
}

.grid-steps ul li::before {
    content: none
}

.grid-steps ul li:nth-child(4n+1)::before {
    content: '';
    left: 0
}

.grid-steps ul li:nth-child(4n)::after {
    right: 0
}

.grid-steps ul li:first-child::before {
    content: none
}

.card-box-prod-p {
    padding-top: 26px
}

.prod-card-info .left-gallery {
    padding-right: 60px
}

.steps-box h4 {
    margin-bottom: 58px
}

.steps-box {
    margin-bottom: 80px
}

.main-advantage-p {
    padding-top: 30px;
    margin-bottom: 0
}

.services-prod-p {
    padding-top: 37px
}

.services-prod-p .products-wrapper {
    padding-top: 0
}

.main-advantage-p .btn {
    height: 64px;
    border-radius: 10px;
    background: #0066b3;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #0066b3;
    padding: 5px 65px;
    margin: 0;
    font-weight: 400;
    font-size: 20px;
    text-align: left;
    z-index: 10;
    transition: .3s ease;
    margin-top: 40px
}

.tabcontent {
    display: none;
    -webkit-animation: fadeEffect 1s;
    animation: fadeEffect 1s
}

@-webkit-keyframes fadeEffect {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes fadeEffect {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

.tabs {
    margin-bottom: 25px
}

.page-content span,
.tabs .tab {
    display: inline-block;
    padding: 0;
    margin: 0 65px 15px 0;
    font-weight: 700;
    font-size: 18px;
    text-align: left;
    color: #0c223c;
    opacity: .5;
    text-transform: uppercase;
    transition: .3s ease
}

.page-content span,
.tabs .tab.on {
    opacity: 1;
    color: #0066b3
}

.page-content span:not(:first-of-type) {
    padding-top: 18px
}

.tabs-items .item {
    display: none
}

.tabs-items .item.on {
    display: block
}

.page-content table {
    width: 100%;
    max-width: 100%;
    border-radius: 10px;
    background: #fff;
    border: 1px solid #dbdbdb;
    padding: 0;
    border-spacing: 0;
    overflow: hidden;
    border-collapse: separate;
    margin-bottom: 30px
}

.page-content table tr td {
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    padding: 18px 40px 24px;
    text-align: left;
    color: #000;
    vertical-align: top
}

.page-content table tr:first-child td {
    font-weight: 700
}

.page-content table tr:not(:last-child) td {
    border-bottom: 1px solid #e4e4e4
}

.page-content table tr td:not(:last-child) {
    border-right: 1px solid #e4e4e4
}

.page-content p {
    font-weight: 400;
    font-size: 18px;
    line-height: 28px;
    text-align: left;
    color: #0c223c;
    margin: 0 0 18px 0
}

.page-content .box-grey {
    padding: 30px;
    border-radius: 10px;
    background: #efefef;
    margin-bottom: 34px
}

.page-content .box-grey p {
    font-weight: 700;
    font-size: 18px;
    line-height: 28px;
    text-align: left;
    color: #000;
    margin: 0
}

.page-content table td ul {
    margin: 7px 0 0 16px
}

.page-content .box-grey ul,
.page-content ol li ul {
    margin: 0 0 0 33px
}

.page-content ol li .box-grey {
    margin-left: -20px;
    margin-top: 15px
}

.page-content .box-grey ul li,
.page-content ol li ul li,
.page-content table td ul li {
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    text-align: left;
    color: #000;
    position: relative;
    margin-bottom: 24px;
    list-style: none
}

.page-content .box-grey ul li,
.page-content ol li ul li {
    font-weight: 700
}

.page-content .box-grey ul li:last-child,
.page-content table td ul li:last-child {
    margin-bottom: 0
}

.page-content .box-grey ul li::before,
.page-content ol li ul li::before,
.page-content table td ul li::before {
    content: '';
    width: 8px;
    height: 8px;
    background: #000;
    border-radius: 50%;
    display: block;
    position: absolute;
    top: 8px;
    left: -16px
}

.page-content .box-grey ul li::before,
.page-content ol li ul li::before {
    top: 6px;
    left: -26px
}

.page-content ol {
    padding-left: 25px
}

.page-content ol li {
    font-weight: 400;
    font-size: 18px;
    line-height: 21px;
    text-align: left;
    color: #0c223c;
    list-style: decimal;
    margin-bottom: 15px
}

.tabs-img .coltab {
    width: calc(100% / 4 - 14px)
}

.tabs-img .tab {
    border-radius: 10px;
    border: 1px solid #dbdbdb;
    overflow: hidden;
    width: 100%;
    margin: 0;
    opacity: 1;
    position: relative
}

.tabs-img .coltab .tab::before {
    content: '';
    width: 100%;
    height: 100%;
    background: #0066b3;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    transition: .3s ease
}

.tabs-img .coltab .tab.on::before {
    opacity: .71
}

.tabs-img .tabs {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    column-gap: 14px;
    row-gap: 14px;
    width: 50%;
    padding-right: 126px
}

.tabs-img .tab-wrap {
    display: flex;
    flex-wrap: nowrap;
    border-top: 1px solid #dbdbdb;
    padding-top: 44px;
    align-items: flex-start
}

.tabs-img .tabs-items {
    width: 50%
}

.tabs-img .tabs-items .item img {
    border-radius: 10px;
    border: 1px solid #dbdbdb;
    overflow: hidden
}

.tabs-img .tabs-items .item .name {
    font-weight: 700;
    font-size: 24px;
    color: #0c223c;
    line-height: 28px;
    text-transform: uppercase;
    margin-bottom: 21px
}

.tabs-img .tabs-items .item .box-img {
    margin-bottom: 22px
}

.tabs-img .tabs-items .item .items {
    margin-bottom: 16px
}

.tabs-img .tabs-items .item .items p {
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    margin: 0
}

.fancybox-slide--image .fancybox-content {
    border: none
}

.left-gallery > a > img {
    max-height: 240px
}

.contacts-grid .w-50:first-child .subtitle {
    font-weight: 700;
    font-size: 24px;
    line-height: 24px;
    margin-top: 4px
}

.contacts-grid .w-50:first-child .subtitle + p {
    margin-bottom: 15px
}

.contacts-grid p.p-before-form {
    max-width: 545px;
    padding-top: 30px;
    margin-bottom: 25px
}

.category-slider .owl-item,
.category-slider-item-box {
    transition: .3s !important
}

.category-slider .owl-item,
.category-slider-item-box {
    border-radius: 10px
}

.category-slider .owl-item,
.category-slider-item-box {
    background-color: transparent !important;
    transition: .3s
}

.category-slider .owl-item a img {
    transition: .3s
}

.prod-item-description {
    flex: 1 1 calc(100% - 240px)
}

.services-in-page.services-in-about .owl-carousel .owl-stage-outer,
.services-in-page.services-prod-p .owl-carousel .owl-stage-outer {
    padding: 16px 0;
    overflow: visible
}

.services-in-page.services-in-about,
.services-in-page.services-prod-p {
    padding: 0
}

.services-in-page.services-in-about .services,
.services-in-page.services-prod-p .services {
    overflow: hidden
}

.easy-html-sitemap__list a {
    color: #224676
}

.easy-html-sitemap__list li,
.page_item.page-item-306.page_item_has_children a {
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    text-align: left;
    display: block;
    position: relative;
    margin-bottom: 24px
}

html.mm-blocking,
html.mm-blocking body {
    position: relative
}

.jq-selectbox__dropdown{
    width: auto!important;
}