@import './css/reset.css';
@import "./fonts/fonts.css";
@import './css/root.css';

/* header */

.header{
    background: var(--color-white);
    padding: 30px 0;
    position: fixed;
    width: 100%;
    z-index: 10;
}

.header_wrapper{
    position: relative;
}
.header_info{
    color: var(--color-grey);
}
.header_info_item{
    padding: 0 25px;
    gap: 10px;
}
.header_info_item a{
    display: block;
}
.header_info_item.lang{
    padding-right: 0;
}

.hamburger-menu{
    display: none;
}

.hamburger-menu .promo_item_menu li{
    width: 100%;
}

#menu__toggle {
    opacity: 0;
}
#menu__toggle ~ .menu__btn .burger2{
    display: none;
}
#menu__toggle:checked ~ .menu__btn .burger1{
    display: none;
}
#menu__toggle:checked ~ .menu__btn .burger2{
    display: block;
}

#menu__toggle:checked ~ .menu__box {
    visibility: visible;
    right: 0;
    overflow-y: auto;
}

.menu__btn {
    display: flex;
    align-items: center;
    position: fixed;
    top: 45px;
    right: 20px;
    width: 26px;
    height: 26px;
    cursor: pointer;
    z-index: 11;
    background: var(--color-white);
}

.menu__btn > span,
.menu__btn > span::before,
.menu__btn > span::after {
    display: block;
    position: absolute;

    width: 100%;
    height: 2px;

    background-color: var(--color-red);

    transition-duration: .25s;
}
.menu__btn > span::before {
    content: '';
    top: -8px;
}
.menu__btn > span::after {
    content: '';
    top: 8px;
}
.menu__box {
    display: block;
    position: fixed;
    visibility: hidden;
    top: 0;
    right: -100%;
    width: 300px;
    height: 100%;
    margin: 0;
    list-style: none;
    background-color: var(--color-white);
    box-shadow: 1px 0px 6px rgba(var(--rgb-black), .2);
    transition-duration: .25s;
    z-index: 10;
}

.menu__box .promo_item:first-child{
    padding-top: 90px;
}
.menu__box .promo_item:last-child{
    padding-bottom: 90px;
}

.menu__item {
    display: block;
    padding: 12px 24px;

    color: #333;

    font-family: 'Roboto', sans-serif;
    font-size: 20px;
    font-weight: 600;

    text-decoration: none;

    transition-duration: .25s;
}
.menu__item:hover {
    background-color: var(--color-gray);
}

.menu__box .promo_item_link {
    display: flex;
}
.menu__box .promo_item_content {
    padding-top: 0;
    padding-bottom: 0;
}
.menu__box .promo_item_menu_link{
    color: var(--color-main);
    font-weight: 400;
}
.menu__box .promo_item_menu {
    margin-top: 15px;
    flex-direction: column;
    align-items: flex-start;
}
.menu__box .promo_arrow {
    display: flex;
}

.menu__box .promo_arrow svg{
    width: 10px;
}

.menu__box .promo_item .promo_item_content{
    position: relative;
    left: unset;
    top: unset;
    bottom: unset;
    display: none;
}

.menu__box .promo_item.active .promo_arrow{
    transform: rotate(180deg);
}

.promo_item_mob.active .promo_item_title{
    color: var(--color-red)
}
.promo_item_mob.active .promo_item_link_content  svg path{
    fill: var(--color-red);
}

/* header end */

/* section subheader */
.subheader{
    gap: 20px;
}
.subheader_box:first-child{
    max-width: 480px;
}
.subheader_box{
    width: 100%;
}
.subheader_nav{
    padding: 20px;
    border-radius: 20px;
    background: var(--color-red);
}

.subheader_title{
    color: var(--color-white);
    margin-left: 10px;
}

.subheader_actions{
    padding: 20px 23px 19px 20px;
    border: 1px solid var(--color-grey);
    border-radius: 20px;
    background: var(--color-white);
    position: relative;
}

.subheader_search{
    display: flex;
    align-items: center;
    gap: 10px;
}
.subheader_search_inp{
    display: none;
    transition: 0.3s all ease-in-out;
}
.subheader_search_inp input{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: var(--color-white);
    bottom: 0;
    right: 0;
    z-index: 2;
    height: 90%;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    width: calc(100% - 50px);
}
.subheader_search_inp.active{
    display: block;
    position: absolute;
    width: calc(100% - 60px);
    height: 100%;
}

.subheader_search:has(.subheader_search_inp.active) + .subheader_wrapper{
    display: none;
}

.subheader_wrapper{
    width: 100%;
    /*padding-left: 70px;*/
    padding-left: 25px;
}

.subheader_item:hover{
    color: var(--color-red);
}

.subheader_item.active{
    color: var(--color-red);
    font-weight: 500;
}

.subheader_search_ico svg>path,
.cart_header_btn svg>path{
    fill: var(--color-main);
}
.subheader_search_ico:hover svg>path,
.cart_header_btn:hover svg>path{
    fill: var(--color-red);
}

/* section subheader end */

/* section promo */

.promo{
    position: relative;
    margin-top: 20px;
}

.promo_wrapper{
    gap: 20px;
}

.promo_menu{
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid var(--color-grey);
    background: var(--color-white-gray);
}

.promo_nav{
    max-width: 480px;
}

.promo_item{
    cursor: pointer;
    padding: 18px 20px;
}

.promo_item_link_content{
    gap: 10px;
}

.promo_item_link{
    position: relative;
}

.promo_item_ico svg>path{
    /*fill: var(--color-main);*/
}
.promo_nav .promo_item:hover .promo_item_title{
    color: var(--color-red);
}
.promo_nav .promo_item:hover svg>path{
    fill: var(--color-red);
}
.promo_nav .promo_item:hover .promo_arrow{
    display: block;
}
.promo_nav .promo_item:hover{
    background: var(--color-white);
}
.promo_arrow{
    display: none;
}
.promo_menu:has(.promo_item:hover) + .subheader_box{
    display: none;
}
.promo_menu:has(.promo_item:hover) {
    max-width: unset;
    width: 100%;
}

.promo_item_content{
    display: none;
    position: absolute;
    left: 480px;
    top: 0;
    bottom: 0;
    background: var(--color-white);
    width: -webkit-fill-available;
	width: -moz-available;
    padding: 20px;
}

.promo_menu .promo_item:hover > .promo_item_content{
    display: block;
    cursor: default;
}

.promo_item_content_title{
    color: var(--color-red);
}

.promo_item_menu{
    gap: 10px 50px;
    margin-top: 20px;
    flex-wrap: wrap;
}

.promo_item_menu li {
    width: calc((100% / 6) - 15px);
}

.promo_slogan_title{
    max-width: 615px;
    width: 100%;
    color: var(--color-white);
}

.promo_slogan{
    border-radius: 20px;
    overflow: hidden;
    background: var(--color-main);
    padding: 0 50px;
    height: 100%;
}

.promo_slogan_inner{
    padding: 117px 0;
}

/* section promo end */

/* section benefits */

.benefits_box{
    width: calc(100% / 2);
}
.benefits_box:not(:last-child){
    border-right: 1px solid var(--color-gray);
    padding-right: 100px;
}
.benefits_box:not(:first-child){
    padding-left: 100px;
}
.benefits_title{
    margin-top: 20px;
}
.benefits_item_title{
    color: var(--color-red);
}

/* section benefits end */

/* section products */

.products{
    overflow: hidden;
    position: relative;
}
.product_title_more{
    white-space: nowrap;
    margin-left: 10px;
}
.product_title_more:hover{
    color: var(--color-red);
}

.products_wrapper{
    margin-top: 20px;
    padding: 3px 0;
}

.product_item{
    display: block;
    position: relative;
    border-radius: 30px;
    border: 1px solid var(--color-gray);
    background: var(--color-white);
    overflow: hidden;
    height: 100%;
}
.product_item a{
	display: flex;
    flex-direction: column;
    height: 100%;
}
.product_item_inner{
    padding: 20px;
    width: -webkit-fill-available;
	width: -moz-available;
	height: 100%;
}

.product_item:hover{
    border-color: var(--color-red);
}

.product_img{
    width: 100%;
    height: 340px;
    border-radius: 20px;
    overflow: hidden;
}

.product_img img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product_content{
    flex: 1;
    margin-top: 20px;
}

.product_info{
    margin-top: 10px;
}

.product_btn{
    margin-top: 10px;
}

.product_price_info{
    margin-top: 8px;
}
.price_old{
    position: relative;
    width: fit-content;
}
.price_old::before{
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    height: 1px;
    background: var(--color-grey);
}

.product_img{
    position: relative;
}

.product_img_label{
    position: absolute;
    bottom: 0;
    border-radius: 10px 10px 0px 0px;
    max-width: 300px;
    margin: 0 20px;
    width: calc(100% - 40px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 9px 0;
}

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

.swiper-pagination-bullet{
    width: 10px;
    height: 10px;
    background: var(--color-main);
}

/* section products end */

/* section history */

.history_descr{
    max-width: 1170px;
    width: 100%;
    margin-top: 50px;
}

/* section history end */

/* section partners */

.partners{
    position: relative;
    overflow: hidden;
}

.partners_swiper{
    margin-top: 20px;
}

.partner_link{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 180px;
    border-radius: 20px;
    overflow: hidden;
    background: var(--color-gray);
}

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

/* section partners end */

/* section catalog */

.catalog{
    position: relative;
    margin-top: 20px;
    padding-bottom: 40px;
}

.catalog_wrapper{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.catalog_pagination{
    gap: 20px;
}

.catalog_pagination_item{
    border-radius: 20px;
    border: 1px solid var(--color-main);
    width: 60px;
    height: 60px;
}

.catalog_pagination_item.active{
    background: var(--color-main);
    color: var(--color-white);
}

/* section catalog end */

/* section catalog element */

.breadcrumbs{
    position: relative;
    margin-top: 50px;
    margin-bottom: 20px;
}


.breadcrumbs_item_wrapper{
    display: flex;
    align-items: center;
    white-space: nowrap;
}
.breadcrumbs > .breadcrumbs_item{
    color: var(--color-red);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.breadcrumbs_item:hover{
    color: var(--color-red);
}

.gallery {
    position: relative;
    width: 100%;
    max-width: 480px;
    margin: 40px 0;
    user-select: none;
    overflow: hidden;
}
.gallery-slider {
    width: 100%;
    height: auto;
    margin: 0 0 10px 0;
    border-radius: 20px;
    overflow: hidden;
}
.gallery-slider .swiper-slide {
    width: auto;
    height: 480px;
}
.gallery-slider .swiper-slide img {
    display: block;
    width: auto;
    margin: 0 auto;
    height: 480px;
    border-radius: 20px;
    overflow: hidden;
}
.gallery-thumbs {
    width: 100%;
    padding: 0;
    overflow: hidden;
}
.gallery-thumbs .swiper-slide .gallery_thumb_item{
    width: 100px;
    height: 100px;
    text-align: center;
    overflow: hidden;
    opacity: 0.1;
    border: 1px solid var(--color-main);
    border-radius: 20px;
}
.gallery-thumbs .swiper-slide-thumb-active .gallery_thumb_item {
    opacity: 1;
}
.gallery-thumbs .swiper-slide img {
    width: auto;
    height: 100%;
}

.element_prev, .element_next{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    z-index: 5;
}
.element_prev svg path, .element_next svg path{
    fill: var(--color-red);
}
.element_prev.swiper-button-disabled svg path, .element_next.swiper-button-disabled svg path{
    fill: var(--color-grey);
}
.element_prev{
    left: 20px;
}
.element_next{
    right: 20px;
}
.element_box_wrapper{
    width: 100%;
}
.element_box_item_slider{
    min-width: 480px;
}
.element_box_descr{
    min-height: 480px;
    padding-right: 20px;
    margin: 0 20px;
    width: 100%;
    border-right: 1px solid var(--color-gray);
}

.element_title{
    margin-bottom: 10px;
}

.element_info{
    /*max-width: 400px;*/
    width: 100%;
    margin-top: 30px;
}

.element_descr{
    max-width: 700px;
    width: 100%;
    margin-top: 30px;
}

.element_price_value{
    margin-top: 10px;
}
.element_box_price{
    min-height: 480px;
    max-height: 480px;
}
.element_price{
    flex: 1;
}

.element_img{
    margin-bottom: 18px;
}
.cart_btn{
    margin-top: 20px;
}

.element_tab_header{
    margin-top: 50px;
    gap: 40px;
    margin-bottom: 20px;
}

.element_tab_item.active{
    color: var(--color-red);
    font-weight: 500;
}
.element_tab_item:hover{
    color: var(--color-red);
}

.element_tab_content_item{
    display: none;
}
.element_tab_content_item.active{
    display: block;
}

/* section catalog element end */

/* section cart */

.back_link{
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
    border: 1px solid var(--color-main);
    max-width: 340px;
    height: 60px;
    width: 100%;
    margin-top: 50px;
    cursor: pointer;
}

.cart{
    position: relative;
    margin-top: 50px;
}

.cart_title{
    color: var(--color-red);
    margin-bottom: 20px;
}
.cart_item{
    padding: 20px 0;
}
.cart_item_info{
    gap: 50px;
}
.cart_item_img{
    width: 140px;
    height: 140px;
    border-radius: 20px;
    background: var(--color-gray);
    overflow: hidden;
}
.cart_item_img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cart_item_content_title{
    color: var(--color-red);
}
.cart_item_content{
    max-width: 170px;
    width: 100%;
}
.cart_item_content_sku{
    margin-top: 10px;
    color: var(--color-main);
}

.cart_item_counter{
    gap: 10px;
}
.cart_item_counter_action{
    cursor: pointer;
}
.cart_item_counter_action svg path{
    fill: var(--color-main);
}
.cart_item_counter_action:hover svg path{
    fill: var(--color-red);
}

.cart_item_total_price{
    margin-right: 50px;
}

.cart_item_delete{
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cart_item_delete svg path{
    fill: var(--color-gray);
}
.cart_item_delete:hover svg path {
    fill: var(--color-red);
}

.cart_total{
    position: relative;
    padding: 20px 73px 20px 0;
}
.cart_total_box{
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.cart_total_checkbox input{
    display: none;
}

.cart_total_checkbox label{
    position: relative;
    padding-left: 30px;
}
.cart_total_checkbox label::before{
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    justify-content: center;
    align-items: center;
    width: 24px;
    height: 24px;
    background: var(--color-main);
    mask: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgaWQ9InRpbWVzLXNxdWFyZS1SZWd1bGFyIj4KPHBhdGggaWQ9InRpbWVzLXNxdWFyZS1SZWd1bGFyLTIiIGQ9Ik0yMy45MTQ2IDguMjg0NjlWMTUuNjI5OUMyMy45MTQ2IDIwLjE1NjYgMjAuMjQyIDIzLjkxNDYgMTUuNjI5OSAyMy45MTQ2SDguMjg0NzFDMy43NTgwMiAyMy45MTQ2IDAgMjAuMjQyIDAgMTUuNjI5OVY4LjI4NDY5QzAgMy43NTggMy42NzI2MSAwIDguMjg0NzEgMEgxNS42Mjk5QzIwLjE1NjYgMCAyMy45MTQ2IDMuNjcyNiAyMy45MTQ2IDguMjg0NjlaTTIyLjAzNTYgOC4yODQ2OUMyMi4wMzU2IDQuNjk3NTEgMTkuMTMxNyAxLjg3OSAxNS42Mjk5IDEuODc5SDguMjg0NzFDNC42OTc1MiAxLjg3OSAxLjg3OTAxIDQuNzgyOTIgMS44NzkwMSA4LjI4NDY5VjE1LjYyOTlDMS44NzkwMSAxOS4yMTcxIDQuNzgyOTMgMjIuMDM1NiA4LjI4NDcxIDIyLjAzNTZIMTUuNjI5OUMxOS4yMTcxIDIyLjAzNTYgMjIuMDM1NiAxOS4xMzE3IDIyLjAzNTYgMTUuNjI5OVY4LjI4NDY5WiIgZmlsbD0iIzEyMTYxRiIvPgo8L2c+Cjwvc3ZnPgo=") no-repeat;
    -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgaWQ9InRpbWVzLXNxdWFyZS1SZWd1bGFyIj4KPHBhdGggaWQ9InRpbWVzLXNxdWFyZS1SZWd1bGFyLTIiIGQ9Ik0yMy45MTQ2IDguMjg0NjlWMTUuNjI5OUMyMy45MTQ2IDIwLjE1NjYgMjAuMjQyIDIzLjkxNDYgMTUuNjI5OSAyMy45MTQ2SDguMjg0NzFDMy43NTgwMiAyMy45MTQ2IDAgMjAuMjQyIDAgMTUuNjI5OVY4LjI4NDY5QzAgMy43NTggMy42NzI2MSAwIDguMjg0NzEgMEgxNS42Mjk5QzIwLjE1NjYgMCAyMy45MTQ2IDMuNjcyNiAyMy45MTQ2IDguMjg0NjlaTTIyLjAzNTYgOC4yODQ2OUMyMi4wMzU2IDQuNjk3NTEgMTkuMTMxNyAxLjg3OSAxNS42Mjk5IDEuODc5SDguMjg0NzFDNC42OTc1MiAxLjg3OSAxLjg3OTAxIDQuNzgyOTIgMS44NzkwMSA4LjI4NDY5VjE1LjYyOTlDMS44NzkwMSAxOS4yMTcxIDQuNzgyOTMgMjIuMDM1NiA4LjI4NDcxIDIyLjAzNTZIMTUuNjI5OUMxOS4yMTcxIDIyLjAzNTYgMjIuMDM1NiAxOS4xMzE3IDIyLjAzNTYgMTUuNjI5OVY4LjI4NDY5WiIgZmlsbD0iIzEyMTYxRiIvPgo8L2c+Cjwvc3ZnPgo=") no-repeat;
}
.cart_total_checkbox:hover label::before{
    background: var(--color-red);
}

.cart_total_checkbox:hover label::after{
    content: '';
    position: absolute;
    left: 6px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    justify-content: center;
    align-items: center;
    width: 12px;
    height: 9px;
    background: var(--color-grey);
    mask: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDEyIDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGlkPSJjaGVjay1jaXJjbGUtUmVndWxhciI+CjxwYXRoIGlkPSJjaGVjay1jaXJjbGUtUmVndWxhci0yIiBkPSJNMTEuMzU5NCAwLjc5NzEyMUMxMS43MDExIDEuMTM4NzYgMTEuNzAxMSAxLjczNjYyIDExLjM1OTQgMi4wNzgyNkw1LjIwOTk1IDguMjI3NzNDNC44NjgzMiA4LjU2OTM2IDQuMjcwNDUgOC41NjkzNiAzLjkyODgxIDguMjI3NzNMMC4yNTYyMjggNC41NTUxM0MtMC4wODU0MDkzIDQuMjEzNDkgLTAuMDg1NDA5MyAzLjYxNTYzIDAuMjU2MjI4IDMuMjczOTlDMC41OTc4NjUgMi45MzIzNSAxLjE5NTczIDIuOTMyMzUgMS41MzczNyAzLjI3Mzk5TDQuNTI2NjkgNi4yNjMzMUw5Ljk5Mjg4IDAuNzk3MTIxQzEwLjMzNDUgMC40NTU0ODQgMTAuOTMyNCAwLjQ1NTQ4NCAxMS4yNzQgMC43OTcxMjFIMTEuMzU5NFoiIGZpbGw9IiM5RTExMjgiLz4KPC9nPgo8L3N2Zz4K") no-repeat;
    -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDEyIDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGlkPSJjaGVjay1jaXJjbGUtUmVndWxhciI+CjxwYXRoIGlkPSJjaGVjay1jaXJjbGUtUmVndWxhci0yIiBkPSJNMTEuMzU5NCAwLjc5NzEyMUMxMS43MDExIDEuMTM4NzYgMTEuNzAxMSAxLjczNjYyIDExLjM1OTQgMi4wNzgyNkw1LjIwOTk1IDguMjI3NzNDNC44NjgzMiA4LjU2OTM2IDQuMjcwNDUgOC41NjkzNiAzLjkyODgxIDguMjI3NzNMMC4yNTYyMjggNC41NTUxM0MtMC4wODU0MDkzIDQuMjEzNDkgLTAuMDg1NDA5MyAzLjYxNTYzIDAuMjU2MjI4IDMuMjczOTlDMC41OTc4NjUgMi45MzIzNSAxLjE5NTczIDIuOTMyMzUgMS41MzczNyAzLjI3Mzk5TDQuNTI2NjkgNi4yNjMzMUw5Ljk5Mjg4IDAuNzk3MTIxQzEwLjMzNDUgMC40NTU0ODQgMTAuOTMyNCAwLjQ1NTQ4NCAxMS4yNzQgMC43OTcxMjFIMTEuMzU5NFoiIGZpbGw9IiM5RTExMjgiLz4KPC9nPgo8L3N2Zz4K") no-repeat;


}

.cart_total_checkbox input:checked + label::before{
    background: var(--color-red);
}
.cart_total_checkbox input:checked + label::after {
    content: '';
    position: absolute;
    left: 6px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    justify-content: center;
    align-items: center;
    width: 12px;
    height: 9px;
    background: var(--color-red);
    mask: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDEyIDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGlkPSJjaGVjay1jaXJjbGUtUmVndWxhciI+CjxwYXRoIGlkPSJjaGVjay1jaXJjbGUtUmVndWxhci0yIiBkPSJNMTEuMzU5NCAwLjc5NzEyMUMxMS43MDExIDEuMTM4NzYgMTEuNzAxMSAxLjczNjYyIDExLjM1OTQgMi4wNzgyNkw1LjIwOTk1IDguMjI3NzNDNC44NjgzMiA4LjU2OTM2IDQuMjcwNDUgOC41NjkzNiAzLjkyODgxIDguMjI3NzNMMC4yNTYyMjggNC41NTUxM0MtMC4wODU0MDkzIDQuMjEzNDkgLTAuMDg1NDA5MyAzLjYxNTYzIDAuMjU2MjI4IDMuMjczOTlDMC41OTc4NjUgMi45MzIzNSAxLjE5NTczIDIuOTMyMzUgMS41MzczNyAzLjI3Mzk5TDQuNTI2NjkgNi4yNjMzMUw5Ljk5Mjg4IDAuNzk3MTIxQzEwLjMzNDUgMC40NTU0ODQgMTAuOTMyNCAwLjQ1NTQ4NCAxMS4yNzQgMC43OTcxMjFIMTEuMzU5NFoiIGZpbGw9IiM5RTExMjgiLz4KPC9nPgo8L3N2Zz4K") no-repeat;
    -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDEyIDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGlkPSJjaGVjay1jaXJjbGUtUmVndWxhciI+CjxwYXRoIGlkPSJjaGVjay1jaXJjbGUtUmVndWxhci0yIiBkPSJNMTEuMzU5NCAwLjc5NzEyMUMxMS43MDExIDEuMTM4NzYgMTEuNzAxMSAxLjczNjYyIDExLjM1OTQgMi4wNzgyNkw1LjIwOTk1IDguMjI3NzNDNC44NjgzMiA4LjU2OTM2IDQuMjcwNDUgOC41NjkzNiAzLjkyODgxIDguMjI3NzNMMC4yNTYyMjggNC41NTUxM0MtMC4wODU0MDkzIDQuMjEzNDkgLTAuMDg1NDA5MyAzLjYxNTYzIDAuMjU2MjI4IDMuMjczOTlDMC41OTc4NjUgMi45MzIzNSAxLjE5NTczIDIuOTMyMzUgMS41MzczNyAzLjI3Mzk5TDQuNTI2NjkgNi4yNjMzMUw5Ljk5Mjg4IDAuNzk3MTIxQzEwLjMzNDUgMC40NTU0ODQgMTAuOTMyNCAwLjQ1NTQ4NCAxMS4yNzQgMC43OTcxMjFIMTEuMzU5NFoiIGZpbGw9IiM5RTExMjgiLz4KPC9nPgo8L3N2Zz4K") no-repeat;
}

.cart_info{
    padding-top: 50px;
}

.cart_info_wrapper{
    position: relative;
    margin-top: 20px;
    gap: 20px;
}

.cart_info_box_select{
    position: relative;
}

.cart_info_box:first-child{
    max-width: 880px;
    width: 100%;
}

.cart_info_box_item:not(:last-child){
    margin-bottom: 20px;
}
.cart_info_box_item{
    gap: 20px;
}
.cart_info_box_label{
    min-width: fit-content;
}
.cart_info_item_dropdown{
    display: none;
}
.cart_info_select{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 20px;
    border: 1px solid var(--color-grey);
    background: var(--color-white);
    height: 100%;
    width: 100%;
    padding: 0 20px;
}
.cart_info_select.active{
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    border-bottom: none;
}
.cart_info_select.active svg{
    transform: rotate(180deg);
}
.cart_info_select.active + .cart_info_item_dropdown{
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 100%;
    left: 0;
    width: -webkit-fill-available;
    width: -moz-available;
    background: white;
    border-radius: 0;
    padding: 20px;
    z-index: 3;
    border: 1px solid var(--color-main);
}
.cart_info_select_title:not(:last-child){
    margin-bottom: 10px;
}
.cart_info_select_title input{
    display: none;
}

.cart_info_select_title input:checked + label::before{
    content: '';
    display: block;
    width: 11px;
    height: 11px;
    position: absolute;
    left: 2px;
    top: 50%;
    transform: translateY(-50%);
    background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20fill%3D%22none%22%3E%0A%3Cpath%20d%3D%22M2%206L5.5%209.5L11%204%22%20stroke%3D%22%23D3131A%22%20stroke-width%3D%222%22%2F%3E%0A%3C%2Fsvg%3E);
    background-position: -0.5px -1px;
    background-repeat: no-repeat;
    background-size: auto;
}
.cart_info_select_title label::after{
    content: '';
    width: 14px;
    height: 14px;
    position: absolute;
    left: 0;
    top: 50%;
    border: 1px solid var(--color-grey);
    transform: translateY(-50%);
}
.cart_info_select_title label{
    display: block;
    padding-left: 30px;
    position: relative;
}
.catalog_filter{
    display: flex;
    gap: 10px;
}
.cart_info_box_select{
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 380px;
    width: 100%;
    height: 60px;
}
.cart_info_box_select .cart_info_input{
    height: 100%;
    width: 100%;
}
.cart_info_box_select .cart_info_input input{
    border: 1px solid var(--color-main);
    height: 100%;
    width: -webkit-fill-available;
    width: -moz-available;
    padding: 0 20px;
    border-radius: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.cart_info_box_btns{
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.cart_info_box:last-child{
    max-width: 340px;
    width: 100%;

}
.cart_info_btn{
    width: 100%;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
}
.cart_info_btn._contract{
    border: 1px solid var(--color-red);
    background: transparent;
    cursor: pointer;
    color: var(--color-red);
}
.cart_info_btn._contract:hover{
    background: var(--color-red);
    color: var(--color-white);
}
.cart_info_btn._call{
    cursor: pointer;
    color: var(--color-white);
    border: 1px solid var(--color-green);
    background: var(--color-green);
}
.cart_info_btn._call:hover{
    background: transparent;
    color: var(--color-green);
}

/* section cart end */

/* section services */

.services_swiper{
    position: relative;
    margin-top: 20px;
    padding-bottom: 20px;
}
.services{
    position: relative;
}

.service_pagination{
    bottom: 0 !important;
}

.service_tab, .partner_tab{
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    cursor: pointer;
}

.service_tab:hover::after{
    background: var(--color-red);
}
.partner_tab:hover::after{
    /*background: var(--color-main);*/
}
.service_tab.active::after{
    background: var(--color-red);
}

.service_tab::after{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    opacity: 0.7;
    background: var(--color-main);
}

.partner_tab::after{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    opacity: 0.1;
    /*background: var(--color-main);*/
}



.service_tab_title{
    max-width: 240px;
    width: 100%;
    position: absolute;
    z-index: 2;
    bottom: 20px;
    left: 20px;
    color: var(--color-white);
}

.service_tab_content{
    display: none;
}
.service_tab_content.active{
    display: block;
}

.services_content{
    margin-top: 30px;
    max-width: 1180px;
}

.service_tab_content_title{
    margin-bottom: 10px;
}

/* section services end */

/* section company */

.company_slide{
    position: relative;
    margin-top: 20px;
}

.company_content{
    margin-top: 50px;
    max-width: 1180px;
}

.company_img{
    border-radius: 20px;
    overflow: hidden;
}

/* section company end */

/* section projects */

.projects{
    position: relative;
    margin-top: 50px;
}

.projects_description{
    margin-top: 10px;
    max-width: 1180px;
}
.projects_description h2{
    font-size: 40px;
}

.projects_wrapper{
    margin-top: 50px;
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, auto);
    gap: 20px;
}

.project_item{
    position: relative;
    border-radius: 20px;
    overflow: hidden;
}

.project_item::after{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0.7;
    background: linear-gradient(180deg, rgba(18, 22, 31, 0.00) 0%, #12161F 100%);
}

.project_item:hover::after{
    opacity: 0.7;
    background: linear-gradient(180deg, rgba(158, 17, 40, 0.00) 0%, #9E1128 100%);
}

.project_item_title{
    position: absolute;
    bottom: 20px;
    left: 20px;
    z-index: 2;
    max-width: 199px;
    width: 100%;
    color: var(--color-white);
}

.projects_img img{
    width: 100%;
}

/* section projects end */

/* footer */

.footer_wrapper{
    width: 100%;
}

.footer_title{
    margin-top: 10px;
}

.footer_address{
    max-width: 265px;
}
.footer_info{
    text-align: center  ;
}
.footer_info a{
    display: block;
}
.footer_info a:not(:last-child){
    margin-bottom: 3px;
}

.socials{
    margin-top: 25px;
    gap: 20px;
}

.footer_map{
    border-radius: 20px;
    background: var(--color-gray);
    width: 100%;
    height: 700px;
    overflow: hidden;
}
.footer_map iframe{
    width: 100%;
    height: 100%;
}

.footer_copyright{
    padding: 16px 0;
}

.main-menu div {
    width: 100%;
}

/* footer end */

.main-slider-6 img {
    border-radius: 20px;
}

/* buy1click */
.form-label{
    margin-top: 15px;
}
.input-box{
    display: flex;
    align-items: center;
    border: 1px solid var(--color-gray);
    margin: 5px 0;
    border-radius: 20px;
    height: 45px;
    overflow: hidden;
}
.input-box .mask{
    padding-left: 10px;
    padding-right: 5px;
    height: 100%;
    gap: 5px;
    color: var(--color-main);
    display: flex;
    align-items: center;
    background: var(--color-gray);
}
.input-box input{
    color: var(--color-main);
    padding-left: 10px;
}

.buy1click-form .form-checkbox input{
    display: none;
}

.buy1click-form .form-checkbox .checkbox{
    border: 1px solid var(--color-gray);
    width: 14px;
    height: 14px;
    display: block;
    border-radius: 3px;
    overflow: hidden;
    position: relative;
}
.buy1click-form .form-checkbox label{
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 15px;
}
.buy1click-form .form-checkbox label a:hover{
    text-decoration: underline;
}
.buy1click-form .form-checkbox label a{
    color: var(--color-red);
}
.buy1click-form .form-checkbox .checkbox svg{
    display: none;
}

.buy1click-form .form-checkbox input:checked + label .checkbox svg{
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.buy1-click-form{
    padding: 15px 10px;
    margin-top: 15px;
}

.basket-items-list-item-remove {
    max-width: 20px !important;
    min-width: 20px !important;
}

.cart-item-line {
    width: 100%;
}

.footer_info_contact b{
    font-weight: 500;
}

.footer_info_contact a{
    font-size: 19px;
}

.socials svg{
    width: inherit;
}

.buy1click-form .input-box input{
    height: 100%;
    width: 100%;
}
.header_info_item{
    position: relative;
}
.header_info_item:hover .header_info_phone_popup{
    display: block;
}
.header_info_phone_popup:hover{
    display: block;
}
.header_info_phone_popup{
    display: none;
    position: absolute;
    top: 100%;
    width: 200px;
    z-index: 10;
    background: white;
    left: 50%;
    transform: translateX(-50%);
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.1);
    padding: 18px 0px;
}

.header_info_phone_popup a{
    display: flex;
    align-items: center;
    gap: 5px;
    cursor: pointer;
    margin-left: 35px;
}
.header_info_phone_popup a:hover{
    color: var(--color-red);
}

a.project_item {
    display: block;
}

.catalog-order .basket-items-list {
    padding: 0;
}
.catalog-order .bx-soa-orderSave .btn {
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 20px;
    width: 49%;
    max-width: 200px;
    margin: 0;
    transition: 150ms linear;
    line-height: initial;
    font-size: 16px;
    background: var(--color-red);;
    border: 1px solid var(--color-red); !important;
}
.catalog-order .bx-soa-more-btn .btn {
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 20px;
    width: 49%;
    max-width: 200px;
    margin: 0;
    transition: 150ms linear;
    line-height: initial;
    font-size: 16px;
    border-radius: 10px;
    background: var(--color-red);
    border: 1px solid var(--color-red); !important;
}
.catalog-order .bx-soa-more-btn .btn-outline-secondary {
    background: #fff;
    border: 1px solid #222 !important;
    color: #222;
}
.catalog-order .bx-soa-wrapper {
    margin-bottom: 0 !important;
}
.catalog-order #bx-soa-orderSave {
    margin: 10px 0;
}
.catalog-order .main-user-consent-request-announce-link {
    font-weight: 400;
}
.catalog-order .bx-soa-more {
    margin-top: 10px !important;
}
.catalog-order .bx-soa-section.bx-selected {
    border: 1px solid var(--color-red);;
}
.catalog-order .soa-property-container {
    width: 100%;
}
.catalog-order .bx-soa-tooltip {
    width: 100%;
}
.catalog-order .bx-soa-tooltip.bx-soa-tooltip-danger .tooltip-inner {
    background: #f8d7db;
    color: #a94442;
    width: 100%;
    max-width: 100%;
    margin-bottom: 5px;
    text-align: left;
    padding: 1rem 1rem;
    border: 1px solid #f5c2c7;
    border-radius: 0.25rem;
    font-weight: 200;
    line-height: initial;
}

@import './css/media.css';