body {
    margin: 0;
    padding: 0;
    font-family: "Open Sans", sans-serif;
}

p {
    margin: 0;
    padding: 0;
}
a {
    text-decoration: none;
	
	/* Для калькулятора *
	
   /* color: inherit; */
}

.page {background: #808080;}


.phone-list { width: auto; padding: 5px; display: none; position: absolute; z-index: 8; top: 50px; right: 30%; border-radius: 10px; background: #FFFFFF; color: #000000; }
#phone-dropdown {display: flex; align-items: center; cursor: pointer;}

.number-phone a {color: #000000;}

header.header_w {
	opacity:0; position: absolute; z-index: 1; top: 0; width: 100%;
   /* background:  linear-gradient(to right, #61ab2e, #9edb48); */
}

@keyframes fadeInTop {
  from {
    opacity: 0;
    transform: translateY(-20px); /* немного сверху */
  }
  to {
    opacity: 0.9;
    transform: translateY(0);
  }
}

.header_w.animation {
	animation: fadeInTop 0.8s ease-in forwards;
}

.text_white { display: flex; width: auto;}
.text_white a, .text_white p, .text_white div {color: #FFFFFF;}

header.header_w  .hero {
    padding-bottom: 50px;
}


/* Для калькулятора */

.right-side video {
    width: 100%;
    height: 100%;
    object-fit: cover;   
}

.controller_podbor {
    margin-top: 20px;
    box-shadow: 0px 8px 7px 0 #00000012;
    position: relative;
}

.zum-center {
	display: none;
	opacity: 0;
	width: calc(100vw - 10%);
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	transform: translate(-50%, -50%);
			 }
			 
.animation {
	animation: fadeIn 0.8s ease-in forwards;
           }
		   
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translate(-50%, calc(-50% + 10px));
  }
  to {
    opacity: 1;
    transform: translate(-50%, -50%);
  }
}

.pre_nav_modified {display: flex; width: 240px;}

.account {font-size: 20px; color: #FFFFFF;}

.category {font-size: 30px; color: #000000;}

.search_modified {border: none; background: #000000;}

.social_w_m {
	display: none;
     }

nav.headers_nav {
    display: flex;
    margin-right: 30px;
    gap: 15px;
}
nav.headers_nav li {
    list-style: none;
    position: relative;
}
nav.headers_nav li a {
    color: #FFF;
}
nav.headers_nav li ul.sub_m {
    display: none;
    position: absolute;
    top: 100%;
}
nav.headers_nav li:hover ul.sub_m {
    display: block;
}
.container_w    {
    width: calc(100vw - 10%);
    margin: 0 auto;
 }
 
 /* Для главной страницы */
 
 
 .hero {
	 width: calc(100vw - 10%);
	 /*
  height: 150px;
 
  position: absolute;
  top: calc(50% - 75px);
  */
 }
 
 
 
 .buton_buy strong {

    text-align: center;
}
a.logo_w {
    max-width: 240px;
}
 .top_line {
    
    display: flex;
    align-items: center;
    padding: 5px 0;
    color: #000000; /* #FFF; */
 }
 
 
 .top_line, .container_w {
   display: flex;
   justify-content: space-between;

 }


/* Для главной страницы 
 .top_line div {
    display: flex;
    align-items: center;
 }
 
 */
 
 .top_line .lang {
    background: #fff;
    display: flex;
    align-items: center;
    flex-direction: column;
    margin-right: 15px;
    
    position: relative;

 }
 .top_line .lang a {
    display: none;
    padding:  10px;
    padding-right: 30px;
    color: #242424;
    
    
 }
 .top_line .lang a img {
    transform: rotate(0deg);
    position: inherit;
 }
 .top_line .lang a:nth-child(2) {
    box-shadow: 2px 6px 12px rgb(0 0 0 / 9%)
 }
 .top_line .lang a + a {
     border-top: 1px solid rgba(192, 192, 192, 0.479);
 }
 .top_line .lang a.active {
    display: block;
 }

 .top_line .lang img {
    position: absolute;
    right: 5px;
    top: 10px;
    transform: rotate(90deg);
 }

.wrap_area_lang {
    display: none !important;
    position: relative;
    width: 114px;
    height: 41px;
}
.top_line .lang.active {
    position: absolute;
    top: 0;
    left: 0;
}

.top_line .lang.active a {
    display: block;
}
/* ------------------------------------------- */

nav .container_w {
    display: flex;
    align-items: center;   
    border-top: 1px solid rgba(0, 0, 0, 0.279);
    padding-top: 10px;
    padding-bottom: 10px; 
    justify-content: space-between;
}
.pre_nav {
    display: grid;
    align-items: center;
    grid-template-columns: 25% 30% 45%;
    justify-content: space-between;
}
.pre_nav img {
    width: 100%;
}
.pre_nav .social_w img {
    max-width: 25px;
    border-radius: 25%;
}
.pre_nav .phone_w {
    display: flex;
    flex-direction: column;
    color: #000000; /* #FFF; */
    font-size: 15px;
    font-weight: 400;
    text-align: center;
}
nav .navigation {
    display: flex;
    align-items: center;
    justify-content: space-between;

}
nav .navigation ul li {
    list-style: none;
    display: inline-block;
    width: 100%;
}
nav .navigation ul li + li {
    margin-left: 0px;
}
.search_w {
    display: flex;
    align-items: center;    
    margin-left: 40px;
}
.search_w img {
    margin-right: 10px;
}
nav .navigation ul li a {
    text-transform: uppercase;
    font-weight: 500;
    color: #ffff;
    letter-spacing: .2px;
}
.custom_message {
    background: yellow;
    padding: 5px;
    margin-bottom: 10px;
    text-align: center;
    color: black;
    text-transform: uppercase;
    font-weight: 600;
}
span.error_span {
    background: yellow;
    margin: 0 15px;
    display: table;
    width: 96%;
    font-weight: 700;
    letter-spacing: 1px;
    font-size: 16px;
    text-align: center;
    padding: 5px 0;
    color: #000;
}
@media screen and (max-width: 1024px) {
    span.error_span {
    font-size: 11px;
    }
}
.navigation #menu {
    background-color: #ffffff00;
}
.navigation #menu .nav > li > a:hover, .navigation #menu .nav > li.open > a {
    /* background-color: #66D200; */
    border-bottom: 0px solid #66d20000;
    /* border-bottom-color: #66D200; */
}
.navigation #menu .nav > li > a {
    color:  #fff; /* #000000; */ 
}

.login_block_w .login_back {
    width: auto;
    height: auto;
    background: #ffffff00;
    box-shadow: inset 0px 0px 0px;
    border-radius: 0;
    border: none;
    color: black;
    font-family: GothamPro;
}

.position_search_w .img_search {
    background-image: url(../image/search_white.svg);
    background-repeat: no-repeat;
    height: 23px;
    width: 33px;
    border: none;
    background-color: #ffffff00;
}

.cart_blok_w .button_cart {
    width: 42px;
    height: 50px;
    border-radius: 35px;
    box-shadow: 0 0 0px 0 rgba(0, 0, 0, 0.29);
    background-color: #ffffff00;
    border: none;
    display: flex;
    justify-content: start;
    align-items: center;
}
but
.search_w  img{
 width: 18px;
}

/* ---------------------------------------- */

header .hero .container_w {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

header .hero h1 {
    color: #fff; /* #000000; */
    text-transform: uppercase;
    font-size: 96px;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}

header .hero p {
    color: #000000; /* #ffffffa9; */
    text-transform: uppercase;
    font-size: 1.5em;
    letter-spacing: 1.2px;

}

/* Для калькулятора */

.right-side {
    display: flex;
    justify-content: center;
    align-items: center;

    width: 100%; height: 100dvh/*100%*/; position: relative; z-index: -1;
    
}

.left-side {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.controller_type {
    max-width: 100%;
    display: grid;
    grid-template-columns: 25% 25% 25% 25%; /*33.3% 33.3% 33.3%; */
}

.controller_type a {
    text-align: center;
    background: #ffffff8f;
    padding: 20px 0;
    font-size: 14px;
    transition: .5s;
    cursor: pointer;
}
.controller_type a:hover {
    background: #9cda47;
    color: #242424;
}
.controller_type a.active {
    background: #9cda47;
    color: #242424;
}

.list_controller {
    background: #FFF;
    display: flex;
    justify-content: space-between;
    padding: 15px 15px;
    display: none;
    padding-bottom: 0;
}
.list_controller.active {
    display: flex;
	padding-top: 10px;
	justify-content: space-between;
	
}

.controller_pusher {
    background: #FFF;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

a.preview_result {
    background: #000000;
    color: #ffffff;
    display: flex; /* table; */
	flex: 1;
   /* padding: 15px 40px; */
   /* margin: 15px; */
   /* width: 300px; */
   /* border-radius: 40px; */
    text-transform: uppercase;
   /* transition: .5s; */
   /* margin-right: 25px; */
    /* text-align: center; */
	align-items: center;
	justify-content: center;
	margin-top: 21px;
	margin-bottom: 10px;
}

a.preview_result:hover {
    opacity: 0.8;
}

.list_controller ul {
    margin: 0;
    padding: 0;
}
.list_controller span {
    margin-bottom: 10px;
    margin-right: 10px;
    background: #E0E0E0; /*#9dda48; */
    padding: 10px;
    color: #000;
    cursor: pointer;
    border-radius: 0px; /* 5px; */
    display: table;
    width: 96%;
    position: relative;
}
.list_controller li {
    display: none;
    margin-bottom: 10px;
    margin-right: 10px;
    background: #9dda48;
    padding: 10px;
    color: #000;
    cursor: pointer;
    border-radius: 5px;
}
.list_controller li.active {
    display: block;
    position: relative;
}

.list_controller li.active::after {
    content: "";
    background-image: url(../../../../../image/site/free-icon-arrow-right-7022695.png);
    width: 16px;
    height: 16px;
    display: table;
    position: absolute;
    right: 5px;
    top: 10px;
    transform: rotate(90deg);
}
.list_controller span::after {
    content: "";
    background-image: url(../../../../../image/site/free-icon-arrow-right-7022695.png);
    width: 16px;
    height: 16px;
    display: table;
    position: absolute;
    right: 5px;
    top: 10px;
    transform: rotate(90deg);
}
.controller_pusher p {
    color: red !important;
    letter-spacing: normal !important;
    font-size: 12px !important;
    margin-left: 25px;
}

.allert {
    background: yellow;
    color: #242424;
    font-size: 17px;
    text-align: center;
    padding: 10px;
}

.allert a {
    color: blue
}

.mustpopular_w .best_row {
    display: grid;
    grid-template-columns: 25% 25% 25% 25%;
    grid-gap: 10px;
}

.mustpopular_w .best_row::after, .mustpopular_w .best_row::before {
    display: none;
}
.mustpopular_w .best_row .product_lider {
    width: 100%;
}
.section_style {
    margin-top: 100px;
	margin-left: 15px;
}
.section_style  h2 {
    font-size: 36px;
    color: #242424;
    text-transform: uppercase;
    margin-bottom: 50px;
}

.category_wrap {
    display: grid;
    grid-template-columns: 33.3% 33.3% 33.3%;
    grid-gap: 20px;
}
section.category_main {
    margin-bottom: 50px;

}
.category_main a.item {
    display: flex;
    align-items: center;
	min-width: 0;
}

.category_main .image_category {
    width: 250px;
    height: 169px;
    display: block;
    background-size: cover;
}
.category_main span.title {
    display: flex;
    font-size: 21px;
    margin-bottom: 20px;
    color: black;
    width: 100%;
    text-align: center;
    height: 100%;
    align-items: center;
    margin: 0;
    background: #e6e6e6;
    justify-content: center;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    box-shadow: 1px 4px 12px 0 #00000029;
    transition: .5s;
    cursor: pointer;

}
.category_main span.title:hover {
    background: #9cd947c2;
}

.block_buy_us {

    margin-top: 100px;
}
.text_buy_us {
    text-align: center;
}

section.section_style.news_w {
    background: #c0c0c070;
    padding: 50px 0;
}

section.section_style.review_w h2 {
    text-align: center;
}

.discp_reviews {
    font-family: inherit;
}

@media screen and (min-width: 1440px) and (max-width: 1920px) {
    .nav.nav--secondary>li>a {
        padding: 10px 5px;
    }
    .nav>li>a {

        padding: 10px 5px;
    }
	
	/* Для калькулятора */
	
	.pre_nav_modified_m {display: none;}
	
	.text_white {display: flex;
                 width: auto;
                 justify-content: space-between;
				 align-items: center;
				 }
	
	.grafik{display: flex; align-items: center;}
	
	.languages{display: flex; justify-content: space-between; align-items: center; height: auto; width: 70px;}
	
	.social_w{display: flex; align-items: center;}
	
	#phone-dropdown { display: block; }
	
	.hero { margin-top: 450px;
            margin-left: auto;
            margin-right: auto;	
			}
}

@media (min-width: 800px) and (max-width: 1367px) {
	
	/* Для калькулятора */
	
	.pre_nav_modified_m {display: none;}
	
	.text_white {display: flex;
                 width: auto;
                 justify-content: space-between;
				 align-items: center;
				 }
	
	.grafik{display: flex; align-items: center;}
	
	.languages{display: flex; justify-content: space-between; align-items: center; height: auto; width: 70px;}
	
	.social_w{
		width: 100px;
		display: flex;
		align-items: center;
		}
	
	#phone-dropdown { display: block; }
	
	.hero { margin-top: 100px; }
	.hero { margin-left: auto; }
	.hero { margin-right: auto; }
	
}



.nav--secondary {
    margin-left: 0px !important;
}
@media screen and (min-width: 1024px) and (max-width: 1650px) {
	
    .nav--secondary {
        margin-left: 0px;
    }
    nav .container_w {
        flex-direction: column;
    }
    .pre_nav {
        width: 100%;
    }
    nav .navigation {
        display: grid;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        grid-template-columns: 1fr 40px 40px 40px;
    }
    nav .navbar-collapse {
        padding-left: 0px;
    }
}

@media screen and (min-width: 1024px) and (max-width: 1400px) {
    nav .style_text_cat1, .style_text_cat {
        font-size: 18px;
    }
    nav .nav.nav--secondary>li>a {
        padding: 10px 5px;
    }
    .nav>li>a {
  
        padding: 10px 5px;
    }
    header .hero h1 {
        font-size: 66px;
    }
    .right-side img {
        width: 100%;
        height: max-content;
    }
}
@media screen and (max-width: 1024px) {
    .top_line p {
        padding-right: 20px;
        font-size: 12px;
    }
    nav .container_w {
        flex-direction: column;
    }
    .pre_nav {
        width: 100%;
        grid-template-columns: 30% 30% 40%;
    }
    .pre_nav .phone_w {
        display: flex;
        flex-direction: column;
        color: #FFF;
        font-size: 15px;
        font-weight: 400;
        text-align: right;
    }
    footer {
        position: absolute;
        z-index: 1041;
        overflow: hidden;
    }
    header .hero h1 {
        font-size: 56px;
    }
    header .hero .container_w {
        display: grid;
        grid-template-columns: 1fr;
    }
    .category_wrap {
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: 20px;
    }
    .mustpopular_w .best_row {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-gap: 10px;
    }
    .price_tax {
        display: flex;
        align-items: center;
        width: 100%;
        justify-content: space-between;
        padding: 0 10px;
    }
    .product_lider .product_price, .product_lider_last .product_price {
 
        width: 75px;
    }
    .list_controller {
        background: #FFF;
        display: none;
        grid-template-columns: 100%;
        font-size: 16px;
    }
    .right-side img {
        width: 100%;
    }
    .left-side {
        order: 2;
    }
    .right-side {
        order: 1;
    }
    .controller_pusher {
        background: #FFF;
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-direction: column;
    }
}
.list_controller .item ul.active {
    background: #FFF;
    max-height: 180px;
    overflow-y: scroll;
    position: absolute;
    width: 100%;
    z-index: 11;
    box-shadow: -4px 3px 6px 0 #0000002e;
}
.list_controller  .item {
    position: relative;
	flex: 1;
}

.list_controller  .item ul.active li {
    display: block;
    margin: 0;
    background: #FFF;
    transition: .4s;
    border-radius: 0px;
}

.list_controller .item ul.active li:hover{
    background-color: #9dda48

}


.overlay_bounce {
    position: absolute;
    background: #1d2219f2;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFF;
    font-size: 25px;
    display: none;
}
#overlay-content {
    /* ... (оставьте остальные стили контента оверлея без изменений) */
}


.loading-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 50px;
    animation: wave 2s infinite linear;
}

.dot {
    width: 10px;
    height: 10px;
    background-color: #FFF;
    border-radius: 50%;
    margin: 0 5px;
    opacity: 0.7; /* Начальная непрозрачность */
}

@keyframes wave {
    0%, 100% {
        transform: translateY(0);
    }
    20%, 60% {
        transform: translateY(-20px);
    }
    40% {
        transform: translateY(-10px);
    }
}


span.in_order_pre {
    background: yellow;
    padding: 5px 10px;
    color: #242424;
    font-weight: 799;
    /* font-family: "Open Sans', sans-serif"; */
    border-radius: 2px;
    font-size: 16px;
}

@media screen and (max-width: 768px) {	
	
header.header_w {
	width: 100%;
   /* background:  linear-gradient(to right, #61ab2e, #9edb48); */
}

.container_w {
	width: 100%;
	}
	
/* Для калькулятора */

.right-side {
	height: 100vh;
	position: static;
	background: #000000;
    }

.right-side video {
	display: flex;
    width: 100%;
    max-height: 80%;
    object-fit: contain;   
}


.zum-center {display: none;
			 height: auto;
			 width: 100%;
			 position: static;
			 transform: none;
			 }
			 
@keyframes fadeInHeight {
  from {
    height: 100vh;
  }
  to {
    height: auto;
  }
}


.grafik {display: none;}

.languages{display: flex; justify-content: space-between; align-items: center; height: auto; width: 50px; margin-left: 10px;}

.pre_nav_modified_m{display: flex;
                    width: 70px;
					align-items: center;
                    justify-content: center;
					}

 .top_line .container_w {
                    padding: 0px 15px;

                    }
					
.pre_nav_modified {display: none;}

.account {font-size: 20px;}

	
.hero {
	margin-top: 40px;
	margin-left: auto;
    margin-right: auto;
	}


.social_w {
	/*
		width: 70px;
		display: flex;
		flex-wrap: wrap;
		*/
		
		display: none;
        }
		
.social_w_m {
	display: flex;
	flex-direction: column;
	position: absolute;
	right: 0; top: 45px;
     } 

.phone-list { width: auto; padding: 5px; display: none; position: absolute; z-index: 8; top: 50px; border-radius: 10px; background: #FFFFFF; color: #000000; }
#phone-dropdown {display: flex; align-items: center; cursor: pointer;}

	
.list_controller.active {
  display: flex;
  flex-direction: column;
  padding-top: 10px;
  justify-content: space-between;
}
	
    span.in_order_pre {
        margin-left: -13px;
    }
    .controller_type {
        max-width: 100%;
        display: grid;
        grid-template-columns: 1fr;
    }
    nav.headers_nav  {
        display: none;
    }
    .pre_nav .social_w img {
        max-width: 20px;
    }
}

::after, ::before {
  -webkit-box-sizing: border-box;

  -moz-box-sizing: border-box;

  box-sizing: border-box;

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

  -moz-box-sizing: border-box;

  box-sizing: border-box;

}
элемент {
}
a.preview_result {
  color: #ffffff;
  display: flex;
  flex: 1;
 /* padding: 15px 40px;
  margin: 15px;
  width: 300px;
  border-radius: 40px; */
  text-transform: uppercase;
 /* transition: .5s;
  margin-right: 25px;
  text-align: center; */
  align-items: center;
  justify-content: center;
  /*
  margin-top: 21px;
  margin-bottom: 10px; */
  padding-top: 10px;
  padding-bottom: 10px;
}


body {
    margin: 0;
    padding: 0;

}
canvas {
    position: absolute;
    top: -6px;
    left: 0;
    z-index: 0;
    pointer-events: none;
}
