

/* Start:/calculator/raschet_progiba/calc_profile.css?17942287935994*/
/* Калькулятор прогиба на карточке — общий CSS (tpl=copy и tpl=off) */

/* Рамка/заголовок pe-desc — самодостаточно, если product_card.css нет */
.pe-calc-progib.pe-desc {
	margin: 0 0 12px;
	padding: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
}

.pe-calc-progib .pe-desc__title {
	font-family: Bebas, sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
	margin: 0 0 12px;
	text-transform: uppercase;
	color: #414141;
}

.pe-calc-progib .pe-desc__body {
	box-sizing: border-box;
	padding: 12px;
	border: 1.5px solid #d1d5db;
	border-radius: 4px;
	background: #fff;
	color: #1c1f24;
	font-size: 13px;
	line-height: 1.5;
	overflow: visible;
}

.pe-calc-progib .pe-desc__body > *:first-child {
	margin-top: 0;
}

.pe-calc-progib .pe-desc__body > *:last-child {
	margin-bottom: 0;
}

/* Вариант A + поля в ряд как B */
.pe-calc-progib__form {
	margin: 0;
}

.pe-calc-progib__fields {
	display: grid;
	grid-template-columns: 0.5fr 0.5fr 2fr;
	gap: 8px;
	margin: 0 0 12px;
	align-items: end;
}

.pe-calc-progib__field {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin: 0;
	min-width: 0;
}

.pe-calc-progib__label {
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	color: #6b7280;
	white-space: nowrap;
}

.user-text .pe-calc-progib__label,
.user-text .pe-calc-progib span.pe-calc-progib__label {
	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	color: #6b7280 !important;
	white-space: nowrap;
}

.pe-calc-progib__input,
.pe-calc-progib__select {
	box-sizing: border-box;
	width: 100%;
	min-width: 0;
	margin: 0;
	padding: 10px 12px;
	border: 1.5px solid #d1d5db;
	border-radius: 4px;
	background: #fff;
	color: #1c1f24;
	font-size: 14px;
	line-height: 1.2;
	box-shadow: none;
}

.pe-calc-progib__field:not(.pe-calc-progib__field--axis) .pe-calc-progib__input {
	padding-left: 10px;
	padding-right: 10px;
	text-align: center;
}

.pe-calc-progib__select {
	font-size: 13px;
	padding-right: 28px;
}

.pe-calc-progib__input:focus,
.pe-calc-progib__select:focus {
	outline: none;
	border-color: #fe4d00;
}

.pe-calc-progib__schemes-title {
	margin: 4px 0 10px;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.3;
	color: #1c1f24;
	text-align: left;
}

.user-text .pe-calc-progib__schemes-title {
	font-size: 13px !important;
	font-weight: 800 !important;
	line-height: 1.3 !important;
	color: #1c1f24 !important;
	text-align: left;
}

.pe-calc-progib__grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 8px;
}

.pe-calc-progib__card {
	display: flex;
	flex-direction: column;
	gap: 8px;
	box-sizing: border-box;
	min-width: 0;
	padding: 10px;
	border: 1.5px solid #d1d5db;
	border-radius: 4px;
	background: #fff;
}

.pe-calc-progib__card:hover {
	border-color: #fe4d00;
	background: #fff5f0;
}

.pe-calc-progib__card-title {
	margin: 0;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.3;
	color: #1c1f24;
	min-height: 2.6em;
}

.user-text .pe-calc-progib__card-title {
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	color: #1c1f24 !important;
}

.pe-calc-progib__card-img {
	display: block;
	width: 100%;
	height: auto;
	border: 1px solid #e5e7eb;
	border-radius: 3px;
	background: #f3f4f6;
}

.pe-calc-progib__card-result {
	margin-top: auto;
	min-height: 1.35em;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.35;
	color: #1c1f24;
}

.pe-calc-progib__res {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.pe-calc-progib__res-row {
	display: grid;
	grid-template-columns: 1fr max-content;
	column-gap: 8px;
	align-items: baseline;
}

.pe-calc-progib__res-lab {
	color: #6b7280;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.35;
}

.pe-calc-progib__res-val {
	color: #1c1f24;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.35;
	text-align: right;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.pe-calc-progib__res-row--accent .pe-calc-progib__res-lab {
	color: #1c1f24;
	font-weight: 700;
}

.pe-calc-progib__res-row--accent .pe-calc-progib__res-val {
	color: #fe4d00;
	font-weight: 800;
}

.pe-calc-progib__status {
	margin: 8px 0 0;
	padding: 5px 8px;
	border-radius: 3px;
	font-size: 11px;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
}

.pe-calc-progib__status--ok {
	background: #e8f6e8;
	color: #1f6b2d;
}

.pe-calc-progib__status--bad {
	background: #f8e8e8;
	color: #8a2a2a;
}

.user-text .pe-calc-progib__card-result,
.user-text .pe-calc-progib__card-result .form__result {
	font-size: 12px !important;
	font-weight: 400 !important;
	line-height: 1.35 !important;
	color: #1c1f24 !important;
}

.user-text .pe-calc-progib__res-lab {
	color: #6b7280 !important;
	font-size: 12px !important;
	font-weight: 600 !important;
}

.user-text .pe-calc-progib__res-val {
	color: #1c1f24 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
}

.user-text .pe-calc-progib__res-row--accent .pe-calc-progib__res-lab {
	color: #1c1f24 !important;
	font-weight: 700 !important;
}

.user-text .pe-calc-progib__res-row--accent .pe-calc-progib__res-val {
	color: #fe4d00 !important;
	font-weight: 800 !important;
}

.user-text .pe-calc-progib__status--ok {
	color: #1f6b2d !important;
	font-weight: 700 !important;
}

.user-text .pe-calc-progib__status--bad {
	color: #8a2a2a !important;
	font-weight: 700 !important;
}

@media (max-width: 700px) {
	.pe-calc-progib__fields {
		grid-template-columns: 1fr;
	}

	.pe-calc-progib__grid {
		grid-template-columns: 1fr;
	}
}

@media (min-width: 701px) and (max-width: 900px) {
	.pe-calc-progib__grid {
		grid-template-columns: 1fr 1fr;
	}
}

/* End */


/* Start:/bitrix/templates/capitalim/components/bitrix/catalog.element/shop-blocks/product_card.css?179161344661461*/
/* Карточка товара shop-blocks — единый CSS */

/* ========== Цена / склад / скидки ========== */
/* Галерея с max-width 308px + цена на всю оставшуюся ширину ряда. */
@media (min-width: 768px) {
	.pe-top-row {
		display: flex;
		flex-wrap: nowrap;
		align-items: flex-start;
	}
	.pe-top-row > .slyder {
		flex: 0 1 308px;
		width: auto;
		max-width: 308px;
		height: auto !important;
		max-height: none !important;
	}
	.pe-top-row > .col-sm-7 {
		flex: 1 1 0;
		width: auto;
		max-width: none;
		min-width: 0;
	}
}

/* Подсказка поверх фото, вне дорожки слайдера. */
.pe-top-row .item_slider {
	position: relative;
}
.pe-top-row .item_slider > .HIT_TOP_RIGHT {
	z-index: 3;
}

/* Карточка товара: цена и опт. Не меняет кнопки и шапку. */
.price .price__total .pe-price {
	font-family: Roboto, Arial, sans-serif;
	line-height: 1.25;
	text-transform: none;
	width: 100%;
	max-width: none;
}
.price .price__total .pe-price__hero {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	font-family: Bebas, Impact, sans-serif;
	font-size: 44px;
	line-height: 1.05;
	font-weight: 700;
	text-transform: uppercase;
	color: #fe4d00;
}
.price .price__total .pe-price__main {
	min-width: 0;
}
.price .price__total .pe-price__from {
	font-size: 22px;
	margin-left: 6px;
	white-space: nowrap;
}
.price .price__total .pe-price__admin {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0 0 0 auto;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.2;
	color: #6b7280;
	text-transform: none;
	cursor: pointer;
	flex: none;
}
.price .price__total .pe-price__admin input {
	width: 16px;
	height: 16px;
	margin: 0;
	flex: none;
	vertical-align: middle;
	accent-color: #fe4d00;
}
.price .price__total .pe-price__sebes {
	font-size: 13px !important;
	line-height: 1.35 !important;
	margin: 6px 0 0 !important;
	color: #1c1f24;
	font-weight: 600;
}
.price .price__total .pe-price__split {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
	gap: 12px 20px;
	margin-top: 4px;
	padding-top: 6px;
	border-top: 1px solid #e5e7eb;
}
.price .price__total .pe-price__disc {
	display: grid;
	grid-template-columns: max-content max-content max-content;
	column-gap: 14px;
	row-gap: 4px;
	margin: 0;
	padding: 0;
	border-top: 0;
	flex: 0 1 auto;
	width: max-content;
	max-width: 100%;
	font-size: 13px;
	font-weight: 500;
	color: #6b7280;
	text-transform: none;
	line-height: 1.45;
	align-self: start;
}
.price .price__total .pe-price__stock {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	align-self: stretch;
	flex: 1 1 10em;
	gap: 8px;
	min-width: min(11em, 100%);
	max-width: 100%;
	font-family: "Segoe UI", Arial, sans-serif;
	font-size: 13px;
	line-height: 1.45;
	text-transform: none;
}
.price .price__total .pe-price__stock-main {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	min-width: 0;
}
.price .price__total .pe-price__stock-icon {
	flex: none;
	width: 28px;
	height: 26px;
	margin-top: 1px;
}
@media (max-width: 767px) {
	.price .price__total .pe-price__stock-icon {
		display: none;
	}
}
.price .price__total .pe-price__stock-list {
	display: grid;
	grid-template-columns: max-content max-content;
	column-gap: 14px;
	row-gap: 4px;
	min-width: 0;
}
.price .price__total .pe-price__stock-row {
	display: contents;
}
.price .price__total .pe-price__stock-lab {
	color: #6b7280;
	font-weight: 500;
}
.price .price__total .pe-price__stock-val {
	color: #1c1f24;
	font-weight: 700;
	text-align: right;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}
.price .price__total .pe-price__stock-links {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 8px;
	margin: auto 0 0;
	max-width: 100%;
}
.price .price__total .pe-price__stock-calc {
	display: inline-block;
	margin: 0;
	padding: 0;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.3;
	color: #fe4d00;
	text-decoration: none;
	text-align: right;
	white-space: normal;
	max-width: 16em;
}
.price .price__total .pe-price__stock-calc--note {
	color: #6b7280;
	font-weight: 600;
	cursor: default;
}
.price .price__total a.pe-price__stock-calc:hover,
.price .price__total a.pe-price__stock-calc:focus {
	color: #d94200;
	text-decoration: underline;
}
.price .price__total .pe-price__stock-row--order .pe-price__stock-lab {
	color: #fe4d00;
	font-weight: 700;
	grid-column: 1 / -1;
}
.price .price__total .pe-price__stock-row--extra .pe-price__stock-lab,
.price .price__total .pe-price__stock-row--extra .pe-price__stock-val {
	margin-top: 6px;
	padding-top: 6px;
	border-top: 1px solid #e5e7eb;
}
.price .price__total .pe-price__disc:empty {
	display: none;
}
.price .price__total .pe-price__disc--admin {
	grid-template-columns: max-content max-content max-content max-content;
}
.price .price__total .pe-price__row {
	display: contents;
}
.price .price__total .pe-price__qty {
	min-width: 0;
}
.price .price__total .pe-price__val,
.price .price__total .pe-price__pct,
.price .price__total .pe-price__adm {
	text-align: right;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}
.price .price__total .pe-price__val {
	color: #1c1f24;
	font-weight: 700;
}
.price .price__total .pe-price__pct {
	color: #fe4d00;
	font-weight: 700;
}
.price .price__total .pe-price__adm {
	color: #9ca3af;
	font-size: 12px;
	font-weight: 600;
}

@media (max-width: 767px) {
	.price .price__total .pe-price__hero {
		font-size: 36px;
	}
	.price .price__total .pe-price__from {
		font-size: 18px;
	}
}

/* ========== Покупка / резка / покраска / CTA tips ========== */
/* Карточка: стиль кнопок и количества. Раскладку не меняет. */

/* Блок покупки: без горизонтальных линий, ровные отступы */
.options-row.pe-buy {
	border-top: 0;
	border-bottom: 0;
	padding: 12px 0;
	margin: 0;
}

.pe-buy .btn__to-cart,
.pe-buy .btn__in-cart,
.pe-buy .btn__dell-cart,
.pe-buy .btn__change-cart,
.pe-buy .btn__change-cart-color,
.pe-buy .btn__change-cart-cutlen,
.pe-buy .green_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	height: 44px;
	min-height: 44px;
	max-height: 44px;
	margin: 0;
	padding: 0 16px;
	font-weight: 800;
	font-size: 14px;
	line-height: 44px;
	text-transform: none;
	border-radius: 4px;
	vertical-align: middle;
}

.pe-buy .btn__to-cart span,
.pe-buy .btn__in-cart span,
.pe-buy .btn__dell-cart span,
.pe-buy .btn__change-cart span,
.pe-buy .btn__change-cart-color span,
.pe-buy .btn__change-cart-cutlen span,
.pe-buy .green_btn span {
	display: block;
	line-height: 44px;
	margin: 0;
	padding: 0;
}

.pe-buy .btn__to-cart,
.pe-buy .btn__in-cart,
.pe-buy .btn__dell-cart,
.pe-buy .btn__change-cart,
.pe-buy .btn__change-cart-color,
.pe-buy .btn__change-cart-cutlen {
	width: 9.2em;
	min-width: 9.2em;
	max-width: 9.2em;
}

/* Вариант A: «Добавить» / «В корзине» тянутся, удалить — крестик 44×44 */
.pe-buy .pe-buy-actions {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 0;
	flex: 1 1 auto;
	min-width: 0;
	width: auto;
	max-width: none;
}
.pe-buy .pe-buy-actions > * + * {
	margin-left: 8px;
}
.pe-buy .pe-buy-actions .btn__to-cart,
.pe-buy .pe-buy-actions .btn__in-cart,
.pe-buy .pe-buy-actions .btn__change-cart,
.pe-buy .pe-buy-actions .btn__change-cart-color,
.pe-buy .pe-buy-actions .btn__change-cart-cutlen {
	flex: 1 1 auto;
	width: auto;
	min-width: 0;
	max-width: none;
}
.pe-buy .btn__dell-cart.btn__dell-cart--x {
	flex: none;
	width: 44px;
	min-width: 44px;
	max-width: 44px;
	padding: 0;
	margin-left: 8px;
	font-size: 0;
	line-height: 0;
	color: #6b7280;
	background: #fff;
	border: 1.5px solid #d1d5db;
	cursor: pointer;
}
.pe-buy .btn__dell-cart.btn__dell-cart--x .btn__dell-cart__icon {
	display: block;
	position: relative;
	width: 14px;
	height: 14px;
	margin: 0 auto;
	padding: 0;
	line-height: 0;
	font-size: 0;
	background: transparent;
}
.pe-buy .btn__dell-cart.btn__dell-cart--x .btn__dell-cart__icon::before,
.pe-buy .btn__dell-cart.btn__dell-cart--x .btn__dell-cart__icon::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 14px;
	height: 2px;
	background: currentColor;
	border-radius: 1px;
}
.pe-buy .btn__dell-cart.btn__dell-cart--x .btn__dell-cart__icon::before {
	transform: translate(-50%, -50%) rotate(45deg);
}
.pe-buy .btn__dell-cart.btn__dell-cart--x .btn__dell-cart__icon::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}
.pe-buy .btn__dell-cart.btn__dell-cart--x:hover,
.pe-buy .btn__dell-cart.btn__dell-cart--x:visited,
.pe-buy .no_decor.btn__dell-cart.btn__dell-cart--x:hover,
.pe-buy .no_decor.btn__dell-cart.btn__dell-cart--x:visited {
	color: #b91c1c;
	border-color: #fca5a5;
	background: #fff;
	text-decoration: none;
}

.pe-buy .btn__to-cart,
.pe-buy .green_btn {
	background: #fff;
	color: #fe4d00;
	border: 1.5px solid #fe4d00;
}

.pe-buy .btn__to-cart:hover,
.pe-buy .btn__to-cart:visited,
.pe-buy .green_btn:hover {
	background: #fff8f5;
	color: #fe4d00;
	text-decoration: none;
}

.pe-buy .btn__in-cart {
	background: #fe4d00;
	color: #fff;
	border: 0;
	cursor: pointer;
}

.pe-buy .btn__in-cart:hover,
.pe-buy .btn__in-cart:visited {
	background: #d94200;
	color: #fff;
	text-decoration: none;
}

/* «Изменить» — светло-оранжевая: нужно нажать после смены qty */
.pe-buy .btn__change-cart,
.pe-buy .btn__change-cart-color,
.pe-buy .btn__change-cart-cutlen {
	background: #ffe8dc;
	color: #d94200;
	border: 1.5px solid #fe4d00;
	cursor: pointer;
}

.pe-buy .btn__change-cart:hover,
.pe-buy .btn__change-cart-color:hover,
.pe-buy .btn__change-cart-cutlen:hover,
.pe-buy .btn__change-cart:visited,
.pe-buy .btn__change-cart-color:visited,
.pe-buy .btn__change-cart-cutlen:visited {
	background: #ffd4b8;
	color: #c43d00;
	border-color: #d94200;
	text-decoration: none;
}

.pe-buy .btn__dell-cart {
	background: #fff;
	color: #6b7280;
	border: 1.5px solid #d1d5db;
}

.pe-buy .btn__dell-cart:hover,
.pe-buy .btn__dell-cart:visited,
.pe-buy .no_decor.btn__dell-cart:hover,
.pe-buy .no_decor.btn__dell-cart:visited {
	background: #fff;
	color: #b91c1c;
	border-color: #fca5a5;
	text-decoration: none;
}

.pe-buy .btn__change-cart_kart_rasp,
.pe-buy .cut-buy-panel > .btn__change-cart_kart_rasp {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	height: auto;
	min-height: 44px;
	max-height: none;
	padding: 12px 18px;
	background: #fe4d00;
	color: #fff;
	border: 0;
	border-radius: 4px;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.25;
	text-transform: none;
	text-align: center;
}

/* Панель «Купить с резкой»: без рамки, кнопка на всю ширину. */
.pe-buy .cut-buy-panel:not(.cut-buy-panel--bars) {
	box-shadow: none;
	border: 0;
	border-radius: 0;
	width: 100%;
	max-width: 100%;
	margin: 0 0 14px;
	padding: 0;
	justify-content: flex-start;
	overflow: visible;
}
.pe-buy .cut-buy-panel:not(.cut-buy-panel--bars) > .btn__change-cart_kart_rasp,
.pe-buy .cut-buy-panel:not(.cut-buy-panel--bars) > .cut-cta-tip {
	width: 100%;
	max-width: 100%;
	margin: 0;
}
.pe-buy .cut-cta-tip {
	position: relative;
	z-index: 5;
	overflow: visible;
}
.pe-buy .cut-cta-tip .btn__change-cart_kart_rasp {
	position: relative;
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding-right: 44px;
}
.pe-buy .cut-cta-tip__info {
	position: absolute;
	top: 8px;
	right: 8px;
	z-index: 2;
	box-sizing: border-box;
	width: 28px;
	height: 28px;
	padding: 0;
	border: 1.5px solid rgba(255, 255, 255, 0.7);
	border-radius: 4px;
	background: rgba(255, 255, 255, 0.15);
	color: #fff;
	font: 800 13px/1 "Segoe UI", Arial, sans-serif;
	cursor: pointer;
}
.pe-buy .cut-cta-tip__info:hover,
.pe-buy .cut-cta-tip__info:focus,
.pe-buy .cut-cta-tip.is-open .cut-cta-tip__info,
.pe-buy .cut-cta-tip:has(.cut-cta-tip__info:hover) .cut-cta-tip__info,
.pe-buy .cut-cta-tip:has(.cut-cta-tip__panel:hover) .cut-cta-tip__info {
	background: #fff;
	color: #fe4d00;
	border-color: #fff;
}
.pe-buy .cut-cta-tip__panel {
	position: absolute;
	left: 0;
	right: 0;
	bottom: calc(100% + 10px);
	z-index: 20;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 12px;
	background: #fff;
	border: 1px solid #ffd4c2;
	border-radius: 4px;
	box-shadow: 0 8px 24px rgba(28, 31, 36, 0.12);
	opacity: 0;
	visibility: hidden;
	transform: translateY(4px);
	transition: opacity 0.15s ease, transform 0.15s ease, visibility 0.15s ease;
	pointer-events: none;
	text-align: left;
}
.pe-buy .cut-cta-tip__panel::after {
	content: "";
	position: absolute;
	right: 14px;
	bottom: -7px;
	width: 12px;
	height: 12px;
	background: #fff;
	border-right: 1px solid #ffd4c2;
	border-bottom: 1px solid #ffd4c2;
	transform: rotate(45deg);
}
.pe-buy .cut-cta-tip:has(.cut-cta-tip__info:hover) .cut-cta-tip__panel,
.pe-buy .cut-cta-tip:has(.cut-cta-tip__info:focus) .cut-cta-tip__panel,
.pe-buy .cut-cta-tip:has(.cut-cta-tip__panel:hover) .cut-cta-tip__panel,
.pe-buy .cut-cta-tip.is-open .cut-cta-tip__panel {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	pointer-events: auto;
}
.pe-buy .cut-cta-tip__title {
	margin: 0 0 8px;
	padding: 0 0 6px;
	border-bottom: 1px solid #ffd4c2;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.3;
	color: #fe4d00;
	text-align: left;
}
.pe-buy .cut-cta-tip__grid {
	display: grid;
	grid-template-columns: 1fr max-content;
	column-gap: 16px;
	row-gap: 4px;
	align-items: baseline;
	width: 100%;
	font-size: 13px;
	line-height: 1.4;
	font-variant-numeric: tabular-nums;
	text-align: left;
}
.pe-buy .cut-cta-tip__grid span:nth-child(odd) {
	color: #6b7280;
	font-weight: 400;
	text-align: left;
	justify-self: start;
}
.pe-buy .cut-cta-tip__grid span:nth-child(even) {
	font-weight: 700;
	text-align: right;
	justify-self: end;
	color: #1c1f24;
	white-space: nowrap;
}
.pe-buy .cut-buy-panel__actions {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 8px;
	width: 100%;
}
.pe-buy .cut-buy-panel .cut-buy-panel__actions > .btn__change-cart_kart_rasp.no_decor,
.pe-buy .cut-buy-panel .cut-buy-panel__actions > .btn__dell-cart.no_decor {
	box-sizing: border-box;
	display: inline-flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	flex: none;
	height: 48px;
	min-height: 48px;
	max-height: 48px;
	padding-top: 0;
	padding-bottom: 0;
	margin: 0;
	line-height: 1.2;
	font-size: 14px;
}
.pe-buy .cut-buy-panel .cut-buy-panel__actions > .btn__change-cart_kart_rasp.no_decor {
	flex: 1 1 auto;
	width: auto;
	min-width: 0;
	max-width: none;
	padding-left: 18px;
	padding-right: 18px;
}
.pe-buy .cut-buy-panel .cut-buy-panel__actions > .btn__dell-cart.no_decor {
	flex: 0 0 9.2em;
	width: 9.2em;
	min-width: 9.2em;
	max-width: 9.2em;
	padding-left: 16px;
	padding-right: 16px;
}
.pe-buy .cut-buy-panel__actions .cut-buy-panel__cta-title,
.pe-buy .cut-buy-panel__actions .cut-buy-panel__cta-title--edit {
	margin: 0;
	padding: 0;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.2;
}
.pe-buy .cut-buy-panel__actions > .btn__dell-cart span {
	line-height: 1.2;
	margin: 0;
	padding: 0;
}

/* Блок отрезков карты в корзине: на всю ширину, 4 колонки, ≤5 строк */
.pe-buy .cut-map-info {
	width: 100%;
	box-sizing: border-box;
	margin: 0 0 8px;
	padding: 10px 12px;
	background: #fff5f0;
	border: 1px solid #ffd4c2;
	border-radius: 4px;
}
.pe-buy .cut-map-info__title {
	margin: 0 0 6px;
	font-size: 13px;
	font-weight: 800;
	color: #1c1f24;
	line-height: 1.25;
}
.pe-buy .cut-map-info__summary {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 0;
	margin: 0 0 10px;
	padding: 0 0 8px;
	border-bottom: 1px solid #ffd4c2;
	font-size: 12px;
	line-height: 1.35;
	font-variant-numeric: tabular-nums;
	color: #1c1f24;
}
.pe-buy .cut-map-info__summary-item {
	white-space: nowrap;
}
.pe-buy .cut-map-info__summary-item strong {
	font-weight: 800;
}
.pe-buy .cut-map-info__summary-sep {
	color: #6b7280;
	margin: 0 8px;
	user-select: none;
}
.pe-buy .cut-map-info__summary-item--accent strong {
	color: #fe4d00;
}
.pe-buy .cut-map-info__list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	grid-template-rows: repeat(5, auto);
	grid-auto-flow: column;
	grid-auto-columns: minmax(0, 1fr);
	column-gap: 16px;
	row-gap: 2px;
	width: 100%;
	font-size: 13px;
	font-variant-numeric: tabular-nums;
	line-height: 1.35;
}
.pe-buy .cut-map-info__list li {
	display: grid;
	grid-template-columns: 1.75em max-content max-content;
	column-gap: 6px;
	align-items: baseline;
	min-width: 0;
}
.pe-buy .cut-map-info__n {
	color: #6b7280;
	font-weight: 600;
	text-align: right;
}
.pe-buy .cut-map-info__len {
	color: #1c1f24;
}
.pe-buy .cut-map-info__qty {
	color: #1c1f24;
	font-weight: 700;
}
.pe-buy .cut-map-info__more {
	margin: 8px 0 0;
	font-size: 12px;
	font-weight: 700;
	color: #fe4d00;
}
@media (max-width: 767px) {
	.pe-buy .cut-map-info__list {
		grid-template-rows: none;
		grid-auto-flow: row;
		grid-template-columns: 1fr 1fr;
		grid-auto-columns: unset;
		row-gap: 4px;
		column-gap: 12px;
	}
	.pe-buy .cut-map-info__summary {
		font-size: 11px;
	}
	.pe-buy .cut-map-info__summary-sep {
		margin: 0 6px;
	}
}

.pe-buy .btn__change-cart_kart_rasp:hover,
.pe-buy .btn__change-cart_kart_rasp:visited,
.pe-buy .no_decor.btn__change-cart_kart_rasp:hover,
.pe-buy .no_decor.btn__change-cart_kart_rasp:visited {
	background: #d94200;
	color: #fff;
	text-decoration: none;
}

.pe-buy .cut-buy-panel__cta-title {
	text-transform: none;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.25;
}

.pe-buy .cut-buy-panel__cta-sub {
	font-size: 13px;
	font-weight: 600;
	margin-top: 4px;
	line-height: 1.2;
}

/* Qty единый визуал: белый + обводка. Высота 44px — как кнопки штучных/покраски */
.pe-buy .price__amount {
	display: grid;
	grid-template-columns: 36px minmax(8ch, 1fr) 36px;
	align-items: center;
	box-sizing: border-box;
	position: relative;
	height: 44px;
	width: auto;
	min-width: calc(72px + 8ch);
	max-width: none;
	margin: 0;
	padding: 0;
	border: 1.5px solid #d1d5db;
	border-radius: 4px;
	background: #fff;
}

.pe-buy .price__amount .price__amount--input {
	display: block;
	width: 100%;
	height: 100%;
	min-width: 8ch;
	padding: 0 6px;
	border: 0;
	background: transparent;
	font-weight: 700;
	font-size: 14px;
	line-height: 44px;
	text-align: center;
	font-variant-numeric: tabular-nums;
}

.pe-buy .price__amount .price__amount--minus,
.pe-buy .price__amount .price__amount--plus {
	display: flex;
	align-items: center;
	justify-content: center;
	position: static;
	left: auto;
	right: auto;
	top: auto;
	width: 36px;
	height: 100%;
	margin: 0;
	padding: 0;
	padding-bottom: 0;
	background: transparent;
	border: 0;
	border-radius: 0;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	color: #1c1f24;
}

.pe-buy .price__amount .price__amount--minus:hover,
.pe-buy .price__amount .price__amount--plus:hover {
	background: #f3f4f6;
	color: #1c1f24;
}

/* Хлысты / резка пополам: плоский блок, компактнее по высоте (ширину не сужаем) */
.pe-buy .cut-buy-panel--bars {
	box-shadow: none;
	border: 0;
	border-radius: 0;
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
	justify-content: flex-start;
	text-align: left;
	background: transparent;
}
.pe-buy .cut-buy-panel--bars .cut-buy-grid {
	display: grid;
	/* длина | qty | кнопки — всегда одна строка */
	grid-template-columns: auto auto minmax(0, 1fr);
	justify-content: start;
	column-gap: 10px;
	row-gap: 5px;
	align-items: center;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}
.pe-buy .cut-buy-panel--bars .cut-buy-group__label {
	grid-column: 1 / -1;
	margin: 6px 0 0;
	padding: 0;
	text-align: left;
	font-family: inherit;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	line-height: 1.3;
	color: #9ca3af;
}
.pe-buy .cut-buy-panel--bars .cut-buy-group__label:first-child {
	margin-top: 0;
}
.pe-buy .cut-buy-panel--bars .cut-buy-group__free {
	color: #fe4d00;
	font-weight: 800;
}
.pe-buy .cut-buy-panel--bars .cut-buy-row__actions {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: nowrap;
	gap: 8px;
	min-width: 0;
	grid-column: auto;
	width: auto;
	max-width: 100%;
}

/* Длина — серый чип */
.pe-buy .cut-buy-panel--bars .cut-buy-row__len .dlins_hl {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-width: 0;
	width: 100%;
	height: 40px;
	margin: 0;
	padding: 0 10px;
	background: #f0f2f5;
	border: 0;
	border-radius: 4px;
	font-size: 14px;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
	line-height: 1.2;
	color: #1c1f24;
	text-align: center;
	white-space: nowrap;
}

/* Qty — белый + обводка */
.pe-buy .cut-buy-panel--bars .cut-buy-row__qty .price__amount {
	display: grid;
	grid-template-columns: 36px 1fr 36px;
	align-items: center;
	width: 7.6em;
	max-width: 7.6em;
	min-width: 7.6em;
	height: 40px;
	padding: 0;
	background: #fff;
	border: 1.5px solid #d1d5db;
	border-radius: 4px;
	box-sizing: border-box;
}
.pe-buy .cut-buy-panel--bars .cut-buy-row__qty .price__amount .price__amount--minus,
.pe-buy .cut-buy-panel--bars .cut-buy-row__qty .price__amount .price__amount--plus {
	position: static;
	left: auto;
	right: auto;
	top: auto;
	width: 36px;
	height: 100%;
	font-size: 16px;
	line-height: 1;
	background: transparent;
	border-radius: 0;
	padding: 0;
}
.pe-buy .cut-buy-panel--bars .cut-buy-row__qty .price__amount .price__amount--minus:hover,
.pe-buy .cut-buy-panel--bars .cut-buy-row__qty .price__amount .price__amount--plus:hover {
	background: #f3f4f6;
	color: #1c1f24;
}
.pe-buy .cut-buy-panel--bars .cut-buy-row__qty .price__amount .price__amount--input {
	width: 100%;
	min-width: 0;
	height: 100%;
	padding: 0 4px;
	font-size: 14px;
	font-weight: 700;
	line-height: 40px;
	background: transparent;
	border: 0;
}

.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__to-cart,
.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__in-cart,
.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__dell-cart,
.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__change-cart-cutlen {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 40px;
	min-height: 40px;
	max-height: 40px;
	font-size: 13px;
	font-weight: 800;
	line-height: 40px;
	padding: 0 16px;
	border-radius: 4px;
}
.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__to-cart,
.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__in-cart,
.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__change-cart-cutlen {
	flex: 1 1 auto;
	width: auto;
	min-width: 0;
	max-width: none;
	white-space: nowrap;
}
.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__to-cart {
	color: #fe4d00;
	background: #fff;
	border: 1.5px solid #fe4d00;
}
.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__in-cart {
	color: #fff;
	background: #fe4d00;
	border: 0;
}
.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__change-cart-cutlen {
	color: #d94200;
	background: #ffe8dc;
	border: 1.5px solid #fe4d00;
}
.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__dell-cart.btn__dell-cart--x {
	flex: none;
	width: 40px;
	min-width: 40px;
	max-width: 40px;
	padding: 0;
	margin-left: 8px;
	color: #6b7280;
	background: #fff;
	border: 1.5px solid #d1d5db;
}

/* Узкая колонка: уплотняем, но не переносим «Добавить» на вторую строку */
@media (max-width: 1199px) {
	.pe-buy .cut-buy-panel--bars .cut-buy-grid {
		grid-template-columns: auto auto minmax(0, 1fr);
		justify-content: stretch;
		column-gap: 8px;
		row-gap: 5px;
	}
	.pe-buy .cut-buy-panel--bars .cut-buy-row__actions {
		grid-column: auto;
		width: auto;
		max-width: 100%;
		flex-wrap: nowrap;
		gap: 6px;
	}
	.pe-buy .cut-buy-panel--bars .cut-buy-row__len .dlins_hl {
		height: 36px;
		padding: 0 8px;
		font-size: 13px;
	}
	.pe-buy .cut-buy-panel--bars .cut-buy-row__qty .price__amount {
		width: 6.6em;
		max-width: 6.6em;
		min-width: 6.6em;
		height: 36px;
		grid-template-columns: 30px 1fr 30px;
	}
	.pe-buy .cut-buy-panel--bars .cut-buy-row__qty .price__amount .price__amount--minus,
	.pe-buy .cut-buy-panel--bars .cut-buy-row__qty .price__amount .price__amount--plus {
		width: 30px;
	}
	.pe-buy .cut-buy-panel--bars .cut-buy-row__qty .price__amount .price__amount--input {
		font-size: 13px;
		line-height: 36px;
	}
	.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__to-cart,
	.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__in-cart,
	.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__dell-cart,
	.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__change-cart-cutlen {
		height: 36px;
		min-height: 36px;
		max-height: 36px;
		line-height: 36px;
		font-size: 12px;
		padding: 0 10px;
	}
	.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__dell-cart.btn__dell-cart--x {
		width: 36px;
		min-width: 36px;
		max-width: 36px;
		margin-left: 6px;
	}
}

@media (max-width: 767px) {
	.pe-buy .cut-buy-panel--bars .cut-buy-grid {
		grid-template-columns: auto auto minmax(0, 1fr);
		column-gap: 6px;
		row-gap: 5px;
	}
	.pe-buy .cut-buy-panel--bars .cut-buy-row__actions {
		grid-column: auto;
		justify-content: flex-start;
		flex-wrap: nowrap;
		gap: 4px;
	}
	.pe-buy .cut-buy-panel--bars .cut-buy-row__len .dlins_hl {
		height: 32px;
		padding: 0 6px;
		font-size: 12px;
	}
	.pe-buy .cut-buy-panel--bars .cut-buy-row__qty .price__amount {
		width: 5.6em;
		max-width: 5.6em;
		min-width: 5.6em;
		height: 32px;
		grid-template-columns: 26px 1fr 26px;
	}
	.pe-buy .cut-buy-panel--bars .cut-buy-row__qty .price__amount .price__amount--minus,
	.pe-buy .cut-buy-panel--bars .cut-buy-row__qty .price__amount .price__amount--plus {
		width: 26px;
		font-size: 14px;
	}
	.pe-buy .cut-buy-panel--bars .cut-buy-row__qty .price__amount .price__amount--input {
		font-size: 12px;
		line-height: 32px;
	}
	.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__to-cart,
	.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__in-cart,
	.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__dell-cart,
	.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__change-cart-cutlen {
		height: 32px;
		min-height: 32px;
		max-height: 32px;
		line-height: 32px;
		font-size: 11px;
		padding: 0 8px;
	}
	.pe-buy .cut-buy-panel--bars .cut-buy-row__actions .btn__dell-cart.btn__dell-cart--x {
		width: 32px;
		min-width: 32px;
		max-width: 32px;
		margin-left: 4px;
	}
}

/* Штучные / покраска: qty и кнопки в одну линию по центру, без «пляски» */
/* Зазор 8px только МЕЖДУ элементами (не по краям) — как у .pe-paint-row */
.pe-buy .flex_1,
.pe-buy .row.flex_1 {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-start;
	gap: 0;
	width: 100%;
	box-sizing: border-box;
	margin-top: 0;
	margin-bottom: 10px;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.pe-buy .flex_1 > * + * {
	margin-left: 8px;
}
/* Пустой swatch невидимый, но в DOM — не даём ему «оставить» 8px слева у следующего */
.pe-buy .flex_1 > .pe-swatch:not(:has(.pe-swatch__hit)) + * {
	margin-left: 0;
}
.pe-buy .flex_1 > [class*="col-"],
.pe-buy .flex_1 > .options-row__item {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex: 0 0 auto;
	float: none;
	width: auto;
	max-width: none;
	min-height: 44px;
	margin-top: 0;
	margin-bottom: 0;
	margin-right: 0;
	padding: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	gap: 0;
}
.pe-buy .flex_1 > .options-row__item > * + * {
	margin-left: 8px;
}
.pe-buy .flex_1 > .options-row__item.pe-buy-actions {
	flex: 1 1 auto;
	min-width: 0;
	width: auto;
	max-width: none;
}
.pe-buy .flex_1 .price__amount,
.pe-buy .flex_1 .btn__to-cart,
.pe-buy .flex_1 .btn__in-cart,
.pe-buy .flex_1 .btn__dell-cart,
.pe-buy .flex_1 .btn__change-cart,
.pe-buy .flex_1 .btn__change-cart-color {
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0;
	vertical-align: middle;
}
.pe-buy .flex_1 .pe-buy-actions .btn__dell-cart.btn__dell-cart--x {
	margin-left: 8px;
}
.pe-buy .pe-swatch {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: none;
	align-self: center;
	width: 40px;
	min-height: 44px;
	margin: 0;
}
/* Пустой слот базового цвета — не участвует в раскладке (иначе margin/gap слева) */
.pe-buy .flex_1 > .pe-swatch:not(:has(.pe-swatch__hit)) {
	display: none;
}
.pe-buy .pe-swatch--label {
	width: auto;
	justify-content: flex-start;
	gap: 8px;
	margin: 0 0 0 8px;
	height: auto;
}
.pe-buy .pe-swatch__hit,
.pe-buy .box_color_circle2,
.pe-buy .box_color_circle {
	display: flex;
	align-items: center;
	height: auto;
	margin: 0;
}
.pe-buy .pe-swatch__dot,
.pe-buy .color_circle {
	display: block;
	box-sizing: border-box;
	width: 28px;
	height: 28px;
	margin: 0;
	border-radius: 8px;
	border: 1px solid rgba(28, 31, 36, 0.16);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.4);
	background-clip: padding-box;
}
.pe-buy .pe-swatch--base .pe-swatch__dot {
	box-shadow: 0 0 0 2px #fff, 0 0 0 3px #fe4d00, inset 0 1px 0 rgba(255, 255, 255, 0.35);
}
.pe-buy .pe-swatch__ral,
.pe-buy .text_ral {
	font-size: 12px;
	font-weight: 700;
	color: #6b7280;
	letter-spacing: 0.02em;
	white-space: nowrap;
}
.pe-buy .line_zakaz_color {
	align-items: center;
	gap: 8px;
	margin: 0 0 10px;
}
.pe-buy .line_zakaz_color:last-child {
	margin-bottom: 0;
}

/* Вариант C: цвет первым, outline-тоггл, без рамки */
.pe-buy .pe-paint-pick {
	margin: 12px 0 0;
	padding: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
}
.pe-buy .pe-paint-tip.cut-cta-tip {
	width: 100%;
	margin: 0;
}
.pe-buy .pe-paint-pick__toggle.green_btn,
.pe-buy .pe-paint-pick .add_with_paint.green_btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	box-sizing: border-box;
	position: relative;
	width: 100%;
	max-width: 100%;
	height: 44px;
	min-height: 44px;
	max-height: 44px;
	margin: 0;
	padding: 0 14px;
	background: #fff;
	color: #fe4d00;
	border: 1.5px solid #fe4d00;
	border-radius: 4px !important;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.2;
	text-transform: none;
	white-space: nowrap;
	cursor: pointer;
}
.pe-buy .pe-paint-pick__toggle.green_btn:has(.pe-paint-tip__info),
.pe-buy .pe-paint-pick .add_with_paint.green_btn:has(.pe-paint-tip__info) {
	padding-right: 44px;
}
.pe-buy .pe-paint-pick__toggle-text {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-width: 0;
}
.pe-buy .pe-paint-pick__toggle.green_btn small,
.pe-buy .pe-paint-pick .add_with_paint.green_btn small {
	font-size: 12px;
	font-weight: 700;
	color: #6b7280;
}
/* i на outline-кнопке покраски (не белый, как у оранжевой CTA резки) */
.pe-buy .pe-paint-pick .cut-cta-tip__info.pe-paint-tip__info {
	top: 50%;
	right: 8px;
	transform: translateY(-50%);
	border-color: #fe4d00;
	background: #fff;
	color: #fe4d00;
}
.pe-buy .pe-paint-pick .cut-cta-tip__info.pe-paint-tip__info:hover,
.pe-buy .pe-paint-pick .cut-cta-tip__info.pe-paint-tip__info:focus,
.pe-buy .pe-paint-pick .cut-cta-tip.is-open .cut-cta-tip__info.pe-paint-tip__info,
.pe-buy .pe-paint-pick .cut-cta-tip:has(.cut-cta-tip__info:hover) .cut-cta-tip__info.pe-paint-tip__info,
.pe-buy .pe-paint-pick .cut-cta-tip:has(.cut-cta-tip__panel:hover) .cut-cta-tip__info.pe-paint-tip__info {
	background: #fe4d00;
	color: #fff;
	border-color: #fe4d00;
}
.pe-buy .pe-paint-tip__panel.cut-cta-tip__panel {
	text-align: left;
}
.pe-buy .pe-paint-tip__body {
	margin: 0;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;
	color: #1c1f24;
}
.pe-buy .pe-paint-pick__list.hided_colors {
	display: none;
	margin: 12px 0 0;
	padding: 0;
}
.pe-buy .pe-paint-row.line_zakaz_color {
	display: grid;
	grid-template-columns: 40px minmax(0, 1fr) calc(72px + 8ch) minmax(0, 1fr);
	column-gap: 10px;
	align-items: center;
	margin: 0 0 10px;
	padding: 0;
}
.pe-buy .pe-paint-row.line_zakaz_color:last-child {
	margin-bottom: 0;
}
.pe-buy .pe-paint-row__swatch {
	width: 40px;
	min-width: 40px;
	min-height: 44px;
	margin: 0;
	justify-content: center;
}
.pe-buy .pe-paint-row__swatch .pe-swatch__dot,
.pe-buy .pe-paint-row__swatch .color_circle {
	width: 32px;
	height: 32px;
	border-radius: 8px;
}
.pe-buy .pe-paint-row__meta {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}
.pe-buy .pe-paint-row__ral {
	font-size: 13px;
	font-weight: 700;
	color: #1c1f24;
	letter-spacing: 0.02em;
	line-height: 1.2;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.pe-buy .pe-paint-row__sub {
	font-size: 11px;
	font-weight: 600;
	color: #6b7280;
	line-height: 1.25;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.pe-buy .pe-paint-row .price__amount,
.pe-buy .pe-paint-row .btn__to-cart {
	margin: 0;
}
.pe-buy .pe-paint-row .btn__to-cart {
	width: 100%;
	min-width: 0;
	max-width: none;
}
.pe-buy .pe-paint-pick__hint.paint_many {
	margin: 10px 0 0;
	padding: 0;
	background: transparent;
	border-radius: 0;
	text-align: left;
	font-size: 12px;
	font-weight: 600;
	color: #6b7280;
	line-height: 1.4;
}
.pe-buy .pe-paint-pick__free {
	color: #fe4d00;
	font-weight: 800;
}

/* Подсказка цвета (вариант A): карточка справа — как в paint-tooltip-preview */
.pe-buy .pe-paint-pick,
.pe-buy .pe-paint-pick__list,
.pe-buy .pe-paint-row,
.pe-buy .pe-swatch,
.pe-buy .flex_1 {
	overflow: visible;
}
.pe-buy .pe-swatch,
.pe-buy .pe-swatch__hit,
.pe-buy .pe-paint-row__swatch {
	position: relative;
	z-index: 1;
	overflow: visible;
}
.pe-buy .pe-swatch:hover,
.pe-buy .pe-swatch:focus-within,
.pe-buy .pe-paint-row__swatch:hover,
.pe-buy .pe-paint-row__swatch:focus-within {
	z-index: 40;
}
/* Отключаем старый CSS-tooltip (:after / :before) внутри pe-buy */
.pe-buy .tooltip-color:after,
.pe-buy .tooltip-color:before,
.pe-buy .tooltip-color-text:after,
.pe-buy .tooltip-color-text:before {
	content: none !important;
	display: none !important;
	visibility: hidden !important;
}
.pe-buy .pe-swatch-tip {
	position: absolute;
	left: calc(100% + 10px);
	top: 50%;
	transform: translateY(-50%);
	z-index: 41;
	display: none;
	grid-template-columns: 56px 1fr;
	gap: 10px;
	align-items: stretch;
	box-sizing: border-box;
	width: 220px;
	padding: 10px;
	background: #fff;
	border: 1px solid #d1d5db;
	border-radius: 8px;
	box-shadow: 0 10px 28px rgba(28, 31, 36, 0.14);
	pointer-events: none;
	text-align: left;
	text-transform: none;
	white-space: normal;
	color: #1c1f24;
}
.pe-buy .pe-swatch:hover .pe-swatch-tip,
.pe-buy .pe-swatch:focus-within .pe-swatch-tip,
.pe-buy .pe-paint-row__swatch:hover .pe-swatch-tip,
.pe-buy .pe-paint-row__swatch:focus-within .pe-swatch-tip,
.pe-buy .pe-swatch__hit:hover .pe-swatch-tip,
.pe-buy .pe-swatch__hit:focus-within .pe-swatch-tip {
	display: grid;
}
.pe-buy .pe-swatch-tip__swatch {
	display: block;
	border-radius: 6px;
	border: 1px solid rgba(0, 0, 0, 0.08);
	min-height: 56px;
	background-clip: padding-box;
}
.pe-buy .pe-swatch-tip__body {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 2px;
	min-width: 0;
}
.pe-buy .pe-swatch-tip__code {
	display: block;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.25;
	color: #1c1f24;
}
.pe-buy .pe-swatch-tip__name {
	display: block;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.3;
	color: #6b7280;
}
.pe-buy .pe-swatch-tip__meta {
	display: inline-block;
	margin-top: 4px;
	padding: 2px 6px;
	border-radius: 3px;
	background: #f0f2f5;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	line-height: 1.2;
	color: #374151;
}
.pe-buy .pe-swatch-tip__caret {
	position: absolute;
	left: -6px;
	top: 50%;
	width: 10px;
	height: 10px;
	background: #fff;
	border-left: 1px solid #d1d5db;
	border-bottom: 1px solid #d1d5db;
	transform: translateY(-50%) rotate(45deg);
}

@media (max-width: 520px) {
	.pe-buy .pe-paint-row.line_zakaz_color {
		grid-template-columns: 40px minmax(0, 1fr) calc(72px + 8ch);
		row-gap: 8px;
	}
	.pe-buy .pe-paint-row .btn__to-cart {
		grid-column: 1 / -1;
		width: 100%;
		max-width: none;
		min-width: 0;
	}
	.pe-buy .pe-swatch-tip {
		left: 0;
		top: calc(100% + 10px);
		transform: none;
		width: min(220px, calc(100vw - 48px));
	}
	.pe-buy .pe-swatch-tip__caret {
		left: 12px;
		top: -5px;
		transform: rotate(-135deg);
	}
}

/* ========== Медиа (фото / 3D / видео) ========== */
/* Блок 3D / видео на карточке — вариант A */
.pe-media,
.pe-media.ramka3 {
	margin: 0 0 12px;
	padding: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
	border-radius: 0;
}
.pe-media__actions {
	display: grid;
	grid-template-columns: 1fr;
	gap: 8px;
}
.pe-media__actions--2 {
	grid-template-columns: 1fr 1fr;
}
/* Одна кнопка на десктопе — как половина пары, не на всю ширину */
@media (min-width: 521px) {
	.pe-media__actions:not(.pe-media__actions--2) {
		grid-template-columns: 1fr 1fr;
	}
}
.pe-media__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	box-sizing: border-box;
	width: 100%;
	height: 44px;
	min-height: 44px;
	margin: 0;
	padding: 0 12px;
	border: 1.5px solid #fe4d00;
	border-radius: 4px;
	background: #fff;
	color: #fe4d00;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
}
.pe-media__btn:hover,
.pe-media__btn:focus,
.pe-media__btn:visited {
	color: #fe4d00;
	text-decoration: none;
}
.pe-media__btn.is-on {
	background: #fe4d00;
	color: #fff;
}
.pe-media__btn.is-on:hover,
.pe-media__btn.is-on:focus,
.pe-media__btn.is-on:visited {
	color: #fff;
}
.pe-media__ico {
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border: 1.5px solid currentColor;
	border-radius: 4px;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: 0.02em;
	line-height: 1;
}
.pe-media__label {
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
	min-width: 0;
}
.pe-media__label small {
	font-size: 11px;
	font-weight: 700;
	color: #6b7280;
}
.pe-media__btn.is-on .pe-media__label small {
	color: rgba(255, 255, 255, 0.85);
}
.pe-media__panel {
	display: none;
	margin-top: 10px;
	width: 100%;
	min-width: 0;
}
.pe-media__panel.is-open {
	display: block;
}

/* 3D viewer shell */
.pe-media-3d {
	position: relative;
	width: 100%;
	border: 1px solid #e4e4e4;
	border-radius: 6px;
	overflow: hidden;
	background: #fff;
}
.pe-media-3d__stage {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 10;
	min-height: 220px;
	background: #fff;
}
.pe-media-3d__stage .preloader-2,
.pe-media-3d__stage .preloader-text {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
}
.pe-media-3d__stage .preloader-2 {
	top: 38%;
}
.pe-media-3d__stage .preloader-text {
	top: 58%;
	color: #fe4d00;
	font-size: 13px;
	font-weight: 600;
	white-space: nowrap;
}
.pe-media-3d__frame {
	display: none;
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
	border-radius: 0;
	background: #fff;
}

/* video embeds inside panel */
.pe-media__panel .view-source1 iframe,
.pe-media__panel#hide1 iframe {
	max-width: 100%;
}

@media (max-width: 520px) {
	.pe-media__actions--2 {
		grid-template-columns: 1fr;
	}
}

/* ========== Файлы для скачивания + ритм отступов ========== */
/* Блок файлов для скачивания — вариант D (плитки 2 колонки) */
.pe-files {
	margin: 0 0 12px;
	padding: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
}

/* Единый вертикальный ритм карточки после 3D/видео: 12px между блоками */
.user-text--product .ramka3,
.user-text--product .video_file,
.user-text--product .title_nk,
.user-text--product .table_for_naborcomplect,
.user-text--product .product-compatibility,
.user-text--product .calc_stol.ramka3,
.user-text--product .krep-edit-bar,
.user-text--product .nabor-edit-bar,
.user-text--product .sklad-a,
.user-text--product .pe-media,
.user-text--product .pe-files,
.user-text--product .pe-zameny,
.user-text--product .pe-desc,
.user-text--product .pe-krep,
.user-text--product .pe-nabor,
.user-text--product .ozon-hl-toggle {
	margin-top: 0;
	margin-bottom: 12px;
}

.user-text--product .sklad-comment {
	margin-top: 0;
	margin-bottom: 12px;
}
/* заголовок блоков карточки — Bebas / uppercase (не зависеть от родителя .user-text) */
.pe-files__title,
.pe-desc__title,
.pe-zameny__title,
.pe-assoc__title,
.pe-krep__title {
	font-family: Bebas, sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
	margin: 0 0 12px;
	text-transform: uppercase;
	color: #414141;
}
.pe-files__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}
.pe-files__tile {
	display: flex;
	flex-direction: column;
	gap: 6px;
	box-sizing: border-box;
	min-height: 0;
	min-width: 0;
	padding: 10px 12px;
	border: 1.5px solid #d1d5db;
	border-radius: 4px;
	background: #fff;
	color: #1c1f24;
	text-decoration: none;
}
.pe-files__tile:hover,
.pe-files__tile:focus,
.pe-files__tile:visited {
	color: #1c1f24;
	text-decoration: none;
}
.pe-files__tile:hover,
.pe-files__tile:focus {
	border-color: #fe4d00;
	background: #fff5f0;
}
.pe-files__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	min-width: 0;
}
.pe-files__label {
	flex: 1 1 auto;
	min-width: 0;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.25;
	color: #1c1f24;
}
.pe-files__actions {
	display: flex;
	align-items: center;
	gap: 4px;
	flex: none;
}
.pe-files__icon {
	display: block;
	width: 32px;
	height: 32px;
	object-fit: contain;
	flex: none;
}
.pe-files__dl {
	font-size: 11px;
	font-weight: 800;
	line-height: 1.2;
	color: #fe4d00;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}
.pe-files__dl-col {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 1px;
	text-align: right;
}
/* .user-text span { color: inherit } тянет оранжевый с <a> — перебиваем */
.user-text a.pe-files__tile .pe-files__archive,
.user-text .pe-files__archive {
	display: block;
	font-size: 10px !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	color: #9ca3af !important;
	text-transform: none;
	letter-spacing: 0;
}
.pe-files__name {
	font-size: 12px;
	line-height: 1.35;
	color: #6b7280;
	word-break: break-word;
}

@media (max-width: 560px) {
	.pe-files__grid {
		grid-template-columns: 1fr;
	}
}

/* ========== Описание / характеристики / калькулятор прогиба ========== */
/* Описание товара — как pe-files: h4 + рамка контента */
.pe-desc {
	margin: 0 0 12px;
	padding: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
}

.pe-desc__body {
	box-sizing: border-box;
	padding: 12px;
	border: 1.5px solid #d1d5db;
	border-radius: 4px;
	background: #fff;
	color: #1c1f24;
	font-size: 13px;
	line-height: 1.5;
}

.pe-desc__body > *:first-child {
	margin-top: 0;
}

.pe-desc__body > *:last-child {
	margin-bottom: 0;
}

/* Характеристики — та же рамка; таблица без лишних отступов */
.pe-chars .pe-desc__body {
	padding: 8px 12px;
}

.pe-chars .char-wrapp {
	width: 100%;
	margin: 0;
}

.pe-chars .char-wrapp .char_name_wrapp {
	width: 45%;
	min-width: 45%;
}

/* ========== Набор-комплект — pe-рамка + таблица ========== */
.pe-nabor {
	margin: 0 0 12px;
	padding: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
}

.pe-nabor__body {
	box-sizing: border-box;
	padding: 12px;
	border: 1.5px solid #d1d5db;
	border-radius: 4px;
	background: #fff;
	color: #1c1f24;
	font-family: Roboto, Arial, sans-serif;
	font-size: 13px;
	line-height: 1.45;
}

.pe-nabor__note {
	margin: 0 0 10px;
	padding: 8px 10px;
	border-left: 3px solid #fe4d00;
	border-radius: 0 4px 4px 0;
	background: #fff5f0;
	font-size: 12px;
	font-weight: 700;
	color: #9a3412;
}

.pe-nabor__sum {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: flex-end;
	gap: 6px 10px;
	margin: 0 0 12px;
	padding: 0;
	border-bottom: 0;
}

.pe-nabor__sum-lab {
	flex: 0 1 auto;
	min-width: 0;
	font-family: Roboto, Arial, sans-serif;
	font-size: 18px;
	font-weight: 300;
	line-height: 1.3;
	color: #414141;
	text-align: right;
}

.pe-nabor__sum-val,
.pe-nabor__sum .user_text_h4 {
	flex: none;
	margin: 0;
	font-family: Bebas, sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.02em;
	color: #414141;
	text-transform: uppercase;
}

.pe-nabor__table-wrap {
	width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.pe-nabor .table_for_naborcomplect,
.pe-nabor__table {
	display: table;
	width: 100%;
	max-width: 100%;
	margin: 0;
	border-collapse: collapse;
	table-layout: auto;
	justify-content: unset;
}

.pe-nabor .table_for_naborcomplect_rows,
.pe-nabor__row {
	border-bottom: 1px solid #e5e7eb;
}

.pe-nabor .table_for_naborcomplect_rows:last-child,
.pe-nabor__row:last-child {
	border-bottom: 0;
}

.pe-nabor .table_for_naborcomplect_cell_TH,
.pe-nabor__th {
	padding: 8px 10px !important;
	width: auto;
	white-space: nowrap;
	text-align: left !important;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: #6b7280;
	background: #f3f4f6;
	border-bottom: 1px solid #e5e7eb;
	vertical-align: bottom;
}

.pe-nabor .table_for_naborcomplect_cell,
.pe-nabor__td {
	padding: 8px 10px !important;
	width: auto;
	max-width: none;
	font-size: 13px;
	font-weight: 400;
	color: #1c1f24;
	text-align: left;
	vertical-align: top;
	white-space: normal;
}

.pe-nabor__td--num {
	text-align: center;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.pe-nabor__table a,
.pe-nabor .table_for_naborcomplect a {
	color: #fe4d00 !important;
	text-decoration: none;
}

.pe-nabor__table a:hover,
.pe-nabor .table_for_naborcomplect a:hover {
	color: #d94200 !important;
	text-decoration: underline;
}

.pe-nabor__hint {
	font-size: 11px;
	font-weight: 600;
	color: #6b7280;
}

.user-text--product .pe-nabor .table_for_naborcomplect,
.user-text--product .pe-nabor .title_nk {
	margin-bottom: 0;
}

@media (max-width: 650px) {
	.pe-nabor__sum {
		justify-content: flex-start;
	}

	.pe-nabor__sum-lab {
		font-size: 15px;
		text-align: left;
	}

	.pe-nabor__sum-val,
	.pe-nabor__sum .user_text_h4 {
		font-size: 18px;
	}
}

/* Калькулятор прогиба: стили в /calculator/raschet_progiba/calc_profile.css */

/* ========== Замены / аналоги + tips + сопутствующие ========== */
/* Возможные замены / аналоги — рамка как pe-files */
.pe-zameny {
	margin: 0 0 12px;
	padding: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
}

.user-text--product .pe-zameny {
	margin-top: 0;
	margin-bottom: 12px;
}

.pe-zameny__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}

.pe-zameny__tile {
	position: relative;
	display: block;
	box-sizing: border-box;
	min-width: 0;
	width: auto;
	margin: 0;
	padding: 12px;
	border: 1.5px solid #d1d5db;
	border-radius: 4px;
	background: #fff;
	box-shadow: none;
	color: #1c1f24;
	overflow: visible;
}

.pe-zameny__tile:hover {
	border-color: #fe4d00;
	background: #fff5f0;
}

.pe-zameny__tile:has(.cut-cta-tip.is-open),
.pe-zameny__tile:has(.cut-cta-tip__info:hover),
.pe-zameny__tile:has(.cut-cta-tip__info:focus),
.pe-zameny__tile:has(.cut-cta-tip__panel:hover) {
	z-index: 6;
}

.pe-zameny__meta-row {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
	line-height: 1.35;
}

.pe-zameny__price {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: auto;
	font-size: 13px;
	line-height: 1.3;
	color: #1c1f24;
	text-align: right;
}

.pe-zameny__stock {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 6px;
	max-width: 100%;
	font-size: 12px;
	line-height: 1.3;
	color: #6b7280;
	text-align: right;
}

/* i + выплывающая подсказка — единый стиль; бьём .user-text span / Roboto !important */
.pe-zameny-tip.cut-cta-tip {
	position: relative;
	display: inline-flex;
	align-items: center;
	vertical-align: middle;
	z-index: 5;
	overflow: visible;
}

.user-text .pe-zameny-tip,
.user-text .pe-zameny-tip span,
.user-text .pe-zameny-tip div,
.user-text .pe-zameny-tip button {
	font-family: "Segoe UI", Arial, sans-serif !important;
	text-transform: none !important;
}

.pe-zameny-tip .cut-cta-tip__info {
	position: static;
	box-sizing: border-box;
	width: 20px;
	height: 20px;
	padding: 0;
	border: 1.5px solid #fe4d00;
	border-radius: 4px;
	background: #fff;
	color: #fe4d00 !important;
	font: 800 11px/1 "Segoe UI", Arial, sans-serif !important;
	text-transform: none !important;
	cursor: pointer;
}

.pe-zameny-tip .cut-cta-tip__info:hover,
.pe-zameny-tip .cut-cta-tip__info:focus,
.pe-zameny-tip.is-open .cut-cta-tip__info,
.pe-zameny-tip:has(.cut-cta-tip__info:hover) .cut-cta-tip__info,
.pe-zameny-tip:has(.cut-cta-tip__panel:hover) .cut-cta-tip__info {
	background: #fe4d00;
	color: #fff !important;
	border-color: #fe4d00;
}

.pe-zameny-tip .cut-cta-tip__panel {
	position: absolute;
	left: auto;
	right: 0;
	bottom: calc(100% + 10px);
	z-index: 30;
	box-sizing: border-box;
	width: max-content;
	min-width: 220px;
	max-width: min(280px, 70vw);
	margin: 0;
	padding: 12px;
	background: #fff;
	border: 1px solid #ffd4c2;
	border-radius: 4px;
	box-shadow: 0 8px 24px rgba(28, 31, 36, 0.12);
	opacity: 0;
	visibility: hidden;
	transform: translateY(4px);
	transition: opacity 0.15s ease, transform 0.15s ease, visibility 0.15s ease;
	pointer-events: none;
	text-align: left;
	color: #1c1f24 !important;
	font-size: 12px !important;
	font-weight: 400 !important;
	line-height: 1.35 !important;
}

.pe-zameny-tip .cut-cta-tip__panel::after {
	content: "";
	position: absolute;
	left: auto;
	right: 10px;
	bottom: -7px;
	width: 12px;
	height: 12px;
	background: #fff;
	border-right: 1px solid #ffd4c2;
	border-bottom: 1px solid #ffd4c2;
	transform: rotate(45deg);
}

.pe-zameny-tip:has(.cut-cta-tip__info:hover) .cut-cta-tip__panel,
.pe-zameny-tip:has(.cut-cta-tip__info:focus) .cut-cta-tip__panel,
.pe-zameny-tip:has(.cut-cta-tip__panel:hover) .cut-cta-tip__panel,
.pe-zameny-tip.is-open .cut-cta-tip__panel {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	pointer-events: auto;
}

.user-text .pe-zameny-tip .cut-cta-tip__title,
.pe-zameny-tip .cut-cta-tip__title {
	margin: 0 0 8px;
	padding: 0 0 6px;
	border-bottom: 1px solid #ffd4c2;
	font-size: 12px !important;
	font-weight: 800 !important;
	line-height: 1.3 !important;
	color: #fe4d00 !important;
	text-transform: none !important;
	text-align: left;
}

.pe-zameny-tip__disc {
	display: flex;
	flex-direction: column;
	gap: 4px;
	font-size: 12px !important;
	line-height: 1.35 !important;
	font-variant-numeric: tabular-nums;
	color: #1c1f24 !important;
}

.pe-zameny-tip__row {
	display: grid;
	grid-template-columns: 1fr max-content max-content;
	column-gap: 12px;
	align-items: baseline;
}

.user-text .pe-zameny-tip .pe-zameny-tip__qty,
.pe-zameny-tip .pe-zameny-tip__qty {
	color: #6b7280 !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	min-width: 0;
}

.user-text .pe-zameny-tip .pe-zameny-tip__val,
.pe-zameny-tip .pe-zameny-tip__val {
	color: #1c1f24 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	text-align: right;
	white-space: nowrap;
}

.user-text .pe-zameny-tip .pe-zameny-tip__pct,
.pe-zameny-tip .pe-zameny-tip__pct {
	min-width: 2.75em;
	color: #fe4d00 !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	text-align: right;
	white-space: nowrap;
}

.user-text .pe-zameny-tip .pe-zameny-tip__body,
.pe-zameny-tip .pe-zameny-tip__body {
	margin: 0;
	color: #1c1f24 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
}

.related-products__item {
	position: relative;
	overflow: visible;
}

.related-products__item:has(.cut-cta-tip.is-open),
.related-products__item:has(.cut-cta-tip__info:hover),
.related-products__item:has(.cut-cta-tip__info:focus),
.related-products__item:has(.cut-cta-tip__panel:hover) {
	z-index: 6;
}

.pe-assoc__price {
	position: relative;
	overflow: visible;
}

.pe-assoc__meta-row {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
	line-height: 1.35;
}

.pe-zameny .zamen {
	display: flex;
	flex-wrap: nowrap;
	align-items: stretch;
	gap: 10px;
	padding: 0;
	width: 100%;
}

.pe-zameny .img_zam {
	flex: none;
	float: none !important;
	align-self: flex-start;
	width: 80px;
	height: 80px;
	max-width: 80px;
	max-height: 80px;
	margin: 0;
	padding: 0;
	overflow: hidden;
	border: 1px solid #e5e7eb;
	border-radius: 3px;
	background: #f3f4f6;
}

.pe-zameny .img_zam img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.pe-zameny .txt_zam {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 4px;
	min-width: 0;
	flex: 1;
	font-size: 13px;
	line-height: 1.35;
}

.pe-zameny .pe-zameny__name {
	align-self: stretch;
	text-align: left;
}

@media (max-width: 560px) {
	.pe-zameny__grid {
		grid-template-columns: 1fr;
	}
}

/* ========== Комплекты крепежа — та же логика/компоновка, pe-визуал ========== */
.pe-krep {
	margin: 0 0 12px;
	padding: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
}

.pe-krep__head {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin: 0 0 12px;
}

.pe-krep__head .pe-krep__title {
	flex: 1;
	margin: 0;
	cursor: pointer;
}

.pe-krep__toggle {
	flex: none;
	margin: 0;
	padding: 2px 4px;
	font-size: 18px;
	line-height: 1;
	color: #6b7280;
	cursor: pointer;
	user-select: none;
}

.pe-krep__body {
	box-sizing: border-box;
	padding: 12px;
	border: 1.5px solid #d1d5db;
	border-radius: 4px;
	background: #fff;
}

.pe-krep__group {
	margin: 0 0 12px;
}

.pe-krep__group:last-child {
	margin-bottom: 0;
}

.pe-krep .otbivka_krep,
.pe-krep .pe-krep__otbivka {
	margin: 0 0 8px;
	padding: 8px 10px;
	border: 0;
	border-left: 3px solid #fe4d00;
	border-radius: 0 4px 4px 0;
	background: #f3f4f6;
	font-family: "Roboto", Arial, sans-serif;
	font-size: 13px;
	font-weight: 700;
	font-style: normal;
	line-height: 1.35;
	color: #1c1f24;
}

.pe-krep .variants_of_kreps {
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 8px;
	padding: 10px 12px;
	border: 1.5px solid #e5e7eb;
	border-radius: 4px;
	background: #fff;
	line-height: 1.35;
	align-content: unset;
}

.pe-krep .variants_of_kreps:last-child {
	margin-bottom: 0;
}

.pe-krep .variants_of_kreps:hover {
	border-color: #fe4d00;
	background: #fff5f0;
	border-top-color: #fe4d00;
	border-bottom-color: #fe4d00;
	border-left-color: #fe4d00;
	border-right-color: #fe4d00;
}

.pe-krep .a_krep {
	color: #1c1f24 !important;
	font-family: "Roboto", Arial, sans-serif;
	font-size: 13px;
	line-height: 1.45;
	text-decoration: none;
}

.pe-krep .a_krep:hover {
	color: #fe4d00 !important;
}

/* Вариант комплекта: названия | картинки | цена и наличие | количество | корзина */
.pe-krep--kits {
	container-type: inline-size;
}

.pe-krep--kits .kn-var {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto auto auto auto;
	grid-template-areas: "names pics price qty add";
	align-items: center;
	gap: 8px 14px;
	padding: 8px 12px;
}

.pe-krep--kits .kn-var.is-hidden {
	display: none;
}

/* Названия и количество — две колонки; ширину колонки названий задаёт JS (--kn-name-w), чтобы «×N» стояли на одной вертикали во всём блоке */
.pe-krep--kits .kn-names {
	grid-area: names;
	display: grid;
	grid-template-columns: minmax(0, var(--kn-name-w, max-content)) auto;
	column-gap: 10px;
	align-items: baseline;
	min-width: 0;
}

.pe-krep--kits .kn-names .a_krep {
	display: block;
	min-width: 0;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.pe-krep--kits .kn-q {
	font-family: "Roboto", Arial, sans-serif;
	font-size: 13px;
	line-height: 1.45;
	color: #fe4d00;
	white-space: nowrap;
}

/* Картинки: до 3 в ряд, до 2 рядов; колонка постоянной ширины — цены стоят ровно */
.pe-krep--kits .kn-pics {
	grid-area: pics;
	display: grid;
	grid-template-columns: repeat(3, 44px);
	gap: 5px;
}

.pe-krep--kits .kn-pic {
	display: block;
	box-sizing: border-box;
	width: 44px;
	height: 44px;
	border: 1.5px solid #e5e7eb;
	border-radius: 4px;
	background: #fff;
	overflow: hidden;
}

.pe-krep--kits .kn-pic:hover {
	border-color: #fe4d00;
}

.pe-krep--kits .kn-pic img {
	display: block;
	width: 100%;
	height: 100%;
	padding: 3px;
	box-sizing: border-box;
	object-fit: contain;
}

.pe-krep--kits .kn-pic--more {
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: "Roboto", Arial, sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: #6b7280;
}

.pe-krep--kits .kn-price {
	grid-area: price;
	min-width: 104px;
	text-align: right;
	white-space: nowrap;
	font-family: "Roboto", Arial, sans-serif;
}

.pe-krep--kits .kn-price__v {
	font-size: 15px;
	font-weight: 700;
	color: #1c1f24;
}

.pe-krep--kits .kn-price__u {
	font-size: 12px;
	font-weight: 700;
	color: #fe4d00;
}

.pe-krep--kits .kn-stock {
	display: block;
	margin-top: 2px;
	font-size: 11.5px;
	color: #6b7280;
}

.pe-krep--kits .kn-stock::before {
	content: "";
	display: inline-block;
	width: 7px;
	height: 7px;
	margin-right: 4px;
	border-radius: 50%;
	background: #16a34a;
	vertical-align: 1px;
}

.pe-krep--kits .kn-stock.is-order {
	color: #b45309;
}

.pe-krep--kits .kn-stock.is-order::before {
	background: #f59e0b;
}

.pe-krep--kits .kn-qty {
	grid-area: qty;
	display: grid;
	grid-template-columns: 32px 1fr 32px;
	align-items: center;
	box-sizing: border-box;
	width: 8.5em;
	height: 44px;
	border: 1.5px solid #d1d5db;
	border-radius: 4px;
	background: #fff;
}

.pe-krep--kits .kn-qty button {
	height: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	font-size: 16px;
	font-weight: 700;
	color: #1c1f24;
	cursor: pointer;
}

.pe-krep--kits .kn-qty button:hover {
	background: #f3f4f6;
}

.pe-krep--kits .kn-qty input {
	width: 100%;
	min-width: 0;
	height: 100%;
	padding: 0 2px;
	border: 0;
	background: transparent;
	font-family: "Segoe UI", Arial, sans-serif;
	font-size: 14px;
	font-weight: 700;
	text-align: center;
	color: #1c1f24;
}

.pe-krep--kits .kn-add {
	grid-area: add;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 44px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 4px;
	background: #fe4d00;
	color: #fff;
	cursor: pointer;
}

.pe-krep--kits .kn-add:hover {
	background: #d94200;
}

.pe-krep--kits .kn-add svg {
	width: 22px;
	height: 22px;
}

.pe-krep--kits .kn-more {
	display: block;
	width: 100%;
	margin: 0;
	padding: 8px 0;
	border: 1.5px dashed #e5e7eb;
	border-radius: 4px;
	background: #fff;
	font-family: "Roboto", Arial, sans-serif;
	font-size: 13px;
	font-weight: 700;
	color: #fe4d00;
	cursor: pointer;
}

.pe-krep--kits .kn-more:hover {
	border-color: #fe4d00;
	background: #fff5f0;
}

/* Блок ~685 px (окна 800–1199 px): одна строка, цена с наличием над количеством и корзиной */
@container (max-width: 820px) {
	.pe-krep--kits .kn-var {
		grid-template-columns: minmax(0, 1fr) auto auto auto;
		grid-template-areas:
			"names pics price price"
			"names pics qty   add";
		gap: 4px 12px;
		padding: 8px 10px;
	}
	.pe-krep--kits .kn-pics {
		grid-template-columns: repeat(3, 36px);
		gap: 4px;
	}
	.pe-krep--kits .kn-pic {
		width: 36px;
		height: 36px;
	}
	.pe-krep--kits .kn-price {
		min-width: 0;
		align-self: end;
	}
	.pe-krep--kits .kn-qty {
		width: 7.5em;
	}
}

/* Телефон: названия сверху, под ними картинки слева и покупка справа */
@container (max-width: 480px) {
	.pe-krep--kits .kn-var {
		grid-template-columns: auto minmax(0, 1fr) auto;
		grid-template-areas:
			"names names names"
			"pics  price price"
			"pics  qty   add";
		gap: 4px 8px;
		padding: 10px;
	}
	.pe-krep--kits .kn-names {
		margin-bottom: 4px;
	}
	.pe-krep--kits .kn-pics {
		align-self: start;
	}
	.pe-krep--kits .kn-qty {
		justify-self: end;
	}
}

/* End */
/* /calculator/raschet_progiba/calc_profile.css?17942287935994 */
/* /bitrix/templates/capitalim/components/bitrix/catalog.element/shop-blocks/product_card.css?179161344661461 */
