.mainContainer .markerContainer {
	position: absolute;
	z-index: 3;
	left: 24px;
	top: 24px;
}

/* Маркеры в новой карточке товара (detail) — как .tsk-product-card__badges */
.mainContainer .markerContainer.cardprod,
.markerContainer.cardprod {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	width: auto;
	margin-bottom: 10px;
}
.wishCompWrap {
	position: absolute;
	z-index: 2;
	right: 30px;
	top: 24px;
}

/* В деталке кнопки должны быть поверх фото в слайдере */
.slide-image-container .wishCompWrap {
	right: 10px;
	top: 10px;
	z-index: 6;
}

/* Новые кнопки сравнить/избранное (как в tsk_react) поверх фото */
.slide-image-container .icons-wish-and-compare {
	position: absolute;
	top: 10px;
	right: 10px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	z-index: 6;
	pointer-events: auto;
}

.slide-image-container .icons-wish-and-compare .row {
	margin: 0;
}

.slide-image-container .icons-wish-and-compare .custom-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.95);
	color: #6b7280;
	text-decoration: none;
	box-shadow: 0 1px 4px rgba(15, 23, 42, 0.18);
	transition:
		background 0.2s ease,
		box-shadow 0.2s ease,
		transform 0.15s ease,
		opacity 0.15s ease;
}

.slide-image-container .icons-wish-and-compare .custom-icon:hover {
	background: #ffffff;
	transform: translateY(-1px);
	box-shadow: 0 4px 10px rgba(15, 23, 42, 0.32);
	opacity: 0.98;
}

.slide-image-container .icons-wish-and-compare .addWishlist.custom-icon.added {
	color: #ef4444;
}

.slide-image-container .icons-wish-and-compare .addWishlist.custom-icon.added .icon-svg path {
	fill: #ef4444;
	stroke: #ef4444;
}

.slide-image-container .icons-wish-and-compare .addCompare.custom-icon.added {
	color: var(--primary-color, #fcb514);
}

.slide-image-container .icons-wish-and-compare .icon-svg {
	pointer-events: none;
}

.slide-image-container .icons-wish-and-compare img.icon {
	display: none;
}

/* Бейджи на фото (как tsk-product-card__badges) */
.slide-image-container .tsk-product-card__badges {
	position: absolute;
	left: 10px;
	top: 10px;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	z-index: 6;
	pointer-events: none;
}

.slide-image-container .tsk-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 4px 8px;
	border-radius: 999px;
	font-family: "Montserrat", sans-serif;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.2;
	color: #0f172a;
	background: rgba(255, 255, 255, 0.92);
	border: 1px solid rgba(15, 23, 42, 0.08);
	box-shadow: 0 4px 10px rgba(15, 23, 42, 0.12);
	white-space: nowrap;
}

.slide-image-container .tsk-badge--sale {
	color: #ffffff;
	background: rgba(239, 68, 68, 0.95);
	border-color: rgba(239, 68, 68, 0.5);
}

.slide-image-container .tsk-badge--hit {
	color: #111827;
	background: rgba(251, 191, 36, 0.95);
	border-color: rgba(251, 191, 36, 0.6);
}

.slide-image-container .tsk-badge--new {
	color: #ffffff;
	background: rgba(34, 197, 94, 0.95);
	border-color: rgba(34, 197, 94, 0.55);
}
.wishCompWrap .elem {
	display: block;
	position: relative;
	width: 34px;
	height: 34px;
	line-height: 34px;
	text-align: center;
	margin-bottom: 8px;
	border: 1px solid #f1f1f1;
	border-radius: 2px;
	background: #fff;
	font-size: 0;
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.wishCompWrap .elem:before,
.wishCompWrap .elem:after {
	content: "";
	position: absolute;
	left: 9px;
	top: 9px;
	width: 16px;
	height: 16px;
	background: url("images/wishCompImage.png") 0 0 no-repeat;
	transition: all 0.2s ease-in-out;
}
.wishCompWrap .elem:after {
	opacity: 0;
}
.wishCompWrap .addWishlist:before {
	background-position: 0px 0px;
}
.wishCompWrap .addWishlist:after {
	background-position: -16px 0px;
}
.wishCompWrap .addCompare:before {
	background-position: 0px -16px;
}
.wishCompWrap .addCompare:after {
	background-position: -16px -16px;
}
.wishCompWrap .elem:hover {
	border-color: #e7e8ea;
	background: #e7e8ea;
}
.wishCompWrap .elem:active {
	top: 1px;
}
.wishCompWrap .elem.added:before {
	opacity: 0;
}
.wishCompWrap .elem.added:after {
	opacity: 1;
}
.wishCompWrap .elem img {
	display: none;
	display: inline-block;
	vertical-align: middle;
}
.marker {
	font:
		normal normal 11px "roboto_ltregular",
		arial,
		sans-serif;
	background-color: #424242;
	margin-bottom: 4px;
	color: #fff;
	line-height: 1.3;
	z-index: 2;
	padding: 4px 8px;
	border-radius: 6px !important;
}

/* Маркеры на карточке товара в деталке — визуально как .tsk-badge */
.mainContainer .marker.cardprod,
.marker.cardprod {
	font-size: 11px;
	font-weight: 600;
	padding: 4px 8px;
	border-radius: 6px !important;
	line-height: 1.3;
	margin: 0;
	font-family: "Montserrat", sans-serif;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	white-space: nowrap;
	width: auto;
}
.brandImageWrap {
	display: block;
}
.brandImageWrap .tb {
	width: auto;
}
.brandImage {
	vertical-align: middle;
	display: inline-block;
	margin-bottom: 10px;
	margin-right: 12px;
}

/* Логотип бренда + кнопка "Рассчитать" в одну строку */
.art .brand-calc-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 8px;
}

.art .brand-calc-row .brandImage,
.art .brand-calc-row .brandImage123 {
	display: inline-flex;
	align-items: center;
}

.art .brand-calc-row .brandImage img,
.art .brand-calc-row .brandImage123 img {
	max-height: 32px;
	max-width: 140px;
	height: auto;
	width: auto;
	object-fit: contain;
}
.bindAction {
	vertical-align: middle;
	display: inline-block;
	margin-bottom: 24px;
	line-height: 18px;
	font-size: 13px;
}
/*  .tb{
	width: auto;
}*/
.bindActionImage {
	width: 38px;
}
.bindActionImage .image {
	display: block;
	width: 30px;
	height: 30px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}
.bindAction a {
	position: relative;
	font-size: 13px;
	text-decoration: none;
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.bindAction a:active {
	position: relative;
	top: 1px;
}
.newReviewTable {
	font-size: 0;
}
.newReviewTable .left {
	vertical-align: top;
	font-size: 14px;
}
.reviewsBtnWrap {
	padding-bottom: 6px;
	border-bottom: 1px solid #e8e8e8;
}
.reviewsBtnWrap .row {
	display: inline-block;
	vertical-align: top;
	margin: 0 24px 12px 0;
	font-family: "roboto_ltregular";
	font-size: 13px;
}
.reviewsBtnWrap .row:last-child {
	margin-right: 0;
}
.reviewsBtnWrap .row img {
	margin-top: -4px;
}
.reviewsBtnWrap .label {
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	text-decoration: none;
	line-height: 21px;
	color: #717171;
}
.reviewsBtnWrap .labelDotted {
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	display: inline-block;
	color: #1a1a1a;
}
.reviewsBtnWrap a.label:hover .labelDotted {
	border-color: #1a1a1a;
}
.reviewsBtnWrap a.label:hover {
	color: #1a1a1a;
}
.reviewsBtnWrap a.label:active {
	position: relative;
	top: 1px;
}
.brandImage img {
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	vertical-align: middle;
	max-height: 200px;
	max-width: 200px;
}
.brandImage:hover img {
	opacity: 0.7;
}
.headingBox {
	table-layout: fixed;
	display: table;
	width: 100%;
}
.headingBox .heading {
	display: table-cell;
	vertical-align: top;
	padding-bottom: 12px;
	font-size: 16px;
}
.headingBox .moreProperties {
	vertical-align: top;
	display: table-cell;
	padding-right: 24px;
	padding-left: 12px;
	width: 40%;
}
.headingBox .morePropertiesLink {
	-webkit-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.2s;
	/*text-decoration: none;*/
	color: #888888;
}
.headingBox .morePropertiesLink:hover {
	color: #1a1a1a;
}
.elementProperties .propertyTable {
	table-layout: fixed;
	display: table;
	width: 100%;
}
.elementProperties .propertyTable {
	font-size: 15px;
}
.elementProperties .propertyTable .propertyName,
.elementProperties .propertyTable .propertyValue {
	vertical-align: middle;
	display: table-cell;
	position: relative;
	overflow: hidden;
	padding: 2px 0;
}
.elementProperties .propertyTable .propertyValue {
	padding-left: 12px;
	width: 40%;
}
.elementProperties .propertyTable .analog {
	-webkit-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.2s;
	color: #1a1a1a;
}
.elementProperties .propertyTable .analog:hover {
	color: #888888;
}
.elementProperties .propertyTable .propertyName:after {
	border-bottom: 1px dotted #cccccc;
	position: absolute;
	margin-left: 12px;
	height: 13px;
	content: "";
	width: 100%;
}
.elementSkuPropertyValue {
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.elementSkuPropertyValue.loading {
	opacity: 0.5;
}
.elementSkuPropertyName {
	font-family: "robotomedium";
	font-size: 16px;
	color: #1a1a1a;
	margin: 10px 0px;
}
.elementSkuPropertyList {
	overflow: hidden;
	list-style: none;
	margin: 0px -2px 0 -4px;
	padding: 0px;
}
.elementSkuProperty {
	overflow: hidden;
	margin: 6px 0 12px;
}
.elementSkuPropertyDropdown {
	margin: 6px 0 12px;
}
.elementSkuProperty li {
	box-sizing: border-box;
	overflow: hidden;
	min-width: 54px;
	padding: 4px 2px 2px 4px;
	float: left;
}
.elementSkuProperty .elementSkuPropertyValue_with_img {
	width: 100px;
}
.elementSkuProperty .selected .elementSkuPropertyLink {
	position: relative;
	/*top: -2px;*/
}

/* Выбранное значение SKU (вариант из старого стиля) */
li.elementSkuPropertyValue.selected a {
	color: #ffffff;
	border-width: 1px;
	border-style: solid;
	border-color: #fcb514;
	background: #1a1a1a;
}
.elementSkuProperty .disabled {
	display: none;
}
.elementSkuPropertyLink,
.elementSkuCustomPropertyLink {
	border: 1px solid #0061b2;
	text-decoration: none;
	text-align: center;
	font-size: 14px;
	line-height: 22px;
	padding: 6px;
	display: block;
	color: #0061b2;
	border-radius: 4px;
	background: #fff;
	word-break: break-word;
}

/* Обновлённый вид выбора SKU (толщина, размер и т.п.) в карточке товара */
#catalogElement .elementSkuProperty {
	margin: 8px 0 14px;
}

#catalogElement .elementSkuPropertyName {
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 600;
	color: #4b5563;
	margin: 0 0 6px;
}

#catalogElement .elementSkuPropertyList {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0;
	padding: 0;
}

#catalogElement .elementSkuPropertyList .elementSkuPropertyValue {
	float: none;
	min-width: auto;
	padding: 0;
}

#catalogElement .elementSkuPropertyLink,
#catalogElement .elementSkuCustomPropertyLink {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 6px 14px;
	font-size: 13px;
	line-height: 1.3;
	border-radius: 999px;
	border: 1px solid #e5e7eb;
	background: #f9fafb;
	color: #111827;
	transition: all 0.2s ease-in-out;
	box-sizing: border-box;
}

#catalogElement .elementSkuPropertyLink:hover,
#catalogElement .elementSkuCustomPropertyLink:hover {
	background: #fffbeb;
	border-color: rgba(255, 204, 51, 0.9);
	color: #1a1a1a;
}

#catalogElement li.elementSkuPropertyValue.selected a.elementSkuPropertyLink,
#catalogElement
	li.elementSkuPropertyValue.selected
	a.elementSkuCustomPropertyLink {
	background: linear-gradient(135deg, #ffcc33 0%, #ffd700 50%, #ffcc33 100%);
	border-color: rgba(255, 204, 51, 0.95);
	color: #1a1a1a;
	font-weight: 600;
	box-shadow:
		0 4px 10px rgba(15, 23, 42, 0.12),
		inset 0 1px 2px rgba(255, 255, 255, 0.8);
}
.elementSkuPropertyLink:active {
	position: relative;
	top: 1px;
}
.elementSkuPropertyList img {
	vertical-align: middle;
	max-height: 100%;
	max-width: 100%;
	border: 1px solid #fff;
	display: block;
	margin-bottom: 2px;
}
#catalogElement .elementSkuDropDownProperty {
	overflow: visible;
}
#catalogElement .elementSkuDropDownProperty .skuDropdownListItem {
	box-sizing: content-box;
	overflow: visible;
	min-width: auto;
	padding: 0px;
	float: none;
}
#catalogElement .skuDropdown {
	background-color: #ffffff;
	border: 1px solid #e7e8ea;
	position: relative;
	line-height: 13px;
	font-size: 13px;
	display: block;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	border-radius: 2px;
	width: 264px;
	margin-top: 4px;
}
#catalogElement .skuCheckedItem {
	background: url(images/selectArrow.png) 97% 50% no-repeat transparent;
	padding: 12px 30px 12px 8px !important;
	border-radius: 4px;
	display: block;
	cursor: pointer;
}
#catalogElement .skuCheckedItem:hover {
	opacity: 0.8;
}
#catalogElement .skuCheckedItem:active {
	position: relative;
	top: 1px;
}
#catalogElement .skuDropdown label:before,
#catalogElement .skuCheckboxList label:before {
	display: none;
}
#catalogElement .skuDropdownList {
	background-color: #ffffff;
	border: 1px solid #e7e8ea;
	visibility: hidden;
	position: absolute;
	list-style: none;
	margin: 0 -1px;
	opacity: 0;
	padding: 0;
	z-index: 2;
	top: 44px;
	right: 0;
	left: 0;
}
#catalogElement .skuDropdownList.opened {
	visibility: visible;
	opacity: 1;
}
#catalogElement .pics .skuDropdownList {
	top: 52px;
}
#catalogElement .skuDropdownList .elementSkuPropertyValue {
	border-top: 1px solid #e7e8ea;
	position: relative;
	display: block;
}
#catalogElement .skuDropdownList .elementSkuPropertyValue:first-child {
	border-top: 0px;
}
#catalogElement .skuDropdownList .selected {
	font-family: "robotomedium";
	background-color: #f9f9f9;
	cursor: pointer;
	color: #ffffff;
	opacity: 0.8;
}
#catalogElement .skuDropdownList .elementSkuPropertyValue:hover {
	background-color: #f9f9f9;
	cursor: pointer;
	color: #ffffff;
	opacity: 0.8;
}
#catalogElement .skuDropdownList .skuPropertyItemLink {
	padding: 12px 8px !important;
	text-decoration: none;
	line-height: 18px;
	text-align: left;
	font-size: 13px;
	color: #1a1a1a;
	display: block;
	border: 0px;
}
#catalogElement
	.skuDropdownList
	.skuDropdownListItem.selected
	.skuPropertyItemLink {
	border: 0px;
}
#catalogElement .skuDropdownList .skuDropdownListItem.disabled {
	display: none;
}
#catalogElement
	.skuDropdownList
	.elementSkuPropertyValue:active
	.skuPropertyItemLink,
#catalogElement .skuDropdownList .skuPropertyItemLink:active {
	position: relative;
	top: 1px;
}
#detailText {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	/*margin-top: 24px;*/
	padding: 0 24px 24px 24px;
	font-size: 14px;
	line-height: 1.6;
	clear: both;
}

/* Полный текст описания товара внутри таба "Описание" */
#detailText .changeDescription {
	color: #374151;
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	line-height: 1.7;
}

#detailText .changeDescription h1,
#detailText .changeDescription h2,
#detailText .changeDescription h3,
#detailText .changeDescription h4,
#detailText .changeDescription h5,
#detailText .changeDescription h6 {
	margin: 18px 0 8px;
	font-weight: 600;
	color: #111827;
	line-height: 1.3;
}

#detailText .changeDescription h4 {
	font-size: 15px;
}

#detailText .changeDescription p {
	margin: 0 0 10px;
}

#detailText .changeDescription ul,
#detailText .changeDescription ol {
	margin: 6px 0 12px 18px;
	padding: 0;
}

#detailText .changeDescription li {
	margin-bottom: 4px;
}

#detailText .changeDescription a {
	color: #2563eb;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
	transition: color 0.2s ease;
}

#detailText .changeDescription a:hover {
	color: #1d4ed8;
}

/* Таблицы в описании (характеристики, нормы и т.п.) */
#detailText .changeDescription table {
	width: 100%;
	border-collapse: collapse;
	margin: 10px 0 14px;
	font-size: 13px;
}

#detailText .changeDescription table td,
#detailText .changeDescription table th {
	border: 1px solid #e5e7eb;
	padding: 6px 8px;
	vertical-align: top;
}

#detailText .changeDescription table thead td,
#detailText .changeDescription table thead th {
	background-color: #f9fafb;
	font-weight: 600;
	color: #111827;
}

#detailText .changeDescription table tr:nth-child(even) td {
	background-color: #f9fafb;
}

/* Мобильная типографика описания */
@media (max-width: 768px) {
	#detailText .changeDescription {
		font-size: 13px;
		line-height: 1.6;
	}

	#detailText .changeDescription h1,
	#detailText .changeDescription h2,
	#detailText .changeDescription h3,
	#detailText .changeDescription h4,
	#detailText .changeDescription h5,
	#detailText .changeDescription h6 {
		margin: 14px 0 6px;
	}

	#detailText .changeDescription p {
		margin: 0 0 8px;
	}

	#detailText .changeDescription ul,
	#detailText .changeDescription ol {
		margin: 4px 0 8px 16px;
	}

	#detailText .changeDescription table {
		font-size: 12px;
	}
}

/* Краткое описание товара (превью текста) */
#detailText_preview {
	box-sizing: border-box;
	font-size: 14px;
	line-height: 1.5;
	color: #4b5563;
}

#detailText_preview .description {
	margin: 0;
}

#detailText_preview .changeShortDescription p {
	margin: 0 0 6px;
	font-size: 13px;
	line-height: 1.4;
}

#detailText .heading {
	border-top: 1px solid #e7e8ea;
	font-family: "robotobold";
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: 36px 0;
	font-weight: 800;
	font-size: 20px;
}
#detailText img {
	max-width: 100%;
}
#morePhotoSlider {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	overflow: hidden;
	margin: 24px 48px 0 48px;
}
#morePhotoSlider .morePhotos {
	-webkit-transition: opacity 0.6s ease-in-out;
	-o-transition: opacity 0.6s ease-in-out;
	transition: opacity 0.6s ease-in-out;
	visibility: hidden;
	overflow: hidden;
	opacity: 0;
}
#morePhotoSlider .morePhotos .photoItem {
	/*transform: scale(0.7);*/
	position: relative;
	text-align: center;
	opacity: 0.6;
	float: left;
}
#morePhotoSlider .morePhotos .photoItem.selected {
	padding-bottom: 24px;
	/*transform: scale(1);*/
	opacity: 1;
}
#morePhotoSlider .morePhotos .photoItem.selected:after {
	transform: translateX(-50%);
	border-bottom: 2px solid #1a1a1a;
	position: absolute;
	display: block;
	content: "";
	width: 30%;
	left: 50%;
	bottom: 0px;
}
#morePhotoSlider .morePhotos .photoItem a {
	display: inline-block;
	line-height: 100px;
	height: 100px;
}
#morePhotoSlider .morePhotos .photoItem img {
	max-width: 100%;
	max-height: 100%;
	vertical-align: middle;
}
.zoom {
	cursor: zoom-in;
}
#related,
#similar {
	margin-top: 24px;
}
#related .heading,
#similar .heading {
	border-top: 1px solid #e7e8ea;
	font-family: "robotobold";
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: 36px 24px;
	font-weight: 800;
	font-size: 20px;
}
#catalogElement .productList {
	border-left: 0px;
}
#catalogElement .product {
	width: 25%;
}
#giftContainer {
	padding-bottom: 24px;
	margin-top: 24px;
}
#giftContainer .heading {
	border-top: 1px solid #e7e8ea;
	font-family: "robotobold";
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: 36px 24px;
	font-weight: 800;
	font-size: 20px;
	display: block;
}
#elementProperties {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	/*margin-top: 24px;*/
	padding: 0 24px;
	overflow: auto;
}
#elementProperties .heading {
	border-top: 1px solid #efefef;
	font-family: "robotobold";
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: 36px 0px 24px 0;
	font-weight: 800;
	font-size: 20px;
	display: block;
}
.elementProperties a {
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	color: #1a1a1a;
}
#elementProperties .stats {
	/*min-width: 600px;*/
	width: 100%;
	padding: 12px;
	border-collapse: collapse;
	table-layout: fixed;
}
#elementProperties .stats a {
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	color: #1a1a1a;
}
#elementProperties .stats a:active {
	position: relative;
	top: 1px;
}
#elementProperties .stats td {
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
#catalogElement .question {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-left: 4px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #ffcc33;
	color: #1f2937;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	cursor: help;
	position: relative;
	vertical-align: middle;
	transition:
		background 0.2s,
		transform 0.2s;
}

#catalogElement .question::before {
	content: "?";
	display: block;
}

#catalogElement .question:hover {
	background: #f5c22e;
	transform: scale(1.05);
}
#elementProperties .stats tr {
	border: 1px solid #e4e4e4;
}
#elementProperties .stats .gray td {
	background-color: #f6f6f6;
}
#elementProperties .stats tr:hover td {
	background: #eee;
}
#elementProperties .stats .cap,
#elementProperties .stats .cap:hover td {
	border: 0 !important;
}
#elementProperties .stats .cap td {
	font-family: "robotomedium";
	font-size: 16px;
	color: #1a1a1a;
	padding: 12px 0;
}
#elementProperties .stats td {
	padding: 6px 0px;
}
#elementProperties .stats .name {
	text-overflow: ellipsis;
	/*white-space: nowrap;*/
	overflow: hidden;
	width: 40%;
}
#elementProperties .stats .name span {
	padding: 0px 12px;
}
#elementProperties .stats .analog {
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	font-size: 13px;
	text-decoration: none;
	color: #9d9d9d;
	border-bottom: 1px solid #d0d0d0;
	padding-bottom: 1px;
}
#elementProperties .stats .analog:hover {
	color: #1a1a1a;
	border-bottom-color: #1a1a1a;
}
#elementProperties .stats .analog:active {
	position: relative;
	top: 1px;
}
#elementProperties .stats .right {
	text-align: right;
	padding-right: 10%;
}

/* Подсказки характеристик — как в фильтре */
#elementProperties .hint {
	position: relative;
	display: inline-block;
}

#elementProperties .hint .hintValue {
	background-color: #ffffff;
	border: 1px solid #e7e8ea;
	box-shadow: 0 8px 18px rgba(15, 23, 42, 0.16);
	position: absolute;
	line-height: 1.5;
	min-width: 260px;
	max-width: 360px;
	margin-top: 8px;
	font-size: 13px;
	cursor: default;
	display: none;
	padding: 14px 16px 12px;
	z-index: 10;
	top: 100%;
	right: 0;
	border-radius: 10px;
	background-clip: padding-box;
}

#elementProperties .hint .hintValue .close {
	text-decoration: none;
	position: absolute;
	font-size: 18px;
	cursor: pointer;
	z-index: 2;
	right: 8px;
	top: 6px;
	color: #9ca3af;
	transition: color 0.2s ease-in-out;
}

#elementProperties .hint .hintValue .close:hover {
	color: #4b5563;
}
#catalogElement .bx_pagination_bottom {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0 24px;
}
#files {
	margin-top: 24px;
}
#files .wrap {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0 24px;
}
#files .heading {
	border-top: 1px solid #efefef;
	font-family: "robotobold";
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: 36px 24px;
	font-weight: 800;
	font-size: 20px;
	display: block;
}
#files .items {
	overflow: hidden;
}
/* Базовый элемент документа во вкладке "Документация"
   Общий layout дальше переопределяется через flex в блоке "Files block inside tabs" */
#files .item {
	margin-bottom: 24px;
	height: 65px;
	width: 50%;
}
#files .item .tb {
	table-layout: fixed;
	display: table;
	width: 100%;
}
#files .item .tbr {
	display: flex;
	width: 100%;
}
#files .item .icon {
	vertical-align: middle;
	display: table-cell;
	width: 20%;
}
#files .item .icon a {
	display: block;
}
#files .item .icon img {
	vertical-align: middle;
	max-width: 100%;
}
#files .item .info {
	vertical-align: middle;
	display: table-cell;
	padding-right: 18px;
	width: 50%;
}
#files .item .info .name {
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	line-height: 25px;
	overflow: hidden;
	font-size: 14px;
	display: block;
	color: #1a1a1a;
}
#files .item .info .name span {
	vertical-align: middle;
	display: inline-block;
	line-height: 21px;
}
#files .item small {
	display: block;
}

/* Адаптив документации (вкладка \"Документация\") */
@media (max-width: 768px) {
	#files .wrap {
		padding: 0 16px;
	}

	#files .item {
		float: none;
		width: 100%;
		height: auto;
		margin-bottom: 16px;
	}

	#files .item .icon {
		width: 48px;
	}

	#files .item .info {
		padding-right: 8px;
	}

	#files .item .info .name {
		height: auto;
		line-height: 1.3;
		font-size: 13px;
	}

	#files .item small {
		font-size: 11px;
	}
}
#video {
	margin-top: 24px;
}
#video .wrap {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0 24px;
}
#video .heading {
	border-top: 1px solid #efefef;
	font-family: "robotobold";
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: 36px 24px;
	font-weight: 800;
	font-size: 20px;
	display: block;
}
#video .items {
	overflow: hidden;
	margin: 0 -12px;
}
#video .items.sz1 {
	margin: 0;
}
#video .item {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	float: left;
	width: 33.33333%;
	padding: 0px 12px 24px 12px;
}
#video .item iframe {
	height: 200px;
	width: 100%;
}
#video .items.sz1 .item {
	padding: 0px;
	width: 100%;
}
#video .items.sz1 iframe {
	height: 500px;
}
#video .items.sz2 .item {
	width: 50%;
}
#video .items.sz2 iframe {
	height: 300px;
}
#elementError {
	background-color: rgba(0, 0, 0, 0.298);
	display: none;
	height: 100%;
	left: 0px;
	overflow: visible;
	position: fixed;
	top: 0px;
	width: 100%;
	z-index: 998;
}
#elementErrorContainer {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	box-shadow: 1px 1px 12px rgba(0, 0, 0, 0.5);
	background-color: #ffffff;
	margin-left: -150px;
	margin-top: -130px;
	position: relative;
	overflow: hidden;
	color: #1a1a1a;
	width: 300px;
	z-index: 999;
	left: 50%;
	top: 50%;
}
#elementErrorContainer span.heading {
	background-color: #424242;
	color: #ffffff;
	display: block;
	font-size: 16px;
	line-height: 50px;
	height: 50px;
	text-align: center;
	margin: 0;
	padding: 0;
}
#elementErrorContainer p {
	text-align: center;
	color: #1a1a1a;
	padding: 12px;
}
#elementErrorContainer #elementErrorClose {
	background: url("images/exit.png") 0px 0px no-repeat transparent;
	margin-bottom: 24px;
	position: absolute;
	display: block;
	height: 21px;
	right: 24px;
	width: 21px;
	top: 16px;
}
#elementErrorContainer #elementErrorClose:hover {
	background: url("images/exit.png") 0px -21px no-repeat transparent;
}
#elementErrorContainer #elementErrorClose:active {
	background: url("images/exit.png") 0px -42px no-repeat transparent;
}
#elementErrorContainer .close {
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	display: block;
	height: 35px;
	line-height: 35px;
	text-align: center;
	color: #cccccc;
	background: #424242;
	width: 140px;
	text-decoration: none;
	margin: 0px auto 12px;
}
#elementErrorContainer .close:hover {
	background: #2b2b2b;
}
#elementErrorContainer .close:active {
	position: relative;
	top: 1px;
}
#catalogElement #hint {
	position: absolute;
	z-index: 9999;
	margin: 0;
	padding: 12px 14px 12px;
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
	font-size: 13px;
	line-height: 1.5;
	color: #374151;
	min-width: 200px;
	max-width: 320px;
	white-space: normal;
	font-family: "Montserrat", sans-serif;
	box-sizing: border-box;
}

#catalogElement #hint span {
	font-size: 14px;
	line-height: 1.4;
	font-weight: 600;
	display: block;
	margin-bottom: 6px;
}

#catalogElement #hint ins {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 6px;
	right: 8px;
	width: 20px;
	height: 20px;
	cursor: pointer;
	font-size: 16px;
	color: #9ca3af;
}

#catalogElement #hint ins::before {
	content: "×";
	line-height: 1;
}

#catalogElement #hint ins:active {
	top: 7px;
}
#skuOffersTable {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin-bottom: 30px;
}
#skuOffersTable .offersTableContainer {
	box-sizing: border-box;
	padding: 0px 24px;
}
#skuOffersTable .offersTableContainerBtn {
	margin-top: 24px;
	text-align: center;
}
#skuOffersTable .catalogProductOffersNext img {
	vertical-align: middle;
	display: inline-block;
	margin-right: 8px;
	margin-top: -2px;
}
#skuOffersTable .catalogProductOffersNext.btn-simple {
	border-radius: 4px;
	width: 156px;
}
#skuOffersTable .heading {
	font-family: "robotomedium";
	text-transform: uppercase;
	padding: 36px 24px;
	font-weight: 800;
	font-size: 20px;
	display: block;
}
#skuOffersTable .offersTable {
	/*border-collapse: collapse;*/
	/*border-spacing: 8px;*/
	width: 100%;
}
#skuOffersTable .tb {
	transition: all 0.2s ease-in-out;
	width: 100%;
}
#skuOffersTable .tableElem .tb:hover {
	background-color: #fdfdfd;
}
#skuOffersTable .tc {
	box-sizing: border-box;
	text-align: center;
	padding: 8px 6px;
}
#skuOffersTable .thead {
	border-radius: 4px;
	background: #f1f1f1;
}
#skuOffersTable .thead .tc {
	padding: 12px 6px;
}
#skuOffersTable .tableElem {
	border: 1px solid #f1f1f1;
	border-radius: 4px;
	margin-top: 8px;
}
#skuOffersTable .offersTable th,
#skuOffersTable .offersTable td {
	text-align: center;
}
#skuOffersTable .offersTable th {
	background-color: #f1f1f1;
	padding: 12px 0px;
	font-weight: 400;
	font-size: 14px;
	color: #1a1a1a;
}
#skuOffersTable .offersTable td {
	border-bottom: 1px solid #f3f3f3;
	border-top: 1px solid #f3f3f3;
	padding-bottom: 8px;
	padding-top: 8px;
}
#skuOffersTable .offersTable th {
	border-bottom: 1px solid #f3f3f3;
	border-top: 1px solid #f3f3f3;
}
#skuOffersTable .offersTable th:first-child,
#skuOffersTable .offersTable td:first-child {
	border-left: 1px solid #f3f3f3;
}
#skuOffersTable .offersTable th:last-child,
#skuOffersTable .offersTable td:last-child {
	border-right: 1px solid #f3f3f3;
}
#skuOffersTable .offersTable .offersName {
	text-align: left;
	width: 220px;
}
#skuOffersTable .offersTable .offersName + td {
	padding-left: 12px;
}
#skuOffersTable .offersTable .offersPicture {
	width: 96px;
}
#skuOffersTable .offersTable .offersPicture img {
	vertical-align: middle;
	max-height: 80px;
	max-width: 80px;
	height: auto;
	width: auto;
}
#skuOffersTable .offersTable .priceWrap {
	width: 184px;
}
#skuOffersTable .offersTable .quantity img {
	vertical-align: middle;
	display: inline-block;
	padding-right: 6px;
	margin-top: -4px;
}
#skuOffersTable .offersTable .price {
	font-family: "robotomedium";
	position: relative;
	font-size: 16px;
}
#skuOffersTable .offersTable .quanBaskWrap {
	width: 250px;
	padding: 0;
}
#skuOffersTable .offersTable .quanBaskWrap .tc {
	width: 50%;
}
#skuOffersTable .offersTable .basket {
	padding-right: 12px;
}
#skuOffersTable .offersTable .price .priceIcon {
	margin-right: 6px;
}
#skuOffersTable .offersTable .price .lnk {
	border-bottom: 1px dashed #1a1a1a;
	transition: all 0.2s ease-in-out;
	padding-bottom: 2px;
}
#skuOffersTable .offersTable .price:hover .lnk {
	border-color: #888888;
}
#skuOffersTable .offersTable .property {
	/*font-family: "robotobold";*/
	font-size: 14px;
}
#skuOffersTable .offersTable .discount {
	font-family: "roboto_ltregular";
	position: absolute;
	font-size: 13px;
	color: #888888;
	display: block;
	right: -12px;
	top: -16px;
}
#skuOffersTable .offersTable .basket .addCart {
	/*width: 76px;*/
	transition: all 0.2s ease-in-out;
	text-decoration: none;
	display: inline-block;
	text-align: center;
	border-radius: 4px;
	line-height: 30px;
	padding: 0 12px;
	color: #ffffff;
	height: 30px;
}
#skuOffersTable .offersTable .basket .addCart.requestPrice {
	margin-top: 0px;
}
#skuOffersTable .offersTable .basket .addCart:active {
	position: relative;
	top: 1px;
}
#skuOffersTable .offersTable .basket .addCart img {
	vertical-align: middle;
	display: inline-block;
	margin-right: 12px;
	margin-top: -4px;
}
#skuOffersTable .outOfStock {
	color: #888888;
}
#complect {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0 24px;
}
#complect .heading {
	border-top: 1px solid #efefef;
	font-family: "robotobold";
	text-transform: uppercase;
	padding: 24px 0px 12px 0;
	letter-spacing: 1px;
	font-weight: 800;
	font-size: 20px;
	display: block;
}
#complect .complectList {
	overflow: hidden;
	margin: 0 -12px;
}
#complect .complectListItem {
	position: relative;
	height: 355px;
	float: left;
	width: 25%;
}
#complect .complectListItemWrap {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 12px;
}
#complect .complectListItemPicture img {
	-webkit-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
	vertical-align: middle;
	max-height: 90%;
	max-width: 90%;
}
#complect .complectListItemPicture:hover img {
	opacity: 0.8;
}
#complect .complectListItemPicLink {
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
	display: block;
	text-align: center;
	height: 240px;
	line-height: 240px;
}
#complect .complectListItemLink {
	-webkit-transition: 0.2s all ease-in-out;
	-o-transition: 0.2s all ease-in-out;
	transition: 0.2s all ease-in-out;
	text-decoration: none;
	margin-bottom: 12px;
	line-height: 44px;
	overflow: hidden;
	font-size: 14px;
	display: block;
	height: 44px;
}
#complect .complectListItemLink .middle {
	display: inline-block;
	vertical-align: top;
	line-height: 21px;
}
#complect .complectListItemPrice {
	font-family: "robotobold";
	font-size: 18px;
	display: block;
	text-decoration: none;
	margin-bottom: 12px;
}
#complect .complectListItemPrice .measure {
	font-size: 16px;
}
#complect .complectListItemPrice .discount {
	font-family: "roboto_ltregular";
	padding-left: 4px;
	font-size: 14px;
}
#complect .complectResult {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border: 1px solid #e8e8e8;
	background-color: #fdfdfd;
	padding-right: 24px;
	padding-left: 24px;
	line-height: 60px;
	overflow: hidden;
	height: 60px;
}
#complect .complectPriceResult {
	font-family: "robotobold";
	display: inline-block;
	margin-left: 12px;
	font-size: 18px;
}
#complect .complectResult .discount {
	font-family: "roboto_ltregular";
	margin-left: 12px;
	font-size: 14px;
	color: #888888;
}
#complect .complectResultEconomy {
	border-left: 1px solid #e8e8e8;
	padding-left: 24px;
	float: right;
}
#complect .complectResultEconomyValue {
	font-family: "robotobold";
	margin-left: 12px;
	font-size: 16px;
}
#complect .complectListItem:after {
	font-family: "roboto_thregular";
	transform: translateY(-50%);
	position: absolute;
	font-size: 48px;
	display: block;
	color: #888888;
	content: "+";
	right: -12px;
	top: 50%;
}
#complect .complectListItem:last-child:after,
#complect .complectListItem:nth-child(4n):after {
	display: none;
}
#zoomer {
	-webkit-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	opacity: 0;
	visibility: hidden;
	transform: scale(0.7);
}
#zoomer.opened {
	opacity: 1;
	visibility: visible;
	transform: scale(1);
}
#zoomer #zoomerExitLink {
	background: url(images/exitBig.png) 0 0 no-repeat transparent;
	height: 50px;
	opacity: 0.5;
	width: 50px;
}
#zoomer #zoomerExitLink:hover {
	opacity: 0.8;
}
#zoomer #zoomerExitLink:active {
	height: 48px;
	opacity: 1;
	top: 25px;
}
#zoomerMoreImagesContainerWrapper .item {
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
#zoomerMoreImagesContainerWrapper .item:hover {
	opacity: 0.9 !important;
}
#zoomerMoreImagesContainerWrapper .selected {
	opacity: 1 !important;
}
#zoomerBigPrevMore,
#zoomerBigNextMore {
	background: url(images/carouselArrowsBig.png) 0 0 no-repeat transparent;
	opacity: 0.5;
}
#zoomerBigNextMore {
	background-position: -57px 0;
}
#zoomerNextMore,
#zoomerPrevMore {
	background: url(images/carouselArrows.png) 0 0 no-repeat transparent;
	opacity: 0.5;
}
#zoomerNextMore {
	background-position: -80px 0;
}
#zoomerPrevMore:hover,
#zoomerNextMore:hover,
#zoomerBigPrevMore:hover,
#zoomerBigNextMore:hover {
	opacity: 0.8;
}
#zoomerPrevMore:active,
#zoomerNextMore:active,
#zoomerBigPrevMore:active,
#zoomerBigNextMore:active {
	opacity: 1;
}
#zoomerNextMore:active {
	right: -1px !important;
}
#zoomerPrevMore:active {
	left: -1px !important;
}
#zoomerBigPrevMore:active {
	left: 23px !important;
}
#zoomerBigNextMore:active {
	right: 23px !important;
}
#zoomerMoreImagesContainerWrapper .link:active {
	position: relative;
	top: 1px;
}
.catalogProductOffersPager {
	text-align: center;
}
.catalogProductOffersNext {
	margin-top: 24px;
}
#catalogElement input[type="radio"]:not(checked) {
	position: absolute;
	opacity: 0;
}
#catalogElement input[type="radio"] + label {
	cursor: pointer;
}
#catalogElement input[type="radio"]:not(checked) + label {
	position: relative;
	padding-left: 28px;
}
.smallSpecialTime {
	padding-bottom: 12px;
	color: #ffffff;
	font-size: 0;
	line-height: 0;
}
.smallSpecialTime .specialTimeItem {
	display: inline-block;
	box-sizing: border-box;
	border-radius: 2px;
	text-align: center;
	overflow: hidden;
	margin-left: 4px;
	padding: 8px 0px;
	line-height: 14px;
	height: 42px;
	width: 48px;
}
.smallSpecialTime .specialTimeItem:first-child {
	margin-left: 0px;
}
.smallSpecialTime .specialTimeItemValue {
	font-family: "robotomedium";
	font-size: 14px;
}
.smallSpecialTime .specialTimeItemlabel {
	font-family: "roboto_ltregular";
	font-size: 12px;
}
.detail-text-wrap {
	box-sizing: border-box;
	margin-top: 12px;
	padding: 0 24px 24px;
	border-top: 1px solid #ededed;
}
.detail-text-wrap .heading {
	font-family: "robotomedium";
	padding: 30px 0 0px;
	display: block;
	font-size: 20px;
	text-transform: uppercase;
	line-height: 24px;
	font-weight: 400;
	color: #1a1a1a;
	text-decoration: none;
}
.new-list-items-wrap {
	box-sizing: border-box;
	margin-top: 12px;
	margin-bottom: 0;
	padding: 0 24px;
	border-top: 1px solid #ededed;
}
.new-list-items-wrap .heading {
	display: block;
	padding: 36px 0 18px;
	font-family: "robotomedium";
	font-size: 20px;
	text-transform: uppercase;
	line-height: 24px;
	font-weight: 400;
	color: #1a1a1a;
	text-decoration: none;
}
.new-list-items {
	max-width: none;
	margin: 0 -12px;
	font-size: 0;
}
.new-list-items .list-item-wrap {
	display: inline-block;
	vertical-align: top;
	width: 33.333%;
	padding: 12px;
	box-sizing: border-box;
}
.new-list-items .list-item {
	padding: 24px 18px;
	border: 1px solid #e7e8ea;
	border-radius: 2px;
}
.new-list-items .image {
	width: 54px;
	padding-right: 18px;
}
.new-list-items .image-container {
	display: block;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.new-list-items .image-container:hover {
	opacity: 0.9;
}
.new-list-items .image-container:active {
	position: relative;
	top: 1px;
}
.new-list-items .text {
	color: #1a1a1a;
}
.new-list-items .name {
	display: block;
	margin-bottom: 12px;
	font-size: 14px;
	line-height: 18px;
	max-height: 18px;
	overflow: hidden;
	text-decoration: none;
	color: #1a1a1a;
}
.new-list-items .name:active {
	position: relative;
	top: 1px;
}
.new-list-items .price {
	position: relative;
	display: inline-block;
	padding-right: 18px;
	font-size: 18px;
	font-family: "robotobold";
}
.new-list-items .old-price {
	position: absolute;
	right: 0;
	top: -12px;
	font-size: 13px;
	line-height: 15px;
	font-family: "roboto_ltregular";
	font-size: 13px;
	color: #888888;
}
.new-list-items .active-link {
	display: inline-block;
	font-family: "roboto_ltregular";
	font-size: 14px;
	color: #1a1a1a;
	text-decoration: none;
	border-bottom: 1px dashed #1a1a1a;
	cursor: pointer;
	-webkit-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
/*����� �������*/
input + div.content {
	display: none;
	position: absolute;
	background-color: white;
	border: 1px solid;
	border-block-style: groove;
	z-index: 10;
	padding: 10px;
	border-collapse: initial;
}
input:focus + div.content {
	display: block;
}
div.content:hover {
	display: block;
}
input[type="button"] {
	font-family: "FontAwesome";
	content: "f24e";
	font-size: 1.3333333333333333em;
	font-weight: 900;
	color: transparent;
	text-shadow: 0 0 0 #1a1a1a;
	position: absolute;
	width: 10px;
	cursor: pointer;
	outline: none !important;
	box-shadow: none !important;
	border: none;
	background-color: transparent;
	height: 20px;
}
.dop {
	color: darkgreen;
	position: absolute;
	padding-left: 2px;
}

/* ===== PageProduct-inspired visual tweaks for product detail ===== */

#catalogElement .new-design {
	display: flex;
	gap: 24px;
	align-items: stretch;
}

#catalogElement .left-new-design {
	background: #ffffff;
	border-radius: 12px;
	border: 1px solid rgba(15, 23, 42, 0.06);
	box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04);
	padding: 20px 0;
}

#catalogElement .small-desc {
	padding: 0 16px;
}

#catalogElement .right-new-design {
	width: 25%;
	background: #ffffff;
	border-radius: 12px;
	border: 1px solid rgba(15, 23, 42, 0.06);
	box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04);
	padding: 16px 16px 20px;
	max-width: 300px;
	box-sizing: border-box;
}

#catalogElement .price-zag {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 8px;
}

#catalogElement .price-zag p {
	margin: 0;
	font-size: 13px;
	color: #6b7280;
}

#catalogElement .vverx {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

#catalogElement .vverx .pipka {
	margin: 0;
}

/* Верхние переключатели цены (м2 / м3 / упак и т.п.) — компактные кнопки в фирменном стиле */
#catalogElement .vverx .priceChooseMeasure {
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 26px;
	padding: 4px 10px;
	border-radius: 6px;
	font-size: 11px;
	line-height: 1.2;
	font-weight: 500;
	color: #374151;
	text-decoration: none;
	background: #ffffff;
	border: 1px solid rgba(255, 204, 51, 0.55);
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
	transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
	box-sizing: border-box;
}

#catalogElement .vverx .priceChooseMeasure:hover {
	background: linear-gradient(135deg, #fff7d6 0%, #fffbeb 60%, #fff7d6 100%);
	color: #111827;
	box-shadow: 0 2px 5px rgba(255, 204, 51, 0.25);
}

#catalogElement .vverx .priceChooseMeasure.priceChooseMeasure-active,
#catalogElement .vverx .priceChooseMeasure.active-price {
	background: linear-gradient(135deg, #ffcc33 0%, #ffd700 50%, #ffcc33 100%);
	background-size: 200% 200%;
	color: #1a1a1a;
	font-weight: 700;
	box-shadow:
		0 4px 12px rgba(255, 204, 51, 0.4),
		inset 0 1px 2px rgba(255, 255, 255, 0.7);
	border-color: rgba(255, 204, 51, 0.85);
}

#catalogElement .vverx .priceChooseMeasure.priceChooseMeasure-active:hover,
#catalogElement .vverx .priceChooseMeasure.active-price:hover {
	background-position: 100% 0;
}

#catalogElement .vverx .priceChooseMeasure .priceContainer {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	font-size: 11px;
	line-height: 1.2;
}

#catalogElement .vverx .priceChooseMeasure .measure {
	font-weight: 600;
	font-size: 11px;
}

#catalogElement .upto .fullPrice_number {
	font-size: 20px;
	font-weight: 700;
	color: #111827;
}

#catalogElement .upto .price.fullPrice {
	margin: 0 0 10px 0;
}

/* Крупное отображение суммы "Итого" над блоком количества */
#catalogElement .itog .price.fullPrice.price-num .fullPrice_number {
	font-size: 24px;
	font-weight: 700;
	color: #111827;
}

/* Tabs / related products layout block */
#catalogElement .tabs-new-con {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	margin-top: 16px;
	gap: 24px;
}

#catalogElement .tabs-view-con {
	display: flex;
	width: 80%;
	background: #ffffff;
	border-radius: 12px;
	border: 1px solid rgba(15, 23, 42, 0.06);
	box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04);
	padding: 16px 16px 20px;
}

#catalogElement .related-products-new-con {
	width: 25%;
	background: #ffffff;
	border-radius: 12px;
	border: 1px solid rgba(15, 23, 42, 0.06);
	padding: 16px 16px 20px;
	max-width: 300px;
	box-sizing: border-box;
}

/* Заголовок блока "С этим товаром покупают" */
#catalogElement .related-products-new-con .heading {
	display: block;
	margin: 0 0 10px 0;
	font-family: "Montserrat", sans-serif;
	font-size: 16px;
	font-weight: 700;
	color: #111827;
}

/* Swiper-контейнер для аксессуаров */
#catalogElement .related-products-swiper {
	width: 100%;
	box-sizing: border-box;
	padding: 5px;
}

#catalogElement .related-products-swiper .swiper-slide {
	height: auto;
}

/* Перебиваем грид-сетку каталога для слайдера аксессуаров */
#catalogElement .related-products-new-con .items.productList {
	display: flex !important;
}

/* Карточка товара внутри правого слайдера должна полностью влезать в колонку */
#catalogElement .related-products-new-con .product-card,
#catalogElement .related-products-new-con .tsk-product-card {
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box;
}
/* === Price summary, quantity and bottom block (itog, qty, one-click, prems) === */

#catalogElement .row.columnRow {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-top: 12px;
}

#catalogElement .itog .price-zag.ima {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 4px;
}

#catalogElement .itog .price-zag.ima p {
	margin: 0;
	font-size: 13px;
	color: #6b7280;
}

#catalogElement .itog .price.fullPrice.price-num {
	margin: 0;
	display: inline-flex;
	align-items: baseline;
	gap: 4px;
	font-weight: 700;
}
.itog {
	display: flex;
	gap: 15px;
	flex-direction: column;
}

#catalogElement .UpakNotice {
	background: linear-gradient(135deg, #fff9e6, #fff5cc);
	border: 1px solid rgba(255, 204, 51, 0.3);
	border-radius: 12px;
	color: #1a1a1a;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 11px;
	font-weight: 600;
	margin-top: 6px;
	margin-bottom: 6px;
	padding: 6px 10px;
	text-align: center;
	width: 100%;
	box-shadow:
		0 2px 6px rgba(255, 204, 51, 0.15),
		inset 0 1px 2px rgba(255, 255, 255, 0.6);
	transition: all 0.3s ease;
	position: relative;
	cursor: default;
	opacity: 0.7;
	pointer-events: none;
	box-sizing: border-box;
	font-family: "Montserrat", sans-serif;
}

#catalogElement .price-num-and-card.mainTool {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: flex-start;
}

#catalogElement .price-num-and-card .qtyBlock.row.quant {
	display: inline-flex;
	align-items: center;
	border-radius: 999px;
	background: #f3f4f6;
	padding: 4px;
	width: 100%;
	flex: 1 0 100%;
	box-sizing: border-box;
	justify-content: space-between;
}

#catalogElement .price-num-and-card .qtyBlock.row.quant .qty {
	flex: 1 1 auto;
	min-width: 0;
	text-align: center;
	border: none;
	background: transparent;
	font-size: 14px;
	font-weight: 500;
	margin: 0 4px;
}

#catalogElement .price-num-and-card .qtyBlock.row.quant .minus,
#catalogElement .price-num-and-card .qtyBlock.row.quant .plus {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 999px;
	background: #e5e7eb;
	color: #111827;
	text-decoration: none;
}

#catalogElement .price-num-and-card .qtyBlock.row.quant .minus i,
#catalogElement .price-num-and-card .qtyBlock.row.quant .plus i {
	font-style: normal;
}

#catalogElement .price-num-and-card .down {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

/* Сброс "кривого" display для кнопки "Запросить Спец Цену" */
#catalogElement .price-num-and-card .buto a.openWebFormModalOnhandMy {
	display: inline-flex !important;
}

#catalogElement .zapr-and-sclad {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
	margin-top: 12px;
}

#catalogElement .zapr-and-sclad .social.lala {
	display: flex;
	align-items: center;
	gap: 8px;
}

#catalogElement .zapr-and-sclad .zag-share {
	font-size: 13px;
	color: #6b7280;
}

/* Bottom advantages block (desktop / base) */
#catalogElement .prems-cont {
	margin-top: 20px;
}

#catalogElement .prems-prod .cont-by-prem {
	display: grid;
	grid-template-columns: repeat(1, minmax(0, 1fr));
	gap: 16px;
}

#catalogElement .prems-prod .item-prem {
	background: #ffffff;
	border-radius: 14px;
	border: 1px solid rgba(15, 23, 42, 0.06);
	box-shadow: 0 4px 10px rgba(15, 23, 42, 0.04);
	padding: 14px 16px;
}

#catalogElement .prems-prod .cont-prems-zag {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 8px;
}

#catalogElement .prems-prod .cont-prems-zag img {
	width: 30px;
	height: 30px;
	object-fit: contain;
	flex-shrink: 0;
}

#catalogElement .prems-prod .cont-prems-zag p {
	margin: 0;
	font-size: 15px;
	line-height: 1.3;
	font-weight: 600;
}

#catalogElement .prems-prod .desc-item-prem p {
	margin: 0;
	font-size: 13px;
	line-height: 1.5;
	color: #4b5563;
}

#catalogElement .prems-prod .desc-item-prem a {
	color: #fbbf24;
	text-decoration: underline;
}

/* === Material calculator modal (tsk-modal) === */

.tsk-modal-toggle {
	display: none;
}

.tsk-modal-calc {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	margin-left: 8px;
	text-decoration: none;
}

.tsk-modal-calc p {
	margin: 0;
}

.tsk-modal {
	position: fixed;
	inset: 0;
	background: rgba(15, 23, 42, 0.45);
	display: none;
	align-items: center;
	justify-content: center;
	z-index: 1300;
}

.tsk-modal-toggle:checked ~ .tsk-modal {
	display: flex;
}

.tsk-modal-content {
	background: #ffffff;
	border-radius: 16px;
	max-width: 520px;
	width: 100%;
	padding: 20px 24px 22px;
	box-shadow: 0 18px 45px rgba(15, 23, 42, 0.35);
	position: relative;
	box-sizing: border-box;
}

.tsk-close {
	position: absolute;
	top: 10px;
	right: 14px;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
	color: #4b5563;
}

.tsk-modal-body h2 {
	margin: 0 0 10px 0;
	font-size: 18px;
	font-weight: 600;
}

.tsk-modal-body #calculatedArea {
	margin-top: 4px;
	font-size: 13px;
	color: #4b5563;
}

.tsk-modal-body .but-and-in {
	margin-top: 12px;
	display: flex;
	gap: 8px;
	align-items: center;
}

.tsk-modal-body .but-and-in input#inputNumber {
	flex: 1;
	padding: 8px 10px;
	border-radius: 8px;
	border: 1px solid #d1d5db;
	font-size: 14px;
	box-sizing: border-box;
}

.tsk-modal-body .but-and-in .total-price-in {
	padding: 8px 14px;
	border-radius: 999px;
	border: none;
	cursor: pointer;
	background: linear-gradient(135deg, #ffcc33 0%, #ffd700 50%, #ffcc33 100%);
	color: #1a1a1a;
	font-weight: 600;
	font-size: 13px;
	white-space: nowrap;
}

.tsk-modal-body #result {
	margin-top: 12px;
	font-size: 13px;
	color: #111827;
}

.tsk-modal-body #result .total-count-modal {
	font-weight: 600;
}

.tsk-modal-body #result .total-modal-price {
	margin-top: 4px;
	font-weight: 600;
}

/* ===== Inline styles moved from template.php (product detail) ===== */

/* Product gallery (thumbnails, main image, fullscreen modal) */
.product-gallery * {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

.product-gallery {
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
	font-family: Arial, sans-serif;
	position: relative;
}

.gallery-container {
	display: flex;
	gap: 15px;
}

.gallery-thumbs {
	flex: 0 0 50px;
}

.thumbs-list {
	display: flex;
	flex-direction: column;
	gap: 10px;
	max-height: 400px;
	overflow-y: auto;
	padding-right: 5px;
}

.thumbs-list::-webkit-scrollbar {
	width: 4px;
}

.thumbs-list::-webkit-scrollbar-track {
	background: #f1f1f1;
}

.thumbs-list::-webkit-scrollbar-thumb {
	background: #ddd;
	border-radius: 4px;
}

.thumb-item {
	width: 50px;
	height: 50px;
	border: 1px solid #e0e0e0;
	border-radius: 4px;
	overflow: hidden;
	cursor: pointer;
	transition: border-color 0.2s ease;
}

.thumb-item.active {
	border: 1px solid #ffd700;
}

.thumb-img {
	width: 100%;
	height: 100%;
	object-fit: none;
	display: block;
}

.gallery-main {
	flex: 1;
	position: relative;
	border-radius: 8px;
	overflow: hidden;
	background-color: #fff;
}

.main-slider {
	position: relative;
	width: 100%;
	height: 400px;
	overflow: hidden;
}

.slider-track {
	display: flex;
	transition: transform 0.5s ease;
	height: 100%;
}

.slide-item {
	height: 100%;
	background-color: #fff;
}

.slide-image-container {
	width: 100%;
	height: 100%;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

.slide-img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	display: block;
	cursor: pointer;
}

.left-new-design {
	width: 80%;
}

.fullscreen-icon {
	position: absolute;
	bottom: 10px;
	right: 10px;
	width: 34px;
	height: 34px;
	background: #ffffff;
	border-radius: 999px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 5;
	border: 1px solid rgba(15, 23, 42, 0.06);
	box-shadow: 0 4px 10px rgba(15, 23, 42, 0.12);
	transition:
		background 0.2s ease,
		box-shadow 0.2s ease,
		transform 0.15s ease;
}

.fullscreen-icon svg {
	width: 18px;
	height: 18px;
	stroke: #111827;
	stroke-width: 2;
	fill: none;
}

.fullscreen-icon:hover {
	background: #ffffff;
	box-shadow: 0 6px 16px rgba(15, 23, 42, 0.18);
	transform: translateY(-1px);
}

.nav-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 40px;
	height: 40px;
	background: #ffffff;
	border: none;
	border-radius: 999px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 10;
	box-shadow: 0 4px 10px rgba(15, 23, 42, 0.12);
	transition:
		background 0.2s ease,
		box-shadow 0.2s ease,
		transform 0.15s ease;
	padding: 0;
}

.nav-arrow svg {
	width: 18px;
	height: 18px;
	stroke: #111827;
	stroke-width: 2;
	fill: none;
}

.nav-arrow:hover {
	background: #ffffff;
	box-shadow: 0 6px 16px rgba(15, 23, 42, 0.2);
	transform: translateY(-50%) translateY(-1px);
}

.arrow-prev {
	left: 10px;
}

.arrow-next {
	right: 10px;
}

.fullscreen-modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 255, 0.9);
	z-index: 1000;
	justify-content: center;
	align-items: center;
}

.modal-content {
	position: relative;
	width: 90%;
	height: 90%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.fullscreen-image {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

.close-modal {
	position: absolute;
	top: 15px;
	right: 15px;
	color: #1a1a1a;
	font-size: 30px;
	font-weight: bold;
	cursor: pointer;
}

.modal-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 50px;
	height: 50px;
	background: #ffffff;
	border: none;
	border-radius: 999px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	box-shadow: 0 8px 22px rgba(15, 23, 42, 0.25);
	transition:
		background 0.2s ease,
		box-shadow 0.2s ease,
		transform 0.15s ease;
	padding: 0;
}

.modal-nav svg {
	width: 20px;
	height: 20px;
	stroke: #111827;
	stroke-width: 2.2;
	fill: none;
}

.modal-nav:hover {
	background: #ffffff;
	box-shadow: 0 10px 26px rgba(15, 23, 42, 0.32);
	transform: translateY(-50%) translateY(-1px);
}

.modal-prev {
	left: 20px;
}

.modal-next {
	right: 20px;
}
/* Small reviews/info block near article */
.reviewsBtnWrap {
	display: flex;
	align-items: center;
	gap: 18px;
	padding-bottom: 8px;
	border-bottom: 1px solid #e5e7eb;
}

.reviewsBtnWrap .label {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #4b5563;
	text-decoration: none;
}

.reviews-info {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.reviews-info .countReviewsTools {
	font-size: 12px;
	line-height: 1.3;
	color: #4b5563;
	font-weight: 500;
}

.reviews-info .rating {
	display: inline-block;
	position: relative;
	overflow: hidden;
	height: 15px;
	width: 79px;
	margin-top: 2px;
}

.reviews-info .rating i {
	background: url(images/rating.png) repeat 0 0 transparent;
	height: 15px;
	width: 79px;
	position: absolute;
	display: block;
	left: 0;
	top: 0;
}

.reviews-info .rating i.m {
	background: url(images/rating.png) repeat 0 -14px transparent;
	width: 0;
	z-index: 10;
}

/* Компактные звезды рейтинга в блоке рядом с количеством отзывов */
#catalogElement .reviews-info .rating.star-rating {
	gap: 2px;
}

#catalogElement .reviews-info .star-rating .star-icon {
	width: 12px;
	height: 12px;
}

.reviewsBtnWrap .row img {
	margin-top: 0px;
	display: inline-block;
	width: auto;
	max-width: 100%;
	height: auto;
	object-fit: contain;
}

.reviewsBtnWrap .row {
	margin: 0 !important;
	font-size: 12px;
	font-family: "Montserrat", sans-serif;
}

.new-design {
	display: flex;
}

.small-desc {
	padding: 0rem 1rem;
}

.left-new-design {
	width: 80%;
	box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.25);
	border-radius: 15px;
	padding-bottom: 1rem;
}

.reviewsBtnWrap .label {
	display: flex;
}

.reviewsBtnWrap {
	display: flex;
	justify-content: space-between;
	margin-top: 1rem;
}

.store-label {
	font-size: 13px;
	font-weight: bold;
}

/* Price block and tabs-related styles */
.price-zag.niz {
	margin-top: 0px !important;
}

/* Styles for price tabs */
.price-tab-item {
	display: inline-block;
	margin-right: 5px;
}

.price-tab-item.active .price-tab-link {
	font-weight: bold;
}

.price-tab-link {
	text-decoration: none;
}

/* Bottom per-unit prices: look like secondary text, not big CTA */
#catalogElement .vniz.price-tabs-content .price-tab-item {
	display: none;
}

#catalogElement .vniz.price-tabs-content .price-tab-item.active {
	display: inline-block;
}

#catalogElement .vniz.price-tabs-content .price-tab-item a.priceChooseMeasure {
	cursor: default;
	padding: 0;
	border-radius: 0;
	background: transparent;
	color: #4b5563;
	font-size: 13px;
	pointer-events: none; /* делаем цену за 1 некликабельной */
}

#catalogElement .vniz.price-tabs-content .priceVal {
	font-size: 13px;
	font-weight: 500;
	color: #111827;
}

#catalogElement .vniz.price-tabs-content .priceChooseMeasure.active-price,
#catalogElement
	.vniz.price-tabs-content
	.priceChooseMeasure.priceChooseMeasure-active {
	background: transparent;
	color: #111827;
}

/* Tabs container above characteristics / description / reviews */
.tabs-new-con {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.tabs-new-con .tab-znak {
	font-size: 12px;
}

.tabsContainer {
	width: 100%;
}

.tabList {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px;
	background-color: #f3f4f6;
	border-radius: 999px;
	border: 1px solid rgba(15, 23, 42, 0.06);
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
}

.tabButton {
	position: relative;
	padding: 8px 18px;
	background: transparent;
	border: none;
	cursor: pointer;
	font-size: 13px;
	line-height: 1.2;
	color: #4b5563;
	font-family: "Montserrat", sans-serif;
	font-weight: 500;
	border-radius: 999px;
	transition:
		color 0.2s ease,
		background 0.2s ease,
		box-shadow 0.2s ease,
		transform 0.1s ease;
	white-space: nowrap;
}

.LeftCont {
	box-shadow: 0 0px 5px 0 rgba(0, 0, 0, 0.25);
	border-radius: 15px;
	width: 80%;
	padding-bottom: 1rem;
	font-size: 13px;
}

.tabButton:hover {
	background-color: #e5e7eb;
	color: #111827;
}

.tabButton.active {
	background: linear-gradient(135deg, #ffcc33 0%, #ffd700 50%, #ffcc33 100%);
	border: 1px solid rgba(255, 204, 51, 0.95);
	color: #1a1a1a;
	font-weight: 600;
	box-shadow:
		0 4px 10px rgba(15, 23, 42, 0.12),
		inset 0 1px 2px rgba(255, 255, 255, 0.8);
}

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

.tabContent {
	padding: 20px;
	border-top: none;
	font-size: 13px;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	opacity: 0;
	visibility: hidden;
	transition:
		opacity 0.3s ease,
		visibility 0.3s ease;
	box-sizing: border-box;
}

.tabContent.activeContent {
	opacity: 1;
	visibility: visible;
	position: relative;
}

.characteristicsContainer {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.characteristicsColumn {
	display: flex;
	flex-direction: column;
}

.characteristicItem {
	display: flex;
	justify-content: space-between;
	margin-bottom: 10px;
	padding-bottom: 5px;
	border-bottom: 1px solid #e0e0e0;
}

.characteristicLabel {
	font-weight: bold;
	color: #666;
}

.characteristicValue {
	color: #333;
}

.docLink {
	color: #0066cc;
	text-decoration: none;
}

.docLink:hover {
	text-decoration: underline;
}

.review {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #e0e0e0;
}

.review h4 {
	margin: 0 0 5px 0;
}

.rating {
	color: #ffc107;
}

/* Files block inside tabs (аккуратная сетка документов) */
/* Files block inside tabs (аккуратная сетка документов) */
#documentation-panel #files .wrap {
	margin-bottom: 20px;
	padding: 0 24px;
}

#documentation-panel #files .items {
	display: flex;
	flex-wrap: wrap;
	gap: 18px;
}

#documentation-panel #files .item {
	flex: 1 1 280px;
	max-width: 360px;
	margin: 0;
	padding: 10px 12px;
	height: auto;
	background: #ffffff;
	border-radius: 10px;
	border: 1px solid #e5e7eb;
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.06);
	box-sizing: border-box;
}

#documentation-panel #files .item:hover {
	border-color: rgba(255, 204, 51, 0.7);
	box-shadow:
		0 4px 12px rgba(15, 23, 42, 0.12),
		0 0 0 1px rgba(255, 204, 51, 0.15);
	transform: translateY(-1px);
	transition:
		border-color 0.18s ease,
		box-shadow 0.18s ease,
		transform 0.18s ease;
}

#documentation-panel #files .tb {
	display: table;
	width: 100%;
}

#documentation-panel #files .tbr {
	display: table-row;
}

#documentation-panel #files .icon {
	display: table-cell;
	vertical-align: middle;
	width: 40px;
}

#documentation-panel #files .icon img {
	max-width: 32px;
	max-height: 32px;
}

#documentation-panel #files .info {
	display: table-cell;
	vertical-align: middle;
	padding-left: 12px;
	width: auto;
}

#documentation-panel #files .name {
	display: block;
	color: #111827;
	text-decoration: none;
	margin-bottom: 4px;
	font-size: 13px;
	line-height: 1.4;
	font-weight: 600;
}

#documentation-panel #files .name span {
	word-break: break-word;
}

#documentation-panel #files .parentName {
	color: #6b7280;
	font-size: 12px;
}

/* Адаптив PDF‑файлов во вкладке "Документация" */
@media (max-width: 1024px) {
	#documentation-panel #files .wrap {
		padding: 0 16px;
	}

	#documentation-panel #files .items {
		gap: 12px;
	}

	#documentation-panel #files .item {
		flex: 1 1 calc(50% - 12px);
		margin-right: 0;
	}
}

@media (max-width: 768px) {
	#documentation-panel #files .wrap {
		padding: 0 12px 16px;
	}

	#documentation-panel #files .item {
		flex: 1 1 100%;
	}

	#documentation-panel #files .tb {
		display: flex;
		align-items: flex-start;
	}

	#documentation-panel #files .icon {
		width: 40px;
		min-width: 40px;
		max-width: 40px;
		flex: 0 0 40px;
	}

	#documentation-panel #files .icon a {
		display: block;
		width: 100%;
		height: auto;
	}

	#documentation-panel #files .icon img {
		display: block;
		width: 100%;
		height: auto;
		max-width: 100%;
		max-height: 40px;
	}

	#documentation-panel #files .info {
		padding-left: 10px;
		width: 100%;
	}

	#documentation-panel #files .name {
		font-size: 13px;
		line-height: 1.3;
		word-break: break-word;
	}

	#documentation-panel #files .parentName {
		font-size: 11px;
	}
}

@media (max-width: 480px) {
	#documentation-panel #files .wrap {
		padding: 0 10px 14px;
	}

	#documentation-panel #files .item {
		padding: 8px 10px;
	}

	#documentation-panel #files .icon {
		width: 32px;
		flex: 0 0 32px;
	}

	#documentation-panel #files .name {
		font-size: 12px;
	}
}

/* Video tab styles */
#video .wrap {
	margin-top: 15px;
}

#video .items {
	display: flex;
	flex-wrap: wrap;
}

#video .item {
	flex: 1;
	min-width: 300px;
	margin: 0 15px 15px 0;
}

.videoFrame {
	width: 100%;
	height: 250px;
	border: none;
}
.up-container {
	display: flex;
	gap: 20px;
}
.image-cont,
.small-desc {
	width: 50%;
}
/* TechnoSonus button small tweak */
.button-technosonus.prod-sklad-a p {
	margin: 0;
}

/* Product characteristics block (cards-style table, new design) */
#catalogElement .changePropertiesNoGroup {
	width: 100%;
	box-sizing: border-box;
	margin-top: 30px;
	margin-bottom: 0;
}

#catalogElement .product-characteristics {
	margin-top: 16px;
	margin-bottom: 0;
	padding: 14px 18px 16px;
	border-radius: 12px;
	border: 1px solid rgba(15, 23, 42, 0.06);
	background: #ffffff;
	box-shadow: 0 4px 14px rgba(15, 23, 42, 0.04);
	font-family: "Montserrat", sans-serif;
}

#catalogElement .characteristics-title {
	font-size: 15px;
	font-weight: 700;
	color: #111827;
	border-bottom: 1px solid #e5e5e5;
	padding-bottom: 8px;
	margin-bottom: 10px;
	letter-spacing: 0.01em;
}

#catalogElement .characteristics-table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	table-layout: fixed;
}

#catalogElement .characteristics-table tr {
	border-bottom: 1px solid #f3f4f6;
}

#catalogElement .characteristics-table tr:nth-child(odd) {
	background-color: #f9fafb;
}

#catalogElement .characteristics-table tr:last-child {
	border-bottom: none;
}

#catalogElement .characteristics-table td {
	padding: 9px 14px 9px 4px;
	line-height: 1.4;
	box-sizing: border-box;
}

#catalogElement .property-name {
	color: #6b7280;
	font-size: 12px;
	font-weight: 500;
	text-transform: none;
	width: 16.66%;
	padding-right: 8px;
	vertical-align: middle;
}

#catalogElement .property-value {
	color: #111827;
	font-size: 13px;
	font-weight: 600;
	width: 16.66%;
	padding-right: 16px;
	vertical-align: middle;
}

/* Ссылки внутри характеристик — не синие, а под фирменный стиль */
#catalogElement .characteristics-table a {
	color: #111827;
	text-decoration: none;
	font-weight: 600;
	border-bottom: 1px dashed rgba(17, 24, 39, 0.25);
	transition: all 0.2s ease-in-out;
}

#catalogElement .characteristics-table a:hover {
	color: #1a1a1a;
	border-bottom-color: #fbbf24;
}

#catalogElement .characteristics-table a:active {
	transform: translateY(1px);
}

#catalogElement .scroll-text-tab a {
	font-size: 14px;
}
/* ===== Характеристики: dvice-conts / properties-cont-dv / property-cont ===== */

.dvice-conts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px 24px;
	padding: 16px 18px;
	border-radius: 12px;
	border: 1px solid rgba(15, 23, 42, 0.06);
	background: #ffffff;
	box-shadow: 0 4px 14px rgba(15, 23, 42, 0.04);
	font-family: "Montserrat", sans-serif;
	box-sizing: border-box;
}

.properties-cont-dv {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.property-cont {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
	column-gap: 8px;
	padding: 6px 0;
	border-bottom: 1px solid #f3f4f6;
}

.property-cont:last-child {
	border-bottom: none;
}

.propname {
	color: #6b7280;
	font-size: 13px;
	font-weight: 500;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.dvoyka {
	position: relative;
	height: 1px;
	overflow: hidden;
}

.dvoyka::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	border-bottom: 1px dashed rgba(209, 213, 219, 0.9);
}

.propvalue {
	text-align: right;
	color: #111827;
	font-size: 13px;
	font-weight: 600;
	white-space: normal;
}

.propvalue a {
	color: #111827;
	text-decoration: none;
	border-bottom: 1px dashed rgba(17, 24, 39, 0.25);
	transition: all 0.2s ease-in-out;
}

.propvalue a:hover {
	color: #1a1a1a;
	border-bottom-color: #fbbf24;
}

/* ============================================
   Адаптивная сетка карточки товара (новая)
   ============================================ */

@media (max-width: 1024px) {
	/* Верхний блок карточки и блок с табами/аксессуарами в один столбец */
	#catalogElement .new-design,
	#catalogElement .tabs-new-con {
		flex-direction: column;
		gap: 16px;
	}
	#catalogElement .left-new-design {
		border: none;
	}

	#catalogElement .left-new-design,
	#catalogElement .right-new-design,
	#catalogElement .tabs-view-con,
	#catalogElement .related-products-new-con {
		width: 100%;
		max-width: 100%;
	}

	#catalogElement .right-new-design,
	#catalogElement .related-products-new-con {
		margin-top: 12px;
	}
}

@media (max-width: 900px) {
	/* Таб-меню переводим в горизонтальный скролл */
	.tabList {
		display: flex;
		overflow-x: auto;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		-ms-overflow-style: none;
	}

	.tabList::-webkit-scrollbar {
		display: none;
	}

	.tabButton {
		flex: 0 0 auto;
		padding: 8px 15px;
		font-size: 11px;
	}

	.tabContent {
		padding: 16px;
	}

	/* Карточки отзывов и форма отзыва в одну колонку */
	#catalogElement #catalogReviews .reviewTable {
		flex-direction: column;
	}

	#catalogElement #catalogReviews .reviewColumn {
		width: 100%;
		padding: 4px 0;
	}

	#catalogElement #newReview .newReviewTable {
		flex-direction: column;
	}

	#catalogElement #newReview .newReviewTable .left,
	#catalogElement #newReview .newReviewTable .right {
		min-width: 100%;
	}

	#catalogElement #newReview input {
		width: 100%;
	}

	/* Файлы и видео – по одному в строке */
	#files .item {
		flex: 0 0 100%;
		width: 100%;
	}

	#video .item {
		min-width: 100%;
	}

	.videoFrame {
		height: 200px;
	}
}

@media (max-width: 768px) {
	/* Верхний блок: галерея над коротким описанием */
	.tabList {
		gap: 0px;
	}
	.tabButton {
		flex: 0 0 auto;
		padding: 8px 12px;
		font-size: 11px;
	}
	#catalogElement .new-design {
		gap: 12px;
	}

	#catalogElement .up-container {
		flex-direction: column;
		gap: 12px;
	}

	#catalogElement .image-cont,
	#catalogElement .small-desc {
		width: 100%;
		padding: 0px;
	}

	.product-gallery {
		max-width: 100%;
	}

	.main-slider {
		height: 300px;
	}

	.nav-arrow {
		width: 30px;
		height: 30px;
	}

	/* Колонки с ценой и количеством подстраиваем под узкий экран */
	#catalogElement .price-num-and-card.mainTool {
		flex-direction: column;
	}

	#catalogElement .price-num-and-card .qtyBlock.row.quant {
		flex: 0 0 auto;
		width: 100%;
	}

	#catalogElement .price-num-and-card .down {
		width: 100%;
	}

	/* Таблицы характеристик и блок dvice-conts */
	/* Основные характеристики: вместо горизонтального скролла делаем пары "название / значение"
	   в две колонки, а пары располагаются друг под другом. */
	#catalogElement .characteristics-table {
		display: block;
		width: 100%;
		overflow-x: visible;
	}

	#catalogElement .characteristics-table tbody,
	#catalogElement .characteristics-table tr {
		display: block;
		width: 100%;
	}

	#catalogElement .characteristics-table tr {
		border-bottom: 1px solid #f3f4f6;
	}

	#catalogElement .characteristics-table td {
		text-align: left;
		display: inline-block;
		box-sizing: border-box;
		width: 50%;
		padding: 8px 8px;
		vertical-align: top;
	}

	#catalogElement .property-name {
		width: 50%;
		white-space: normal;
		font-size: 11px;
	}

	#catalogElement .property-value {
		width: 50%;
		white-space: normal;
		font-size: 13px;
	}

	.dvice-conts {
		grid-template-columns: 1fr;
		padding: 12px 14px;
	}

	.property-cont {
		grid-template-columns: 1fr;
		row-gap: 2px;
	}

	.dvoyka {
		display: none;
	}

	.propvalue {
		text-align: left;
	}
}

/* Адаптив блока преимуществ под ценой (prems-prod) */
@media (max-width: 1024px) {
	#catalogElement .prems-prod .cont-by-prem {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 14px;
	}

	#catalogElement .prems-prod .item-prem {
		padding: 12px 14px;
	}

	#catalogElement .prems-prod .cont-prems-zag p {
		font-size: 14px;
	}
}

@media (max-width: 768px) {
	#detailText .changeDescription {
		padding-top: 10px;
	}
	.tabContent {
		padding: 0px;
	}
	#catalogElement .prems-cont {
		margin-top: 16px;
	}

	#catalogElement .prems-prod .cont-by-prem {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	#catalogElement .prems-prod .item-prem {
		padding: 10px 12px;
	}

	#catalogElement .prems-prod .cont-prems-zag img {
		width: 26px;
		height: 26px;
	}

	#catalogElement .prems-prod .cont-prems-zag p {
		font-size: 13px;
	}

	#catalogElement .prems-prod .desc-item-prem p {
		font-size: 12px;
		line-height: 1.4;
	}
	#catalogElement .tabs-view-con {
		padding: 0;
	}
	.tabList {
		border-radius: 8px;
		box-shadow: none;
		display: flex;
		overflow-x: auto;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		-ms-overflow-style: none;
		flex-wrap: wrap;
		justify-content: center;
		flex-direction: row;
	}
}
