/*NOTE: This file is intended for programmers. Aspro technical support is not advised to work with him.*/

/* Examples (uncomment to use):*/

/* Expand site width */
/* body .wrapper { max-width: 1400px !important;  } */

/* Set site background image */
/* body {  background: url(image_source) top no-repeat; }

/* Hide compare button */
/* a.compare_item { display: none !important;  }*/
.top_slider_wrapp .flexslider .slides > li.started {
	background: transparent !important;
}

.seo-main-h1 {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.stickers .sticker_sale_text {
	background-color: #e34901;
}

.right_block {
	width: 100%;
}

.price-notify-popup {
	text-align: center;
}

.price-notify_frame.popup {
	border-radius: 8px;
	max-width:     700px;
}

@media (max-width: 992px) {
	.price-notify_frame.popup {
		margin: 0px 10px;
	}
}

.dnone {
	display: none !important;
}

.catalog-item-custom-stickers__item--art {
	background: #5731b1;
	color:      #fff;
}

.catalog-item-custom-stickers__item--zakaznoy {
	background: #904d30;
	color:      #fff;
}

.catalog-item-custom-stickers__item {
	font-size:       10px;
	line-height:     12px;
	min-width:       114px;
	padding:         5px 10px 4px;
	text-align:      center;
	z-index:         100;
	border-radius:   2px;
	margin-left:     auto;
	display:         flex;
	max-width:       fit-content;
	justify-content: center;
}

.catalog-item-custom-stickers__item + .catalog-item-custom-stickers__item {
	margin-top: 5px;
}

.cookie-alert {
	--color:               #7d59d0;

	position:              fixed;
	left:                  14px;
	right:                 14px;
	bottom:                14px;
	z-index:               999;
	max-width:             630px;
	margin-left:           auto;

	display:               grid;
	grid-template-columns: 1fr auto;
	grid-template-rows: repeat(2, auto);
	grid-template-areas:
    	"text close"
    	"button button";
	gap:                   13px;

	background-color:      #fff;
	border-radius:         10px;
	padding:               18px;
	font-size:             13px;
	line-height:           1.4;
	box-shadow:            0 0 40px rgba(0, 0, 0, .2);
	color:                 #1a1718;
	transition:            opacity .45s ease, transform .6s ease
}

.cookie-alert:not(.active) {
	opacity:        0;
	transform:      translateY(100px);
	pointer-events: none;
}

.cookie-alert__text {
	grid-area: text;
}

.cookie-alert__text a {
	color:           var(--color);
	text-decoration: underline;
	display:         inline-block;
}

.cookie-alert__text a:hover {
	text-decoration: underline;
}

.cookie-alert__close {
	grid-area:   close;
	flex-shrink: 0;
	cursor:      pointer;
	transition:  color .3s ease;
}

.cookie-alert__close:hover {
	color: var(--color);
}

.cookie-alert__button {
	grid-area:        button;
	width:            max-content;
	border-radius:    10px;
	padding:          10px 20px;
	background-color: var(--color);
	color:            #fff;
	text-align:       center;
	cursor:           pointer;
	transition:       opacity .3s ease;
}

.cookie-alert__button:hover {
	opacity: .8;
}

.subscribe-consent {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin-top: 10px;
	font-size: 12px;
	line-height: 1.5;
}

.subscribe-consent input[type="checkbox"] {
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	margin: 1px 0 0;
	accent-color: #6037c9;
}

.licence_block input[type="checkbox"] {
	width: 16px;
	height: 16px;
	accent-color: #6037c9;
}

.subscribe-edit .licence_block.filter {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 10px 0 0;
	padding: 0;
}

.subscribe-edit .licence_block.filter input[type="hidden"] {
	display: none;
}

.subscribe-edit .licence_block.filter input[type="checkbox"] {
	display: block;
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	line-height: normal;
	margin: 1px 0 0;
	accent-color: #6037c9;
}

.subscribe-edit .licence_block.filter input[type="checkbox"] + label {
	flex: 1 1 auto;
	display: block;
	position: static;
	margin: 0;
	padding: 0;
	color: #555;
	font-size: 12px;
	line-height: 1.5;
}

.subscribe-edit .licence_block.filter input[type="checkbox"] + label:before,
.subscribe-edit .licence_block.filter input[type="checkbox"] + label:after {
	display: none;
}

#reviews_content .blog-comment-fields > .licence_block.filter {
	margin: 12px 0 0;
	padding: 0;
}

.subscribe-edit form.subscribe-form input[type="reset"][name="reset"] {
	display: block;
	margin-top: 12px;
}

.subscribe-consent > span {
	flex: 1 1 auto;
}

.subscribe-consent a {
	text-decoration: underline;
}

.subscribe_wrap .subscribe-consent--sidebar {
	position: relative;
	z-index: 1;
	width: 100%;
	color: #fff;
}

.subscribe_wrap .subscribe-consent--sidebar a {
	color: inherit;
}

.licence_block {
	display: block;
	margin-top: 10px;
}

.registraion-page #registraion-page-form .but-r > .wrap_md {
	display: block;
	width: 100%;
	margin: 0;
}

.registraion-page #registraion-page-form .but-r > button + .wrap_md {
	margin-top: 20px;
}

.registraion-page #registraion-page-form .but-r > .wrap_md + .wrap_md {
	margin-top: 12px;
}

.registraion-page #registraion-page-form .licence_block {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin-top: 0;
}

.registraion-page #registraion-page-form .licence_block input[type="checkbox"] {
	flex: 0 0 auto;
	margin: 3px 0 0;
}

.registraion-page #registraion-page-form .licence_block label {
	display: block;
	flex: 1 1 auto;
	margin: 0;
}

body .top-bar {
	background: #7d59d0;
	color:      #fff;
	width:      100%;
	position:   relative;
	top:        0;
	left:       0;
	z-index:    10;
	display:    block;
}

body .top-bar.is-hidden {
	display: none;
}

.top-bar .maxwidth-theme {
	background: none;
}

.top-bar__wrapper {
	display:         flex;
	align-items:     center;
	justify-content: space-around;
	padding:         0.5rem 0;
}

.top-bar__text {
	font-size:  16px;
	text-align: center;
}

.top-bar__close {
	cursor:          pointer;
	width:           40px;
	height:          40px;
	display:         flex;
	font-size:       32px;
	text-align:      center;
	color:           white;
	align-items:     center;
	justify-content: center;
}

.top-bar__close:hover {
	opacity: 0.6;
}

@media (max-width: 992px) {
	.top-bar__wrapper {
		padding: 1rem;
	}

	.top-bar__text {
		font-size:  12px;
		text-align: left;
	}
}

.product-filter {
	display:        flex;
	flex-direction: column;
	row-gap:        14px;
	margin-bottom:  30px;
	max-width:      470px;
	overflow:       hidden;
}

.product-filter__wrapper {
	display:        flex;
	flex-direction: column;
	row-gap:        2px;
	position:       relative;
}

.product-filter__list {
	display:                    flex;
	gap:                        10px;
	flex-wrap:                  nowrap;
	overflow-x:                 auto;
	scroll-behavior:            smooth;
	-webkit-overflow-scrolling: touch;
	scrollbar-width:            none;
	-ms-overflow-style:         none;
	cursor:                     grab;
	user-select:                none;
}

.product-filter__list:active {
	cursor: grabbing;
}

.product-filter__list::-webkit-scrollbar {
	display: none;
}

.product-filter__item {
	text-decoration:   none;
	color:             #2e2e2e;
	flex-shrink:       0;
	user-select:       none;
	-webkit-user-drag: none;
}

.product-filter__item * {
	pointer-events: none;
}

.product-filter__wrapper .swiper-container {
	overflow: visible;
	margin:   0;
}

.product-filter__wrapper .swiper-container::after {
	content:        "";
	width:          100px;
	height:         100%;
	position:       absolute;
	bottom:         0;
	top:            0;
	right:          0;
	background:     linear-gradient(270deg, #fff 0, rgba(255, 255, 255, 0) 100%);
	pointer-events: none;
	z-index:        1;
}

.product-filter__elem {
	display:         flex;
	justify-content: center;
	align-items:     center;
	padding:         13px 21px;
	min-width:       70px;
	border:          1px solid #d9d9d9;
	border-radius:   5px;
	overflow:        hidden;
	cursor:          pointer;
	text-decoration: none;
	color:           #2e2e2e;
}

.product-filter__elem:hover {
	opacity: .7;
}

.product-filter__elem--picture {
	padding: 0;
	width:   70px;
	height:  50px;
}

.product-filter__picture {
	display: flex;
	width:   100%;
	height:  100%;
}

.product-filter__picture img {
	display: block;
	margin:  0 auto;
	width:   auto;
	height:  auto;
}

.product-filter__head {
	color:       #2e2e2e;
	font-size:   18px;
	font-weight: 500;
	line-height: 14px;
}

.product-filter__head span {
	font-weight: 400;
}

.product-filter__item.unactive {
	opacity:        1;
	pointer-events: none;
}

.product-filter__item.unactive .product-filter__elem {
	background-color: #eee !important;
	color:            #d9d9d9;
}

.product-filter__item.active {
	opacity: 1 !important;
}

.product-filter__item.active .product-filter__elem {
	border-color:     #6439c7;
	background-color: #fff !important;
	color:            #2e2e2e;
}

.product-filter__item input:checked ~ .product-filter__elem {
	border-color: #6439c7;
}

.product-filter__slider .swiper-wrapper {
	max-width: 400px;
}

.product-filter__slider .swiper-slide {
	width: -moz-fit-content !important;
	width: fit-content !important;
}

.copy-button {
	display:    inline-flex;
	position:   relative;
	cursor:     pointer;
	transition: color .3s ease;
}

.copy-button:hover {
	color: #aeaeaf;
}

.copy-button::after {
	content:          "Артикул скопирован";
	position:         absolute;
	right:            0;
	top:              -3px;
	transform:        translateY(-100%) scale(0.8);
	transform-origin: right bottom;
	background-color: #7d59d0;
	color:            #fff;
	padding:          6px 12px;
	border-radius:    999rem;
	font-size:        12px;
	font-weight:      400;
	white-space:      nowrap;
	transition:       opacity .2s ease;
}

.copy-button:not(.copy-button--show-tooltip)::after {
	opacity:        0;
	pointer-events: none;
}

/* Reserve space for compact promo banners to avoid CLS before lazy images load */
.adv_list.small_banners .img_inner {
	display:      block;
	aspect-ratio: 382 / 130;
	overflow:     hidden;
}

.adv_list.small_banners .img_inner img {
	width:      100%;
	height:     100%;
	object-fit: cover;
}
