:root {
	--blue_color: #08c;
	--blue2_color: #0164C7;
	--bg_color: #F6F7F4;
	--red_color: #EB4227;
	--red_color2: #EC0000;
	--grey_color: #667;
	--grey2_color: #DEE2E6;
	--grey3_color: #D8D8D8;
	--grey4_color: #CCC;
	--olive_color: #BABD02;
	--green_color: #1ABA1A;

	--header_h_mob: 60px;

	--carousel_product_gap: 20px;
	--carousel_cat_gap: 15px;
	--product_gap: 15px;
	--cat_gap: 15px;
	--slider_arrow_width: 50px;
	--slider_arrow_width_mob: 25px;
	--useful_tips_gap: 25px;
	--useful_tips_gap_mob: 15px;

	--cat_product_list_gap: 10px;
}


html {
	height: 100%;
}

body {
	background-color: #feffef;
	
	font-family: 'Inter', sans-serif;
	font-size: 14px;
	font-weight: 400;
	
	display: block;
	margin: 0;
	overflow-x: hidden;
	
	background-repeat: no-repeat;
	background-size: 100%;
}

#page {
	overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Inter', sans-serif;
}

input, button {
	font-family: 'Inter', sans-serif;
}

.container {
	max-width: 1440px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 15px;
	padding-right: 15px;
}
@media screen and (min-width: 1470px) {
	.container {
		padding-left: unset;
		padding-right: unset;
	}
}


/* header_top */
.site_header {
	background-color: var(--blue_color);
}
/* header_top */
.site_header .container {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
}
.top_menu {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	line-height: var(--header_h_mob);
}
.site_logo_div {
	position: relative;
	width: 280px;
	max-width: min(280px, calc(100vw - 110px));
	height: var(--header_h_mob);
}
.site_logo_div a {
	width: inherit;
	max-width: inherit;
}
.site_logo_div a img {
	position: absolute;
	width: inherit;
	max-width: inherit;
	height: auto;

	z-index: 1;
}
@media screen and (max-width: 280px) {
	.site_logo_div a img {
		top: 50%;
		transform: translateY(-50%);
	}
}
@media screen and (min-width: 1140px) {
	.site_logo_div {
		flex: 0 0 25%;
		width: 100%;
		max-width: unset;
	}
}
@media screen and (min-width: 768px) {
	.site_header.fixed_mode .site_logo_div {
		flex: unset;
		width: 280px;
		max-width: min(280px, 100%);
	}
}

.search_block {
	flex-grow: 1;
	max-width: max(400px, 30%);

	display: none;
}
.product_search_form {
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
}
.product_search_form > .search-field {
	height: 40px;
	border-radius: 20px 0 0 20px;
	padding-left: 10px;
	border: unset;
	font-weight: 400;
	flex-grow: 1;

	font-size: 13px;
}
.product_search_form .btn_sbmt {
	border: unset;
	border-radius: 0 20px 20px 0;
	padding: 0 20px;
	background-color: var(--red_color);
	color: #fff;
	font-weight: 700;

	font-size: 13px;
}
.search_block button:hover {
	background-color: #38569e;
	cursor: pointer;
}
.social_nets_block {
	display: none;
	grid-template-columns: repeat(3, 40px);
	align-items: center;
	column-gap: 10px;
}
.social_nets_block .soc_icon {
	position: relative;
	display: grid;
	width: inherit;
	aspect-ratio: 1 / 1;
	align-items: center;
	justify-items: center;
}
.social_nets_block .soc_icon svg {
	position: absolute;
}
.social_nets_block .soc_icon svg:first-child {
	width: 100%;
	height: 100%;
}
.social_nets_block .soc_icon svg:last-child {
	height: 20px;
	width: auto;
}
.social_nets_block .soc_icon svg:first-child path {
	fill: #fff;
}
.social_nets_block .soc_icon svg:last-child path {
	fill: var(--blue_color);
}
.social_nets_block .soc_icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.cart_cntnr {
	position: relative;
	display: grid;
	width: 40px;
	aspect-ratio: 1 / 1;
	align-items: center;
	justify-items: center;
}
.cart_cntnr svg {
	position: absolute;
}
.cart_cntnr svg:first-child {
	width: 100%;
	height: 100%;
}
.cart_cntnr svg:last-child {
	height: 20px;
	width: auto;
}
.cart_cntnr svg:first-child path {
	fill: #fff;
}
.cart_cntnr svg:last-child path {
	fill: var(--blue_color);
}
.top_menu .header_cart:hover .cart_cntnr svg:last-child path {
	fill: #e11f26;
}


.middle_menu {
	display: none;
	justify-content: flex-end;
	align-items: center;
	column-gap: 15px;
	height: var(--header_h_mob);
	line-height: var(--header_h_mob);
}
.middle_menu a.tel_block {
	font-size: 13px;
	text-decoration: unset;
	font-weight: 700;
	color: #fff;
	border: 1px solid #fff;
	border-radius: 20px;
	line-height: 1.25;
	height: fit-content;
	padding: 11px 15px;

	-webkit-transition: all .25s ease-out;
    -moz-transition: all .25s ease-out;
    -o-transition: all .25s ease-out;
    -ms-transition: all .25s ease-out;
    transition: all .25s ease-out;
}
.middle_menu a.tel_block span {
	font-size: 12px;
	font-weight: 400;
}
.middle_menu a.tel_block:hover {
	background-color: #e11f26;
	color: #fff;
	border-color: #e11f26;
}
.login_block {
	display: grid;
	line-height: 1.2;
}
.login_block * {
	color: #fff;
	text-decoration: unset;
	text-transform: uppercase;
}
.login_block span:first-child {
	font-size: 11px;
	font-weight: 400;
}
.login_block span:last-child {
	font-size: 14px;
	font-weight: 700;
}
.login_block a:hover {
	color: var(--red_color);
	text-decoration: underline;
}

.bottom_menu {
	height: 25px;
	line-height: 1;
	margin-left: auto;
	margin-right: auto;

	display: none;
}
body.main_page .bottom_menu, body.category_page .bottom_menu {
	margin-left: 25%;
	margin-right: unset;
}
.bottom_menu ul {
	margin: unset;
	padding: unset;
	list-style: unset;
	display: flex;
	column-gap: 15px;
}
.bottom_menu ul > li {
	display: block;
}
.bottom_menu ul > li > a {
	text-decoration: unset;
	font-size: 14px;
	font-weight: 400;
	color: #fff;
}
.bottom_menu > ul > li:hover > a {
	color: #e11f26;
	background-color: #ffffff80;
	box-shadow: 0 0 5px #fff;
}
/* For mob version */
@media screen and (min-width: 992px) {
	.search_block {
		display: block;
	}
	.social_nets_block {
		display: grid;
	}
	.middle_menu {
		display: flex;
	}
	.bottom_menu {
		display: block;
	}
}


.burger_menu {
	display: none;
	position: absolute;
	width: 23px;
	height: 23px;
	right: 0;
	align-items: center;
	cursor: pointer;
}
.menu_mob {
	display: none;
	position: absolute;
	width: calc(100% + 30px);
	height: auto;
	left: -15px;
	top: var(--header_h_mob);
	max-height: calc(100vh - var(--header_h_mob));
	overflow-x: hidden;
	overflow-y: auto;
	transform-origin: top;
	transform: rotatex(90deg);

	-webkit-transition: all .25s ease-out;
	-moz-transition: all .25s ease-out;
	-o-transition: all .25s ease-out;
	-ms-transition: all .25s ease-out;
	transition: all .25s ease-out;
}
.burger_menu.unfolded + .menu_mob {
	transform: rotatex(0deg);
}
.menu_mob ul {
	display: grid;
	list-style: none;
	margin: unset;
	padding: 0;
	background-color: var(--blue_color);
}
.menu_mob ul ul {
	overflow: hidden;
}
.menu_mob ul li {
	display: list-item;

	border-top: 1px solid #fff;
}
@media screen and (min-width: 992px) {
	.menu_mob > ul > li {
		border-top: unset;
	}
}
.menu_mob > ul > li:first-child {
	border-top: unset;
}
.menu_mob ul li > a, .bottom_menu .category_tree li > a {
	text-decoration: unset;
	display: block;
	font-size: 1rem;
	color: #000;
	padding: 20px 15px /*!important*/;
	line-height: 1.25;

	-webkit-transition: all .25s ease-out;
	-moz-transition: all .25s ease-out;
	-o-transition: all .25s ease-out;
	-ms-transition: all .25s ease-out;
	transition: all .25s ease-out;

	position: relative;
}
.menu_mob ul li > a {
	color: #fff
}
.menu_mob .parent > a:after {
	display: none !important;
}
.menu_mob .parent {
	position: relative;
}
.menu_mob .arrow_down {
	position: absolute;
	top: 0;
	right: 0;
	height: 55px;
	cursor: pointer;
}
.menu_mob .parent > .arrow_down:after {
	content: '';
	position: absolute;
	height: 25px;
	aspect-ratio: 5 / 8;
	top: 0;
	bottom: 0;
	right: 5px;
	margin-top: auto;
	margin-bottom: auto;
	-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path d="M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z"></path></svg>') no-repeat 50% 50%;
	mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path d="M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z"></path></svg>') no-repeat 50% 50%;
	-webkit-mask-size: cover;
	mask-size: cover;
	background-color: #fff;

	transform-origin: 50% 50%;
	transform: rotateZ(90deg);

	cursor: pointer;

	-webkit-transition: transform .3s ease-out;
	-moz-transition: transform .3s ease-out;
	-o-transition: transform .3s ease-out;
	-ms-transition: transform .3s ease-out;
	transition: transform .3s ease-out;
}
.menu_mob .parent > .arrow_down.opened:after {
	transform: rotateZ(-90deg);
}
.menu_mob .parent:hover > .arrow_down:after {
	background-color: #fff;
}
.menu_basket a {
	padding-top: 10px;
	padding-bottom: 10px;
}
.menu_basket .cart_cntnr svg:last-child path {
	fill: var(--blue_color);
}
@media screen and (max-width: 991.9px) {
	/* header_top */
	.site_header {
		position: fixed;
		width: 100%;
		box-shadow: 0 3px 7px var(--grey_color);
		z-index: 9;
	}
	.hero_section {
		margin-top: var(--header_h_mob);
	}
	.top_menu {
		position: relative;
		padding-right: 40px;
	}

	.burger_menu {
		display: flex;
	}
	.burger_menu:before {
		content: '';
		position: absolute;
		display: inline-block;
		top: 3px;
		left: 0;
		width: inherit;
		height: 2px;
		background-color: #000;
		transform-origin: left;
	}
	.burger_menu:after {
		content: '';
		position: absolute;
		display: inline-block;
		left: 0;
		bottom: 3px;
		width: inherit;
		height: 2px;
		background-color: #000;
		transform-origin: left;
	}
	.burger_menu span {
		position: absolute;
		display: inline-block;
		width: inherit;
		height: 2px;
		background-color: #000;
		transform-origin: center;
	}
	.burger_menu span, /*.burger_menu span:before, .burger_menu span:after*/ .burger_menu:before, .burger_menu:after {
		-webkit-transition: all .3s ease-out;
		-moz-transition: all .3s ease-out;
		-o-transition: all .3s ease-out;
		-ms-transition: all .3s ease-out;
		transition: all .3s ease-out;
	}
	.menu_mob {
		display: block;
		box-shadow: 0 3px 7px var(--grey_color);
	}
	body:not(.main_page):not(.with_hero_img) #main_content {
		margin-top: var(--header_h_mob);
	}
	.burger_menu.unfolded span {
		transform: rotateY(90deg);
	}
	.burger_menu.unfolded:before {
		transform: rotate(42deg);
	}
	.burger_menu.unfolded:after {
		transform: rotate(-42deg);
	}

	.menu_mob .parent a:after {
		height: 20px !important;
		transform: rotateZ(90deg);
	}
	.site_header.fixed_mode .menu_mob .parent:hover > a:after {
		background-color: #fff;
	}

	.menu_mob ul li:hover > a {
		background-image: linear-gradient(90deg, #08c, #4266bb 25% 75%, #08c) !important;
	}
}
@media screen and (min-width: 992px) {
	.site_header.fixed_mode {
		position: fixed;
		width: 100%;
		box-shadow: 0 3px 7px var(--grey_color);
		z-index: 9;
	}
	.site_header.fixed_mode .search_block, .site_header.fixed_mode .social_nets_block, .site_header.fixed_mode .header_cart, .site_header.fixed_mode .middle_menu, .site_header.fixed_mode .bottom_menu {
		display: none;
	}
	.site_header.fixed_mode .menu_mob {
		display: block;
		transform: unset;
		left: unset;
		max-height: unset;
		width: fit-content;
		position: relative;
		top: unset;
		line-height: var(--header_h_mob);
		height: unset;
	}
	.site_header.fixed_mode .menu_mob > ul {
		grid-auto-flow: column;
		background-color: unset;
		gap: 15px;
		line-height: var(--header_h_mob);
	}
	.site_header.fixed_mode .menu_mob .parent > ul {
		box-shadow: 2px 2px 5px #000;
	}
	.site_header.fixed_mode .menu_mob ul li {
		line-height: 1.25;
	}
	.site_header.fixed_mode .menu_mob ul li > a {
		padding: 10px 19px 10px 10px;
	}
	.site_header.fixed_mode .menu_mob > ul > li > a {
		padding: unset;
		line-height: var(--header_h_mob);
		color: #fff;
	}
	.site_header.fixed_mode .menu_mob > ul > li > a:after {
		background-color: #fff;
		transform: rotateZ(90deg);

		-webkit-transition: transform .3s ease-out;
		-moz-transition: transform .3s ease-out;
		-o-transition: transform .3s ease-out;
		-ms-transition: transform .3s ease-out;
		transition: transform .3s ease-out;
	}
	.site_header.fixed_mode .menu_mob > ul > li:hover > a:after {
		transform: rotateZ(-90deg);
	}
	/*.site_header.fixed_mode .menu_mob ul li.menu_basket > a .cart_cntnr*/
	.site_header.fixed_mode .menu_basket .cart_cntnr {
		height: var(--header_h_mob);
	}
	.site_header.fixed_mode .menu_basket .cart_cntnr svg:last-child path {
		fill: var(--blue_color);
	}
	.site_header.fixed_mode .menu_basket:hover .cart_cntnr svg:last-child path {
		fill: #e11f26;
	}
	.site_header.fixed_mode .menu_mob {
		overflow: visible;
	}
	.site_header.fixed_mode .menu_mob > ul > li:hover > a {
		color: #e11f26;
		text-shadow:  0 1px 0px #fff, 1px 0 0px #fff, -1px 0px 0px #fff, 0px -1px 0px #fff;
	}
	.site_header.fixed_mode .menu_mob > ul > li:hover > ul {
		visibility: visible;
		opacity: 1 !important;
	}
	.site_header.fixed_mode .menu_mob > ul > li:hover .category_tree {
		visibility: visible;
		opacity: 1 !important;
		overflow: visible;
	}
	.menu_product_cats .parent > ul {
		position: absolute;
	}
	.site_header.fixed_mode .category_tree {
		display: grid !important;
		visibility: hidden;
		opacity: 0;
	}
	.site_header.fixed_mode .parent:hover > ul.on_left_side {
		transform: translateX(-100%) perspective(200px) rotateY(0deg) !important;
	}
	.site_header.fixed_mode .menu_mob ul ul {
		border-radius: unset;
	}
	.menu_mob .parent:hover > ul {
		display: grid !important;
		overflow: visible;
	}
	.menu_mob .parent > a:after {
		display: grid !important;
	}
	.menu_mob .parent > .arrow_down:after {
		content: none;
	}
}


/* site_header */
.hero_section .container {
	display: grid;
	grid-template-columns: 100%;

	margin-right: unset;
	padding-right: unset;
	width: 100%;
	max-width: 100%;
	padding-left: unset;

	min-height: 500px;
}
.hero_section.hero_img .container {
	display: block;
	margin: unset;
	width: 100%;
	max-width: 100%;
}
.hero_section.hero_img .img_item {
	display: block;
	width: inherit;
	height: inherit;
	min-height: inherit;
}
.hero_section.hero_img .img_item img {
	display: block;
	width: inherit;
	height: inherit;
	min-height: inherit;
	object-fit: cover;
	object-position: 50% 50%;
}
.hero_section .header_leftside .catalog_block {
	padding-right: 14px;
}
.hero_section .header_leftside .categories_list {
	grid-template-columns: unset;
}
@media screen and (min-width: 768px) {
	/* site_header */
	.hero_section .container {
		grid-template-columns: max(200px, calc((100% - 30px)*0.2)) auto;
		width: calc(100vw - 15px);  /* calc(100% - 15px) */
		max-width: calc(100vw - 15px);  /* calc(100% - 15px) */
	}
	
	.title_block h2 {font-size: 2.2em !important;}
}
@media screen and (min-width: 1470px) {
	/* site_header */
	.hero_section .container {
		width: calc(100% - (100% - 1440px)*0.5);
		max-width: calc(100% - (100% - 1440px)*0.5);
		grid-template-columns: 288px auto;
	}
}


.title_block {
	display: inline-block;
	width: 100%;
}
.title_block h1 {
	font-size: 2.5em;
	font-weight: 400;
	text-align: center;
	color: #000;

	margin-top: .83em;
	margin-bottom: .83em;
}
.title_block h2 {
	font-size: 1.2em;
	font-weight: 400;
	text-align: center;
	color: #000;

	margin-top: .83em;
	margin-bottom: .83em;
}
.children_goods_top_cats .title_block {
	position: relative;
	display: flex;
	background-color: var(--blue_color);
}
.children_goods_top_cats .title_block h2, .useful_tips .title_block h2 {
	color: #fff;
	font-weight: 700;
}
.popular_toys .title_block span, .actuality_home_goods .title_block span, .promotions_block .title_block h2, .product_cat .title_block h2, .product_cat .title_block h1, .often_buy_prods .title_block h2, .popular_cats .title_block span {
	color: var(--blue_color);
	font-weight: 700;
}
.promotions_block .title_block span {
	color: var(--red_color);
}


.promotion_banner {
	margin-bottom: 36px;
}
.promotion_banner .banner_cntnr {
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	min-height: 125px;
	align-items: center;
	background-image: linear-gradient(90deg, var(--blue_color), var(--blue2_color));
	border-radius: 10px;
	color: #fff;

	padding-left: 15px;
	padding-right: 15px;
	gap: 15px;

	flex-wrap: wrap;
	padding-top: 15px;
	padding-bottom: 15px;
}
.promotion_banner .goods_for_little {
	text-transform: uppercase;
	font-size: 2em;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
}
.promotion_banner .goods_for_little br {
	display: none;
}
.promotion_banner .img_block {
	min-height: inherit;
	width: 100%;
	min-width: 20%;
	background-image: url(images/discounts_30_img.webp);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	flex-grow: 1;
}
.promotion_banner .discounts_30 {
	font-size: 3em;
	font-weight: 800;
	line-height: 1.2;
	transform: rotateZ(-1.57deg);
	text-align: center;

	width: 100%;
}
.promotion_banner .buy_today {
	font-size: 2em;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
}
.promotion_banner .details_btn {
	text-decoration: unset;
	text-transform: uppercase;
	color: #000;
	font-size: .875em;
	font-weight: 600;
	letter-spacing: 0;
	background-color: #fff;
	padding: 10px 20px;
	border-radius: 5px;
}
@media screen and (min-width: 576px) {
	.promotion_banner .goods_for_little br {
		display: inline;
	}
	.promotion_banner .img_block {
		width: 20%;
	}
}
@media screen and (min-width: 992px) {
	.promotion_banner .banner_cntnr {
		padding-top: unset;
		padding-bottom: unset;
		flex-wrap: nowrap;
	}
	.promotion_banner .discounts_30 {
		width: auto;
	}
}


.colored_ribbon {
	width: 100%;
	height: 80px;
	background-color: var(--blue_color);
}
.colored_ribbon.is_text {
	display: grid;
	align-items: center;
	min-height: 80px;
	height: fit-content;
}
.text_with_icon {
	display: grid;
	grid-template-columns: auto auto;
	justify-content: center;
	align-items: center;
	column-gap: 10px;
	margin-top: 15px;
	margin-bottom: 15px;
}
.text_with_icon svg {
	width: 30px;
	height: auto;
}
.text_with_icon span {
	font-size: 1.25em;
	font-weight: 400;
	color: #fff;
}

.site_footer a, .site_footer p {
	color: var(--grey_color);
}
.site_footer a {
	text-decoration: unset;
}
.site_footer a:hover {
	color: var(--red_color);
}
.footer_widgets .container {
	display: flex;
	border-bottom: 1px solid var(--grey2_color);
	width: fit-content;
	justify-content: center;
	gap: 15px;
	padding-bottom: 2em;

	flex-direction: row;
	flex-wrap: wrap;
}
.fi_title {
	color: #000;
	font-size: 18px;
	font-weight: 700;
	margin-block-start: 2em;
	margin-block-end: 2em;
}
.footer_menu {
	list-style: none;
	margin: unset;
	padding: unset;

	display: flex;
	flex-direction: column;
	row-gap: 15px;
}
/*.site_info {
	text-align: center;
}*/
.site_info .container {
	display: inline-block;
	width: -webkit-fill-available;

	text-align: center;
	margin-top: 2em;
	margin-bottom: 2em;
}
.site_info .container p {
	margin-top: unset;
	margin-bottom: unset;
}
.subscribe_block {
	max-width: 100%;
}
.subscribe_form {
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
}
.subscribe_form > .email-field {
	border-radius: 7px 0 0 7px;
    padding: 10px 0 10px 10px;
    border: unset;
    font-weight: 400;
    font-size: 12px;
    background-color: #EDF0F7;
}
.subscribe_form .btn_sbmt {
	border: unset;
	border-radius: 0 7px 7px 0;
	padding: 0 7px;
	background-color: var(--red_color2);
	color: #fff;
	font-weight: 400;
	font-size: 12px;
	text-transform: uppercase;
	cursor: pointer;
}
.footer_menu.contacts_block {
	color: #000;
}
.phone_block a {
	font-weight: 700;
	color: #016BC8;
	margin-left: 5px;
}
.schedule_block span:last-child {
	margin-left: 5px;
	color: var(--grey_color);
}
.email_block a {
	margin-left: 5px;
}
.footer_menu.social_block {
	display: grid;
	grid-template-columns: repeat(3, 35px);
	gap: 10px;
}
.footer_menu.social_block .soc_icon {
	position: relative;
	display: grid;
	width: inherit;
	aspect-ratio: 1 / 1;
	justify-items: center;
	align-items: center;
}
.footer_menu.social_block .soc_icon svg {
	position: absolute;
}
.footer_menu.social_block .soc_icon svg:first-child {
	width: 100%;
	height: 100%;
}
.footer_menu.social_block .soc_icon svg:last-child {
	height: 15px;
	width: auto;
}
.footer_menu.social_block .soc_icon svg:first-child path {
	fill: #EDF0F7;
}
.footer_menu.social_block .soc_icon svg:last-child path {
	fill: #000;
}
.footer_item.footer_soc .footer_menu:not(:last-child) {
	margin-bottom: 2em;
}
.footer_menu.social_block .soc_icon img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
}
.footer_item {
	flex: 0 0 calc(50% - 8px);
	max-width: calc(50% - 8px);
}
@media screen and (min-width: 576px) {
	.footer_item {
		flex: 0 0 calc((100% - 30px)/3);
		max-width: calc((100% - 30px)/3);
	}
}
.footer_item.footer_soc {
	flex: 0 0 auto;
	max-width: fit-content;
}
@media screen and (min-width: 1140px) {
	.footer_item {
		flex: 0 0 calc((100% - 60px)/5) !important;
		max-width: calc((100% - 60px)/5) !important;
	}
}
.site_name {
	color: #e11f26;
	font-weight: 700;
}


.slider_block {
	position: relative;
	width: 100%;
	max-width: 100%;
	height: 100%;
}
.carouselc_cntnr {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: calc(100% / 6);
	width: 100%;
	scroll-behavior: smooth;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: 0;
}
@media screen and (max-width: 768px) {
	.slide_title {font-size:0.7em !important}
	
	.carouselc_cntnr {}
}
.slider_block.hero_block .carouselc_cntnr {
	grid-auto-columns: 100%;

	height: 100%;
}
.slider_block.hero_block .slide_img_cntnr {
	height: 100%;
	max-height: 100%;
	overflow: hidden;
}
.slider_block.hero_block .slide_img_cntnr img {
	object-fit: cover;
	object-position: 50% 50%;
	max-height: 100%;

	width: 100%;
}
.carouselc_cntnr.products_list {
	width: calc(100% - 2*var(--slider_arrow_width) - 1px);
	margin-left: auto;
	margin-right: auto;

	grid-auto-columns: calc((100% - var(--carousel_product_gap)) / 2);
	column-gap: var(--carousel_product_gap);
}
.carouselc_cntnr::-webkit-scrollbar {
	display: none;
}
.carouselc_cntnr.no_transition {
	scroll-behavior: auto;
}
.carouselc_cntnr.dragging {
	scroll-snap-type: none;
	scroll-behavior: auto;
}
@media screen and (min-width: 768px) {
	.carouselc_cntnr.products_list {
		grid-auto-columns: calc((100% - 2*var(--carousel_product_gap)) / 3);
	}
}
@media screen and (min-width: 992px) {
	.carouselc_cntnr.products_list {
		grid-auto-columns: calc((100% - 3*var(--carousel_product_gap)) / 4);
	}
}
@media screen and (min-width: 1140px) {
	.carouselc_cntnr.products_list {
		grid-auto-columns: calc((100% - 5*var(--carousel_product_gap)) / 6);
	}
}
.carouselc_cntnr .slide_item {
    grid-template-rows: min-content auto;
    display: flex;
    flex-direction: column;
    /*height: 100%;*/
    
    scroll-snap-align: start;
    
    border: none;
    background-color: unset;
}
.slider_prev, .slider_next {
	position: absolute;
	display: flex;
	top: 50%;
	bottom: 0;
	transform: translateY(-50%);
	align-items: center;
	justify-content: center;
	cursor: pointer;

	height: var(--slider_arrow_width);
	aspect-ratio: 1 / 1;
}
.slider_prev {
	left: 0;
}
.slider_next {
	right: 0;
}
.slider_prev svg, .slider_next svg {
	height: inherit;
}
.slider_prev path, .slider_next path {
	fill: var(--grey3_color);
}
.slider_block.hero_block .slider_prev path, .slider_block.hero_block .slider_next path {
	fill: #fff;
	opacity: 45%;
}
@media screen and (max-width: 576px) {
	.all_categories .container, .popular_toys .container, .actuality_home_goods .container, .promotions_block .container {
		padding-left: unset;
		padding-right: unset;
	}
	.slider_block:not(.hero_block) .slider_prev, .slider_block:not(.hero_block) .slider_next {
		height: var(--slider_arrow_width_mob);
	}
	.carouselc_cntnr.products_list {
		width: calc(100% - 2*var(--slider_arrow_width_mob));
	}
}
.slide_img_cntnr {
	max-width: 100%;
	/*height: 200px;*/
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f8f9fa;
	/*border-radius: 8px;*/
	overflow: hidden;
}
.slide_img_cntnr img {
	max-width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

/*.slide_item*/
.product_item {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-items: center;
	text-align: center;
	border: 1px solid var(--grey4_color) !important;
	border-radius: 12px;
	background-color: #fff !important;
	padding: 15px 7px 7px 7px;

	-webkit-transition: all .25s ease-out;
	-moz-transition: all .25s ease-out;
	-o-transition: all .25s ease-out;
	-ms-transition: all .25s ease-out;
	transition: all .25s ease-out;
}
.product_item .product_link_img {
	flex-grow: 5;
	align-content: center;
}
.product_item:hover {
	    filter: drop-shadow(2px 4px 6px grey);
}
/*.slide_item*/
.product_item .product_link {
	text-decoration: none;
	position: relative;
	display: block;
}
/*.slide_item*/
.product_item /*.slide_title*/.product_title {
	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;
	color: #000;
	text-align: center;

	word-break: break-word;
}
/*.slide_item*/
.product_item .slide_img_cntnr img {
	object-fit: contain;
	object-position: center;
}
/*.slide_item*/
.product_item .product_discount {
	margin-top: auto;
}
/*.slide_item*/
.product_item .product_discount:not(.is_empty) {
	display: grid;
	justify-content: center;
	align-items: center;
	height: fit-content;
	padding: 5px 9px;
	margin: auto 15px 0 auto;
	border-radius: 8px;
	font-size: 11px;
	font-weight: 600;
	line-height: 1;
	color: #fff;
	background-color: var(--red_color);
}
/*.slide_item*/
.product_item .add_to_cart_btn {
	display: grid;
	width: 100%;
	height: fit-content;
	padding: 7px 5px;
	box-sizing: border-box;
	margin: unset;
	border: 1px solid var(--grey4_color);
	border-radius: 8px;
	justify-content: center;
	align-items: center;
	align-self: end;
	line-height: 1.2;
	font-size: 1rem;
	font-weight: 400;
	text-transform: uppercase;
	color: #f00;
	cursor: pointer;
}
.add_to_cart_btn {
	-webkit-transition: all .25s ease-out;
	-moz-transition: all .25s ease-out;
	-o-transition: all .25s ease-out;
	-ms-transition: all .25s ease-out;
	transition: all .25s ease-out;
}
.add_to_cart_btn:hover {
	background-color: var(--red_color) !important;
	color: #fff !important;
	border-color: var(--red_color) !important;
}
.product_prices {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	column-gap: 10px;
	margin: 10px 0;
}
.product_retail_price {
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.5;
	margin: unset;
	color: #000;
}
.product_retail_price.discount_price {
	color: var(--red_color);
}
.product_retail_price.old_price {
	font-size: .75rem;
	color: var(--grey_color);
	text-decoration: line-through;
}

.more_btn {
	text-align: center;
}
.more_btn a {
	text-decoration: unset;
	color: #fff;
	background-color: var(--red_color2);
	padding: 7px 15px;
	border-radius: 5px;
}
.more_btn a:hover {
	box-shadow: 0px 0px 7px #000;
}

.useful_tips {
	margin-top: 36px;
	margin-bottom: 36px;
}
.additional_inside_block {
	position: relative;
	display: block;
	background-color: var(--blue_color);
	border-radius: 10px;
	padding: 1em 2em 2em;
	max-height: 589px;
    overflow: hidden;
}
.useful_tips .title_block h2 {
	margin-top: unset;
}
.useful_tips .content_inside_block {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;

	width: 100%;
	gap: var(--useful_tips_gap_mob);
}
.tip_item {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-items: center;
	text-align: center;
	background-color: #fff;
	border-radius: 10px;

	flex: 0 0 calc((100% - var(--useful_tips_gap_mob)) / 2);
	max-width: calc((100% - var(--useful_tips_gap_mob)) / 2);
}
@media screen and (min-width: 576px) {
	.additional_inside_block {
		padding: 2em 3em 3em;
	}
	.useful_tips .content_inside_block {
		gap: var(--useful_tips_gap);
	}
	.tip_item {
		flex: 0 0 calc((100% - var(--useful_tips_gap)) / 2);
		max-width: calc((100% - var(--useful_tips_gap)) / 2);
	}
}
@media screen and (min-width: 768px) {
	.tip_item {
		flex: 0 0 calc((100% - 2*var(--useful_tips_gap)) / 3);
		max-width: calc((100% - 2*var(--useful_tips_gap)) / 3);
	}
}
@media screen and (min-width: 992px) {
	.tip_item {
		flex: 0 0 calc((100% - 4*var(--useful_tips_gap)) / 5);
		max-width: calc((100% - 4*var(--useful_tips_gap)) / 5);
	}
}
.tip_item .item_img_cntnr {
	width: 100%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}
.tip_item .item_img_cntnr img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
	border-radius: 10px 10px 0 0;
}
.tip_desc {
	display: grid;
	gap: 1em;
	padding: 1.33em 10px 1em 10px;
	height: 100%;
	align-content: space-between;
}
.tip_link {
	text-decoration: unset;
}
.tip_link .tip_title {
	font-size: 1em;
	line-height: 1.5;
	font-weight: 700;
	color: #000;
}
.tip_date {
	font-size: 0.9em;
	font-weight: 400;
	line-height: 1.5;
	color: var(--grey_color);
}


.all_categories .container {
	padding-top: 2.5em;
}
.carouselc_cntnr.categories_list {
	width: calc(100% - 2*var(--slider_arrow_width));
	margin-left: auto;
	margin-right: auto;
	gap: var(--carousel_cat_gap);

	grid-auto-columns: calc((100% - 3*var(--carousel_cat_gap)) / 4);

	grid-template-columns: unset;
}
.carouselc_cntnr.categories_list a .slide_img_cntnr {
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-o-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
.carouselc_cntnr.categories_list a:hover .slide_img_cntnr {
	background-color: var(--red_color);
}
@media screen and (max-width: 576px) {
	.carouselc_cntnr.categories_list {
		width: calc(100% - 2*var(--slider_arrow_width_mob)); 
	}
}
@media screen and (min-width: 768px) {
	.carouselc_cntnr.categories_list {
		grid-auto-columns: calc((100% - 5*var(--carousel_cat_gap)) / 6);
	}
}
@media screen and (min-width: 992px) {
	.carouselc_cntnr.categories_list {
		grid-auto-columns: calc((100% - 7*var(--carousel_cat_gap)) / 8);
	}
}
@media screen and (min-width: 1140px) {
	.carouselc_cntnr.categories_list {
		grid-auto-columns: calc((100% - 11*var(--carousel_cat_gap)) / 12);
	}
}
/*.slide_item*/.category_item {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: start;
	align-items: center;
	text-decoration: unset;
	gap: 10px;
}
/*.slide_item*/.category_item .slide_img_cntnr {
	position: relative;
	width: calc(100% - 2px);
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;

	background-color: #52C4FF;
}
/*.slide_item*/.category_item.category_new .slide_img_cntnr {
	background-color: var(--olive_color);
}
/*.slide_item*/.category_item.category_sale .slide_img_cntnr {
	background-color: #FC343B;
}
/*.slide_item*/.category_item.category_toysforboys .slide_img_cntnr, /*.slide_item*/.category_item.category_toysforgirls .slide_img_cntnr, /*.slide_item*/.category_item.category_inflatableprods .slide_img_cntnr {
	background-color: #52C4FF;
}
/*.slide_item*/.category_item.category_swingsslidesplaycenters .slide_img_cntnr, /*.slide_item*/.category_item.category_forlittleones .slide_img_cntnr {
	background-color: #31C9FD;
}
/*.slide_item*/.category_item.category_softtoys .slide_img_cntnr {
	background-color: #61C7F2;
}
/*.slide_item*/.category_item.category_sportgoods .slide_img_cntnr {
	background-color: #44C1FB;
}
/*.slide_item*/.category_item.category_summergoods .slide_img_cntnr {
	background-color: #00BEFF;
}
/*.slide_item*/.category_item.category_childtransport .slide_img_cntnr, /*.slide_item*/.category_item.category_devgames .slide_img_cntnr {
	background-color: #00CCFF;
}
/*.slide_item*/.category_item .slide_img_cntnr .category_img {
	display: block;
	width: 55%;
	aspect-ratio: 1 / 1;
	fill: #fff;
}
/*.slide_item*/.category_item .slide_img_cntnr img.category_img {
	height: 55%;
}
/*.slide_item*/.category_item .slide_title, .category_item .category_title {
	font-size: 0.9em;
	font-weight: 700;
	line-height: 1.3;
	color: #000;
	text-align: center;
	word-break: break-word;
}
.all_categories .slider_prev path, .popular_cats .slider_prev path {
	fill: var(--olive_color);
}
.all_categories .slider_next path, .popular_cats .slider_next path {
	fill: #00CCFF;
}
.all_categories .slider_prev, .all_categories .slider_next {
	height: var(--slider_arrow_width);
}
@media screen and (max-width: 300px) {
	.all_categories .slider_prev, .all_categories .slider_next {
		height: var(--slider_arrow_width_mob);
	}
	.carouselc_cntnr.categories_list {
		width: calc(100% - 2*var(--slider_arrow_width_mob));
	}
}


.header_leftside {
	position: relative;
	background-color: #feffef;
	display: none;
}
/*.header_rightside {
	width: 100vw;
	margin-left: -15px;
}*/
@media screen and (min-width: 768px) {
	.header_leftside {
		display: block;
	}

	/*.header_rightside {
		width: 100%;
		margin-left: unset;
	}*/
}
.catalog_block {
	position: relative;
}
.catalog_block ul {
	list-style: none;
	padding: unset;
	background-color: #FCF8FF;
}
.catalog_block .title_block {
	position: absolute;
	display: grid;
	width: 100%;
	justify-content: center;
	line-height: 1;
	top: 0;
	transform: translateY(calc(-100% - .5em));
	color: #fff;
	height: 22px;
}
body:not(.sep_page) .catalog_block .title_block span:hover {
	color: #e11f26;
	background-color: #ffffff80;
	box-shadow: 0 0 5px #fff;

	cursor: pointer;
}

.category_page .catalog_block .title_block {height: 13px !important}

.sidebar .catalog_block .title_block {
	transform: translateY(calc(-100% - 100px));
}
.title_block.bottom_title {
	position: relative;
	transform: unset !important;
	height: unset;
	line-height: 1.25;
	color: var(--blue_color);
	font-weight: 600;
}
.category_tree {
	margin-top: 1em;
	margin-bottom: 1em;
}
.category_tree li {
	position: relative;
	width: 100%;
}

.main_page .category_tree li > a {padding: 7.2px;}

.category_tree li > a {
	position: relative;
	display: block;
	text-decoration: unset;
	color: #000;
	padding: 10px;

	word-break: break-word;
}
.parent.opened > ul {
	display: block !important;
}
.parent.opened > ul > li > a {}
.parent:not(.opened) > a:after {
	content: '';
	position: absolute;
	right: 7px;
	height: 10px;
	max-height: calc(100% - 10px);
	aspect-ratio: 5 / 8;
	line-height: 1;
	display: grid;
	align-content: center;
	top: 0;
	bottom: 0;
	margin-top: auto;
	margin-bottom: auto;

	-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path d="M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z"></path></svg>') no-repeat 50% 50%;
	mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path d="M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z"></path></svg>') no-repeat 50% 50%;
	-webkit-mask-size: cover;
	mask-size: cover;
	background-color: #000;
}
.parent > a {
	padding-right: 19px !important;
}
.category_tree .parent:not(.opened) > ul {
	position: absolute;
	display: grid !important;
	left: 100%;
	top: 0;
	width: max-content;
	max-width: min(200px, 90vw);
	z-index: 5;
	box-shadow: 2px 2px 5px #000;

	border-radius: 0 7px 7px 0;

	transform-origin: left center;
	transform: rotateY(90deg);
	-webkit-transition: transform .3s ease-out;
    -moz-transition: transform .3s ease-out;
    -o-transition: transform .3s ease-out;
    -ms-transition: transform .3s ease-out;
    transition: transform .3s ease-out;
}
.category_tree .parent:not(.opened):hover > ul {
	transform: perspective(200px) rotateY(0deg);
}
.category_tree li:hover > a /* .category_tree li:not(.opened):hover > a */ {
	background-image: linear-gradient(90deg, var(--red_color2) 0 100%) !important;
	box-shadow: 1px 1px 3px #838383;
	color: #fff !important;
}
.category_tree li:hover > a > span {
	color: #fff !important;
}
.category_tree li:not(.opened):hover > a:after {
	background-color: #fff;
}
@media screen and (max-width: 991.9px) {
	.menu_mob .arrow_down {
		width: 25px;
	}
	.menu_mob .parent > a {
		padding-right: 25px !important;
	}
	.menu_mob .parent:not(.opened) > ul {
		display: none !important;
		transform: unset !important;
		left: unset !important;
		position: relative !important;
	    width: inherit !important;
		max-width: 100% !important;
		box-shadow: unset !important;
		border-radius: unset !important;

		padding-left: 10px;
	}
	.menu_mob .parent > .arrow_down.opened + ul {
		display: grid !important;
	}
	.menu_mob ul ul li {
		width: calc(100% - 5px);
	}
	.menu_mob ul li:hover > a {
		
	}
	
	.hero_section .container {
    min-height: 380px;
}
	.slider_block.hero_block .slide_img_cntnr img {
    object-position: 90% 10%;}
}

.hero_section .category_tree {
	margin: .3rem 0;
	padding-bottom: 6px !important;
}
/*.sidebar*/ .catalog_block {
	padding-right: 21px;
}

.main_page .catalog_block {
	padding-right: 14px;
}

/*.sidebar*/ .catalog_block .category_tree {
	
	border-radius: 7px;
	  
	padding-bottom: 3px;
}
body:not(.cart_page):not(.sep_page) .sidebar .category_tree {
	margin-top: unset;
}
/*.sidebar*/ .catalog_block ul {
	background-color: #f6f7f4;
}
/*.sidebar*/ .category_tree .parent:not(.opened) > ul {
	border-radius: 7px;
}
/*.sidebar*/ .catalog_block .category_tree li {
	border-width: 1px 5px;
	border-style: solid;
	border-color: transparent;
}
/*.sidebar*/ .catalog_block .category_tree > li {
	border-bottom: unset;
}
/*.sidebar*/ .catalog_block .category_tree > li > ul {
	padding-bottom: unset !important;

	
}
/*.sidebar*/ .catalog_block .category_tree li > ul {
	padding-top: 1px;
	padding-bottom: 1px;
}
/*.sidebar*/ .catalog_block .category_tree > li > ul > li {
	/*border-width: 1px 0px;*/
}
/*.sidebar*/ .category_tree > li > ul > li:first-child {}
/*.sidebar*/ .catalog_block .category_tree li > a {
	background-image: linear-gradient(90deg, #0088cc 75%, #4266bb);
	color: #fff;
	border-radius: 7px;
}
/*.sidebar*/ .parent:not(.opened) > a:after {
	background-color: #fff;
}


.category_page #main_content > .container {}
.content_inside_block.with_sidebar {
	display: grid;
	grid-template-columns: 100%;
}
.sidebar {
	display: none;
}
@media screen and (min-width: 768px) {
	.sidebar {
		display: block;
	}
	.content_inside_block.with_sidebar {
		grid-template-columns: 25% 75%;
	}
}
.category_cntnr.products_list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-auto-rows: 1fr;
	gap: var(--product_gap);
	align-items: stretch;
}
.products_list:not(.category_cntnr) + p {
	text-align: center;
}
.category_item.product_item .add_to_cart_btn, .often_buy_prod_item.product_item .add_to_cart_btn {
	
}
.product_cat {}
.popular_cats {
	padding-bottom: 36px;
}
.sidebar .category_tree, .sidebar .category_tree > li > ul {
	background-color: unset;
}
.category_cntnr.categories_list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-auto-rows: auto;
	gap: var(--cat_gap);
}
.category_cntnr.categories_list .category_item {}
.often_buy_prods_cntnr.products_list {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--product_gap);
}
.often_buy_prod_item {
	flex: 0 0 calc((100% - var(--product_gap)) / 2);
	box-sizing: border-box;
	max-width: calc((100% - var(--product_gap)) / 2);
}
.product_content_block {
	display: grid;
	grid-template-columns: 1fr;
	grid-auto-rows: auto;
	gap: 20px;
	justify-items: center;
	/*padding-top: 4rem;*/
	padding: 10px 10px 0 10px;
}
.product_gallery {
	display: block;
	width: 100%;
	height: auto;
	grid-column: auto;
}
.product_gallery img {
	width: 100%;
	height: auto;
	object-fit: cover;
	object-position: 50% 50%;

	border: unset;
}
.product_entry_summary {
	display: grid;
	gap: 20px;
	width: fit-content;
	height: fit-content;
}
.product_inside_cntnr {
	display: grid;
	gap: 20px;
}
.product_inside_cntnr:last-child {
	gap: 5px;
}
.product_inside_cntnr:not(:last-child) {
	border-bottom: 1px solid var(--grey2_color);
}
.product_inside_cntnr > * {
	margin-top: unset;
	margin-bottom: unset;
}
.product_inside_cntnr > :last-child {
	margin-bottom: 20px;
}
.product_inside_cntnr .product_title {
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.25;
	color: #000;
}
.product_inside_cntnr .product_prices {
	justify-content: start;
}
.product_inside_cntnr .product_prices .product_retail_price {
	font-size: 1.33rem;
}
.product_inside_cntnr .product_settings ul {
	margin: unset;
	padding-left: 20px;
}
.product_inside_cntnr .product_settings ul li {
	font-size: .9rem;
	font-weight: 400;
	line-height: 1.4;
	color: #000;
}
.product_delivery span {
	display: block;
	width: fit-content;
	color: var(--green_color);
	text-transform: uppercase;
	font-size: .75rem;
	font-weight: 400;
	line-height: 1.5;
	background-color: var(--grey2_color);
	border-radius: 6px;
	padding: 5px 7px;
}
.product_availability {
	position: relative;
	font-size: .75rem;
	font-weight: 400;
	line-height: 1.5;
	color: #000;
}
.product_availability.is_available span {
	padding-left: 20px;
}
.product_availability.is_available span:before {
	content: '';
	background-color: var(--green_color);
    width: 1rem;
    position: absolute;
    aspect-ratio: 1 / 1;
    line-height: 1;
    left: 0;
    top: 0;

	-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM369 209L241 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L335 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z"/></svg>') no-repeat 50% 50%;
	mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM369 209L241 337c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L335 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9z"/></svg>') no-repeat 50% 50%;
	-webkit-mask-size: cover;
	mask-size: cover;
}
.product_entry_summary form {
	display: grid;
	grid-template-columns: auto auto;
	justify-content: start;
	align-items: end;
	gap: 20px;
}
.plus_minus .plus_minus_title {
	font-size: .8rem;
	font-weight: 700;
	line-height: 1.25;
	text-align: left;
	margin-bottom: 5px;
}
.plus_minus_content {
	position: relative;
	width: fit-content;
	height: fit-content;
	display: grid;
	grid-auto-flow: column;
	align-items: center;
}
.plus_minus_content .min {
	display: inline-block;
	text-decoration: unset;
	color: #000;
	font-size: .9rem;
	font-weight: 900;
	line-height: 2;
	background-color: #ffffff;
	border: 1px solid var(--grey2_color);
	padding: 1px 0 1px 10px;
	border-right: unset;
	border-radius: 10px 0 0 10px;
}
.plus_minus_content .plu {
	display: inline-block;
	text-decoration: unset;
	color: #000;
	font-size: .9rem;
	font-weight: 900;
	background-color: #ffffff;
	line-height: 2;
	border: 1px solid var(--grey2_color);
	padding: 1px 10px 1px 0;
	border-left: unset;
	border-radius: 0 10px 10px 0;
}
.plus_minus_content .product_qty {
	display: inline-block;
	text-align: center;
	border: 1px solid var(--grey2_color);
	border-left: unset;
	border-right: unset;
	font-size: .9rem;
	font-weight: 700;
	line-height: 2;

	flex-grow: 1;
}
.product_entry_summary .add_to_cart_btn {
	display: grid;
	background-color: var(--green_color);
	color: #fff;
	text-transform: uppercase;
	font-size: .9rem;
	font-weight: 700;
	line-height: 2;
	padding: 2px 25px;
	border-radius: 10px;
	cursor: pointer;

	border: unset;
}
.payment_systems {
	display: flex;
	flex-direction: row;
	justify-content: center;
	flex-wrap: wrap;
	gap: 5px;
}
.payment_systems .img_block {}
.payment_systems img {
	display: block;
	height: 30px;
	width: auto;
}
.product_entry_summary .product_inside_cntnr:last-child p {
	margin: unset;
}
.product_article p, .product_category p, .product_barcode p {
	font-size: .8rem;
	font-weight: 400;
	color: var(--grey_color);
}
.product_article p span, .product_category p span, .product_barcode p span {
	font-weight: 700;
	color: #000;
	margin-right: 5px;
}
.product_brand {
	display: grid;
	gap: 40px;
	height: fit-content;
	justify-content: center;
}
.product_brand:not(.mob_ver) {
	display: none;
}
.brand_block {
	display: grid;
	gap: 15px;
	justify-content: center;
	background-color: var(--grey2_color);
	width: fit-content;
	height: fit-content;
	border-radius: 10px;
	padding: 10px 20px;
}
.brand_name {
	text-align: center;
}
.brand_name p {
	margin: unset;
	font-size: .8rem;
	color: #000;
	font-weight: 400;
	line-height: 1.25;
}
.brand_name p span {
	color: var(--grey_color);
	margin-right: 3px;
}
.brand_logo img {
	width: 100%;
	height: auto;
	object-fit: cover;
	object-position: 50% 50%;
}
.product_brand .social_block {
	display: grid;
	grid-template-columns: repeat(3, 40px);
	gap: 10px;
	justify-content: center;
}
.product_brand .social_block .soc_icon {
	position: relative;
	display: grid;
	width: inherit;
	aspect-ratio: 1 / 1;
	justify-items: center;
	align-items: center;
}
.product_brand .social_block .soc_icon svg {
	position: absolute;
}
.product_brand .social_block .soc_icon svg:first-child {
	width: 100%;
	height: 100%;
}
.product_brand .social_block .soc_icon svg:first-child path {
	fill: var(--grey2_color);

	-webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -o-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
}
.product_brand .social_block .soc_network:hover .soc_icon svg:first-child path {
	fill: var(--green_color);
	opacity: .5;
}
.product_brand .social_block .soc_icon svg:last-child {
	height: 15px;
	width: auto;
}
.product_brand .social_block .soc_icon svg:last-child path {
	fill: #000;
}
form.count {
	margin-top: 5px;
}
.primary_block {
	position: relative;
}
.list_type {
	position: absolute;
	top: 0;
	right: 0;
	/*margin-top: 5px;*/
	height: 20px;
	z-index: 1;
	display: grid;
	/* grid-row: 1 / 1; */
	grid-template-rows: 20px;
	/* grid-column: 1 / 2; */
	grid-template-columns: auto auto;
	grid-column-gap: 10px;
}
.list_type_grid {
	display: block;
	grid-row: 1;
	grid-column: 1;
	height: -webkit-fill-available;
	height: inherit;
}
.list_type_ul {
	display: block;
	grid-row: 1;
	grid-column: 2;
	height: -webkit-fill-available;
	height: inherit;
}
.list_type path {
	fill: var(--grey4_color);
}
.active_type path {
	fill: var(--blue_color);
}
.list_type svg:not(.active_type):hover {
	cursor: pointer;
}
.category_page .products_list {
	display: grid;
	list-style-type: none;
	grid-template-columns: repeat(2, calc(50% - var(--cat_product_list_gap) / 2));
	padding: unset;
	column-gap: var(--cat_product_list_gap);
	grid-auto-columns: calc((50% - var(--cat_product_list_gap)) / 2);
}
.category_page .products_list.active_list_type_ul {
	list-style-type: none;
	padding-left: 0;
	overflow-wrap: break-word;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	/* justify-content: space-between; */
	justify-content: flex-start;
}
.category_page .products_list.active_list_type_ul > .product_item {
	width: 100%;
	max-width: 100%;
}
.category_page .products_list.active_list_type_ul .product_item {
	display: grid;
	grid-template-columns: 20% auto;
	grid-column-gap: 15px;
	grid-template-rows: auto auto;
	justify-content: unset;
}
.category_page .products_list.active_list_type_ul .product_item .product_link {
	display: block;
	grid-column: 2;
	grid-row: 1;
}
.category_page .products_list.active_list_type_ul .product_item .product_link_img {
	display: flex;
	grid-column: 1;
	grid-row: 1 / 4;
}
.category_page .products_list.active_list_type_ul .product_item .product_link_img .slide_img_cntnr {
	background-color: transparent;
}
.category_page .products_list.active_list_type_ul .product_item > .product_prices {
	grid-column: 2;
	grid-row: 2;
}
.category_page .products_list.active_list_type_ul .product_item .product_description_cntnr {
	grid-column: 2;
	grid-row: 3;
	display: inline-grid;
	grid-template-columns: auto;
	grid-template-rows: auto;
	column-gap: 15px;
	width: 100%;
	/* justify-content: space-between; */
}
.category_page .products_list.active_list_type_ul .product_item .product_description_cntnr > div {
	grid-column: 1;
	grid-row: 1;
	/* width: fit-content; */
	/* margin-left: auto; */
	/* margin-right: auto; */
	/* text-align: left;*/
}
.category_page .products_list.active_list_type_ul .product_item .product_description_cntnr > .product_brief_block {
	grid-column: 2;
	grid-row: 1;
	width: min-content;
	justify-self: end;
}
@media screen and (max-width: 500px) {
	.category_page .products_list.active_list_type_ul .product_item {
		grid-template-columns: 100%;
	}
	.category_page .products_list.active_list_type_ul .product_item .product_link {
		grid-column: unset;
		grid-row: unset;
	}
	.category_page .products_list.active_list_type_ul .product_item .product_link_img {
		grid-column: unset;
		grid-row: unset;
		max-height: 40vh;
	}
	.category_page .products_list.active_list_type_ul .product_item > .product_prices {
		grid-column: unset;
		grid-row: unset;
	}
	.category_page .products_list.active_list_type_ul .product_item .product_description_cntnr {
		grid-column: unset;
		grid-row: unset;
	}
	.category_page .products_list.active_list_type_ul .product_item .product_description_cntnr > div {
		grid-column: unset;
		grid-row: unset;
	}
	.category_page .products_list.active_list_type_ul .product_item .product_description_cntnr > .product_brief_block {
		grid-column: unset;
		grid-row: unset;
		width: auto;
		justify-self: center;
	}
}
@media screen and (min-width: 576px) {
	.product_content_block {
		grid-template-columns: calc(65% - 10px) calc(35% - 10px);
	}
	.product_gallery {
		grid-column: 1 / 3;
	}
	.product_brand.mob_ver {
		/*display: none;*/
	}
	.product_brand:not(.mob_ver) {
		display: grid;
	}
	.product_delivery {
		margin-bottom: 20px;
	}

	.category_cntnr.categories_list {
		grid-template-columns: repeat(5, 1fr);
	}
}
@media screen and (min-width: 768px) {
	.product_content_block {
		grid-template-columns: calc(40% - 20px/2) calc(60% - 20px/2);  /* calc(35% - 40px/3) calc(45% - 40px/3) calc(20% - 40px/3) */

		padding-top: 4rem;
	}
	.product_gallery {
		grid-column: auto;
	}
	.category_cntnr.products_list {
		grid-template-columns: repeat(3, 1fr);
	}
	.category_cntnr.categories_list {
		grid-template-columns: repeat(10, 1fr);
	}
	.often_buy_prod_item {
		flex: 0 0 calc((100% - 2*var(--product_gap)) / 3);
		max-width: calc((100% - 2*var(--product_gap)) / 3);
	}
}
@media screen and (min-width: 901px) {
	.category_page .products_list {
		grid-template-columns: repeat(3, calc(33.3% - var(--cat_product_list_gap) * 2 / 3));
		grid-auto-columns: calc((100% - 2 * var(--cat_product_list_gap)) / 3);
	}
}
@media screen and (min-width: 992px) {
	.category_cntnr.products_list {
		grid-template-columns: repeat(4, 1fr);
	}
	.often_buy_prod_item {
		flex: 0 0 calc((100% - 3*var(--product_gap)) / 4);
		max-width: calc((100% - 3*var(--product_gap)) / 4);
	}
}
@media screen and (min-width: 1140px) {
	.category_cntnr.products_list {
		grid-template-columns: repeat(5, 1fr);
	}
	.often_buy_prod_item {
		flex: 0 0 calc((100% - 5*var(--product_gap)) / 6);
		max-width: calc((100% - 5*var(--product_gap)) / 6);
	}
}
@media screen and (min-width: 1200px) {
	.category_page .products_list {
		grid-template-columns: repeat(4, calc(25% - var(--cat_product_list_gap) * 3 / 4));
		grid-auto-columns: calc((100% - 3 * var(--cat_product_list_gap)) / 4);
	}
}

.text_block {
	padding: 1em 1em;
	border: 1px solid var(--grey4_color) !important;
	border-radius: 12px;
	background-color: #fff !important;
}
.cart_page .text_block {
	text-align: center;
}
.text_block p {
	margin: 1em 0 1em 0;
}
@media screen and (min-width: 768px) {
	.text_block {}
}

.privat {height: 20px !important;margin: 6px 4px;}

.product_block {
    background-color: white;
    border-radius: 12px;
    /*padding: 20px;*/
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transition: all 0.3s ease;
    margin-bottom: 20px;
    position: relative;
}

/* Стили для названия товара с ограничением по строкам */
.product_block .product_name {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.4;
    max-height: calc(1.4em * 3);
    transition: all 0.3s ease;
    position: relative;
    text-align: center;
}

.product_block:hover .product_name {
    -webkit-line-clamp: unset;
    max-height: none;
    overflow: visible;
    white-space: normal;
}

/* Стили для описания товара с ограничением по строкам */
.product_block .product_description {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.4;
    max-height: calc(1.4em * 2);
    transition: all 0.3s ease;
    margin: 8px 0;
}

.product_block:hover .product_description {
    -webkit-line-clamp: unset;
    max-height: none;
    overflow: visible;
}

/* Стили для блока избранного и сравнения */
.block_fav_and_compare {
    display: flex;
    gap: 15px;
    margin: 15px 0;
    justify-content: center;
    align-items: center;
}

.block_fav_and_compare span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--bg_color);
    border: 2px solid var(--grey2_color);
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
}

.block_fav_and_compare span:hover {
    background: var(--blue_color);
    border-color: var(--blue_color);
    transform: scale(1.1);
}

.block_fav_and_compare span svg {
    width: 20px;
    height: 20px;
    fill: var(--grey_color);
    transition: fill 0.3s ease;
}

.block_fav_and_compare span:hover svg {
    fill: white;
}

.block_fav_and_compare .add_to_favorite.active {
    background: var(--red_color);
    border-color: var(--red_color);
}

.block_fav_and_compare .add_to_favorite.active svg {
    fill: white;
}

.block_fav_and_compare .compare_products.active {
    background: var(--blue_color);
    border-color: var(--blue_color);
}

.block_fav_and_compare .compare_products.active svg {
    fill: white;
}

/* ===== СТИЛИ ДЛЯ НОВОГО ДИЗАЙНА ===== */

/* Стили для блока количества товара */
.plus_minus {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin: 15px 0;
}

.plus_minus_title {
    font-weight: 600;
    color: var(--grey_color);
    font-size: 14px;
}

.plus_minus_content {
    display: flex;
    align-items: center;
    gap: 10px;
    border: 1px solid var(--grey2_color);
    border-radius: 8px;
    padding: 5px;
    width: 100%;  /* fit-content */

    max-width: 100%;
    box-sizing: border-box;
}

.plus_minus_content .min,
.plus_minus_content .plu {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    background: var(--blue_color);
    color: white;
    text-decoration: none;
    border-radius: 6px;
    font-weight: bold;
    font-size: 18px;
    transition: background-color 0.3s ease;
}

.plus_minus_content .min:hover,
.plus_minus_content .plu:hover {
    background: var(--blue2_color);
}

.product_qty {
    width: 60px;
    height: 35px;
    text-align: center;
    border: 2px solid var(--grey2_color);
    border-radius: 6px;
    font-size: 16px;
    font-weight: 600;
}

/* Стили для кнопки "Купити" */
.add_to_cart_btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: white;
    color: var(--red_color);
    padding: 15px 30px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 600;
    font-size: 16px;
    transition: all 0.3s ease;
    border: 2px solid var(--red_color);
    cursor: pointer;
    margin: 15px 0;
    min-width: fit-content;  /* 150 */
    position: relative;
}

.add_to_cart_btn:hover {
    background: var(--red_color);
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(235, 66, 39, 0.3);
}

.add_to_cart_btn .in_cart {
    position: absolute;
    top: -8px;
    right: -8px;
    background: var(--red_color);
    color: white;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    min-width: 20px;
    padding: 2px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
    z-index: 10;
}

.add_to_cart_btn .in_cart.is_empty {
    display: none;
}

/* Стили для хлебных крошек */
.bread-cover {
    background: var(--bg_color);
    padding: 15px 0;
    margin-bottom: 20px;
    border-radius: 8px;
}

.bread-cover .cat {
    color: var(--blue_color);
    text-decoration: none;
    font-weight: 500;
    transition: color 0.3s ease;
}

.bread-cover .cat:hover {
    color: var(--blue2_color);
    text-decoration: underline;
}

.bread-cover .cat:not(:last-child)::after {
    content: " » ";
    color: var(--grey_color);
    margin: 0 8px;
}

/* Стили для формы поиска в категории */
#cat_advproduct_search {
    background: white;
    border: 2px solid var(--grey2_color);
    border-radius: 12px;
    padding: 20px;
    margin: 20px 0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

#cat_advproduct_search h3 {
    color: var(--blue_color);
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 20px 0;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--grey2_color);
}

#cat_advproduct_search table {
    width: 100%;
    border-collapse: collapse;
}

#cat_advproduct_search td {
    padding: 8px 0;
    vertical-align: top;
}

#cat_advproduct_search td:first-child {
    font-weight: 600;
    color: var(--grey_color);
    width: 120px;
}

#cat_advproduct_search input[type="text"] {
    width: 100%;
    padding: 10px 12px;
    border: 2px solid var(--grey2_color);
    border-radius: 6px;
    font-size: 14px;
    transition: border-color 0.3s ease;
}

#cat_advproduct_search input[type="text"]:focus {
    border-color: var(--blue_color);
    outline: none;
}

#cat_advproduct_search input[type="submit"] {
    background: var(--blue_color);
    color: white;
    padding: 12px 24px;
    border: none;
    border-radius: 6px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

#cat_advproduct_search input[type="submit"]:hover {
    background: var(--blue2_color);
}

/* Стили для сортировки */
#cat_product_sort {
    background: var(--bg_color);
    padding: 15px 20px;
    border-radius: 8px;
    margin: 20px 0;
    font-size: 14px;
    color: var(--grey_color);
}

#cat_product_sort a {
    color: var(--blue_color);
    text-decoration: none;
    font-weight: 500;
    margin: 0 5px;
    padding: 4px 8px;
    border-radius: 4px;
    transition: all 0.3s ease;
}

#cat_product_sort a:hover {
    background: var(--blue_color);
    color: white;
}

#cat_product_sort + p {
	text-align: center;
}

/* Стили для пагинации */
.faq {
    background: var(--blue_color);
    color: white;
    padding: 6px 12px;
    border-radius: 6px;
    font-weight: 600;
}

.no_underline {
    color: var(--blue_color);
    text-decoration: none;
    padding: 6px 12px;
    border-radius: 6px;
    transition: all 0.3s ease;
    display: inline-block;
    margin: 2px;
}

.no_underline:hover {
    background: var(--blue_color);
    color: white;
}

/* Стили для списка категорий */
.categories_list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.category_item {
    /*background: white;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);*/
    transition: all 0.3s ease;
    position: relative;
}

.category_item:hover {
    /*transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0,0,0,0.15);*/
}

.category_link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
}

.category_img {
    width: 100%;
    height: 150px;
    overflow: hidden;
    position: relative;
}

.category_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.category_item:hover .category_img img {
    transform: scale(1.05);
}

.category_title {
    padding: 15px;
    text-align: center;
}

.category_title h4 {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    color: var(--grey_color);
    line-height: 1.4;
}

/* Стили для счетчика товаров в корзине */
.menu_basket {
    position: relative;
}

.menu_basket .in_cart {
    position: absolute;
    bottom: -8px;
    left: -8px;
    background: var(--red_color);
    color: white;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    min-width: 20px;
    padding: 2px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
    z-index: 10;
}

.menu_basket .in_cart:empty {
    display: none;
}

/* Стили для иконки корзины */
.cart_cntnr {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
}

.cart_cntnr svg {
    width: 24px;
    height: 24px;
    fill: var(--grey_color);
    transition: fill 0.3s ease;
}

.menu_basket:hover .cart_cntnr svg {
    fill: var(--blue_color);
}

/* ===== СТИЛИ ДЛЯ КОРЗИНЫ ===== */

/* Заголовок страницы корзины */
.cart_page_header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--blue_color);
    color: white;
    padding: 20px 30px;
    border-radius: 12px 12px 0 0;
    margin-bottom: 0;
}

.cart_title_section {
    display: flex;
    align-items: center;
    gap: 20px;
}

.cart_page_title {
    margin: 0;
    font-size: 28px;
    font-weight: 700;
    color: white;
}

.cart_navigation {
    margin-left: 20px;
}

.back_to_shopping {
    color: white;
    text-decoration: none;
    font-weight: 500;
    padding: 8px 16px;
    border: 2px solid white;
    border-radius: 6px;
    transition: all 0.3s ease;
}

.back_to_shopping:hover {
    background: white;
    color: var(--blue_color);
}

.cart_actions {
    display: flex;
    gap: 15px;
}

.clear_cart_btn {
    color: white;
    text-decoration: none;
    font-weight: 500;
    padding: 8px 16px;
    border: 2px solid rgba(255,255,255,0.3);
    border-radius: 6px;
    transition: all 0.3s ease;
}

.clear_cart_btn:hover {
    background: rgba(255,255,255,0.1);
    border-color: white;
}

/* Контейнер корзины */
.cart_content_wrapper {
    background: white;
    border-radius: 0 0 12px 12px;
    padding: 30px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
}

.cart_notice {
    background: var(--bg_color);
    padding: 15px 20px;
    border-radius: 8px;
    margin-bottom: 20px;
    border-left: 4px solid var(--blue_color);
}

/* Заголовки колонок */
.cart_items_header {
    display: grid;
    grid-template-columns: 100px 1fr 150px 120px 60px;
    gap: 20px;
    padding: 15px 20px;
    background: var(--bg_color);
    border-radius: 8px;
    font-weight: 600;
    color: var(--grey_color);
    margin-bottom: 15px;
    align-items: center;
}

.cart_item_image_header {
    text-align: center;
}

.cart_item_info_header {
    text-align: left;
}

.cart_item_quantity_header,
.cart_item_price_header {
    text-align: center;
}

.cart_item_actions_header {
    text-align: center;
}

/* Список товаров */
.cart_items_list {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.cart_item_card {
    display: grid;
    grid-template-columns: 100px 1fr 150px 120px 60px;
    gap: 20px;
    padding: 20px;
    background: white;
    border: 2px solid var(--grey2_color);
    border-radius: 12px;
    align-items: center;
    transition: all 0.3s ease;
    position: relative;
}

.cart_item_card:hover {
    border-color: var(--blue_color);
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    transform: translateY(-2px);
}

.cart_item_card.row_odd {
    background: #fafafa;
}

/* Изображение товара */
.cart_item_image {
    display: flex;
    justify-content: center;
    align-items: center;
}

.product_thumbnail {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border-radius: 8px;
    border: 2px solid var(--grey2_color);
}

/* Информация о товаре */
.cart_item_info {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.cart_item_name {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.product_code {
    font-size: 12px;
    color: var(--grey_color);
    font-style: italic;
}

.product_link {
    color: var(--blue_color);
    text-decoration: none;
    font-weight: 600;
    font-size: 16px;
    transition: color 0.3s ease;
}

.product_link:hover {
    /*color: var(--blue2_color);
    text-decoration: underline;*/
}

.product_name {
    font-weight: 600;
    font-size: 16px;
    color: var(--grey_color);
}

.cart_product_brief_description {
    font-size: 14px;
    color: var(--grey_color);
    line-height: 1.4;
}

.cart_item_comment {
    margin-top: 10px;
}

.comment_textarea {
    width: 100%;
    min-height: 60px;
    padding: 8px 12px;
    border: 2px solid var(--grey2_color);
    border-radius: 6px;
    font-size: 14px;
    resize: vertical;
    transition: border-color 0.3s ease;
}

.comment_textarea:focus {
    border-color: var(--blue_color);
    outline: none;
}

/* Количество товара */
.cart_item_quantity {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

/* Цена товара */
.cart_item_price {
    text-align: center;
}

.price_value {
    font-size: 18px;
    font-weight: 700;
    color: var(--red_color);
}

/* Действия с товаром */
.cart_item_actions {
    display: flex;
    justify-content: center;
    align-items: center;
}

.remove_item_btn {
    background: var(--red_color);
    color: white;
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.remove_item_btn:hover {
    background: var(--red_color2);
    transform: scale(1.1);
}

.remove_item_btn svg {
    width: 20px;
    height: 20px;
}

/* Секция скидок */
.cart_discounts_section {
    margin: 30px 0;
    padding: 20px;
    background: var(--bg_color);
    border-radius: 8px;
}

.cart_discount_item,
.cart_coupon_section {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid var(--grey2_color);
}

.cart_discount_item:last-child,
.cart_coupon_section:last-child {
    border-bottom: none;
}

.discount_label,
.coupon_label {
    font-weight: 600;
    color: var(--grey_color);
}

.discount_value,
.coupon_discount {
    font-weight: 700;
    color: var(--red_color);
    font-size: 16px;
}

.coupon_info {
    display: flex;
    align-items: center;
    gap: 10px;
}

.coupon_code {
    background: var(--blue_color);
    color: white;
    padding: 4px 8px;
    border-radius: 4px;
    font-weight: 600;
}

.change_coupon_btn {
    background: var(--grey_color);
    color: white;
    border: none;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 12px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.change_coupon_btn:hover {
    background: var(--blue_color);
}

/* Секция итого */
.cart_total_section {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 25px 30px;
    background: var(--blue_color);
    color: white;
    border-radius: 12px;
    margin: 30px 0;
}

.total_label {
    font-size: 24px;
    font-weight: 600;
}

.total_value {
    font-size: 32px;
    font-weight: 700;
}

/* Секция оформления заказа */
.cart_checkout_section {
    text-align: center;
    padding: 30px 0;
}

.btn_checkout {
    background: var(--red_color);
    color: white;
    border: none;
    padding: 18px 40px;
    border-radius: 12px;
    font-size: 20px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-bottom: 20px;
    min-width: 250px;
}

.btn_checkout:hover {
    background: var(--red_color2);
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(235, 66, 39, 0.3);
}

.checkout_alternatives {
    margin-top: 20px;
}

.checkout_alt_label {
    color: var(--grey_color);
    margin-bottom: 15px;
    font-weight: 500;
}

.checkout_buttons {
    display: flex;
    justify-content: center;
    gap: 15px;
    flex-wrap: wrap;
}

.checkout_btn_item {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ===== СТИЛИ ДЛЯ СТРАНИЦ АВТОРИЗАЦИИ И РЕГИСТРАЦИИ ===== */

/* Контейнер страницы авторизации */
.auth_page_container {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--bg_color) 0%, #f8f9fa 100%);
    padding: 20px;
}

.auth_page_wrapper {
    background: white;
    border-radius: 16px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.1);
    width: 100%;
    max-width: 450px;
    overflow: hidden;
}

.auth_page_header {
    background: var(--blue_color);
    color: white;
    padding: 30px;
    text-align: center;
}

.auth_page_title {
    margin: 0 0 10px 0;
    font-size: 28px;
    font-weight: 700;
    color: white;
}

.auth_page_subtitle {
    margin: 0;
    font-size: 16px;
    opacity: 0.9;
    font-weight: 400;
}

.auth_content {
    padding: 40px 30px;
}

.auth_form {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.form_group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.form_label {
    font-weight: 600;
    color: var(--grey_color);
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.asterisk {
    color: var(--red_color);
    font-weight: bold;
}

.form_input {
    padding: 12px 16px;
    border: 2px solid var(--grey2_color);
    border-radius: 8px;
    font-size: 16px;
    transition: all 0.3s ease;
    background: white;
}

.form_input:focus {
    border-color: var(--blue_color);
    outline: none;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.form_actions {
    margin-top: 10px;
}

.auth_submit_btn {
    width: 100%;
    background: var(--red_color);
    color: white;
    border: none;
    padding: 16px 24px;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
}

.auth_submit_btn:hover {
    background: var(--red_color2);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(235, 66, 39, 0.3);
}

.auth_links {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    margin-top: 20px;
    flex-wrap: wrap;
}

.auth_link {
    color: var(--blue_color);
    text-decoration: none;
    font-weight: 500;
    transition: color 0.3s ease;
}

.auth_link:hover {
    color: var(--blue2_color);
    text-decoration: underline;
}

.auth_separator {
    color: var(--grey_color);
    font-weight: bold;
}

/* Стили для страницы регистрации */
.register_page_container {
    min-height: 100vh;
    background: linear-gradient(135deg, var(--bg_color) 0%, #f8f9fa 100%);
    padding: 20px;
}

.register_page_wrapper {
    max-width: 800px;
    margin: 0 auto;
    background: white;
    border-radius: 16px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.1);
    overflow: hidden;
}

.register_page_header {
    background: var(--blue_color);
    color: white;
    padding: 30px;
    text-align: center;
}

.register_page_title {
    margin: 0 0 10px 0;
    font-size: 32px;
    font-weight: 700;
    color: white;
}

.register_page_subtitle {
    margin: 0;
    font-size: 18px;
    opacity: 0.9;
    font-weight: 400;
}

.register_content {
    padding: 40px;
}

.register_notice {
    background: var(--bg_color);
    padding: 15px 20px;
    border-radius: 8px;
    margin-bottom: 20px;
    border-left: 4px solid var(--blue_color);
}

.register_info {
    background: #f8f9fa;
    padding: 15px 20px;
    border-radius: 8px;
    margin-bottom: 30px;
    font-size: 14px;
    color: var(--grey_color);
}

.register_form {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.form_section {
    border: 1px solid var(--grey2_color);
    border-radius: 12px;
    padding: 25px;
    background: #fafafa;
}

.form_section_title {
    margin: 0 0 20px 0;
    font-size: 20px;
    font-weight: 600;
    color: var(--blue_color);
    padding-bottom: 10px;
    border-bottom: 2px solid var(--grey2_color);
}

.checkbox_group {
    margin-top: 10px;
}

.checkbox_label {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    font-weight: 500;
    color: var(--grey_color);
}

.checkbox_label input[type="checkbox"] {
    width: 18px;
    height: 18px;
    accent-color: var(--blue_color);
}

.checkbox_text {
    font-size: 14px;
}

.captcha_container {
    display: flex;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
}

.captcha_image {
    border: 2px solid var(--grey2_color);
    border-radius: 6px;
    max-height: 50px;
}

.captcha_input {
    flex: 1;
    min-width: 150px;
}

.register_submit_btn {
    background: var(--red_color);
    color: white;
    border: none;
    padding: 18px 40px;
    border-radius: 12px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
    margin: 20px auto 0;
    display: block;
    min-width: 200px;
}

.register_submit_btn:hover {
    background: var(--red_color2);
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(235, 66, 39, 0.3);
}

.account_actions {
    margin-top: 30px;
    text-align: center;
    padding-top: 20px;
    border-top: 1px solid var(--grey2_color);
}

.account_action_link {
    color: var(--red_color);
    text-decoration: none;
    font-weight: 600;
    transition: color 0.3s ease;
}

.account_action_link:hover {
    color: var(--red_color2);
    text-decoration: underline;
}

/* Адаптивность для мобильных устройств */
@media screen and (max-width: 768px) {
    .cart_page_header {
        flex-direction: column;
        gap: 15px;
        text-align: center;
        padding: 20px;
    }
    
    .cart_title_section {
        flex-direction: column;
        gap: 10px;
    }
    
    .cart_page_title {
        font-size: 24px;
    }
    
    .cart_content_wrapper {
        padding: 20px 15px;
    }
    
    .cart_items_header {
        display: none;
    }
    
    .cart_item_card {
        grid-template-columns: 1fr;
        gap: 15px;
        text-align: center;
    }
    
    .cart_item_image {
        order: 1;
    }
    
    .cart_item_info {
        order: 2;
    }
    
    .cart_item_quantity {
        order: 3;
    }
    
    .cart_item_price {
        order: 4;
    }
    
    .cart_item_actions {
        order: 5;
    }
    
    .cart_total_section {
        flex-direction: column;
        gap: 15px;
        text-align: center;
    }
    
    .total_label {
        font-size: 20px;
    }
    
    .total_value {
        font-size: 28px;
    }
    
    .btn_checkout {
        width: 100%;
        padding: 15px 20px;
        font-size: 18px;
    }
    
    .checkout_buttons {
        flex-direction: column;
        align-items: center;
    }
    
    .plus_minus_content {
        width: 100%;
        justify-content: center;
    }
    
           .add_to_cart_btn {
               width: 100%;
               justify-content: center;
           }
           
           .add_to_cart_btn .in_cart {
               width: 18px;
               height: 18px;
               font-size: 11px;
               top: -6px;
               right: -6px;
           }
           
           .block_fav_and_compare {
               gap: 10px;
               margin: 10px 0;
           }
           
           .block_fav_and_compare span {
               width: 35px;
               height: 35px;
           }
           
           .block_fav_and_compare span svg {
               width: 18px;
               height: 18px;
           }
    
    .categories_list {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
        gap: 15px;
    }
    
    .category_img {
        height: 120px;
    }
    
    .category_title h4 {
        font-size: 14px;
    }
    
    #cat_advproduct_search {
        padding: 15px;
    }
    
    #cat_advproduct_search h3 {
        font-size: 16px;
    }
    
    .menu_basket .in_cart {
        width: 18px;
        height: 18px;
        font-size: 11px;
        bottom: -6px;
        left: -6px;
    }
    
    .cart_cntnr {
        width: 35px;
        height: 35px;
    }
    
           .cart_cntnr svg {
               width: 20px;
               height: 20px;
           }
           
           /* Адаптивность для страниц авторизации и регистрации */
           .auth_page_container {
               padding: 10px;
           }
           
           .auth_page_wrapper {
               max-width: 100%;
           }
           
           .auth_page_header {
               padding: 20px;
           }
           
           .auth_page_title {
               font-size: 24px;
           }
           
           .auth_content {
               padding: 30px 20px;
           }
           
           .register_page_container {
               padding: 10px;
           }
           
           .register_page_wrapper {
               max-width: 100%;
           }
           
           .register_page_header {
               padding: 20px;
           }
           
           .register_page_title {
               font-size: 28px;
           }
           
           .register_content {
               padding: 30px 20px;
           }
           
           .form_section {
               padding: 20px 15px;
           }
           
           .form_section_title {
               font-size: 18px;
           }
           
           .captcha_container {
               flex-direction: column;
               align-items: stretch;
           }
           
           .captcha_image {
               max-width: 100%;
               height: auto;
           }
           
           .register_submit_btn {
               width: 100%;
               padding: 15px 20px;
               font-size: 16px;
           }
       }

@media screen and (max-width: 500px) {
	.product_entry_summary form {
		grid-template-columns: auto;
		justify-content: center;
		row-gap: unset;
	}
	.product_entry_summary .add_to_cart_btn {
		width: auto;
	}
}