/*

red: ff0000
blue: 034ea2


 */


html, body {
    font-family: Arial, Helvetica, sans-serif;
}

.container {
    /* border-left: 1px solid #00ffff;
     border-right: 1px solid #00ffff;*/
}

body.fontLoad {
    font-family: 'Roboto', Arial, Helvetica, sans-serif;
}

.flex-auto {
    flex: auto;
}

.dj-offcanvas-pusher-in {
    height: 100%;
}

#wrap {
    display: flex;
    flex-direction: column;
    height: 100%;

}

.watermark {
    max-width: 100%;
    overflow: hidden;
}

#header {
    background: rgba(1, 12, 35, .3);
    background: #010c23;
    backdrop-filter: blur(3px);
    padding: 0 0 0 45px;
    height: 100px;
    width: 100%;
    z-index: 99;
    box-shadow: 0 0 4px 0 rgb(0 0 0 / 20%);
    animation: spFadeIn .5s;
}



#menu .navigation a.active {
    color: #ffffff;
}

#menu .navigation .dj-up_a {
    color: #a0a4ad; /*#959aa3 */
    position: relative;


}

#menu .navigation .dj-up_a:hover > span {
    text-decoration: underline !important;
}


#menu .navigation .dj-up.parent > .dj-up_a > span {
    display: flex;
    align-items: center;
    position: relative;
    z-index: 2;
}

#menu .navigation .dj-up.parent > .dj-up_a:before {
    display: block;
    content: "";
    position: absolute;
    width: 0;
    height: 100%;
    background: rgba(1, 12, 35, 0.7);
    transition: all ease-in .2s;
}

#menu .navigation .dj-up.parent > .dj-up_a:hover {
    color: #fff;
}

#menu .navigation .dj-up.parent > .dj-up_a:hover:before {
    width: 100%;
}

#menu .navigation .dj-up.parent > .dj-up_a span:after {
    border-color: #a0a4ad !important;
}


li.active > a .toggler:before,
#menu .navigation .dj-up.parent:hover > .dj-up_a span:after {
    transform: rotate(225deg);
    margin: 2px 10px 4px 5px;
}


#menu .navigation .submenu {
    padding: 10px 15px;
    background: rgba(1, 12, 35, 0.8);
    box-shadow: 0 3px 5px 0 rgb(0, 0, 0, 0.2);
    min-width: 280px;
}

#menu .navigation .submenu a {
    padding: 5px 0;
    color: #a0a4ad;
}

#menu .navigation .submenu a {
    text-decoration: none !important;
}

#menu .navigation .submenu .active > a,
#menu .navigation .submenu a:hover {
    color: #fff;
}

#menu .navigation .submenu a:hover {
    text-decoration: underline !important;
}

#menu ul.menu_categories-items {
    padding: 0;
}

#menu ul.menu_categories-items li {
    list-style: none;
    margin: 0;
    line-height: 1.1;

}

#menu ul.menu_categories-items li a {
    display: block;
}

#menu .dj-megamenu-override li:hover div.dj-subwrap,
#menu .dj-megamenu-override li.hover div.dj-subwrap {

}

.dj-offcanvas-modules,
.dj-offcanvas-modules a {
    color: #000 !important;
}

.menu-center {
    display: flex;
    align-items: center;
    justify-content: center;
}

.navigation .dj-up > a span {
    display: inline-block;
    padding: 0 15px;
    line-height: 100px;
    font-size: 18px;
    margin: 0;
    letter-spacing: 1.6px;
    font-weight: normal;
    outline: none;
}

#menu .dj-megamenu-offcanvas {
    top: 12px;
    right: 12px;
    height: 28px;
    width: 28px;
}

#menu .hamburger {
    border-color: #fff;
}

#menu .hamburger:before,
#menu .hamburger:after {
    background: #fff;
}

li.active a.collapsed  + ul.collapse{
    display: block;
}

.dj-mobile-nav .menu_categories-items{
    padding: 0;
}
.dj-mobile-nav .toggler{
    margin-left: 10px;
}
.dj-mobile-nav .toggler:before {
    border-color:#012845;
}

.dj-mobile-nav ul ul li {
    line-height: 1;
    padding:5px 0;
}


#page-content {
    padding: 40px 0;
}

#main {
    flex-grow: 3;
    padding: 0;
    /*min-height: 1200px;*/
}

#breadcrumbs {
    padding: 6px 0 0 0;
}

#showcase .slider-block {
    position: relative;
    max-height: 100vh;
    overflow: hidden;
}

#showcase .slider-block .owl-dots {
    width: auto !important;
    right: 20px;
    left: auto;
}

#showcase .slider-block .owl-dots button {
    border-radius: 0;
    width: 32px;
    height: 8px;
}

#showcase .slider-block .owl-dots button {
    opacity: 0.3;
}

#showcase .slider-block .owl-dots button.active {
    opacity: 0.8;
}

#showcase .slider-block .owl-dots button:hover {
    opacity: 0.6;
}


#showcase .slider-block .slider-block_sep {
    position: absolute;
    z-index: 1;
    bottom: -235px;
    pointer-events: none;

}

#showcase .slider-block .slider-block_sep:after {
    display: block;
    content: "";
    -webkit-mask: url(../images/slider-shape.svg) no-repeat 100% 100%;
    mask: url(../images/slider-shape.svg) no-repeat 100% 100%;
    -webkit-mask-size: cover;
    mask-size: cover;
    height: 650px;
    width: 650px;
    background-color: #fff;

}

#showcase .slider-block .item {
    position: relative;
}

#showcase .slider-block .item img {
    max-height: 100vh;
    object-fit: cover;
}

#showcase .slider-block .item .caption {
    position: absolute;
    z-index: 3;
    background: transparent;
    width: calc(100% - 110px);
    height: calc(100% - 50px);
    top: 0;
    display: flex;
    align-items: center;
    margin: 0 55px;
    padding: 40px;
    max-width: 50%;
}

#showcase .slider-block .item .caption .title {
    font-size: 100px;
    line-height: 110px;
    font-weight: 800;
    color: #fff;
    -ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=3, Direction=135, Color=#000000)"; /*IE 8*/
    text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.4); /* FF3.5+, Opera 9+, Saf1+, Chrome, IE10 */
    filter: progid:DXImageTransform.Microsoft.Shadow(Strength=3, Direction=135, Color=#000000); /*IE 5.5-7*/
}

#showcase .slider-block .item .caption p {
    margin: 0;
}

#showcase .slider-block .item .caption .introtext {
    font-size: 24px;
    line-height: 1.2;
    padding: 15px;
    background: rgba(0, 0, 0, 0.2);
    color: #fff;
    backdrop-filter: blur(3px);
}
#showcase .slider-block .item .caption .btn-readmore {
    color: #fff;
    font-size: 16px;
}

#showcase .slider-block .item .caption .btn-readmore:hover {
    color: #034ea2;

}

#showcase .slider-block .item .watermark {
    position: absolute;
    z-index: 3;
    background: transparent;
    width: calc(100% - 110px);
    height: calc(100% - 50px);
    top: 0;
    display: flex;
    align-items: center;
    margin: 0 55px;
    padding: 40px;

    font-size: 280px;
    line-height: 1;
    font-weight: 800;
    color: #fff;
    opacity: 0.3;
}

#showcase .slider-block .thumbs {
    position: absolute;
    top: 0;
    right: 0;
    height: calc(100% - 50px);
    width: auto;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin: 0 55px;
}

#showcase .slider-block .thumbs .thumbs_items {
    background: rgba(0, 0, 0, 0.8);
    padding: 5px 20px;
}

#showcase .slider-block .thumbs .thumbs_items .item {
    cursor: pointer;
    color: #C0C4F1;
    margin: 15px 0;
}

#showcase .slider-block .thumbs .thumbs_items .item:after {
    display: block;
    content: "";
    height: 2px;
    width: 50%;
    background: #C0C4F1;
    margin: 0;
    transition: all ease-in .1s;
}

#showcase .slider-block .thumbs .thumbs_items .item:hover {
    color: #fff;
}

#showcase .slider-block .thumbs .thumbs_items .item.current:after {
    background: #e97025;
}

#showcase .slider-block .owl-dots {
    position: absolute;
    z-index: 3;
    bottom: 10px;
    width: 100%;
}

.brands {
    background-color: #F0F5FE;
    box-shadow: 0 0 0 0 #ffffff;
    padding: 0px 50px;

}

.brands .brands_items {
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
}

.brands .brands_items li {
    list-style: none;
    padding: 0 20px;
}

.brands .brands_items .brands_item {

}

.brands .brands_items .brands_item img {
    filter: grayscale(100%);
    transition: all ease-in .2s;
    max-width: 180px;
    max-height: 180px;
}

.brands .brands_items .brands_item img:hover {
    filter: none;
}


.brands .owl-carousel .owl-nav button.owl-prev {
    left: -30px !important;
}

.brands .owl-carousel .owl-nav button.owl-next {
    right: -30px;
}


#showcase .brands {
    margin-top: -90px;
    position: relative;
    z-index: 4;
}


#beforecontent {
    padding: 100px 0;
}

#beforecontent .advantages .mod.block {
}

#beforecontent .advantages .module-title {
    display: flex;
    align-items: center;
}

#beforecontent .advantages .module-content {
    position: relative;
}

#beforecontent .advantages .owl-stage {
    display: flex;
    align-items: stretch;
}



#beforecontent .advantages .owl-item {
    min-height: 100%;
    float: none;


}

#beforecontent .advantages .ttl {
    font-size: 100px;
    line-height: 90px;
    font-weight: 800;
    color: #034ea2;
    -ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=3, Direction=135, Color=#000000)"; /*IE 8*/
    filter: progid:DXImageTransform.Microsoft.Shadow(Strength=3, Direction=135, Color=#000000); /*IE 5.5-7*/
    word-break: break-all;
    overflow: visible;
    text-shadow: none;
    z-index: 3;
}

#beforecontent .advantages .module-title .title {
    position: relative;
    z-index: 3;
}

#beforecontent .advantages .module-title .watermark {
    position: absolute;
    z-index: 2;
    background: transparent;
    top: 0px;
    left: 0;
    display: flex;
    align-items: center;
    margin: 0;
    padding: 0;
    white-space: nowrap;

    font-size: 180px;
    line-height: 1;
    font-weight: 800;
    color: #e3e9f4;
    opacity: 0.3;
    word-break: normal;
    text-shadow: none;
}


#beforecontent .advantages .module_content {
    flex-grow: 2;
    text-align: center;
    max-width: 100%;

}

#beforecontent .advantages .more {
    display: none;
}

#beforecontent .advantages .owl-loaded .more {
    display: initial;
}

/*
#beforecontent .advantages .advantages_items.owl-loaded .advantages_item.more{
    display: block;
}*/

#beforecontent .advantages ul {
    margin: 0;
    padding: 0;
    position: relative;
    z-index: 3;

}

#beforecontent .advantages li {
    list-style: none;
    padding: 0;
    height: 100%;
}

#beforecontent .advantages .advantagesitems {
    display: flex;
    align-items: stretch;
    height: 100%;
}

#beforecontent .advantages .advantagesitems .advantages_images {
    width: 50%;

    padding: 15px 15px;
    border: 2px solid #eeeeee;
    position: relative;

    background: repeating-linear-gradient(
            135deg,
            #fcfdfe,
            #fcfdfe 10px,
            #ffffff 10px,
            #ffffff 20px
    );
}

#beforecontent .advantages .advantages_images {
    margin-bottom: 40px;
    transition: all ease-in .2s;

}

#beforecontent .advantages .advantages_images:hover {
    box-shadow: 0 3px 9px rgba(0, 0, 0, .1) !important;
}


#beforecontent .advantages .advantages_images .owl-dots {
    position: absolute;
    width: 100%;
    margin-top: 10px;
}

#beforecontent .advantages .advantages_images .owl-dots button {
    border-radius: 0;
    width: 32px;
    height: 8px;
}

#beforecontent .advantages .advantages_images .owl-dots button.active {
    background-color: #034ea2 !important;
    border-color: #034ea2 !important;
}


#beforecontent .advantages .advantagesitems .advantages_captions {
    width: 50%;
    height: 100%;
    display: flex;

    align-items: center;
}


#beforecontent .advantages .advantages_item .caption {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    overflow-x: hidden;
    hyphens: auto;
    word-break: normal;
    height: 100%;
}

#beforecontent .advantages .advantages_item .title {
    font-size: 30px;
    line-height: 1;
    font-weight: 800;
    color: #333;
    padding: 0 20px;
    margin: 0 0 15px;
    hyphens: auto;
    word-break: normal;
    text-overflow: ellipsis;
    max-width: 100%;
    overflow: hidden;
    height: auto;
}

#beforecontent .advantages .advantages_item .title .indx {
    font-size: 64px;
    color: #ff0000;
}

#beforecontent .advantages .advantages_item .description {
    padding: 20px;
    text-align: left;
    color: rgba(1, 12, 35, 0.7);
    width: 100%;
    margin-top: auto;

}

#aftercontent {
    padding: 0px 0 100px;
overflow-x:hidden;
}

#aftercontent .product_groups {
margin-bottom: 85px;
}

#aftercontent .module-title {
    position: relative;
}

#aftercontent .module-title .title {
    font-size: 100px;
    line-height: 1.1;
    font-weight: 800;
    color: #034ea2;
    position: relative;
    z-index: 3;
    margin-bottom: 20px;
}


#aftercontent .module-title .watermark {
    position: absolute;
    z-index: 2;
    background: transparent;
    top: 40px;
    height: auto;
    margin: 0 55px;
    padding: 0px;
    font-size: 180px;
    font-weight: 800;
    color: #e3e9f4;
    opacity: 0.3;
    line-height: 100px;
}

#aftercontent .product_groups .tabs {
    display: flex;
    flex-direction: row-reverse;
    position: relative;
    z-index: 3;

}

#aftercontent .product_groups .nav-tabs {
    width: 40%;
    padding-left: 35px;
    border: none;
}

#aftercontent .product_groups .nav-tabs a {
    text-decoration: none !important;
}

#aftercontent .product_groups .nav-tabs li {
    padding: 30px 40px;
    color: #555555;
    border-width: 0px 0px 0px 4px;
    border-style: solid;
    border-color: transparent;
}

#aftercontent .product_groups .nav-tabs li.active {
    color: #000;
    border-color: #0B54E4;
    background-color: rgba(11, 84, 228, 0.1);
}


#aftercontent .product_groups .tab-content {
    width: 60%;
    padding-right: 35px;
}

#aftercontent .product_groups .image {
    position: relative;
    animation: fadeIn; /* referring directly to the animation's @keyframe declaration */
    animation-duration: 1s; /* don't forget to set a duration! */
}

#aftercontent .product_groups .caption {
    max-height: 0;
    overflow: hidden;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: auto;
    line-height: 1.1;
    transition: max-height ease-out .8s, opacity ease-in .1s;
    opacity: 0;
}

#aftercontent .product_groups .caption li {
    padding: 5px;
}

#aftercontent .product_groups .caption > div {
    padding: 35px 15px 15px 15px;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0.4) 30px, rgba(0, 0, 0, .8) 100%);
    color: #fff;

}

#aftercontent .product_groups .tab-pane:hover .caption {
    max-height: 500px;
    opacity: 1;

}

#aftercontent .product_groups .ttl {
    display: block;
    font-size: 25px;
    font-weight: normal;
    line-height: 1.1;
    margin-bottom: 15px;
}

#aftercontent .product_groups .intro {
    display: block;
}

#aftercontent .product_groups .tab-content img {
    width: 100%;
    height: auto;
}

#aftercontent .call_request {
    padding: 60px 0 40px;
    background: #034ea2;
    margin-bottom: 80px;
}

#aftercontent .call_request .module-title .title {
    font-size: 180px;
    line-height: 120px;
    font-weight: 800;
    color: #fff;
    opacity: 0.3;

}

#aftercontent .call_request .module-content p {
    color: #fff;
    font-size: 36px;
}

#aftercontent .call_request a.show_contactform {
    border: 1px solid #fff;
    background: rgba(255, 255, 255, 0.4);
    padding: 5px 15px;
}

#aftercontent .call_request a.show_contactform:hover {
    padding: 5px 30px;
}


#aftercontent .call_request a.show_contactform:before {
    background: #fff;
    min-width: 68px;
}

#aftercontent .call_request a.show_contactform span {
    color: #000;

}

#aftercontent .call_request a.show_contactform span:before {
    background-color: #034ea2;
    margin: 0 40px 0 0;
}

#aftercontent .call_request a.show_contactform:hover span:before {
    margin: 0 0 0 10px;
}


#aftercontent .block_wrap.newlist {
    padding:70px 0 0;
}

#aftercontent .block_wrap.newlist .module-title .title{
    color:#e3e9f4;
    font-size: 120px;
    position: relative;
    z-index: 2;
    margin-bottom: -20px;
}

#aftercontent .block_wrap.newlist .module-content{
    position: relative;
    z-index: 3;
}


#aftercontent .block_wrap.newlist .news .items {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows:  repeat(2, 1fr);
    gap: 25px 25px;
}

#aftercontent .block_wrap.newlist .news .items .item_content {
    display: flex;
    height: 100%;
}

#aftercontent .block_wrap.newlist .news .items .item .image {
    min-width: 50%;
}

#aftercontent .block_wrap.newlist .news .items .item .image img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

#aftercontent .block_wrap.newlist .news .items .item .caption_content {
    padding: 15px;
}


#aftercontent .block_wrap.newlist .news .items .item .title {
    font-size: 20px;
}


#aftercontent .block_wrap.newlist .news .items .item:nth-child(1) {
    background-color: #f0f5fe;
    grid-row-start: 1;
    grid-column-start: 1;
    grid-row-end: 3;
    grid-column-end: 3;
}

#aftercontent .block_wrap.newlist .news .items .item:nth-child(1) .item_content {
    flex-direction: column;
}

#aftercontent .block_wrap.newlist .news .items .item:nth-child(1) .image {
    min-width: 100%;
    flex-grow: 2;
}

#aftercontent .block_wrap.newlist .news .items .item:nth-child(2) {
    background-color: #fef0f4;
    grid-row-start: 1;
    grid-column-start: 3;
    grid-row-end: 2;
    grid-column-end: 5;
    min-height: 310px;
}

#aftercontent .block_wrap.newlist .news .items .item:nth-child(3) {
    background-color: #fef0f4;
    grid-row-start: 2;
    grid-column-start: 3;
    grid-row-end: 3;
    grid-column-end: 5;
    min-height: 310px;
}

#aftercontent .block_wrap.newlist .news .items .item:nth-child(3) .item_content {
    flex-direction: row-reverse;
}


#aftercontent .block_wrap.contacts_phones{
    padding:40px 0;
    background: #034ea2;
    color: #fff;
    font-size: 40px;
    text-align: center;

}

#aftercontent .block_wrap.contacts_phones a{
    color: #fff;
    text-decoration: none;
}

#aftercontent .block_wrap.contacts_phones .ttl{
    font-weight: normal;
    line-height: 1.1;
}

#aftercontent .block_wrap.contacts_phones .items{
    font-size: 20px;
}

#footer, #bottom {
    background: #f0f5fe;
    color: #010c23;
}

#bottom {
    padding: 50px 0 30px;
    font-size: 14px;
    line-height: 1.6;
}

#bottom .menu {
    display: flex;
    flex-direction: column;
    color: #9da4b2;
    font-size: 16px;
}

#bottom .menu a {
    color: #9da4b2;
    padding: 3px 0;
    display: block;
}

#bottom .menu a:hover,
#bottom .menu a:focus {
    color: #434c5f;

}

#column-left .menu_categories-items li {
    line-height: 1.2;
    padding: 5px 0;
}

.contact .ttl,
.contacts .ttl {
    font-weight: bold;
    margin-bottom: 8px;
}


.contact .phone-numbers {
    margin-bottom: 20px;
}


#footer {
    font-size: 14px;
    padding: 0;
    border-top: 1px solid rgba(1, 12, 35, .1);
}

#footer .container-inner {
    padding: 30px 0;
    border-top: 1px solid rgba(255, 255, 255, .1);
}

a .toggler{
    display: inline-block;
    vertical-align: middle;
}
a .toggler:before,
#menu .navigation .dj-up.parent > .dj-up_a span:after,
#back-to-top a:before {
    display: block;
    content: "";
    font-style: normal;
    /* transition: all ease-in .2s; */
    font-size: 16px;
    padding: 0 2px 0 5px;
    height: 10px !important;
    width: 10px;
    border: 1px solid #E7E7E7;
    border-bottom: none;
    border-right: none;
    margin: 9px 10px 4px 5px;
    transform: rotate(45deg);
}

#back-to-top a:before {
    border-color: #000;
    margin: 14px 0 0 10px;
    opacity: 0.6;
}

#back-to-top:hover {
    box-shadow: 0 4px 4px 0 rgb(50, 50, 50, 0.5);
}

#back-to-top:hover a:before {
    opacity: 0.9;
}


h1.page-title {
    font-weight: 700;
    font-size: 50px;
    line-height: 55px;
    color: #034ea2;
    border-bottom: 4px solid #034ea2;
    padding-bottom: 5px;
    max-width: 100%;
    overflow: hidden;
}

.category_items_list .item {

}

.category_items_list .item_content {
    display: flex;
    gap: 0 24px;
    align-items: center;
}

.category_items_list .item:before {
    display: block;
    content: "";
    border: 1px solid #D8DDE8;
}

.category_items_list .item:first-child:before {
    display: none;

}

.category_items_list .item .item_img {
    min-width: 180px;
}




.blog .item {
    margin-bottom: 25px;


}

.blog .item:before {
    display: block;
    content: "";
    border: 1px solid #D8DDE8;
    margin-bottom: 25px;
}


.blog .items-row:first-child .item:before {
    display: none;
}


.homepage #page-content {
    display: none;
}


.box-404 {
    position: relative;
    height: 300px;
    background: url("../images/404.png") center no-repeat;
    background-size: contain;
    margin: 40px 0 120px;
    display: flex;
    align-items: flex-start;
    max-width: 100%;
    overflow: hidden;
    flex-direction: column;
}

.box-404 .title {
    font-family: 'Rubik', sans-serif;
    font-size: 60px;
    line-height: 1.2;
    color: #212121;
    font-weight: 500;
    padding-bottom: 10px;
}

.box-404 p {
    font-size: 34px;
    line-height: 1.4;
    color: #212121;
}

.box-404 a {
    color: #034ea2;
    text-decoration: underline;
}

.box-404 a:hover {
    text-decoration: none;
}