/*
Theme name: Oplombirovano
Description: Описание
Author:  
Author URI: 
*/


:root {
	--white: #fff;
	--black: #000;
	--blue: #008BF0;
	--red: #FF0000;
	--red-light: #FE4728;
	--green: #05A02C;
	--grey: #ACACAC;
}



*, *::before, *::after {
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	/*outline: 1px solid #c00;*/
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
	display: block;
}
html {
	font-size: 20px;
}
body {
	background: var(--white);
	position: relative;
	color: var(--black);
	font: 12px/1.5 'Montserrat', Arial, sans-serif;
}
.wrapper,
body.nav-active {
	overflow: hidden;
}
body.nav-active {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.box {
	width: 100%;
	min-width: 320px;
	position: relative;
}
.container {
	width: 100%;
	min-width: 320px;
	max-width: 1210px;
	padding-left: 1rem;
	padding-right: 1rem;
	margin: 0 auto;
	position: relative;
	border-top: 0 solid transparent;
}
.container::after {
	content: '';
	display: block;
	clear: both;
	width: 100%;
	height: 0;
}
.flx {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}


a {
	color: var(--blue);
	text-decoration: underline;
	text-decoration: none;
}
a:hover {
	text-decoration: none;
}

input, 
textarea, 
select,
button {
	font-family: 'Montserrat', Arial, sans-serif;
}
input.error {
	color: #f00 !important;
	border: 1px solid #f00 !important;
}
input.valid {
	border: 1px solid #339e36 !important;
}
input {
	color: #333;
}
input:focus {
	color: #333;
}
input::-webkit-input-placeholder {
	color: #333;
}
input::-moz-placeholder {
	color: #333;
}
input:-moz-placeholder {
	color: #333;
}
input:-ms-input-placeholder {
	color: #333;
}
textarea::placeholder, textarea::-webkit-input-placeholder{
	color: #333;
}





.text {
	overflow: hidden;
}
.text p {
	margin-bottom: 1.2rem;
	margin-bottom: 0.7rem;
}
.text h2, 
.text h3, 
.text h4, 
.text h5 {
	margin-bottom: 12px;
	margin-bottom: 1px;
	color: #333;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.3;
}
.text h3, .text h4, .text h5 {
	font-size: 13px;
}
.text table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 24px;
}
.text table tr {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	position: relative;
}
.text table tr::before {
	content: '';
	position: absolute;
	bottom: 4px;
	left: 0;
	width: 100%;
	height: 1px;
	border-bottom: 1px dashed #CCC;
	padding-top: 5px;
	padding-bottom: 5px;
	z-index: -1;
}
.text table tr td {
	background: #fff;
	padding: 0 4px;
}
.text ul, .text ol {
	margin: 0 0 1rem 1.2rem;
		margin: 0 0 0.2rem 0.9rem;
}
.text li {
	margin-bottom: 8px;
}
.text img {
	display: block;
	max-width: 100%;
	height: auto;
}

.button {
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	/*min-width: 184px;*/
	min-height: 32px;
	padding: 4px 20px;
	background: #FE4728;
	border: 2px solid #FE4728;
	border-radius: 5px;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.4;
	color: #FFFFFF;
	text-align: center;
	text-decoration: none;
	transition: all .3s ease;
	cursor: pointer;
}
.button:hover {
	background: #000;
	border-color: #000;
}


.video-wrap {
	display: block;
	width: 100%;
	position: relative;
}
.video-wrap__ins {
	display: block;
	width: 100%;
	padding-top: 64%;
	position: relative;
}
.video-wrap__ins iframe {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
}



.alignleft {display: inline;float: left;margin: 5px 15px 5px 0;}
.alignright {display: inline;float: right;margin: 5px 0 5px 15px;}
.aligncenter {clear: both;display: block;margin: 5px auto;}



/* Header ----------------------------------------------------------------------------- */
.header {
	background: #FBFBFB;
	border-bottom: 1px solid #ccc;
	position: relative;
	z-index: 20;
}
.header-top {
	padding-top: 1.5rem;
	padding-bottom: 1rem;
}
.header-logo {
	display: block;
	text-decoration: none;
}
.header-logo__name {
	display: block;
	color: var(--red);
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	text-transform: uppercase;
}
.header-logo__name span {
	color: var(--blue);
}
.header-logo__desc {
	display: block;
	color: #7E7E7E;
	font-size: 10px;
	line-height: 1.1;
}

.header-icon {
	position: relative;
	padding-left: 24px;
}
.header-icon::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 16px;
	height: 16px;
	background: var(--blue);
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
}

.header-address {
	min-height: 30px;
	padding: 8px 12px;
	position: relative;
}
.header-address::before,
.header-address::after {
	content: '';
	position: absolute;
	top: 0;
	width: 1px;
	height: 30px;
	border-left: 1px dashed #CCC;
}
.header-address::before {
	left: 0;
}
.header-address::after {
	right: 0;
}
.header-address__current {
	display: block;
	padding-right: 16px;
	position: relative;
}
.header-address__current::before {
	-webkit-mask-image: url("i/bg-icon-address.svg");
	mask-image: url("i/bg-icon-address.svg");
}
.header-address__current::after {
	content: '';
	position: absolute;
	top: 8px;
	right: 0;
	width: 10px;
	height: 6px;
	background: #435159;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-image: url("i/bg-icon-arrow-down.svg");
	mask-image: url("i/bg-icon-arrow-down.svg");
	transition: all .3s ease;
}
.header-address__current:hover::after {
	background: var(--blue);
}
.header-address__body {
	position: absolute;
	top: 20px;
	left: 4px;
	min-width: 200px;
	border: 1px solid #ACACAC;
	background: #fff;
	border-radius: 3px;
	padding: 10px;
	opacity: 0;
	pointer-events: none;
	transition: all .3s ease;
	z-index: 20;
}
.header-address.is-open .header-address__body {
	top: 32px;
	opacity: 1;
	pointer-events: auto;
}
.header-address__top {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	padding-bottom: 4px;
}
.header-address__city {
	color: #616161;
	font-size: 7px;
	line-height: 1.3;
}
.header-address__map {
	color: var(--blue);
	font-size: 10px;
	line-height: 1.2;
	text-decoration: none;
	transition: all .3s ease;
}
.header-address__map:hover {
	color: var(--red);
}
.header-address__name {
	color: #616161;
	font-size: 12px;
	line-height: 1.3;
}

.header-phone {
	padding: 2px 41px 2px 24px;
	position: relative;
}
.header-phone::before {
	top: 8px;
	-webkit-mask-image: url("i/bg-icon-phone.svg");
	mask-image: url("i/bg-icon-phone.svg");
}
.header-phone::after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 1px;
	height: 30px;
	border-left: 1px dashed #CCC;
}
.header-phone__item {
	display: block;
	color: #435159;
	font-size: 14px;
	line-height: 1.3;
	text-decoration: none;
}
.header-phone__item:hover {
	color: var(--blue);
}
.header-phone__callme {
	display: block;
	border: none;
	background-color: transparent;
	outline: none;
	color: var(--blue);
	font-size: 12px;
	line-height: 1.3;
	text-decoration: none;
	cursor: pointer;
}
.header-phone__callme:hover {
	color: var(--red);
}

.header-time {
	padding: 2px 16px 2px 24px;
	position: relative;
}
.header-time::before {
	top: 8px;
	-webkit-mask-image: url("i/bg-icon-time.svg");
	mask-image: url("i/bg-icon-time.svg");
}
.header-time::after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 1px;
	height: 30px;
	border-left: 1px dashed #CCC;
}
.header-time__item {
	font-size: 14px;
	line-height: 1.3;
}

.header-applic {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	gap: 10px;
	padding: 0 8px;
}
.header-applic__leave {
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	min-width: 128px;
	min-height: 33px;
	padding: 8px;
	border: none;
	outline: none;
	background: #008BF0;
	position: relative;
	border-radius: 3px;
	color: var(--white);
	font-size: 12px;
	line-height: 1.3;
	text-decoration: none;
	text-align: center;
	transition: all .3s ease;
	cursor: pointer;
}
.header-applic__leave:hover {
	background: var(--blue);
}
.header-applic-mail {
	position: relative;
}
.header-applic-mail__btn,
.header-applic__wa {
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	min-width: 41px;
	min-height: 33px;
	padding: 8px;
	border: none;
	outline: none;
	position: relative;
	border-radius: 3px;
	background: var(--red);
	color: var(--white);
	font-size: 12px;
	line-height: 1.3;
	text-decoration: none;
	text-align: center;
	transition: all .3s ease;
	cursor: pointer;
}
.header-applic-mail__btn::before,
.header-applic__wa::before {
	content: '';
	position: absolute;
	top: calc(50% - 10px);
	left: calc(50% - 10px);
	width: 20px;
	height: 20px;
	background: #fff;
	-webkit-mask: url('i/bg-icon-mail.svg') center no-repeat;
	mask: url('i/bg-icon-mail.svg') center no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
}
.header-applic-mail__btn:hover {
	background: var(--red-light);
}
.header-applic-mail__body {
	position: absolute;
	top: 20px;
	right: 0;
	min-width: 170px;
	border: 1px solid #ACACAC;
	background: #fff;
	border-radius: 3px;
	padding: 10px;
	opacity: 0;
	pointer-events: none;
	transition: all .3s ease;
	z-index: 20;
}
.header-applic-mail.is-open .header-applic-mail__body {
	top: 40px;
	opacity: 1;
	pointer-events: auto;
}
.header-applic-mail__title {
	color: #616161;
	font-size: 7px;
	line-height: 1.3;
}
.header-applic-mail__body-line {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	padding-top: 4px;
	padding-right: 24px;
	position: relative;
}
.header-applic-mail__name {
	color: #616161;
	font-size: 12px;
	line-height: 1.3;
	text-decoration: none;
}
.header-applic-mail__copy {
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	width: 11px;
	height: 14px;
	background: #B9BEC2;
	-webkit-mask: url('i/bg-icon-copy.svg') center no-repeat;
	mask: url('i/bg-icon-copy.svg') center no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	transition: all .3s ease;
}

.header-applic__wa {
	background: var(--green);
}
.header-applic__wa::before {
	-webkit-mask-image: url('i/bg-icon-wa.svg');
	mask-image: url('i/bg-icon-wa.svg');
}
.header-applic__wa:hover {
	background: var(--blue);
}

.header-button {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 12px;
	position: relative;
	padding: 0 12px;
}
.header-button::before,
.header-button::after {
	content: '';
	position: absolute;
	top: 2px;
	width: 1px;
	height: 30px;
	border-left: 1px dashed #CCC;
}
.header-button::before {
	left: 0;
}
.header-button::after {
	right: 0;
}
.header-button__item {
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	min-width: 41px;
	min-height: 33px;
	padding: 8px;
	border: none;
	outline: none;
	position: relative;
	border-radius: 3px;
	background: var(--grey);
	color: var(--white);
	font-size: 12px;
	line-height: 1.3;
	text-decoration: none;
	text-align: center;
	transition: all .3s ease;
	cursor: pointer;
}
.header-button__item::before {
	content: '';
	position: absolute;
	top: calc(50% - 10px);
	left: calc(50% - 10px);
	width: 20px;
	height: 20px;
	background: #fff;
	-webkit-mask: url('i/bg-icon-search.svg') center no-repeat;
	mask: url('i/bg-icon-search.svg') center no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
}
.header-button__item--favorite::before {
	-webkit-mask-image: url('i/bg-icon-favorite.svg');
	mask-image: url('i/bg-icon-favorite.svg');
}
.header-button__item--cart::before {
	top: calc(50% - 16px);
	left: calc(50% - 16px);
	width: 32px;
	height: 32px;
	-webkit-mask-image: url('i/bg-icon-cart.svg');
	mask-image: url('i/bg-icon-cart.svg');
}
.header-button__item:hover {
	background: var(--blue);
}
.header-button__item-counter {
	position: absolute;
	top: -3px;
	right: -8px;
	border-radius: 4px;
	background: var(--red);
	padding: 0 5px;
	color: #fff;
	font-size: 8px;
	line-height: 10px;
}


.header__login {
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	min-width: 80px;
	min-height: 33px;
	padding: 8px;
	border: none;
	outline: none;
	position: relative;
	border-radius: 3px;
	background: var(--blue);
	color: var(--white);
	font-size: 12px;
	line-height: 1.3;
	text-decoration: none;
	text-align: center;
	transition: all .3s ease;
	cursor: pointer;
}
.header__login:hover {
	background: var(--red);
}




.header-bottom {
	background: #F8F8F8;
	border-top: 1px dashed #CCC;
}
.header__nav {
	position: relative;
	z-index: 50;
}
.header__nav ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	gap: 1rem;
	list-style: none;
}
.header__nav ul li {

}
.header__nav ul li a.active {
	color: var(--blue);
}
.header__nav ul li a {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	min-height: 25px;
	position: relative;
	color: #616161;
	font-size: 14px;
		font-size: 13px;
	line-height: 1.3;
	text-decoration: none;
	transition: all .3s ease;
}
.header__nav ul li a:hover {
	color: var(--blue);
}
.header__nav ul li a.active {
color: var(--blue);
}
.header__nav > ul > li > .sub-menu {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
		height: 500px;
	padding: 20px;
	background: #FBFBFB;
	border-radius: 0 3px 3px 3px;
	border: 1px solid #EFEFEF;
	opacity: 0;
	pointer-events: none;
	transition: all .3s ease;
}
.header__nav > ul > li:hover > .sub-menu {
	top: 25px;
	left: 0;
	opacity: 1;
	pointer-events: auto;
}
.header__nav > ul > li.menu-item-has-children > a::before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: var(--blue);
	opacity: 0;
	transition: all .3s ease;
}
.header__nav > ul > li.menu-item-has-children:hover > a::before {
	opacity: 1;
}
.header__nav ul > li > .sub-menu > li {
	width: 33.3%;
}
.header__nav ul > li > .sub-menu > li > a {
	display: block;
	width: 100%;
	padding: 5px 0 5px 20px;
	border-right: 1px dashed #CCC;
	position: relative;
}
.header__nav > ul > li > .sub-menu > li > a::before,
.header__nav > ul > li > .sub-menu > li  > .sub-menu > li > a::before {
	content: '';
	position: absolute;
	top: calc(50% - 8px);
	right: -8px;
	width: 16px;
	height: 16px;
	background: #FBFBFB;
	border-top: 1px dashed #CCC;
	border-left: 1px dashed #CCC;
	transform: rotate(-45deg);
	opacity: 0;
	transition: all .3s ease;
}
.header__nav > ul > li > .sub-menu > li:hover > a::before,
.header__nav > ul > li > .sub-menu > li  > .sub-menu > li:hover > a::before {
	opacity: 1;
}
.header__nav ul > li > .sub-menu > li > .sub-menu {
	position: absolute;
	top: 20px;
	left: 33.3%;
	display: block;
	width: 100%;
		height: 100%;	
		height: 500px;
	opacity: 0;
	pointer-events: none;
	transition: all .3s ease;
}
.header__nav ul > li > .sub-menu > li:hover > .sub-menu {
	opacity: 1;
	pointer-events: auto;
}
.header__nav ul > li > .sub-menu > li > .sub-menu > li > .sub-menu {
	position: absolute;
	top: 0;
	left: 33.3%;
	display: block;
	width: 100%;
	height: 100%;
	opacity: 0;
	pointer-events: none;
	transition: all .3s ease;
}
.header__nav ul > li > .sub-menu > li > .sub-menu > li:hover > .sub-menu {
	opacity: 1;
	pointer-events: auto;
}
.header__nav ul > li > .sub-menu > li > .sub-menu > li > .sub-menu a {
	border: none;
}


.header__nav-btn {
	display: none;
	width: 30px;
	height: 30px;
	border: none;
	background: transparent;
	outline: none;
	cursor: pointer;
}
.header__nav-btn span {
	display: inline-block;
	vertical-align: top;
	width: 100%;
	height: 2px;
	border-radius: 3px;
	background: #717171;
	margin: 7px 0 0;
	position: relative;
}
.header__nav-btn span::before, 
.header__nav-btn span::after {
	content: "";
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	border-radius: 3px;
	background: #717171;
	transition: all 0.4s ease;
}
.header__nav-btn span::before {
	top: -7px;
}
.header__nav-btn span::after {
	bottom: -7px;
}
.nav-active .header__nav-btn span {
	background: transparent;
}
.nav-active .header__nav-btn span::before {
	top: 0;
	-webkit-transform: rotate(45deg);
}
.nav-active .header__nav-btn span::after {
	bottom: 0;
	-webkit-transform: rotate(-45deg);
}









/* Search ----------------------------------------------------------------------------- */
.search {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
	transition: all .3s ease;
	z-index: 80;
}
.search-open .search {
	opacity: 1;
	pointer-events: auto;
	visibility: visible;
}
.search .container {
	z-index: 20;
}
.search__wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	background: #fff;
	border-radius: 3px;
	padding: 6px;
	margin-top: 120px;
	transition: all .3s ease;
}
.search-open .search__wrap {
	transform: translateY(20px);
}
.search__select {
	width: calc(230px);
	height: 32px;
	border-right: 1px solid #CCC;
	overflow: hidden;
	position: relative;
}
.search__select::before {
	content: '';
	position: absolute;
	top: calc(50% - 3px);
	right: 30px;
	width: 10px;
	height: 6px;
	background: #435159;
	-webkit-mask: url("i/bg-icon-arrow-down.svg") center no-repeat;
	mask: url("i/bg-icon-arrow-down.svg") center no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	pointer-events: none;
	transition: all .3s ease;
}
.search__select:hover::before {
	background: var(--blue);
}
.search__select select {
	width: calc(100% + 40px);
	height: calc(100% + 4px);
	margin-top: -2px;
	margin-left: -2px;
	padding-left: 16px;
	border: none;
	outline: none;
	color: #435159;
	font-size: 14px;
}
.search__input {
	width: calc(100% - 300px);
	height: 32px;
	border: none;
	outline: none;
	background-color: transparent;
	padding-left: 8px;
	padding-right: 8px;
}
.search__submit {
	display: block;
	width: 40px;
	height: 32px;
	border: none;
	outline: none;
	background: var(--grey) url("i/bg-icon-search.svg") center no-repeat;
	-webkit-background-size: 20px 20px;
	background-size: 20px 20px;
	border-radius: 3px;
	transition: all .3s ease;
	cursor: pointer;
}
.search__submit:hover {
	background-color: var(--red);
}
.search__overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: .1;
}






/* mob-nav ----------------------------------------------------------------------------- */
.mob-nav {
	position: fixed;
	top: 64px;
	left: 0;
	width: 100%;
	height: calc(100vh - 64px);
	overflow: hidden;
	overflow-y: visible;
	padding: 20px;
	background: #fff;
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
	transition: all .3s ease;
	z-index: 80;
}
.nav-active .mob-nav {
	opacity: 1;
	pointer-events: auto;
	visibility: visible;
}
.mob-nav__content {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	padding-bottom: 24px;
}

.mob-nav__menu ul {
	list-style: none;
}
.mob-nav__menu a {
	display: block;
	padding: 5px 0;
	color: #333;
	font-size: 16px;
	line-height: 1.3;
}
.mob-nav__menu ul .sub-menu {
	padding-left: 24px;
}








/* breadcrumbs ----------------------------------------------------------------------------- */
.breadcrumbs {
	padding-top: 8px;
	padding-bottom: 8px;
	font-size: 12px;
	line-height: 1.3;
}
.breadcrumbs a {
	display: inline-block;
	margin-right: 24px;
	position: relative;
	color: #ACACAC;
	text-decoration: none;
	transition: all .3s ease;
}
.breadcrumbs a::before {
	content: '';
	position: absolute;
	top: calc(50% - 4px);
	right: -16px;
	width: 4px;
	height: 8px;
	background: #C4C4C4;
	-webkit-mask: url("i/bg-icon-arrow-slider.svg") center no-repeat;
	mask: url("i/bg-icon-arrow-slider.svg") center no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	pointer-events: none;
}
.breadcrumbs a:hover {
	color: var(--blue);
}
.breadcrumbs__last {
	color: var(--blue);
}



/* Hero-slider ----------------------------------------------------------------------------- */
.hero-slider {
	position: relative;
	overflow: hidden;
	    z-index: 10;
}
.hero-slider .slick-track {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
}
.hero-slider-item {
	display: block;
	width: 100%;
	position: relative;
}
.hero-slider-item__ins {
	display: block;
	width: 100%;
	padding-top: 34.8%;
	position: relative;
}
.hero-slider-item__ins img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 30;
}

.hero-slider .slick-arrow {
	position: absolute;
	top: calc(50% - 12px);
    width: 35px;
    height: 35px;
    border-radius: 15%;
	background: rgba(255, 255, 255, 0.8);
	border: none;
	outline: none;
	font-size: 0;
	cursor: pointer;
	z-index: 40;
}
.hero-slider .slick-prev {
	left: 40px;
}
.hero-slider .slick-next {
	right: 40px;
}
.hero-slider .slick-arrow:hover {
	background: var(--black);
}
.hero-slider .slick-arrow::before {
	content: '';
	position: absolute;
	top: calc(52% - 7px);
    left: calc(52% - 4px);
	width: 8px;
	height: 14px;
	background: var(--black);
	-webkit-mask: url('i/bg-icon-slide-arrow.svg') center no-repeat;
	mask: url('i/bg-icon-slide-arrow.svg') center no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
}

.hero-slider .slick-prev::before {
	transform: rotate(180deg);
}
.hero-slider .slick-arrow:hover::before {
	background: var(--white);
}


.hero-slider .slick-dots {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	align-items: center;
	position: absolute;
	bottom: 25px;
	left: 40px;
	gap: 8px;
	list-style: none;
	z-index: 40;
}
.hero-slider .slick-dots li button {
	display: block;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	border: 2px solid var(--white);
	background-color: transparent;
	font-size: 0;
	cursor: pointer;
}
.hero-slider .slick-dots li.slick-active button {
	border-color: var(--red);
}
.hero-slider .slick-dots li button:hover {
	background: var(--white);
}



/* Product ----------------------------------------------------------------------------- */
.product {
	padding-top: 8px;
	padding-bottom: 24px;
}

.product-gallery {
	width: 42.8%;
}
.product-photo {
	display: block;
	width: 100%;
	overflow: hidden;
}
.product-photo .slick-track {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
}
.product-photo__item {
	display: block;
	width: 100%;
	position: relative;
	text-decoration: none;
}
.product-photo__item-ins {
	display: block;
	width: 100%;
	padding-top: 100%;
	position: relative;
}
.product-photo__item-ins img {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.product-photo__title {
	color: #ACACAC;
	font-size: 14px;
	line-height: 1.3;
}

.product-thumb {
	position: relative;
	overflow: hidden;
}
.product-thumb .slick-track {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	width: calc(100% + 10px);
	margin-left: -5px;
}
.product-thumb__item {
	width: calc(16.6% - 10px);
	margin: 0 5px 10px;
	border-radius: 3px;
	border: 1px solid transparent;
}
.product-thumb__item.active {
	border-color: #ACACAC;
}
.product-thumb__item-ins {
	display: block;
	width: 100%;
	padding-top: 100%;
	position: relative;
	cursor: pointer;
}
.product-thumb__item-ins img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
}



.product-block {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	width: 54.8%;
}
.product-block__top {
	width: 100%;
	padding-bottom: 20px;
}
.product__head {
	width: 100%;
	margin-bottom: 8px;
	color: #333;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.3;
}
.product__sku-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
}
.product__sku {
	min-width: 220px;
	padding-right: 20px;
	color: #ACACAC;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.3;
}
.product__favorite {
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	width: 25px;
	height: 20px;
	padding: 8px;
	border: none;
	outline: none;
	position: relative;
	border-radius: 3px;
	background: var(--grey);
	color: var(--white);
	font-size: 12px;
	line-height: 1.3;
	text-decoration: none;
	text-align: center;
	transition: all .3s ease;
	cursor: pointer;
}
.product__favorite::before {
	content: '';
	position: absolute;
	top: calc(50% - 5px);
	left: calc(50% - 6px);
	width: 12px;
	height: 10px;
	background: #fff;
	-webkit-mask: url('i/bg-icon-favorite.svg') center no-repeat;
	mask: url('i/bg-icon-favorite.svg') center no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
}
.product__favorite:hover,
.product__favorite.active {
	background: var(--red);
}


.product-size {
	width: 42.8%;
	border-bottom: 1px dashed #CCC;
}
.product-size__box {
	border-bottom: 1px dashed #CCC;
	margin-bottom: 12px;
	padding-right: 20px;
	padding-bottom: 4px;
	position: relative;
}
.product-size__box:last-child {
	border-bottom: none;
}
.product-size__head {
	margin-bottom: 8px;
	color: #333333;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.3;
}
.product-size__line {
	position: relative;
	margin-bottom: 2px;
}
.product-size__line input {
	display: none;
}
.product-size__line-text {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
	border: 1px solid transparent;
	border-radius: 3px;
	padding: 2px 12px;
	color: #333;
	font-size: 14px;
	line-height: 1.2;
	transition: all .3s ease;
	cursor: pointer;
}
.product-size__line input:checked + .product-size__line-text {
	border-color: #008BF0;
}
.offerCount .product-size__line.is-active-tier .product-size__line-text {
	background: #f2f9ff;
	border-color: #008BF0;
}
.product-size__line-text span {
	display: inline-block;
	vertical-align: middle;
	min-width: 80px;
	margin-left: auto;
	text-align: right;
}

.product-size__color-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
}
.product-size__color {
	display: block;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	position: relative;
	margin: 0 12px 12px 0;
	border: 1px solid #696969;
	font-size: 0;
}
.product-size__color input {
	display: none;
}
.product-size__color-view {
	display: block;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	border: 2px solid transparent;
	transition: all .3s ease;
	cursor: pointer;
}
.product-size__color input:checked + .product-size__color-view {
	border-color: #000000;
}


.product-qty {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	padding-bottom: 16px;
}
.product-qty__btn {
	display: block;
	width: 16px;
	height: 16px;
	border: none;
	outline: none;
	background-color: transparent;
	color: #333;
	font-size: 16px;
	font-weight: bold;
	line-height: 16px;
	text-align: center;
	text-decoration: none;
	transition: all .3s ease;
	cursor: pointer;
}
.product-qty__btn:hover {
	color: var(--blue);
}
.product-qty__box {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	width: 120px;
	border: 1px solid #008BF0;
	border-radius: 3px;
	color: #333;
	font-size: 14px;
}
.product-qty__box input {
	display: inline-block;
    vertical-align: middle;
    width: 118px;
    padding-left: 10px;
    border: none;
    outline: none;
    background-color: transparent;
    color: #333;
    font-size: 14px;
    text-align: center;
}
.product-qty__result {
	color: #333;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.3;
}
.product-min-order-hint {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
	width: 100%;
	margin: -8px 0 14px;
	color: #666;
	font-size: 13px;
	line-height: 1.35;
	text-align: right;
}
.product-min-order-hint.is-warning {
	color: #d71920;
	font-weight: 600;
}
.product-unavailable {
	width: 100%;
	margin: 12px 0 18px;
	padding: 14px 16px;
	border: 1px solid #f0c7c9;
	border-radius: 4px;
	background: #fff6f6;
	color: #333;
	font-size: 14px;
	line-height: 1.45;
	text-align: center;
}
.product-unavailable__title {
	margin-bottom: 4px;
	color: var(--red);
	font-size: 16px;
	font-weight: 600;
}
.product-unavailable__text {
	color: #666;
}
.product__checkout-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	padding-bottom: 16px;
}
.product__checkout {
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	min-height: 32px;
	padding: 4px 16px;
	border-radius: 3px;
	background: var(--red);
	color: var(--white);
	font-size: 12px;
	line-height: 1.3;
	text-decoration: none;
	transition: all .3s ease;
	border: 0px solid var(--black);
    cursor: pointer;
}
.product__checkout:hover {
	background: var(--red-light);
}

#product-price{
	width: 100%;
    font-size: 22px;
    text-align: center;
    font-weight: 500;
    padding: 15px 10px;
}





.product-info {
	width: 57%;
	padding-left: 20px;
	padding-bottom: 16px;
	border-left: 1px dashed #CCC;
	border-bottom: 1px dashed #CCC;
}
.product-tabs__caption {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	gap: 24px;
	list-style: none;
	padding-bottom: 24px;
}
.product-tabs__caption li {
	color: #6B6B6B;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.3;
	transition: all .3s ease;
	cursor: pointer;
}
.product-tabs__caption li:not(.active):hover {
	color: var(--red);
}
.product-tabs__caption li.active {
	color: var(--blue);
	cursor: default;
}

.product-tabs__content {
	display: none;
}
.product-tabs__content.active {
	display: block;
}













/* Recent ----------------------------------------------------------------------------- */
.recent {
	padding-top: 16px;
	padding-bottom: 40px;
	overflow: hidden;
}
.recent__head {
	margin-bottom: 20px;
	color: #333;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.3;
}
.recent__list {
	width: calc(100% + 16px);
	margin-left: -8px;
	position: relative;
}
.recent__list .slick-track {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
}
.recent__list .slick-arrow {
	position: absolute;
	top: -48px;
	width: 30px;
	height: 30px;
	border: none;
	outline: none;
	background: #D9D9D9;
	border-radius: 50%;
	font-size: 0;
	transition: all .3s ease;
	cursor: pointer;
}
.recent__list .slick-arrow:not(.slick-disabled):hover {
	background: var(--blue);
}
.recent__list .slick-arrow.slick-disabled {
	opacity: .3;
	cursor: default;
}
.recent__list .slick-arrow::before {
	content: '';
	position: absolute;
	top: calc(50% - 6px);
	left: calc(50% - 3px);
	width: 6px;
	height: 12px;
	background: #333;
	-webkit-mask: url("i/bg-icon-arrow-slider.svg") center no-repeat;
	mask: url("i/bg-icon-arrow-slider.svg") center no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	transition: all .3s ease;
}
.recent__list .slick-arrow:hover::before {
	background: #fff;
}
.recent__list .slick-prev {
	left: 156px;
}
.recent__list .slick-prev::before {
	transform: rotate(180deg);
}
.recent__list .slick-next {
	left: 206px;
}

.recent-item {
	width: calc(25% - 16px);
	margin: 0 8px;
	border: 1px solid #F5F5F5;
	border-radius: 3px;
}
.recent-item__link {
	display: block;
	width: 100%;
	text-decoration: none;
}
.recent-item__thumb {
	display: block;
	width: 100%;
	position: relative;
}
.recent-item__thumb-ins {
	display: block;
	width: 100%;
	padding-top: 100%;
	position: relative;
}
.recent-item__thumb-ins img {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.recent-item__title {
	display: block;
	min-height: 40px;
	padding: 4px 20px;
	color: #333333;
	font-size: 14px;
	line-height: 1.3;
	transition: all .3s ease;
}
.recent-item__link:hover .recent-item__title {
	color: var(--blue);
}



/* Cart ----------------------------------------------------------------------------- */
.cart {
	padding-top: 1rem;
	padding-bottom: 4rem;
	overflow: visible;
}
.cart .container {
	overflow: visible;
}
.cart__head {
	text-align: left;
}
.cart__wrapper {
	align-items: stretch;
}
.cart-checkout {
	width: 43%;
}
.cart-checkout__head {
	display: block;
	vertical-align: middle;
	width: 100%;
	overflow: hidden;
	margin-top: 32px;
	margin-bottom: 12px;
	font-weight: 600;
	font-size: 17px;
	line-height: 40px;
}
.cart-checkout__login {
	float: right;
}

.cart-checkout__label {
	overflow: hidden;
	margin-bottom: 8px;
	position: relative;
}
.cart-checkout__check-cost {
	float: right;
}
.cart-checkout__label label {
	display: block;
	width: 100%;
	overflow: hidden;
	margin-bottom: 5px;
	font-size: 14px;
	line-height: 1.4;
}
.cart-checkout__label input,
.cart-checkout__label textarea {
	display: block;
	width: 100%;
	min-height: 40px;
	margin-bottom: 8px;
	background: #FFF;
	border: 1px solid #E6E6E6;
	border-radius: 5px;
	padding-left: 12px;
	padding-right: 8px;
}
.cart-checkout__label textarea {
	min-height: 80px;
	resize: none;
	padding-top: 4px;
}
.cart-checkout__label-require {
	font-size: 11px;
	line-height: 1.36;
	color: #959595;
}
.cart-checkout__label-email-attention {
	float: right;
	font-size: 14px;
	line-height: 1.3;
	color: #969696;
}
.cart-checkout__label-email-attention span {
	color: #E87928;
}

.cart-checkout__check-list {
	padding-bottom: 12px;
}
.cart-checkout__check {
	margin-bottom: 8px;
}
.cart-checkout__check label {
	display: block;
}
.cart-checkout__check input {
	display: none;
}
.cart-checkout__check-text {
	display: block;
	min-height: 17px;
	padding-left: 24px;
	position: relative;
	font-size: 14px;
	line-height: 18px;
	cursor: pointer;
}
.cart-checkout__check-text::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 17px;
	height: 17px;
	border: 1px solid #E6E6E6;
	border-radius: 5px;
	transition: all 0.3s ease;
}
.cart-checkout__check input:checked + .cart-checkout__check-text::before {
	border-color: #008BF0;
}
.cart-checkout__check-text::after {
	content: '';
	position: absolute;
	top: 5px;
	left: 4px;
	width: 10px;
	height: 8px;
	-webkit-background: url('i/bg-icon-check.svg') center no-repeat;
	background: url('i/bg-icon-check.svg') center no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	opacity: 0;
	transition: all 0.3s ease;
}
.cart-checkout__check input:checked + .cart-checkout__check-text::after {
	opacity: 1;
}

.cart-checkout__result {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin-top: 32px;
	padding-top: 12px;
	padding-bottom: 20px;
	border-top: 1px solid #CACDD1;
}
.cart-checkout__label {
	font-size: 18px;
	line-height: 1.3;
}
.cart-checkout__value {
	font-weight: 600;
	font-size: 18px;
	line-height: 1.4;
}
.cart-checkout__button-wrap {
	text-align: right;
}




.cart__list-wrapper {
	width: 53%;
}
.cart__list {
	position: sticky;
	top: 20px;
	width: 100%;
	padding: 24px 48px;
	border-radius: 5px;
}
.cart-item {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 32px;
}
.cart-item__thumb {
	width: 28%;
}
.cart-item__thumb img {
	display: block;
	width: 100%;
	height: auto;
}
.cart-item__info {
	width: 65%;
	position: relative;
}
.cart-item__delete {
	position: absolute;
	top: 5px;
	right: 0;
}
.cart-item__delete button {
	display: block;
	width: 15px;
	height: 15px;
	border: none;
	outline: none;
	background: #000;
	-webkit-mask: url('i/bg-icon-close.svg') center no-repeat;
	mask: url('i/bg-icon-close.svg') center no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	font-size: 0;
	cursor: pointer;
	transition: all .3s ease;
} 
.cart-item__delete button:hover {
	background: #E87928;
}
.cart-item__name {
	display: block;
	padding-right: 30px;
	margin-bottom: 15px;
	font-size: 14px;
	line-height: 1.3;
	text-decoration: none;
}
.cart-item__text {
	min-height: 90px;
	font-size: 14px;
	line-height: 1.3;
}
.cart-item__bottom {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
}
.cart-item__price {
	margin-right: 32px;
	font-weight: 600;
	font-size: 18px;
	line-height: 1.3;
}
.cart-item__quantity {
	margin-right: 0;
}


.cart-promocode {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	padding-top: 12px;
}
.cart-promocode__input {
	width: 340px;
	height: 40px;
	border-radius: 4px;
	padding-left: 16px;
	padding-right: 8px;
	margin-right: 32px;
}
.cart-promocode__submit {
	min-height: 40px;
	border-radius: 4px;
	line-height: 1.2;
}
.cart-promocode__submit:hover {
	background: #fff;
	color: #000;
}







/*single-quantity*/

.single-quantity {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	width: 126px;
	height: 40px;
	border: 1px solid #222;
	border-radius: 5px;
	margin-right: 25px;
}
.single-quantity__minus,
.single-quantity__plus {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	width: 33.3%;
	height: 38px;
	text-align: center;
	font-size: 28px;
	color: #222;
	cursor: pointer;
}
.single-quantity__minus {
	padding-bottom: 4px;
}
.single-quantity__minus:hover,
.single-quantity__plus:hover {
	background: #222;
	color: #fff;
}
.single-quantity__input {
	width: 33.3%;
	height: 38px;
	background-color: transparent;
	border: none;
	outline: none;
	font-weight: 600;
	font-size: 20px;
	color: #222;
	text-align: center;
}
input[type="number"] {
    -moz-appearance: textfield;
}



.hits {
    padding-top: 5px;
    padding-bottom: 20px;
}

.product__list {
    justify-content: flex-start;
    align-items: stretch;
    width: calc(100% + 40px);
    margin-left: -20px;
}
.flx {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}
.product-item {
    width: calc(25% - 40px);
    margin: 0 20px 40px;
    border: 1px solid rgb(217, 217, 217);
    border-radius: 2px;
    padding: 20px 16px;
}
.product-item__top {
    margin-bottom: 20px;
    position: relative;
}
.product-item__slider.slick-initialized {
    display: block;
}
.product-item__slider, .product-item__slider .slick-track {

    overflow: hidden;
    position: relative;
}
.product-item__slide-item-box {
    display: block;
    width: 100%;
    padding-top: 100%;
    position: relative;
}
.product-item__slide-item-box img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    /* height: 100%; */
    object-fit: cover;
    /* object-fit: none; */
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}
.product-item__title {
    display: block;
    min-height: 56px;
    padding-bottom: 4px;
    color: rgb(35, 35, 35);
    font-size: 17px;
    line-height: 1.3;
    text-decoration: none;
    transition: all .3s ease;
}
.product-item__cat{
	display: block;
    min-height: 17px;
	    min-height: 47px;
    padding-bottom: 4px;
    color: rgb(35, 35, 35);
    font-size: 14px;
}


.product-item__wishlist {
	position: absolute;
	top: 12px;
	right: 10px;
	/*z-index: 50;*/
}
.product-item__wishlist a {
	display: block;
	width: 38px;
	height: 38px;
	border: 1px solid rgb(255, 255, 255);
		border: 1px solid #d9d9d9;
	border-radius: 1px;
	font-size: 0;
}
.product-item__wishlist a::before {
	content: '';
	position: absolute;
	top: calc(50% - 9px);
	left: calc(50% - 10px);
	width: 20px;
	height: 18px;
	background: var(--white);
		background: #d9d9d9;
	-webkit-mask: url("i/bg-icon-heart.svg") center no-repeat;
	mask: url("i/bg-icon-heart.svg") center no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
}
.product-item__wishlist a.add::before {
	-webkit-mask: url("i/bg-icon-heart-filled.svg");
	mask: url("i/bg-icon-heart-filled.svg");
}
.product-item__wishlist a:hover {
	background: var(--red);
}

.head {
    margin-bottom: 24px;
    font-size: 36px;
    font-weight: bold;
    line-height: 1.3;
}
.top-line {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
	margin-bottom: 0px;
}
.button {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    min-width: 215px;
    min-height: 48px;
    border: 1px solid rgb(217, 217, 217);
    background: var(--white);
    border-radius: 3px;
    color: rgb(101, 101, 101);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition: all .3s ease;
}
.button:hover {
	background: var(--blue);
	color: var(--white);
}
.button_more {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
	padding: 4px 16px;
    border: 1px solid rgb(217, 217, 217);
    background: var(--white);
    border-radius: 3px;
    color: rgb(101, 101, 101);
    font-weight: 400;
    transition: all .3s ease;
}
.button_more:hover {
	background: var(--red);
	color: var(--white);
}
.product-item__add-to-cart{
	display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    min-width: 100px;
    min-height: 28px;
    padding: 4px 16px;
    border: none;
    outline: none;
    background: var(--blue);
    border-radius: 3px;
    color: var(--white);
    font-size: 12px;
    line-height: 1.3;
    text-decoration: none;
    text-align: center;
    transition: all .3s ease;
    cursor: pointer;
}
.product-item__add-to-cart:hover {
	background: var(--red);
}



/* Catalog ----------------------------------------------------------------------------- */
.catalog-filter form{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 15px;
	padding-bottom: 25px;
}
.catalog-filter fieldset{
	border: 0;
}
.catalog-filter__item {
	position: relative;
}
.catalog-filter__select {
	padding: 8px 16px;
	border-radius: 2px;
	background: rgba(217, 217, 217, 0.6);
	color: rgb(37, 37, 37);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.1;
	cursor: pointer;
	transition: all .3s ease;
}
.catalog-filter__select:hover {
	color: var(--red);
}
.catalog-filter__select::after {
	content: '';
	display: inline-block;
	vertical-align: middle;
	margin-left: 10px;
	width: 8px;
	height: 14px;
	background: var(--black);
	-webkit-mask: url('i/bg-icon-slide-arrow.svg') center no-repeat;
	mask: url('i/bg-icon-slide-arrow.svg') center no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	transform: rotate(90deg);
}
.catalog-filter__item.active .catalog-filter__select::after {
	transform: rotate(-90deg);
}

.catalog-filter__body {
	position: absolute;
	top: 20px;
	left: 0;
	max-width: 190px;
	opacity: 0;
	padding: 8px 12px;
	border-radius: 2px;
	background: rgb(217, 217, 217);
	pointer-events: none;
	transition: all .3s ease;
	z-index: 999;
}
.catalog-filter__item.active .catalog-filter__body {
	top: 40px;
	opacity: 1;
	pointer-events: auto;
}

.catalog-filter__body--price {
	min-width: 220px;
}
.catalog-filter__body--price .mse2_number_inputs{
	    display: flex;
}
.catalog-filter__body--price label input {
    width: 65%;
    padding: 0px 5px;
    border-color: #000;
    border: 3px;
    border-radius: 5px;
    height: 26px;
}
.catalog-filter__price-from-to {

}
.catalog-filter__price-from,
.catalog-filter__price-to {

}
ion-range {
	--bar-background: rgba(101, 101, 101, 0.8);
	--bar-background-active: var(--red);
	--bar-height: 2px;
	--bar-border-radius: 2px;
	--knob-background: var(--red);
	--knob-size: 20px;
	--pin-background: var(--red);
	--pin-color: #fff;
}


.catalog-filter__checkbox {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 8px;
}
.catalog-filter__checkbox-item {
	display: block;
	width: 100%;
}
.catalog-filter__checkbox-item label {
	display: block;
	width: 100%;
}
.catalog-filter__checkbox-item label:hover {
	    color: var(--red);
}
.catalog-filter__checkbox-item input {
	display: none;
}
.catalog-filter__checkbox-item-text {
	display: block;
	padding-left: 20px;
	position: relative;
	cursor: pointer;
}
.catalog-filter__checkbox-item-text::before {
	content: '';
	position: absolute;
	top: 6px;
	left: 0;
	width: 12px;
	height: 12px;
	border: 1px solid var(--black);
	border-radius: 50%;
	transition: all .3s ease;
}
.catalog-filter__checkbox-item input:checked + .catalog-filter__checkbox-item-text::before {
	background: var(--red);
	border-color: var(--red);
}
.catalog-filter__checkbox-item-text::after {
	content: '';
	position: absolute;
	top: 8px;
	left: 2px;
	width: 8px;
	height: 8px;
	background: var(--white);
	border-radius: 50%;
	opacity: 0;
	transition: all .3s ease;
	z-index: 5;
}
.catalog-filter__checkbox-item input:checked + .catalog-filter__checkbox-item-text::after {
	opacity: 1;
}


.catalog-filter__color {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 8px;
	min-width: 142px;
}
.catalog-filter__color-item {
	display: block;
}
.catalog-filter__color-item label {
	display: block;
}
.catalog-filter__color-item input {
	display: none;
}
.catalog-filter__color-item-text {
	display: block;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	border: 1px solid transparent;
	font-size: 0;
	cursor: pointer;
	transiton: all .3s ease;
}
.catalog-filter__color-item input:checked + .catalog-filter__color-item-text {
	border-color: var(--black);
}


.catalog-param {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	gap: 15px;
	padding-bottom: 50px;
}
.catalog-param__item {
	/*display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	padding: 8px 10px;
	border: 1px solid rgba(205, 205, 205, 0.6);
	border-radius: 2px;
	color: rgb(101, 101, 101);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.1;*/
}
.mse2_selecter_title{
	padding-bottom: 10px;
}
.catalog-param__label {
	margin-right: 4px;
}
.catalog-param__value {
	color: rgb(37, 37, 37);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.1;
}
.catalog-param__delete {
	display: inline-block;
	vertical-align: middle;
	width: 16px;
	height: 16px;
	margin-left: 5px;
	background: var(--black);
	-webkit-mask: url('i/bg-icon-close.svg') center no-repeat;
	mask: url('i/bg-icon-close.svg') center no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	transition: all .3s ease;
	cursor: pointer;
}
.catalog-param__delete:hover {
	background: var(--red);
}
.btn-light{
	display: block;
    width: 100%;
    height: 34px;
    padding: 0 10px;
    border-radius: 2px;
    background: var(--red);
    border: 1px solid var(--red);
    position: relative;
    font-size: 16px;
    color: #fff;
    cursor: pointer;
    transition: all .3s ease;
}
.btn-light:hover {
	background: var(--white);
	color: var(--black);
}
.btn-light::before {
    content: '';
    position: absolute;
    top: calc(50% - 13px);
    left: calc(50% - 12px);
    width: 24px;
    height: 27px;
    background: var(--white);
    -webkit-mask: url(i/bg-btn-light.svg) center no-repeat;
    mask: url(i/bg-btn-light.svg) center no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    transition: all .3s ease;
}



.pagenavi {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	gap: 16px;
	padding-top: 40px;
	padding-bottom: 80px;
}
.pagenavi li {
    list-style-type: none;
    line-height: 1.5;
}
.pagenavi a,
.pagenavi span {
	display: block;
	min-width: 44px;
	min-height: 44px;
	padding: 8px;
	border-radius: 2px;
	border: 1px solid transparent;
	background: transparent;
	color: rgb(35, 35, 35);
	font-size: 18px;
	font-weight: 700;
	line-height: 28px;
	text-decoration: none;
	text-align: center;
	transition: all .3s ease;
}
.pagenavi a.prev,
.pagenavi a.next {
	position: relative;
}
.pagenavi a.prev::before,
.pagenavi a.next::before {
	content: '';
	position: absolute;
	top: calc(50% - 7px);
	left: calc(50% - 4px);
	width: 8px;
	height: 14px;
	background: var(--black);
	-webkit-mask: url('i/bg-icon-slide-arrow.svg') center no-repeat;
	mask: url('i/bg-icon-slide-arrow.svg') center no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
}
.pagenavi a.prev::before {
	transform: rotate(180deg);
}
.pagenavi span.current {
	/*background: rgba(190, 30, 45, 0.1);*/
	background: var(--blue);
	color: #fff
}
.pagenavi a:hover {
	border-color: var(--red);
	border-color: var(--blue);
}


.category-wrapper a{
	color: var(--black);
    font-size: 14px;
	 transition: all .3s ease;
}
.category-wrapper a:hover{
	color: var(--blue);
}
.category-wrapper .category-list{
	display: block;
    min-height: 22px;
    padding-bottom: 5px;
    line-height: 1.3;
    text-decoration: none;
}
.category-wrapper .category-list {
    width: calc(25% - 40px);
    margin: 0 20px 40px;
    border: 1px solid rgb(217, 217, 217);
    border-radius: 2px;
    padding: 10px 10px;
	    height: 33em;
		height: 26em;
}

.category-wrapper .subcategory-list .category-list{
    width: calc(100% - 10px);
	margin: 0 0px 0px;
	border: 0px;
	border-radius: 0px;
	padding: 0px 0px;
		height: auto;
}
.category-list img{
    width: 100%;
    border-radius: 0px;
}
.category-list .category-children-img{
	padding: 0 0 10px 0;
}
.subcategory-list{
	padding: 10px 0;
}


/* Footer ----------------------------------------------------------------------------- */
.footer {
	padding: 20px 0 0;
	background: #FAFAFA;
}
.footer-top {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	padding-top: 20px;
	padding-bottom: 20px;
	border-top: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
}
.footer-info {
	width: 18%;
}
.footer-logo {
	display: block;
	text-decoration: none;
	margin-bottom: 16px;
}
.footer-logo__name {
	display: block;
	color: #616161;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	text-transform: uppercase;
}
.footer-logo__name span {
	color: #767676;
}
.footer-logo__desc {
	display: block;
	color: #7E7E7E;
	font-size: 10px;
	line-height: 1.1;
}

.footer__rating {
	margin-bottom: 20px;
}
.footer__rating img {
	display: block;
	max-width: 100%;
	height: auto;
}

.footer-social {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	gap: 20px;
	margin-bottom: 20px;
}
.footer-social__item {
	display: block;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	position: relative;
	background: url('i/bg-icon-tg.svg') center no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	transition: all .3s ease;
}
.footer-social__item:hover {
	transform: scale(1.2);
}
.footer-social__item--vk {
	background-image: url('i/bg-icon-vk.svg');
}
.footer-social__item--yt {
	background-image: url('i/bg-icon-yt.svg');
}

.footer__copyright {
	color: #616161;
	font-size: 12px;
}

.footer-nav {
	width: 34%;
	padding-left: 20px;
	border-left: 1px dashed #ccc;
}
.footer-nav--info {
	width: 21%;
}
.footer__head {
	margin-bottom: 12px;
	color: #435159;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.3;
}
.footer-nav ul {
	list-style: none;
}
.footer-nav ul li {
	margin-bottom: 5px;
}
.footer-nav ul li a {
	display: block;
	color: #616161;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.3;
	text-decoration: none;
	transition: all .3s ease;
}
.footer-nav ul li a:hover {
	color: var(--blue);
}

.footer-contact {
	width: 26.4%;
	padding-left: 20px;
	border-left: 1px dashed #ccc;
}
.footer-contact__phone {
	display: block;
	margin-bottom: 8px;
	color: #435159;
	font-size: 14px;
	line-height: 1.3;
	text-decoration: none;
}
.footer-contact__time {
	margin-bottom: 8px;
	color: #435159;
	font-size: 12px;
	line-height: 1.3;
}
.footer-contact__address {
	margin-bottom: 16px;
	color: #435159;
	font-size: 12px;
	line-height: 1.3;
}
.footer-contact__address span {
	display: block;
	font-size: 10px;
}
.footer-contact__bottom {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
}
.footer-contact__applic {
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	min-width: 100px;
	min-height: 32px;
	padding: 4px 16px;
	border: none;
	outline: none;
	background: var(--blue);
	border-radius: 3px;
	color: #fff;
	font-size: 12px;
	line-height: 1.3;
	text-decoration: none;
	text-align: center;
	transition: all .3s ease;
	cursor: pointer;
}
.footer-contact__applic:hover {
	background: var(--red);
}
.footer-contact__or {
	width: 120px;
	margin: 4px 0 0 16px;
	color: #616161;
	font-size: 10px;
	line-height: 1.2;
}
.footer-contact__mail {
	display: block;
	width: 100%;
	margin-top: 10px;
	color: #616161;
	font-size: 24px;
	line-height: 1.3;
	text-decoration: none;
}



.footer-bottom {
	padding-top: 10px;
	padding-bottom: 10px;
}
.footer__attention {
	width: 100%;
	color: #616161;
	font-size: 12px;
	line-height: 1.3;
	text-align: center;
}






/* Всплывающие окна */
.overlay {
	display: none;
	background-color: #000;
	opacity: .7;
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 999
}
.overlay.active {
	display: block;
}

.popup {
	display: none;
	position: relative;
	width: 92%;
	max-width: 610px;
	max-height: 96vh;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
	border-radius: 12px;
	padding: 20px 32px;
	background: #fff;
	overflow: hidden;
	overflow-y: visible;
	z-index: 9999;
}
.popup__close {
	position: absolute;
	top: 20px;
	right: 32px;
	width: 22px;
	height: 22px;
	background: #333;
	-webkit-mask: url("i/bg-icon-close.svg") center no-repeat;
	mask: url("i/bg-icon-close.svg") center no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	transition: all .3s ease;
	cursor: pointer;
}
.popup__close:hover {
	background: var(--red);
}
.popup__head {
	margin-bottom: 20px;
	color: #333;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.3;
}
.popup__label {
	position: relative;
	margin-bottom: 15px;
}
.popup__label label {
	display: block;
	margin-bottom: 8px;
	color: #333;
	font-size: 16px;
	line-height: 1.3;
}
.popup__label-email {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
.popup__label-email-info {
	color: #969696;
	font-size: 14px;
	line-height: 1.3;
}
.popup__label-email-info span {
	color: #008BF0;
}
.popup__label input,
.popup__label textarea {
	display: block;
	width: 100%;
	height: 40px;
	padding-left: 16px;
	padding-right: 8px;
	border: 1px solid #E6E6E6;
	background-color: #FFF;
	border-radius: 5px;
	outline: none;
}
.popup__label textarea {
	height: 120px;
	resize: none;
	padding-top: 10px;
}
.popup__label input.error,
.popup__label textarea.error {
	border-color: #c00;
}
.popup__accept {
	position: relative;
}
.popup__accept input {
	display: none;
}
.popup__accept-text {
	display: block;
	position: relative;
	padding-left: 24px;
	color: #333;
	font-size: 12px;
	line-height: 16px;
	cursor: pointer;
}
.popup__accept-text::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 16px;
	height: 16px;
	background: #fff;
	border: 1px solid var(--blue);
	border-radius: 4px;
}
.popup__accept-text::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 16px;
	height: 16px;
	background: url("i/bg-icon-check.svg") center no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	opacity: 0;
	transition: all .3s ease;
	z-index: 5;
}
.popup__accept input:checked + .popup__accept-text::after {
	opacity: 1;
}

.popup__req-text {
	padding-top: 4px;
	padding-bottom: 5px;
	color: #959595;
	font-size: 11px;
	line-height: 1.3;
}

.popup__submit input {
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	min-height: 34px;
	padding: 4px 20px;
	background: var(--blue);
	border-radius: 4px;
	border: none;
	outline: none;
	color: #fff;
	font-size: 12px;
	line-height: 1.3;
	text-align: center;
	transition: all .3s ease;
	cursor: pointer;
}
.popup__submit input:hover {
	background: var(--red);
}


.popup__label select {
    width: 100%;
    height: 40px;
    border-radius: 0px;
    background-color: #FFF;
    border: 1px solid #eee;
    outline: none;
    padding-left: 3%;
    padding-right: 3%;
    margin-top: 12px;
    color: #191919;
    font-size: 14px;
    line-height: 1.5;
    appearance: none;
    cursor: pointer;
    display: inline-block;
	border-radius: 5px;
}

.popup .select_arrow {
    position: absolute;
    top: 25px;
    right: 25px;
    width: 11px;
    height: 11px;
    border: solid #7b7b7b;
    border-width: 0 1px 1px 0;
    display: inline-block;
    padding: 3px;
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}

.popup-thy {
	position: fixed;
	top: calc(50% - 160px);
	left: calc(50% - 200px);
}
/* Форма */




/* cart */


.cart-info {
    width: 48%;
    max-width: 440px;
}
.cart-box {
    width: 50%;
    max-width: 620px;
}
.cart-box__list {

}
.cart-item {
    display: flex;
    align-items: center;
    margin-top: 20px;
	position: relative;
}

.order_cart_cost{
	display: flex;
    flex-wrap: wrap;
    justify-content: normal;
    align-items: flex-start;
}


.cart-item__thumb {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    -ms-align-items: center;
    align-items: center;
    width: 200px;
    height: 200px;
}
.cart-item__thumb img {
    object-fit: cover;
	display: block;
    max-width: 100%;
    height: 100%;
    max-height: 100%;
}
.cart-item__info {
    width: calc(100% - 200px);
    padding: 24px;
}
.cart-item__bottom {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    -ms-align-items: center;
    align-items: center;
}
.cart-item__wrapper {
    display: flex;
    align-items: center;
    border: 1px solid #cfcec8;
    border-radius: 5px;
}
 
.cart-item__delete {
	position: absolute;
	top: 8px;
	right: 8px;
	width: 15px;
	height: 15px;
	border: none;
	outline: none;
	background-color: transparent;
	cursor: pointer;
}

.cart-item__delete::before,
.cart-item__delete::after {
	content: "";
	position: absolute;
	top: 7px;
	width: 15px;
	height: 1px;
	background: var(--red);
	transform: rotate(45deg);
	transition: all 0.3s ease;
}

.cart-item__delete::before {
	left: -1px;
}

.cart-item__delete::after {
	right: 1px;
	transform: rotate(135deg);
}

.cart-item__delete:hover::before,
.cart-item__delete:hover::after {
	background: #000;
}

.cart-item__wrapper {
	display: flex;
	align-items: center;
	border: 1px solid #cfcec8;
	border-radius: 2px;
}



.cart-item .cart-item__cost {
    display: block;
    width: 100%;
    font-size: 24px;
    margin-top: 20px;
    margin-bottom: 10px;
}

.cart-item__count {
	border: initial;
	height: 30px;
	width: 50px;
	text-align: center;
	padding: 5px;
	font-size: 1em;
	margin: 0 5px;
	display: block;
	border-radius: 0px;
	font-weight: 500;
	color: #2b2b2b;
}

.cart-item .btn-minus,
.cart-item .btn-plus {
	width: 15px;
	height: 100%;
	font-size: 1.2em;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	color: #333;
}

.cart-item .btn-minus {
    padding-left: 10px;
}

.cart-item .btn-plus {
    padding-right: 10px;
    padding-top: 3px;
}

.cart-item input::-webkit-outer-spin-button,
.cart-item input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* Firefox */
.cart-item input[type=number] {
	-moz-appearance: textfield;
}




.cart-info__check {
    margin-bottom: 20px;
}
.cart-info__check input {
	display: none;
}
.cart-info__check-text {
	display: block;
	padding-left: 36px;
	position: relative;
	font-size: 18px;
	line-height: 1;
	color: #2e2e2e;
}
.cart-info__check-text::before,
.cart-info__check-text::after {
	content: "";
	position: absolute;
}
.cart-info__check-text::before {
	top: 0;
	left: 0;
	width: 17px;
	height: 17px;
	border: 1px solid #000;
}
.cart-info__check-text::after {
	top: 4px;
	left: 3px;
	width: 12px;
	height: 6px;
	border-left: 2px solid var(--red);
	border-bottom: 2px solid var(--red);
	opacity: 0;
	transform: rotate(-45deg);
	transition: all 0.3s ease;
}
.cart-info__check input:checked + .cart-info__check-text::after {
	opacity: 1;
}



/*cookie*/
#cookie_notification{
	display: none;
    justify-content: space-between;
    align-items: center;
    position: fixed;
    bottom: 15px;
    left: 50%;
    width: 20%;
    max-width: 20%;
    transform: translateX(-50%);
    padding: 5px;
    background: rgba(0, 0, 0, .7);
    color: var(--white);
    box-shadow: 2px 3px 10px rgb(0 0 0 / 40%);
    z-index: 999;
	border-radius: 3px;
  }
  
  #cookie_notification p{
	margin: 9px;
	font-size: 0.7rem;
	text-align: left;
	color:var(--white);
  }
  #cookie_notification a{
    color:var(--white);
	border-bottom: 1px solid #fff;
  }
  .cookie_accept{
	background-color: var(--blue);
    border: none;
    color:#fff;
    text-decoration: none;
    padding: 5px 10px;
    white-space: nowrap;
    cursor: pointer;
    /*height: 2.2rem;*/
    justify-content: center;
    align-items: center;
    display: flex;
	font-size: 0.7rem;
	border-radius: 3px;
  }
  .cookie_accept span{
	display: block;
    width: 24px;
    height: 24px;
    background: var(--white);
    -webkit-mask: url(i/cookie-svgrepo-com.svg) center no-repeat;
    mask: url(i/cookie-svgrepo-com.svg) center no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
  }
  .cookie_accept:hover{
    background-color: var(--white);
	color: var(--blue);
  }
  .cookie_accept:hover span{
    background: var(--blue);
  }
  @media (min-width: 576px){
    #cookie_notification.show{
		display: flex;
		width: 40%;
		max-width: 40%;
			width: 60%;
			max-width: 60%;
		background: rgba(0, 0, 0, .7);
    }
  }
  
  @media (max-width: 575px){
    #cookie_notification.show{
		text-align: left;
		width: 90%;
		max-width: 90%;
		display: flex;
    }
	#cookie_notification p {
		font-size: 0.6rem;
	}   
	.cookie_accept{
		margin: 10px 0 0 0;
    }
  }
/*cookie*/



/* ==============================================================
   ========================  MEDIA  =============================
   ============================================================== */
@media screen and (max-width:1200px) {

	.header .header-time {
		display: none;
	}


	.footer-info {
		width: 20%;
	}

	.footer-contact__applic {
		padding: 4px 8px;
	}
	.footer-contact__or {
		margin-left: 8px;
	}
	.footer-contact__mail {
		font-size: 20px;
	}

}











@media screen and (max-width:1050px) {

	.header .header-phone {
		padding: 0 8px 0 20px;
	}
	.header .header-address {
		display: none;
	}


	.product-gallery {
		width: 40%;
	}
	.product-block {
		width: 58%;
	}


	.footer-info {
		order: -20;
		width: 40%;
	}
	.footer-nav {
		order: -10;
		width: 50%;
		margin-top: 16px;
		padding-top: 16px;
		padding-left: 0;
		border-left: none;
		border-top: 1px dashed #ccc;
	}
	.footer-nav--info {
		padding-left: 20px;
	}
	.footer-contact {
		order: -15;
		width: 50%;
	}

}












@media screen and (max-width:900px) {

	.header-top {
		padding-top: 0.8rem;
		padding-bottom: 0.8rem;
	}

	.header .header-phone,
	.header .header-applic,
	.header-bottom {
		display: none;
	}
	.header .header-button {
		margin-left: auto;
		margin-right: 20px;
	}
	.header .header__login {
		margin-right: 24px;
	}
	.header__nav-btn {
		display: block;
	}

	.mob-nav__content .header-button,
	.mob-nav__content .header__login {
		display: none;
	}
	




	.product-gallery {
		width: 50%;
		margin: 0 auto 24px;
	}
	.product-block {
		width: 100%;
	}

}












@media screen and (max-width:750px) {

	html {
		font-size: 18px;
	}

	.breadcrumbs {
		font-size: 11px;
	}
	.breadcrumbs a {
		margin-right: 10px;
	}
	.breadcrumbs a::before {
		right: -9px;
	}

}












@media screen and (max-width:600px) {

	.header .header-button,
	.header .header__login {
		display: none;
	}

	.mob-nav__content .header-applic,
	.mob-nav__content .header-button,
	.mob-nav__content .header__login {
		display: flex;
		margin-top: 10px;
	}


	.product-gallery {
		width: 80%;
	}
	.product-block__top {
		order: -20;
		margin-bottom: 8px;
	}
	.product-size {
		width: 100%;
		border-bottom: 1px dashed #CCC;
	}
	.product-info {
		width: 100%;
		padding: 0 0 20px 0;
		border-left: none;
		margin-bottom: 24px;
	}


	.footer-info,
	.footer-nav,
	.footer-contact {
		width: 100%;
	}
	.footer-info {
		padding-bottom: 20px;
	}
	.footer-nav {
		border: none;
		padding: 0;
	}
	.footer-contact {
		order: -5;
		padding-left: 0;
		border: none;
		padding-top: 40px;
	}


}












@media screen and (max-width:450px) {

	.mob-nav__content .header-applic {
		width: 100%;
		justify-content: center;
	}
	.header-time {
		display: none;
	}


	.product-gallery {
		width: 100%;
	}

}












/* END ============================================================= */



@media screen and (max-width:1200px) {

	.product-item {
		width: calc(25% - 20px);
		margin: 0 10px 24px;
		padding: 16px 12px;
	}

}

@media screen and (max-width:1050px) {
	.category-wrapper .category-list {
		width: calc(50% - 40px);
	}
	.product-item {
		width: calc(33.3% - 20px);
	}

}

@media screen and (max-width:900px) {
	.category-wrapper .category-list {
		width: calc(50% - 40px);
	}
}


@media screen and (max-width:750px) {
	
	.category-wrapper .category-list {
		width: calc(50% - 40px);
	}
	.product-item {
		width: calc(50% - 20px);
	}

}

@media screen and (max-width:700px) {
	
	.category-wrapper .category-list {
		width: calc(50% - 40px);
	}
	.product-item {
		width: calc(50% - 20px);
	}

}

@media screen and (max-width:600px) {
	.category-wrapper .category-list {
		width: calc(50% - 40px);
	}
}


@media screen and (max-width:450px) {
	.category-wrapper .category-list {
		width: calc(100% - 40px);
	}
	.product-item {
		width: calc(100% - 20px);
		width: calc(50% - 20px);
	}
	.product-item__more {
		font-size: 12px;
		width: calc(100% - 58px);
	}
	
}




.catalog-section .wrappery {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 21px;
}


.catalog-item {
    height: 100%;
    /* width: 270px; */
    padding: 14px;
    border-radius: 3px;
	box-shadow: 0px 1px 3px 0px rgb(0 0 0 / 15%);
}
.catalog-item .image {
    width: 100%;
    position: relative;
    border-radius: 0px;
    overflow: hidden;
    /* min-height: 230px; */
}
.catalog-item .image img {
    max-width: 100%;
    width: 100%;
	border-radius: 6px;
}
.catalog-item a {
	text-decoration: none;
}
.catalog-item .title {
    margin-top: 15px;
    margin-bottom: 0px;
	font-size: 0.7rem;
    /*font-size: clamp(18px, 1.68vw, 20px);*/
    font-weight: 700;
    /*height: 30px;*/
    overflow: hidden;
	color: var(--black);
}

/* NDS logic: active product and cart UI labels for hardcoded 22% VAT. */
.product-size__note--nds,
.product-price__note,
.cart__note--nds,
.cart-item__price-note,
.order_cart_cost__note {
    color: #666;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.35;
}
.product-size__note--nds {
    margin: 0 20px 12px 0;
}
.product-price__note {
    width: 100%;
    margin-top: -8px;
    margin-bottom: 12px;
    text-align: center;
}
.cart-layout-nds {
    align-items: flex-start;
    gap: 30px;
}
.cart-layout-nds .cart-box,
.cart-layout-nds .cart-info {
    background: #fff;
    border: 1px solid #e2e2e2;
    border-radius: 6px;
    padding: 28px 24px;
}
.cart-layout-nds .cart-box {
    width: calc(48% - 15px);
}
.cart-layout-nds .cart-info {
    width: calc(52% - 15px);
}
.cart-order-steps {
    display: grid;
    gap: 18px;
    margin-top: 0 !important;
}
.cart-order-step {
    padding-bottom: 18px;
    border-bottom: 1px solid #eeeeee;
}
.cart-order-step__head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
}
.cart-order-step__num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border: 1px solid #ed1c24;
    border-radius: 50%;
    color: #ed1c24;
    font-size: 13px;
    font-weight: 600;
}
.cart-order-step__title {
    color: #333;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.25;
}
.cart-order-fields {
    display: grid;
    gap: 14px;
}
.cart-order-field {
    display: block;
    margin: 0;
}
.cart-order-field input,
.cart-order-field textarea {
    display: block;
    width: 100%;
    min-height: 40px;
    border: 1px solid #dedede;
    border-radius: 5px;
    outline: none;
    background: #fff;
    padding: 11px 16px;
    color: #333;
    font-size: 14px;
    line-height: 1.35;
    box-sizing: border-box;
    transition: border-color .2s ease;
}
.cart-order-field textarea {
    min-height: 86px;
    resize: vertical;
}
.cart-order-field input:focus,
.cart-order-field textarea:focus {
    border-color: #bdbdbd;
}
.cart-order-options {
    display: grid;
    gap: 11px;
}
.cart-order-option,
.cart-order-legal__item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 0;
    cursor: pointer;
}
.cart-order-option input,
.cart-order-legal__item input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}
.cart-order-option__mark,
.cart-order-legal__mark {
    flex: 0 0 auto;
    width: 17px;
    height: 17px;
    margin-top: 2px;
    border: 1px solid #777;
    background: #fff;
    position: relative;
}
.cart-order-option input:checked + .cart-order-option__mark,
.cart-order-legal__item input:checked + .cart-order-legal__mark {
    border-color: #ed1c24;
}
.cart-order-option input:checked + .cart-order-option__mark::after,
.cart-order-legal__item input:checked + .cart-order-legal__mark::after {
    content: '';
    position: absolute;
    left: 3px;
    top: 0;
    width: 9px;
    height: 13px;
    border-right: 2px solid #ed1c24;
    border-bottom: 2px solid #ed1c24;
    transform: rotate(45deg);
}
.cart-order-option__body {
    display: block;
    min-width: 0;
}
.cart-order-option__title {
    display: block;
    color: #333;
    font-size: 18px;
    line-height: 1.25;
}
.cart-order-option__note {
    display: block;
    margin-top: 4px;
    color: #555;
    font-size: 13px;
    line-height: 1.35;
}
.cart-order-legal {
    display: grid;
    gap: 10px;
}
.cart-order-legal__item {
    color: #555;
    font-size: 12px;
    line-height: 1.45;
}
.cart-order-legal__item a {
    color: #008bf0;
    text-decoration: none;
}
.cart-order-legal__item a:hover {
    text-decoration: underline;
}
.cart-order-total {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 18px;
    padding-top: 4px;
}
.cart-order-summary {
    display: grid;
    gap: 8px;
    min-width: 0;
}
.cart-order-summary__row {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    color: #555;
    font-size: 14px;
    line-height: 1.35;
}
.cart-order-summary__row strong {
    color: #111;
    white-space: nowrap;
}
.cart-order-summary__delivery {
    max-width: 250px;
    color: #555;
    text-align: right;
}
.cart-order-summary__delivery-cost {
    display: none;
}
.cart-order-summary__row--total {
    margin-top: 6px;
    padding-top: 10px;
    border-top: 1px solid #e5e5e5;
    color: #111;
    font-size: 18px;
    font-weight: 700;
}
.order_cart_cost__note {
    display: block;
    margin-top: 2px;
    text-align: right;
}
.cart-order-submit {
    min-height: 40px;
    border: 0;
    border-radius: 4px;
    padding: 10px 18px;
    background: #ed1c24;
    color: #fff;
    font-size: 13px;
    line-height: 1.2;
    cursor: pointer;
}
.cart-order-submit:hover {
    background: #ff333a;
}
.cart__note--nds {
    margin: -6px 0 22px;
}
.cart-layout-nds .cart-item {
    position: relative;
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    gap: 24px;
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid #eeeeee;
}
.cart-layout-nds .cart-item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}
.cart-layout-nds .cart-item__thumb {
    width: 170px;
    height: 170px;
    max-width: 170px;
    background: #f4f4f4;
}
.cart-layout-nds .cart-item__thumb img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.cart-layout-nds .cart-item__info {
    width: auto;
    min-width: 0;
    padding-right: 18px;
}
.cart-layout-nds .cart-item__title {
    margin-bottom: 8px;
    font-weight: 600;
}
.cart-layout-nds .cart-item__bottom {
    align-items: center;
    margin-top: 16px;
}
.cart-layout-nds .cart-item__wrapper {
    display: inline-grid;
    grid-template-columns: 34px 58px 34px;
    align-items: center;
    height: 34px;
    border: 1px solid #dedede;
    border-radius: 4px;
    overflow: hidden;
    background: #fff;
}
.cart-layout-nds .cart-item__wrapper .btn-minus,
.cart-layout-nds .cart-item__wrapper .btn-plus {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 0;
    background: #f7f7f7;
    color: #333;
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
}
.cart-layout-nds .cart-item__wrapper .btn-minus:hover,
.cart-layout-nds .cart-item__wrapper .btn-plus:hover {
    background: #eeeeee;
}
.cart-layout-nds .cart-item__count {
    width: 58px;
    height: 34px;
    border: 0;
    border-left: 1px solid #dedede;
    border-right: 1px solid #dedede;
    padding: 0 6px;
    color: #333;
    font-size: 14px;
    text-align: center;
    box-sizing: border-box;
}
.cart-layout-nds .cart-item__cost {
    color: #111;
    line-height: 1.2;
    text-align: right;
    min-width: 150px;
}
.cart-item__price-with-nds,
.ms-cart__price-with-nds {
    display: block;
    margin-top: 5px;
    color: #111;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.2;
    text-align: right;
    white-space: nowrap;
}
.cart-item__price-note {
    display: block;
    max-width: none;
    margin-top: 3px;
    color: #777;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.3;
    margin-left: auto;
    text-align: right;
    white-space: nowrap;
}
.cart-item__price-without-nds,
.ms-cart__price-without-nds {
    display: block;
    margin-top: 4px;
    color: #666;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.3;
    text-align: right;
    white-space: nowrap;
}
.cart-layout-nds .cart-item__delete {
    top: 0;
    right: 0;
}
.cart-layout-nds .btn-primary,
.cart-layout-nds .ms2_link[type="submit"] {
    border-color: #ed1c24;
    background: #ed1c24;
}
.cart-layout-nds .btn-primary:hover,
.cart-layout-nds .ms2_link[type="submit"]:hover {
    border-color: #ff333a;
    background: #ff333a;
}
@media (max-width: 900px) {
    .cart-layout-nds .cart-box,
    .cart-layout-nds .cart-info {
        width: 100%;
    }
    .cart-order-total {
        grid-template-columns: 1fr;
    }
    .cart-order-submit {
        width: 100%;
    }
}
@media (max-width: 560px) {
    .cart-layout-nds .cart-item {
        grid-template-columns: 1fr;
    }
    .cart-layout-nds .cart-item__thumb {
        width: 100%;
        height: 220px;
        max-width: none;
    }
    .cart-layout-nds .cart-item__info {
        width: 100%;
        padding-right: 0;
    }
    .cart-layout-nds .cart-item__cost,
    .cart-item__price-with-nds,
    .ms-cart__price-with-nds,
    .cart-item__price-without-nds,
    .ms-cart__price-without-nds,
    .cart-item__price-note,
    .order_cart_cost__note,
    .cart-order-summary__delivery {
        text-align: left;
        margin-left: 0;
    }
}


/* Legal page layout for site rules and policy text. */
.legal-page {
    max-width: 980px;
    margin: 0 auto 50px;
    color: #222;
    font-size: 15px;
    line-height: 1.6;
}

.legal-page h1 {
    margin: 0 0 10px;
    font-size: 30px;
    line-height: 1.25;
    font-weight: 700;
    color: #1b1b1b;
}

.legal-page__date {
    margin: 0 0 24px;
    color: #777;
    font-size: 14px;
}

.legal-page__intro {
    margin: 0 0 22px;
    padding: 16px 18px;
    border: 1px solid #e5e5e5;
    border-radius: 6px;
    background: #fafafa;
}

.legal-page h2 {
    margin: 28px 0 12px;
    font-size: 20px;
    line-height: 1.3;
    color: #222;
}

.legal-page p,
.legal-page li {
    margin: 0 0 10px;
}

.legal-page ul,
.legal-page ol {
    margin: 0 0 16px 20px;
    padding: 0;
}

.legal-page a {
    color: #0072ff;
    text-decoration: none;
}

.legal-page a:hover {
    text-decoration: underline;
}

@media (max-width: 767px) {
    .legal-page {
        font-size: 14px;
    }

    .legal-page h1 {
        font-size: 24px;
    }
}

/* Site polish: shared restrained styling for homepage and static information pages. */
:root {
    --ui-border: #e4e6e8;
    --ui-muted: #666;
    --ui-soft: #f8f9fa;
    --ui-radius: 6px;
}

.box.breadcrumbs {
    border-top: 1px solid #eeeeee;
    border-bottom: 1px solid #eeeeee;
    background: #fafafa;
}

.breadcrumbs a,
.breadcrumbs__last {
    color: #777;
    font-size: 13px;
}

.breadcrumbs a:hover {
    color: #ed1c24;
}

.header-phone__callme,
.header-applic__leave,
.footer-contact__applic,
.button,
.btn,
.slide-btn {
    border-radius: var(--ui-radius) !important;
    box-shadow: none !important;
}

.search__wrap,
.search__input,
.search__select,
.search__submit,
.cookie_notification,
.panel,
.panel-default,
.product-item,
.catalog-item,
.category-list,
.homepage_catalog > div > a,
.about-products p {
    box-shadow: none !important;
}

.hero-slider {
    background: #f5f6f7;
}

.hero-slider-item__ins,
.hero-slider-item__ins img {
    border-radius: 0;
}

.hero-slider .slick-arrow {
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius) !important;
    background: rgba(255, 255, 255, 0.92);
}

.hero-slider .slick-arrow:hover {
    background: #ed1c24;
}

.hero-slider .slick-dots li button {
    width: 10px;
    height: 10px;
    border-width: 1px;
}

.top-line {
    align-items: center;
    margin-bottom: 22px;
}

.top-line .head {
    color: #222;
    font-size: 24px;
    line-height: 1.25;
    font-weight: 700;
    letter-spacing: 0;
}

.hits {
    padding-top: 26px;
    padding-bottom: 26px;
}

.category-wrapper {
    gap: 18px;
    align-items: stretch;
}

.category-wrapper .category-list {
    width: calc(25% - 14px);
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: #fff;
    overflow: hidden;
    transition: border-color .2s ease, transform .2s ease;
}

.category-wrapper .category-list:hover {
    border-color: #cfd3d8;
    transform: translateY(-1px);
}

.category-wrapper .category-list a {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    min-height: 150px;
    padding: 16px;
    color: #222;
    font-size: 15px;
    line-height: 1.35;
    text-decoration: none;
}

.category-children-img {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 82px;
    margin-bottom: 12px;
}

.category-children-img img {
    max-width: 100%;
    max-height: 82px;
    object-fit: contain;
}

.homepage_catalog {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.homepage_catalog > div {
    min-width: 0;
}

.homepage_catalog > div > a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    min-height: 238px;
    height: 100%;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: #fff;
    padding: 18px 16px 16px;
    color: #222;
    text-align: center;
    text-decoration: none;
    transition: border-color .2s ease, transform .2s ease;
}

.homepage_catalog > div > a:hover {
    border-color: #cfd3d8;
    transform: translateY(-1px);
}

.homepage_catalog img {
    width: auto !important;
    max-width: 100%;
    height: 130px;
    object-fit: contain;
}

.homepage_catalog p {
    min-height: 42px;
    margin: 14px 0 10px;
    color: #222;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.35;
}

.homepage_catalog span {
    display: inline-flex;
    align-items: center;
    min-height: 32px;
    border: 1px solid #ed1c24;
    border-radius: var(--ui-radius);
    padding: 6px 13px;
    color: #ed1c24;
    font-size: 13px;
    line-height: 1.2;
}

.homepage_catalog > div > a:hover span {
    background: #ed1c24;
    color: #fff;
}

.box.text .container,
.homepage_seo,
.about,
.company-intro,
.about-products,
.control-seals,
.delivery,
.breadcrumbs + .box > .container > h2:first-child,
.breadcrumbs + .box > .container > h2:first-child ~ h3,
.breadcrumbs + .box > .container > h2:first-child ~ ul,
.breadcrumbs + .box > .container > h2:first-child ~ p {
    color: #2a2a2a;
}

.about,
.company-intro,
.about-products,
.control-seals,
.delivery,
.breadcrumbs + .box > .container > h2:first-child {
    max-width: 980px;
}

.about,
.company-intro,
.about-products,
.control-seals,
.delivery {
    margin-left: auto;
    margin-right: auto;
}

.about h1,
.company-intro h1,
.about h2,
.company-intro h2,
.about-products h2,
.control-seals h2,
.delivery h2,
.breadcrumbs + .box > .container > h2:first-child {
    margin: 0 0 18px;
    color: #222;
    font-weight: 700;
    line-height: 1.28;
    letter-spacing: 0;
}

.about h1,
.company-intro h1,
.breadcrumbs + .box > .container > h2:first-child {
    font-size: 28px;
}

.about h2,
.company-intro h2,
.about-products h2,
.control-seals h2,
.delivery h2 {
    font-size: 22px;
}

.about p,
.company-intro p,
.about-products p,
.control-seals p,
.delivery p,
.breadcrumbs + .box > .container > h2:first-child ~ p,
.breadcrumbs + .box > .container > h2:first-child ~ li {
    color: #333;
    font-size: 15px;
    line-height: 1.65;
}

.about p,
.company-intro p,
.about-products p,
.control-seals p,
.delivery p {
    margin-bottom: 14px;
}

.about img {
    max-width: 260px;
    height: auto;
}

.about hr {
    height: 1px;
    border: 0;
    background: var(--ui-border);
    margin: 22px 0 26px;
}

.about ul,
.breadcrumbs + .box > .container > h2:first-child ~ ul {
    display: grid;
    gap: 8px;
    margin: 0 0 20px;
    padding: 0;
    list-style: none;
}

.about li,
.breadcrumbs + .box > .container > h2:first-child ~ ul li {
    position: relative;
    padding-left: 20px;
    color: #333;
    font-size: 15px;
    line-height: 1.5;
}

.about li::before,
.breadcrumbs + .box > .container > h2:first-child ~ ul li::before {
    content: '';
    position: absolute;
    top: .65em;
    left: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #ed1c24;
}

.about-products {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-top: 22px;
    margin-bottom: 24px;
}

.about-products p {
    margin: 0;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: var(--ui-soft);
    padding: 16px;
}

.delivery > section {
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: #fff;
    padding: 18px 20px;
    margin-bottom: 16px;
}

.delivery h3,
.breadcrumbs + .box > .container > h2:first-child ~ h3 {
    margin: 20px 0 10px;
    color: #222;
    font-size: 19px;
    line-height: 1.3;
    font-weight: 700;
}

.delivery > section h3 {
    margin-top: 0;
}

.delivery a,
.about a,
.company-intro a,
.control-seals a,
.breadcrumbs + .box > .container a {
    color: #0072ff;
    text-decoration: none;
}

.delivery a:hover,
.about a:hover,
.company-intro a:hover,
.control-seals a:hover,
.breadcrumbs + .box > .container a:hover {
    text-decoration: underline;
}

.breadcrumbs + .box > .container > h2:first-child ~ h3,
.breadcrumbs + .box > .container > h2:first-child ~ ul,
.breadcrumbs + .box > .container > h2:first-child ~ p {
    max-width: 840px;
}

.breadcrumbs + .box > .container > h2:first-child ~ ul {
    margin-bottom: 22px;
}

.panel.panel-default {
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: #fff;
    overflow: hidden;
}

.panel.panel-default .panel-body {
    padding: 24px;
}

.panel.panel-default .row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin: 0;
}

.panel.panel-default [class*="col-sm-"] {
    width: auto;
    float: none;
    min-height: 0;
    padding: 0;
    color: #333;
    font-size: 15px;
    line-height: 1.55;
}

.panel.panel-default .col-sm-3 {
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: var(--ui-soft);
    padding: 16px;
}

.panel.panel-default strong {
    display: block;
    margin-bottom: 8px;
    color: #222;
    font-size: 16px;
}

.panel.panel-default address {
    margin: 0;
    font-style: normal;
}

.panel.panel-default .col-sm-12 {
    grid-column: 1 / -1;
}

.panel.panel-default iframe {
    display: block;
    width: 100%;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
}

.product-item,
.catalog-item {
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: #fff;
}

.catalog-item .image,
.catalog-item .image img,
.product-item__photo,
.product-item__photo img {
    border-radius: var(--ui-radius);
}

@media screen and (max-width: 1050px) {
    .category-wrapper .category-list {
        width: calc(33.333% - 12px);
    }

    .homepage_catalog {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media screen and (max-width: 750px) {
    .category-wrapper .category-list {
        width: calc(50% - 9px);
    }

    .homepage_catalog,
    .about-products,
    .panel.panel-default .row {
        grid-template-columns: 1fr;
    }

    .top-line .head,
    .about h1,
    .company-intro h1,
    .breadcrumbs + .box > .container > h2:first-child {
        font-size: 23px;
    }
}

@media screen and (max-width: 480px) {
    .category-wrapper .category-list {
        width: 100%;
    }

    .homepage_catalog > div > a {
        min-height: 210px;
    }

    .homepage_catalog img {
        height: 112px;
    }
}

/* Site polish fixes: stable homepage grids, articles and contact cards. */
.category-wrapper.flx,
.category-wrapper {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px !important;
    align-items: stretch;
}

.category-wrapper .category-list,
.category-wrapper .category-list.first,
.category-wrapper .category-list.last {
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    background: #fff;
}

.category-wrapper .category-list a {
    min-height: 210px;
    height: 100%;
    padding: 18px 16px;
    align-items: center;
    text-align: center;
}

.category-wrapper .category-children-img {
    width: 100%;
    height: 110px;
    padding: 0;
    margin: 0 0 16px;
}

.category-wrapper .category-children-img img,
.category-list img {
    width: auto !important;
    max-width: 100%;
    max-height: 110px;
    border-radius: 4px;
    object-fit: contain;
}

.index_catalog .row {
    margin-left: 0;
    margin-right: 0;
}

.homepage_catalog {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 18px !important;
}

.homepage_catalog > div > a {
    min-height: 210px;
    padding: 16px 14px 14px;
    border-color: var(--ui-border) !important;
}

.homepage_catalog img {
    height: 105px !important;
    margin-bottom: 12px;
}

.homepage_catalog p {
    min-height: 38px;
    margin: 0 0 10px;
    font-size: 14px;
}

.homepage_catalog span,
.blog-more a {
    min-height: 32px;
    border-radius: var(--ui-radius) !important;
    box-shadow: none !important;
}

.box.text {
    padding-top: 28px;
    padding-bottom: 28px;
    background: #fafafa;
}

.homepage_seo {
    display: grid;
    gap: 14px;
    max-width: 980px;
    margin: 0 auto;
}

.homepage_seo .seotext {
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: #fff;
    padding: 20px 22px;
    box-shadow: none !important;
}

.homepage_seo .seotext h2 {
    margin: 0 0 10px;
    color: #222;
    font-size: 20px;
    line-height: 1.3;
}

.homepage_seo .seotext p {
    margin: 0 0 10px;
    color: #333;
    font-size: 14px;
    line-height: 1.65;
}

.homepage_seo .seo-ul {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 12px 0;
    padding: 0;
    list-style: none;
}

.homepage_seo .seo-ul li {
    min-height: 0;
    border: 1px solid var(--ui-border);
    border-radius: var(--ui-radius);
    background: var(--ui-soft);
    padding: 8px 12px;
    color: #333;
    font-size: 13px;
    line-height: 1.25;
}

.blog-slick.flx,
.blog-slick {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px !important;
}

.blog_item {
    width: auto !important;
    margin: 0 !important;
}

.blog_item .summary {
    display: flex;
    flex-direction: column;
    min-height: 210px;
    height: 100%;
    border: 1px solid var(--ui-border) !important;
    border-radius: var(--ui-radius) !important;
    background: #fff;
    padding: 14px;
    box-shadow: none !important;
}

.blog_item .image {
    height: 92px;
    margin-bottom: 12px;
    overflow: hidden;
    border-radius: 4px;
    background: #f6f7f8;
}

.blog_item .image a,
.blog_item .image img {
    display: block;
    width: 100%;
    height: 100%;
}

.blog_item .image img {
}

.blog_title {
    flex: 1 1 auto;
    min-height: 45px;
    margin: 0 0 12px;
    text-align: center;
}

.blog_title a {
    color: #333;
    font-size: 13px;
    line-height: 1.35;
    text-decoration: none;
}

.blog_title a:hover {
    color: #ed1c24;
}

.blog-more {
    margin: 0;
    text-align: center;
}

.blog-more a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 150px;
    padding: 7px 12px;
    border: 1px solid #ed1c24;
    background: #ed1c24;
    color: #fff;
    font-size: 13px;
    line-height: 1.2;
    text-decoration: none;
}

.blog-more a:hover {
    background: #fff;
    color: #ed1c24;
}

.footer-social__item,
.footer-social__item--vk,
.footer-social__item--tg {
    flex: 0 0 32px;
    width: 32px !important;
    height: 32px !important;
    border: 0 !important;
    border-radius: 50% !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
    box-shadow: none !important;
}

.footer-social__item:hover {
    transform: translateY(-1px);
}

.panel.panel-default .row {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px !important;
}

.panel.panel-default .col-sm-3 {
    width: 100% !important;
    max-width: none !important;
    justify-self: stretch;
    box-sizing: border-box;
    word-break: normal;
    overflow-wrap: anywhere;
}

.panel.panel-default .col-sm-12 {
    width: 100% !important;
    max-width: none !important;
}

@media screen and (max-width: 1050px) {
    .category-wrapper.flx,
    .category-wrapper,
    .homepage_catalog,
    .blog-slick.flx,
    .blog-slick {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media screen and (max-width: 760px) {
    .category-wrapper.flx,
    .category-wrapper,
    .homepage_catalog,
    .blog-slick.flx,
    .blog-slick {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .panel.panel-default .row {
        grid-template-columns: 1fr !important;
    }
}

@media screen and (max-width: 480px) {
    .category-wrapper.flx,
    .category-wrapper,
    .homepage_catalog,
    .blog-slick.flx,
    .blog-slick {
        grid-template-columns: 1fr !important;
    }
}

/* Site polish fixes: force homepage product grid layout. */
.homepage_catalog {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 18px !important;
    align-items: stretch !important;
}

.homepage_catalog > div {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
}

@media screen and (max-width: 1050px) {
    .homepage_catalog {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media screen and (max-width: 760px) {
    .homepage_catalog {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media screen and (max-width: 480px) {
    .homepage_catalog {
        grid-template-columns: 1fr !important;
    }
}

/* Site polish fixes: align homepage product card height. */
.homepage_catalog > div > a {
    min-height: 214px !important;
    height: 214px !important;
    justify-content: space-between !important;
}

.homepage_catalog img {
    height: 104px !important;
    max-height: 104px !important;
}

.homepage_catalog p {
    min-height: 34px !important;
    max-height: 38px;
    overflow: hidden;
}

/* Site polish fixes: remove old homepage card wrapper height. */
.homepage_catalog > div {
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
}

.homepage_catalog > div > a {
    width: 100% !important;
    box-sizing: border-box;
}

/* Site polish fixes: remove old homepage wrapper glow. */
.homepage_catalog > div {
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Site polish fixes: homepage slider, seo chips and article buttons. */
.hero-slider {
    width: 100%;
	margin-top: 20px;
    margin-bottom: 28px;
}

.hero-slider-item {
    min-height: 360px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.hero-slider-item__ins {
    display: flex !important;
    align-items: center;
    min-height: 360px;
    padding: 48px 72px !important;
    box-sizing: border-box;
}

.hero-slider-item__ins::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(0, 0, 0, .42), rgba(0, 0, 0, .12) 55%, rgba(0, 0, 0, 0));
    z-index: 1;
}

.slide-overlay {
    display: none !important;
}

.slide-content {
    position: relative !important;
    z-index: 2;
    width: min(520px, 100%);
    max-width: 520px;
    color: #fff;
    transform: none !important;
}

.slide-title {
    margin: 0 0 14px !important;
    color: #fff;
    font-size: 38px;
    line-height: 1.12;
    font-weight: 700;
    letter-spacing: 0;
}

.slide-title span {
    color: inherit;
}

.slide-text {
    max-width: 480px;
    margin: 0 0 22px !important;
    color: rgba(255, 255, 255, .92);
    font-size: 16px;
    line-height: 1.45;
}

.slide-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 10px 18px !important;
    border: 1px solid #ed1c24;
    border-radius: var(--ui-radius) !important;
    background: #ed1c24;
    color: #fff;
    font-size: 14px;
    line-height: 1.2;
    white-space: nowrap;
}

.hero-slider .slick-dots {
    right: 32px;
    bottom: 22px;
    left: auto;
}

.hero-slider .slick-arrow {
    top: calc(50% - 18px);
}

.homepage_seo .seo-ul {
    align-items: stretch;
    gap: 10px 12px;
}

.homepage_seo .seo-ul li {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    padding: 8px 12px 8px 10px;
}

.homepage_seo .seo-ul li::before {
    content: '' !important;
    display: block;
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    position: static !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
}

.homepage_seo .seo-ul li.counters::before {
    background-image: url('i/counter.png') !important;
}

.homepage_seo .seo-ul li.locks::before {
    background-image: url('i/lock.png') !important;
}

.homepage_seo .seo-ul li.warehouse::before {
    background-image: url('i/warehouse.png') !important;
}

.homepage_seo .seo-ul li.strongbox::before {
    background-image: url('i/strongbox.png') !important;
}

.blog_item .summary {
    min-height: 232px;
}

.blog_title {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 58px;
}

.blog_title a {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.blog-more a {
    width: auto !important;
    min-width: 132px;
    max-width: none;
    height: auto !important;
    min-height: 34px;
    padding: 8px 18px !important;
    box-sizing: border-box;
    font-weight: 600;
    text-align: center;
}

@media screen and (max-width: 760px) {
    .hero-slider-item,
    .hero-slider-item__ins {
        min-height: 320px;
    }

    .hero-slider-item__ins {
        padding: 42px 48px !important;
    }

    .slide-title {
        font-size: 30px;
    }

    .slide-text {
        font-size: 14px;
    }
}

@media screen and (max-width: 480px) {
    .hero-slider-item,
    .hero-slider-item__ins {
        min-height: 300px;
    }

    .hero-slider-item__ins {
        padding: 36px 28px !important;
    }

    .slide-title {
        font-size: 26px;
    }

    .hero-slider .slick-arrow {
        display: none !important;
    }
}

/* Site polish fixes: final homepage overlap, icons and article CTA alignment. */
.hero-slider .slick-list,
.hero-slider .slick-track {
    min-height: 360px;
}

.hero-slider .slick-slide {
    position: relative;
}

.hero-slider .slick-slide:not(.slick-active) .slide-content,
.hero-slider .slick-slide:not(.slick-active) .slide-btn,
.hero-slider .slick-slide:not(.slick-active) .slide-title,
.hero-slider .slick-slide:not(.slick-active) .slide-text {
    visibility: hidden;
}

.hero-slider .slick-active .slide-content {
    position: relative !important;
    left: auto !important;
    top: auto !important;
}

.homepage_seo .seo-ul li::before {
    margin: 0;
    transform: none !important;
}

.homepage_seo .seo-ul li.counters::before,
.homepage_seo .seo-ul li.locks::before,
.homepage_seo .seo-ul li.warehouse::before,
.homepage_seo .seo-ul li.strongbox::before {
    opacity: 1 !important;
}

.blog_item .summary {
    justify-content: space-between;
    overflow: hidden;
}

.blog_title {
    flex: 1 1 auto;
    align-items: flex-start;
    min-height: 56px;
    max-height: 62px;
    overflow: hidden;
}

.blog-more {
    flex: 0 0 auto;
    display: flex;
    justify-content: center;
}

.blog-more a,
.blog-more a:link,
.blog-more a:visited {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 132px !important;
    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;
    padding: 0 18px !important;
    border: 1px solid #ed1c24 !important;
    border-radius: var(--ui-radius) !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

.blog-more a:hover {
    background: #fff !important;
    color: #ed1c24 !important;
}

.footer-social__item {
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
}

.footer-social__item--tg {
    background-image: url('i/bg-icon-tg.svg') !important;
}

.footer-social__item--vk {
    background-image: url('i/bg-icon-vk.svg') !important;
}
/* Site polish fixes: homepage cards and product color availability. */
.index_catalog,
.homepage_catalog,
.blog-slick {
    overflow: visible !important;
}

.homepage_catalog {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 18px !important;
    align-items: stretch !important;
}

.homepage_catalog > div,
.homepage_catalog > div > a {
    height: auto !important;
    min-height: 214px !important;
}

.homepage_catalog > div > a {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding: 18px 16px 20px !important;
    overflow: hidden !important;
    text-align: center !important;
}

.homepage_catalog > div > a img,
.homepage_catalog img {
    position: static !important;
    display: block !important;
    width: auto !important;
    max-width: 178px !important;
    height: 92px !important;
    max-height: 92px !important;
    margin: 0 auto 12px !important;
    object-fit: contain !important;
    transform: none !important;
}

.homepage_catalog > div > a p,
.homepage_catalog p {
    position: static !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    min-height: 40px !important;
    margin: 0 0 14px !important;
    color: #222 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    transform: none !important;
}

.homepage_catalog > div > a span,
.homepage_catalog span {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: min(100%, 188px) !important;
    height: 40px !important;
    min-height: 40px !important;
    margin: auto auto 0 !important;
    padding: 0 18px !important;
    border: 1px solid #ed1c24 !important;
    border-radius: var(--ui-radius) !important;
    background: #ed1c24 !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-decoration: none !important;
    transform: none !important;
    box-sizing: border-box !important;
}

.homepage_catalog > div > a:hover span,
.homepage_catalog > div > a span:hover {
    background: #fff !important;
    color: #ed1c24 !important;
}

.blog-slick .blog_item,
.blog_item {
    height: auto !important;
}

.blog_item .summary {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    min-height: 244px !important;
    padding: 14px !important;
    overflow: hidden !important;
}

.blog_item .image,
.blog_item .image a {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: 92px !important;
    margin: 0 0 12px !important;
    overflow: hidden !important;
}

.blog_item .image img {
    position: static !important;
    display: block !important;
    transform: none !important;
}

.blog_title,
.blog_item .blog_title {
    position: static !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    flex: 1 1 auto !important;
    min-height: 52px !important;
    max-height: 66px !important;
    margin: 0 0 12px !important;
    overflow: hidden !important;
    text-align: center !important;
}

.blog_title a,
.blog_item .blog_title a {
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    color: #333 !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
    text-align: center !important;
}

.blog-more,
.blog_item .blog-more {
    position: static !important;
    display: flex !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    margin: auto 0 0 !important;
    padding: 0 !important;
}

.product-size__color-list {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(min(112px, 100%), 1fr)) !important;
    gap: 8px 12px !important;
    align-items: stretch !important;
}

.product-size__color {
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    font-size: 13px !important;
}

.product-size__color label {
    display: block !important;
    width: 100% !important;
    cursor: pointer !important;
}

.product-size__color-view {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    height: 34px !important;
    padding: 5px 8px !important;
    border: 1px solid transparent !important;
    border-radius: var(--ui-radius) !important;
    background: #fff !important;
    color: #333 !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
}

.product-size__color-dot {
    display: block !important;
    flex: 0 0 22px !important;
    width: 22px !important;
    height: 22px !important;
    border: 1px solid #777 !important;
    border-radius: 50% !important;
    background: var(--product-color, #fff) !important;
    box-sizing: border-box !important;
}

.product-size__color-name {
    display: block !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.product-size__color input:checked + .product-size__color-view {
    border-color: #008BF0 !important;

}

.product-size__color.is-disabled,
.product-size__line.is-disabled {
    opacity: .42 !important;
}

.product-size__color.is-disabled label,
.product-size__line.is-disabled label,
.product-size__color.is-disabled .product-size__color-view,
.product-size__line.is-disabled .product-size__line-text {
    cursor: not-allowed !important;
}

.product-size__color.is-disabled .product-size__color-name,
.product-size__line.is-disabled .product-size__line-text {
    text-decoration: line-through !important;
}

.product-size__color input:disabled + .product-size__color-view,
.product-size__line input:disabled + .product-size__line-text {
    border-color: #ddd !important;
    background: #f7f7f7 !important;
}

@media (max-width: 900px) {
    .homepage_catalog {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 560px) {
    .homepage_catalog,
    .product-size__color-list {
        grid-template-columns: 1fr !important;
    }

    .homepage_catalog > div > a {
        min-height: 190px !important;
    }
}

/* Cart polish fixes: delivery options alignment and cart quantity controls. */
.cart-order-step .cart-order-options,
#deliveries .cart-order-options,
.deliveries .cart-order-options {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 0 !important;
}

.cart-order-option,
.cart-order-step .cart-order-option,
#deliveries .cart-order-option,
.deliveries .cart-order-option {
    display: grid !important;
    grid-template-columns: 20px minmax(0, 1fr) !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    column-gap: 10px !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}

.cart-order-option__mark {
    grid-column: 1 !important;
    margin: 2px 0 0 !important;
}

.cart-order-option__body {
    grid-column: 2 !important;
    min-width: 0 !important;
    text-align: left !important;
}

.cart-order-option__title,
.cart-order-option__note {
    display: block !important;
    text-align: left !important;
}

.cart-layout-nds .cart-item__wrapper {
    align-items: center !important;
}

.cart-layout-nds .cart-item__count {
    width: 64px !important;
}
/* Site polish fixes: final article and homepage button alignment. */
.blog-slick {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 18px !important;
    align-items: stretch !important;
}

.blog-slick::before,
.blog-slick::after {
    content: none !important;
}

.blog-slick .blog_item,
.blog_item {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

.blog_item .summary {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    min-height: 244px !important;
    padding: 14px !important;
    box-sizing: border-box !important;
}

.blog_item .blog-more,
.blog-more {
    width: 100% !important;
    margin: auto 0 0 !important;
    padding: 0 !important;
    text-align: center !important;
    overflow: visible !important;
}

.blog_item .blog-more a,
.blog-more a,
.blog_item .blog-more a:link,
.blog_item .blog-more a:visited {
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: min(100%, 132px) !important;
    min-width: 132px !important;
    height: 34px !important;
    margin: 0 auto !important;
    padding: 0 18px !important;
    transform: none !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
}

.homepage_catalog > div > a span,
.homepage_catalog span {
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
}

@media (max-width: 900px) {
    .blog-slick {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 560px) {
    .blog-slick {
        grid-template-columns: 1fr !important;
    }
}
/* Site polish fixes: reset legacy absolute offset on article CTA wrapper. */
.blog_item .summary p.blog-more,
.blog_item p.blog-more,
p.blog-more {
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    margin: auto 0 0 !important;
    padding: 0 !important;
    transform: none !important;
    text-align: center !important;
}
/* Cart rules: disabled payment option state. */
.cart-order-option.is-disabled {
    opacity: .45 !important;
}

.cart-order-option.is-disabled,
.cart-order-option.is-disabled * {
    cursor: not-allowed !important;
}

/* Единицы измерения в корзине: рядом с количеством показываем "шт." или "кг". */
.cart-item__count-unit,
.ms-cart__count-unit {
  display: inline-flex;
  align-items: center;
  height: 34px;
  padding: 0 8px 0 2px;
  color: #555;
  font-size: 13px;
  line-height: 1;
  white-space: nowrap;
}

/* Количество в корзине: минус, поле, плюс и единица измерения отдельными ячейками. */
.cart-layout-nds .cart-item__wrapper,
.cart-layout-nds .ms-cart__count-box {
  display: inline-grid !important;
  grid-template-columns: 34px minmax(58px, 76px) 34px auto !important;
  align-items: center !important;
  width: auto !important;
  max-width: 100% !important;
  height: 34px !important;
  border: 1px solid #dedede !important;
  border-radius: 4px !important;
  overflow: visible !important;
  background: #fff !important;
}

.cart-layout-nds .cart-item__wrapper .btn-minus,
.cart-layout-nds .cart-item__wrapper .btn-plus,
.cart-layout-nds .ms-cart__count-box .btn-minus,
.cart-layout-nds .ms-cart__count-box .btn-plus {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 32px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #f7f7f7 !important;
  color: #222 !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

/* Реквизиты для оплаты по счету в корзине. */
.cart-order-step--invoice[hidden] {
  display: none !important;
}

.cart-order-step--invoice {
  background: #fafafa;
  border: 1px solid #ececec;
  border-radius: 6px;
  padding: 18px;
}

.cart-order-fields--invoice {
  display: grid;
  grid-template-columns: 1fr;
  align-items: stretch;
  gap: 12px;
}

.cart-order-fields--invoice .cart-order-field {
  margin: 0;
}

.cart-order-fields--invoice textarea {
  min-height: 42px;
  resize: vertical;
}

.cart-order-field input.error,
.cart-order-field textarea.error {
  border-color: #f00 !important;
}

@media (max-width: 760px) {
  .cart-order-fields--invoice {
    grid-template-columns: 1fr;
  }
}

.cart-layout-nds .cart-item__count,
.cart-layout-nds .ms-cart__count {
  width: 100% !important;
  min-width: 58px !important;
  max-width: 76px !important;
  height: 32px !important;
  margin: 0 !important;
  padding: 0 6px !important;
  border: 0 !important;
  border-left: 1px solid #dedede !important;
  border-right: 1px solid #dedede !important;
  border-radius: 0 !important;
  box-sizing: border-box !important;
  text-align: center !important;
}

.cart-layout-nds .cart-item__count-unit,
.cart-layout-nds .ms-cart__count-unit {
  height: 32px !important;
  padding: 0 0 0 8px !important;
  color: #666 !important;
  font-size: 13px !important;
  line-height: 32px !important;
  white-space: nowrap !important;
}

/* Количество в корзине: единица измерения справа вне счетчика - поле +. */
.cart-layout-nds .cart-item__wrapper,
.cart-layout-nds .ms-cart__count-box {
  display: inline-grid !important;
  grid-template-columns: 34px minmax(58px, 76px) 34px auto !important;
  align-items: center !important;
  width: auto !important;
  max-width: 100% !important;
  height: 34px !important;
  gap: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;
  background: transparent !important;
}

.cart-layout-nds .cart-item__wrapper .btn-minus,
.cart-layout-nds .ms-cart__count-box .btn-minus {
  border: 1px solid #dedede !important;
  border-right: 0 !important;
  border-radius: 4px 0 0 4px !important;
}

.cart-layout-nds .cart-item__wrapper .btn-plus,
.cart-layout-nds .ms-cart__count-box .btn-plus {
  border: 1px solid #dedede !important;
  border-left: 0 !important;
  border-radius: 0 4px 4px 0 !important;
}

.cart-layout-nds .cart-item__count,
.cart-layout-nds .ms-cart__count {
  border-top: 1px solid #dedede !important;
  border-bottom: 1px solid #dedede !important;
  border-left: 1px solid #dedede !important;
  border-right: 1px solid #dedede !important;
}

.cart-layout-nds .cart-item__count-unit,
.cart-layout-nds .ms-cart__count-unit {
  margin-left: 8px !important;
  padding: 0 !important;
}

.cart-layout-nds .cart-min-order-hint {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  width: max-content;
  max-width: 100%;
  margin-top: 6px;
  color: #666;
  font-size: 11px;
  line-height: 1.25;
}

.cart-layout-nds .cart-min-order-hint span {
  white-space: nowrap;
}

.cart-layout-nds .cart-min-order-hint.is-warning {
  color: #d71920;
  font-weight: 600;
}

/* Прайс-лист: табличный вывод всех товаров и ценовых градаций. */
.price-list {
  padding: 12px 0 40px;
}

.price-list__head {
  margin-bottom: 24px;
}

.price-list__head h1 {
  margin: 0 0 8px;
  font-size: 30px;
  line-height: 1.2;
}

.price-list__head p {
  max-width: 780px;
  margin: 0;
  color: #666;
  font-size: 14px;
  line-height: 1.6;
}

.price-list__section {
  margin: 28px 0 12px;
  font-size: 22px;
  line-height: 1.25;
}

.price-list__table-wrap {
  overflow-x: auto;
  border: 1px solid #e2e2e2;
  border-radius: 8px;
  background: #fff;
}

.price-list__table {
  width: 100%;
  min-width: 920px;
  border-collapse: collapse;
}

.price-list__table th,
.price-list__table td {
  padding: 14px 16px;
  border-bottom: 1px solid #ededed;
  text-align: left;
  vertical-align: top;
}

.price-list__table th {
  background: #f7f7f7;
  color: #333;
  font-size: 13px;
  font-weight: 600;
}

.price-list__table tr:last-child td {
  border-bottom: 0;
}

.price-list__image {
  display: block;
  width: 76px;
  height: 76px;
  object-fit: contain;
  background: #f7f7f7;
  border-radius: 6px;
}

.price-list__product {
  color: #0070d9;
  font-weight: 600;
  line-height: 1.35;
}

.price-list__offer {
  display: grid;
  gap: 5px;
  min-width: 240px;
  color: #333;
  font-size: 13px;
  line-height: 1.35;
}

.price-list__offer b {
  font-size: 14px;
}

.price-list__offer span {
  display: block;
}

.price-list__offer em {
  width: fit-content;
  margin-top: 2px;
  padding: 3px 7px;
  border-radius: 4px;
  background: #fff1f1;
  color: #d71920;
  font-style: normal;
  font-size: 12px;
}

.price-list__color {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin: 0 6px 0 0;
  border: 1px solid #cfcfcf;
  border-radius: 50%;
  vertical-align: -1px;
}

.price-list__prices {
  display: grid;
  gap: 6px;
  min-width: 320px;
}

.price-list__price-row {
  display: grid;
  grid-template-columns: 84px minmax(120px, 1fr) minmax(120px, 1fr);
  gap: 10px;
  align-items: center;
  color: #444;
  font-size: 13px;
  line-height: 1.35;
}

.price-list__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 26px;
  padding: 3px 8px;
  border: 1px solid #e1e1e1;
  border-radius: 4px;
  background: #fafafa;
  color: #333;
  white-space: nowrap;
}

.price-list__price-row strong {
  color: #111;
  font-weight: 600;
  white-space: nowrap;
}

.price-list__muted {
  color: #777;
}

.price-list__unavailable {
  display: inline-flex;
  flex-direction: column;
  gap: 3px;
  color: #666;
  font-size: 13px;
  line-height: 1.35;
}

.price-list__unavailable b {
  color: var(--red);
  font-size: 14px;
}

@media (max-width: 700px) {
  .price-list__head h1 {
    font-size: 24px;
  }

  .price-list__table {
    min-width: 760px;
  }

  .price-list__table th,
  .price-list__table td {
    padding: 12px;
  }
}
/* Прайс-лист: вкладки и раскрывающиеся разделы категорий. */
.price-list__tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 18px 0 18px;
  padding: 0 0 4px;
}

.price-list__tab {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 8px 13px;
  border: 1px solid #dedede;
  border-radius: 6px;
  background: #fff;
  color: #333;
  font: inherit;
  font-size: 14px;
  cursor: pointer;
  transition: border-color .15s ease, color .15s ease, background .15s ease;
}

.price-list__tab span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border-radius: 999px;
  background: #f1f1f1;
  color: #666;
  font-size: 12px;
}

.price-list__tab.is-active {
  border-color: #ff2d2d;
  background: #fff7f7;
  color: #d71920;
}

.price-list__tab.is-active span {
  background: #ff2d2d;
  color: #fff;
}

.price-list__panel {
  display: none;
}

.price-list__panel.is-active {
  display: block;
}

.price-list__toggle {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: 4px 0 12px;
  padding: 13px 16px;
  border: 1px solid #e2e2e2;
  border-radius: 8px;
  background: #fff;
  color: #111;
  font: inherit;
  font-weight: 600;
  text-align: left;
  cursor: pointer;
}

.price-list__toggle b {
  color: #d71920;
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
}

.price-list__panel.is-collapsed .price-list__panel-body {
  display: none;
}

@media (max-width: 700px) {
  .price-list__tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 8px;
  }

  .price-list__tab {
    flex: 0 0 auto;
  }
}
/* Прайс-лист: кнопка скачивания CSV для Excel. */
.price-list__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.price-list__download {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 9px 16px;
  border: 1px solid #ff2d2d;
  border-radius: 6px;
  background: #ff2d2d;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
}

.price-list__download:hover {
  color: #fff;
  background: #e51f1f;
}

@media (max-width: 700px) {
  .price-list__head {
    display: block;
  }

  .price-list__download {
    margin-top: 14px;
  }
}
/* Прайс-лист: группировка вариантов под одним товаром без повторения названия и картинки. */
.price-list__table--grouped th:first-child {
  width: 58%;
}

.price-list__product-row td {
  background: #fbfbfb;
  border-top: 1px solid #e5e5e5;
}

.price-list__product-card {
  display: flex;
  align-items: center;
  gap: 14px;
}

.price-list__product-row .price-list__image {
  flex: 0 0 76px;
}

.price-list__offer-row td:first-child {
  padding-left: 106px;
}

.price-list__offer-row .price-list__offer {
  min-width: 0;
}

@media (max-width: 700px) {
  .price-list__offer-row td:first-child {
    padding-left: 16px;
  }

  .price-list__product-card {
    align-items: flex-start;
  }
}
/* Прайс-лист: товар как крупный сворачиваемый заголовок, фото остается у модели. */
.price-list__product-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 15px 16px;
}

.price-list__product-heading .price-list__product {
  min-width: 0;
  font-size: 18px;
  line-height: 1.25;
}

.price-list__product-toggle {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 4px 0 4px 14px;
  border: 0;
  background: transparent;
  color: #111;
  font: inherit;
  cursor: pointer;
}

.price-list__product-toggle b {
  color: #d71920;
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
}

.price-list__product-row.is-collapsed td {
  border-bottom-color: #ededed;
}

.price-list__offer-row td:first-child {
  width: 108px;
  padding-left: 16px;
}

.price-list__offer-row td:nth-child(2) {
  width: 48%;
}

.price-list__table--grouped th:first-child {
  width: 108px;
}

@media (max-width: 700px) {
  .price-list__product-heading {
    padding: 13px 12px;
  }

  .price-list__product-heading .price-list__product {
    font-size: 16px;
  }
}

/* Личный кабинет: аккуратный вывод авторизации, заказов miniShop2 и профиля Office. */
.page #office-auth-form,
.page #office-minishop2-grid,
.page #office-profile-form {
  max-width: 100%;
  box-sizing: border-box;
}

.lk-auth-panel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 22px;
  padding: 18px 20px;
  border: 1px solid #e3e3e3;
  border-radius: 8px;
  background: #fff;
}

.lk-auth-panel__meta,
.lk-section-head__eyebrow {
  margin-bottom: 4px;
  color: #777;
  font-size: 13px;
}

.lk-auth-panel__title {
  color: #111;
  font-size: 18px;
  line-height: 1.35;
}

.lk-auth-panel__email {
  margin-top: 3px;
  color: #555;
  font-size: 14px;
}

.lk-btn,
.page #office-auth-form .btn,
.page #office-profile-form .btn,
.page #office-minishop2-grid button,
.page #office-minishop2-grid .x-btn button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 9px 16px;
  border: 1px solid #d71920;
  border-radius: 6px;
  background: #d71920;
  color: #fff !important;
  font: inherit;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  cursor: pointer;
}

.lk-btn:hover,
.page #office-auth-form .btn:hover,
.page #office-profile-form .btn:hover {
  background: #bd1319;
  color: #fff !important;
}

.lk-btn--ghost,
.page #office-auth-form .btn-light,
.page #office-profile-form .btn-danger {
  border-color: #d9d9d9;
  background: #fff;
  color: #333 !important;
}

.lk-btn--ghost:hover,
.page #office-auth-form .btn-light:hover,
.page #office-profile-form .btn-danger:hover {
  border-color: #d71920;
  background: #fff7f7;
  color: #d71920 !important;
}

.page #office-minishop2-grid {
  margin: 0 0 28px;
  padding: 16px;
  border: 1px solid #e3e3e3;
  border-radius: 8px;
  background: #fff;
}

.page #office-minishop2-grid .x-panel {
  border: 0;
}

.page #office-minishop2-grid .x-panel-body,
.page #office-minishop2-grid .x-grid3,
.page #office-minishop2-grid .x-grid3-header,
.page #office-minishop2-grid .x-grid3-scroller {
  border-color: #e6e6e6;
  background: #fff;
}

.page #office-minishop2-grid .x-grid3-hd-row td {
  padding: 10px 8px;
  border-color: #e1e1e1;
  background: #f6f7f8;
  color: #333;
  font-size: 13px;
  font-weight: 600;
}

.page #office-minishop2-grid .x-grid3-row td {
  padding: 11px 8px;
  border-color: #eeeeee;
  color: #222;
  font-size: 13px;
}

.page #office-minishop2-grid .x-grid3-row-alt {
  background: #fafafa;
}

.page #office-minishop2-grid .x-toolbar {
  padding: 10px 0;
  border: 0;
  background: #fff;
}

.page #office-minishop2-grid .x-form-text,
.page #office-minishop2-grid input[type="text"],
.page #office-minishop2-grid select {
  height: 36px;
  border: 1px solid #dcdcdc;
  border-radius: 6px;
  background: #fff;
  color: #222;
  font-size: 14px;
}

.page #office-minishop2-grid .x-btn,
.page #office-minishop2-grid .x-btn-small,
.page #office-minishop2-grid .x-btn-tl,
.page #office-minishop2-grid .x-btn-tr,
.page #office-minishop2-grid .x-btn-tc,
.page #office-minishop2-grid .x-btn-ml,
.page #office-minishop2-grid .x-btn-mr,
.page #office-minishop2-grid .x-btn-mc,
.page #office-minishop2-grid .x-btn-bl,
.page #office-minishop2-grid .x-btn-br,
.page #office-minishop2-grid .x-btn-bc {
  background-image: none !important;
}

.page #office-minishop2-grid .x-btn button {
  min-width: 34px;
  min-height: 30px;
  padding: 6px 10px;
  border-color: #d9d9d9;
  background: #fff;
  color: #222 !important;
  font-size: 13px;
}

.page #office-minishop2-grid .x-btn button:hover {
  border-color: #d71920;
  color: #d71920 !important;
}

.lk-profile {
  margin: 0 0 34px;
  padding: 22px;
  border: 1px solid #e3e3e3;
  border-radius: 8px;
  background: #fff;
}

.lk-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 18px;
  padding-bottom: 16px;
  border-bottom: 1px solid #ededed;
}

.lk-section-head h3 {
  margin: 0;
  color: #111;
  font-size: 20px;
  line-height: 1.25;
}

.lk-section-head p {
  max-width: 430px;
  margin: 0;
  color: #666;
  font-size: 14px;
  line-height: 1.45;
}

.lk-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 18px;
}

.lk-field {
  min-width: 0;
}

.lk-field--full {
  grid-column: 1 / -1;
}

.lk-field label {
  display: block;
  margin-bottom: 7px;
  color: #333;
  font-size: 14px;
  font-weight: 600;
}

.lk-field label span {
  color: #d71920;
}

.lk-field input,
.lk-profile .form-control {
  width: 100%;
  min-height: 40px;
  box-sizing: border-box;
  padding: 9px 12px;
  border: 1px solid #dcdcdc;
  border-radius: 6px;
  background: #fff;
  color: #222;
  font: inherit;
  font-size: 14px;
}

.lk-field input:focus,
.lk-profile .form-control:focus {
  border-color: #d71920;
  outline: 0;
}

.lk-field small,
.lk-profile .message {
  display: block;
  margin-top: 5px;
  color: #777;
  font-size: 12px;
  line-height: 1.35;
}

.lk-profile .message {
  color: #d71920;
}

.lk-password-box {
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid #ededed;
}

.lk-password-box__title {
  margin-bottom: 12px;
  color: #111;
  font-size: 16px;
  font-weight: 700;
}

.lk-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid #ededed;
}

.lk-profile .hidden {
  display: none !important;
}

.lk-auth-page {
  max-width: 980px;
  margin: 0 auto 34px;
  padding: 22px;
  border: 1px solid #e3e3e3;
  border-radius: 8px;
  background: #fff;
}

.page #office-auth-form.row,
.page #office-auth-form.lk-auth-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  margin: 0;
}

.page .office-auth-login-wrapper,
.page .office-auth-register-wrapper {
  min-width: 0;
  padding: 18px;
  border: 1px solid #e8e8e8;
  border-radius: 8px;
  background: #fff;
}

.page #office-auth-form.lk-auth-grid .office-auth-login-wrapper,
.page #office-auth-form.lk-auth-grid .office-auth-register-wrapper {
  padding: 22px;
}

.page .office-auth-login-wrapper h4,
.page .office-auth-register-wrapper h4 {
  margin: 0 0 16px;
  color: #111;
  font-size: 19px;
  line-height: 1.25;
}

.lk-section-head--compact {
  display: block;
  margin-bottom: 16px;
  padding-bottom: 14px;
}

.lk-section-head--compact h3 {
  margin-bottom: 6px;
}

.lk-section-head--compact p {
  max-width: none;
}

.lk-form {
  margin: 0;
}

.page #office-auth-login .form-group,
.page #office-auth-register .form-group {
  margin: 0 0 14px;
}

.page #office-auth-login label,
.page #office-auth-register label {
  display: block;
  margin-bottom: 7px;
  color: #333;
  font-size: 14px;
  font-weight: 600;
}

.page #office-auth-login input,
.page #office-auth-register input {
  width: 100%;
  min-height: 40px;
  box-sizing: border-box;
  padding: 9px 12px;
  border: 1px solid #dcdcdc;
  border-radius: 6px;
  background: #fff;
  color: #222;
  font: inherit;
  font-size: 14px;
}

.page #office-auth-login input:focus,
.page #office-auth-register input:focus {
  border-color: #d71920;
  outline: 0;
}

.page #office-auth-login small,
.page #office-auth-register small {
  display: block;
  margin-top: 5px;
  color: #777;
  font-size: 12px;
  line-height: 1.35;
}

.page #office-auth-login .hidden,
.page #office-auth-register .hidden {
  display: none !important;
}

.page #office-auth-login .offset-md-3,
.page #office-auth-register .offset-md-3 {
  margin-left: 0;
}

.lk-actions--plain {
  margin-top: 16px;
  padding-top: 0;
  border-top: 0;
}

.lk-message {
  margin-top: 14px;
  padding: 10px 12px;
  border-radius: 6px;
  font-size: 13px;
  line-height: 1.4;
}

.lk-message--error,
.page #office-auth-form .alert-danger {
  border: 1px solid #f0b9b9;
  background: #fff5f5;
  color: #b10f16;
}

.lk-auth-providers {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid #ededed;
}

.lk-auth-providers label {
  display: block;
  margin-bottom: 8px;
  color: #333;
  font-size: 14px;
  font-weight: 600;
}

@media (max-width: 760px) {
  .lk-auth-panel,
  .lk-section-head,
  .lk-actions {
    display: block;
  }

  .lk-auth-panel .lk-btn,
  .lk-actions .lk-btn {
    width: 100%;
    margin-top: 12px;
  }

  .lk-form-grid {
    grid-template-columns: 1fr;
  }

  .page #office-minishop2-grid {
    overflow-x: auto;
  }

  .page #office-auth-form.row,
  .page #office-auth-form.lk-auth-grid {
    grid-template-columns: 1fr;
  }
}

/* Каталог: спокойные hover-состояния карточек товаров без подчеркивания ссылок. */
.product__list .product-item,
.product-item.ms2_product {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 360px;
  border: 1px solid #e1e1e1;
  border-radius: 8px;
  background: #fff;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.product__list .product-item:hover,
.product-item.ms2_product:hover {
  border-color: #d0d0d0;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .06);
  transform: translateY(-2px);
}

.product-item a,
.product-item a:hover,
.product-item a:focus,
.product-item__title,
.product-item__title:hover,
.product-item__slide-item-box,
.product-item__slide-item-box:hover {
  text-decoration: none !important;
}

.product-item__top {
  flex: 0 0 auto;
}

.product-item__slide-item-box {
  overflow: hidden;
  border-radius: 6px;
  background: #fff;
}

.product-item__slide-item-box img {
  max-width: 100%;
  max-height: 190px;
  object-fit: contain;
  transition: transform .18s ease;
}

.product-item:hover .product-item__slide-item-box img {
  transform: translate(-50%, -50%) scale(1.03);
}

.product-item__title {
  flex: 1 1 auto;
  min-height: 58px;
  color: #006cff;
  font-size: 17px;
  line-height: 1.32;
  text-decoration: none !important;
}

.product-item__title:hover,
.product-item:hover .product-item__title {
  color: #d71920;
  text-decoration: none !important;
}

.product-item .button_more,
.product-item .product-item__add-to-cart {
  align-self: flex-start;
  min-width: 104px;
  min-height: 34px;
  padding: 7px 16px;
  border: 1px solid #d9d9d9;
  border-radius: 6px;
  background: #fff;
  color: #006cff;
  font-size: 13px;
  font-weight: 500;
  text-decoration: none !important;
  transition: border-color .18s ease, background .18s ease, color .18s ease;
}

.product-item .button_more:hover,
.product-item .product-item__add-to-cart:hover,
.product-item:hover .button_more {
  border-color: #d71920;
  background: #d71920;
  color: #fff !important;
  text-decoration: none !important;
}

.product-item__wishlist a {
  position: relative;
  z-index: 5;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  background: #fff;
  color: transparent;
  line-height: 1;
  text-decoration: none !important;
  transition: border-color .18s ease, background .18s ease;
}

.product-item__wishlist a:hover {
  border-color: #d71920;
  background: #fff7f7;
  text-decoration: none !important;
}

.product-item__wishlist a:hover::before {
  background: #d71920;
}

.product-item__wishlist a.voted,
.product-item__wishlist a.add {
  border-color: #d71920;
  background: #fff7f7;
}

.product-item__wishlist a.voted::before,
.product-item__wishlist a.add::before {
  background: #d71920;
}

.product-item__wishlist a::before {
  pointer-events: none;
}

.favorites-page {
  margin-bottom: 36px;
}

.favorites-page__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 24px;
}

.favorites-page__head h1 {
  margin: 0 0 6px;
  color: #111;
  font-size: 30px;
  line-height: 1.25;
}

.favorites-page__head p {
  margin: 0;
  color: #666;
  font-size: 14px;
  line-height: 1.45;
}

.favorites-page__clear {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 9px 16px;
  border: 1px solid #d9d9d9;
  border-radius: 6px;
  background: #fff;
  color: #333;
  font: inherit;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none !important;
  cursor: pointer;
  transition: border-color .18s ease, background .18s ease, color .18s ease;
}

.favorites-page__clear:hover {
  border-color: #d71920;
  background: #fff7f7;
  color: #d71920;
}

.favorites-page__empty {
  width: 100%;
  padding: 22px;
  border: 1px solid #e3e3e3;
  border-radius: 8px;
  background: #fff;
  color: #555;
  font-size: 15px;
}

@media (max-width: 760px) {
  .favorites-page__head {
    display: block;
  }

  .favorites-page__clear {
    width: 100%;
    margin-top: 14px;
  }
}

/* Карта сайта: простой список опубликованных страниц. */
.site-map {
  max-width: 900px;
  padding: 8px 0 24px;
}

.site-map__list {
  margin: 0;
  padding-left: 22px;
}

.site-map__list .site-map__list {
  margin-top: 6px;
}

.site-map__item {
  margin: 6px 0;
  color: #666;
  line-height: 1.45;
}

.site-map__item a {
  color: var(--blue);
  text-decoration: none;
}

.site-map__item a:hover {
  color: var(--red);
}
