@charset "UTF-8";
/*
 * Product page layout (pp-*). Imported at the top of product.css, so it loads only on product pages.
 * Every rule is scoped to body#product and overrides the older product.css rules for the same elements.
 */

body#product {
	--pp-red: #d71920;
	--pp-red-dark: #b3141a;
	--pp-red-soft: #fdecec;
	--pp-green: #2e9e3e;
	--pp-green-dark: #257f32;
	--pp-green-text: #217a2f;
	--pp-amber-text: #9a4a06;
	--pp-ink: #111827;
	--pp-text: #374151;
	--pp-muted: #6b7280;
	--pp-border: #e5e7eb;
	--pp-soft: #f6f7f9;
	--pp-radius: 8px;
	--pp-shadow: 0 1px 2px rgba(16, 24, 40, .06);
	--pp-font: Roboto, Arial, Helvetica, sans-serif;
}

body#product .pp-sr-only {
	position: absolute !important;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* ---------- page columns: the category column moves below the product (HTML order unchanged) ---------- */
@media (min-width: 768px) {
	body#product #columns > .row {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	body#product #columns > .row:before,
	body#product #columns > .row:after {
		display: none;
	}
	body#product #center_column {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 1;
		width: 100%;
		float: none;
	}
	body#product #left_column {
		-webkit-box-ordinal-group: 3;
		-ms-flex-order: 2;
		order: 2;
		width: 100%;
		float: none;
		margin-top: 28px;
	}
	body#product #right_column {
		-webkit-box-ordinal-group: 4;
		-ms-flex-order: 3;
		order: 3;
	}
	body#product #left_column #categories_block_left .block_content > ul {
		-webkit-column-count: 5;
		-moz-column-count: 5;
		column-count: 5;
		-webkit-column-gap: 24px;
		-moz-column-gap: 24px;
		column-gap: 24px;
	}
	body#product #left_column #categories_block_left .block_content > ul > li {
		-webkit-column-break-inside: avoid;
		break-inside: avoid;
	}
}
@media (min-width: 768px) and (max-width: 1199px) {
	body#product #left_column #categories_block_left .block_content > ul {
		-webkit-column-count: 3;
		-moz-column-count: 3;
		column-count: 3;
	}
}

/* ---------- product grid ---------- */
body#product .pp-product {
	margin: 0 0 30px;
	font-family: var(--pp-font);
	color: var(--pp-text);
}
body#product .primary_block.pp {
	display: grid;
	grid-template-columns: minmax(0, 34fr) minmax(0, 38fr) minmax(0, 28fr);
	grid-column-gap: 24px;
	align-items: start;
	margin: 0 0 24px;
}
body#product .primary_block.pp:before,
body#product .primary_block.pp:after {
	display: none;
}
body#product .primary_block.pp.pp--no-side {
	grid-template-columns: minmax(0, 45fr) minmax(0, 55fr);
}
body#product .pp > #admin-action,
body#product .pp > .confirmation {
	grid-column: 1 / -1;
}
body#product .pp .pp-col {
	float: none;
	width: auto;
	min-width: 0;
	margin: 0;
	padding: 0;
}
body#product .pp-card {
	background: #fff;
	border: 1px solid var(--pp-border);
	border-radius: var(--pp-radius);
	box-shadow: var(--pp-shadow);
}

/* ---------- gallery ---------- */
body#product .pp-gallery {
	padding: 16px;
}
body#product .pp-gallery__stage {
	position: relative;
}
body#product .pp #image-block {
	float: none;
	position: relative;
	width: 100% !important;
	height: auto !important;
	max-width: none;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 6px;
	background: #fff;
	overflow: hidden;
}
body#product .pp #image-block #view_full_size {
	display: block;
}
body#product .pp #image-block #view_full_size img {
	display: block;
	width: 100%;
	max-width: 458px;
	height: auto;
	margin: 0 auto;
}
body#product .pp #image-block .zoomPad {
	float: none;
	display: block;
	max-width: 100%;
	margin: 0 auto;
}
body#product .pp #image-block .span_link {
	display: none;
}
body#product .pp-gallery__brand {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 110;
	padding: 4px 6px;
	border-radius: 6px;
	background: rgba(255, 255, 255, .92);
	pointer-events: none;
}
body#product .pp-gallery__brand img {
	display: block;
	width: auto;
	height: auto;
	max-width: 110px;
	max-height: 70px;
}
body#product .pp-badge {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 110;
	padding: 7px 12px;
	border-radius: 999px;
	background: var(--pp-red);
	color: #fff;
	font: 700 11px/1 var(--pp-font);
	letter-spacing: .05em;
	text-transform: uppercase;
	pointer-events: none;
}
body#product .pp-gallery__nav {
	position: absolute;
	top: 50%;
	z-index: 120;
	width: 42px;
	height: 42px;
	margin-top: -21px;
	padding: 0;
	border: 1px solid var(--pp-border);
	border-radius: 50%;
	background: #fff;
	color: var(--pp-ink);
	box-shadow: 0 2px 8px rgba(17, 24, 39, .14);
	display: -webkit-inline-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: box-shadow .15s, color .15s;
}
body#product .pp-gallery__nav:hover {
	color: var(--pp-red);
	box-shadow: 0 3px 12px rgba(17, 24, 39, .2);
}
body#product .pp-gallery__nav:focus-visible,
body#product .pp-circle:focus-visible,
body#product .pp-compat__more:focus-visible,
body#product .pp-btn-outline:focus-visible,
body#product .pp-sticky__btn:focus-visible {
	outline: 3px solid rgba(215, 25, 32, .35);
	outline-offset: 2px;
}
body#product .pp-gallery__nav--prev {
	left: 8px;
}
body#product .pp-gallery__nav--next {
	right: 8px;
}

/* thumbnails: fixed px width plus margin-right, which is what product.js uses to size the scrolling frame */
body#product .pp #views_block {
	position: relative;
	float: none;
	width: auto;
	margin: 12px 0 0;
	padding: 0;
}
body#product .pp #thumbs_list {
	float: none;
	width: 100% !important;
	margin: 0;
	padding: 0;
	overflow: hidden;
}
body#product .pp #thumbs_list ul#thumbs_list_frame {
	height: auto;
	margin: 0;
	padding: 0;
	list-style: none;
}
body#product .pp #thumbs_list li {
	float: left;
	width: 76px;
	height: 76px;
	margin: 0 8px 0 0;
	padding: 4px;
	border: 1px solid var(--pp-border);
	border-radius: 8px;
	background: #fff;
	box-sizing: border-box;
	overflow: hidden;
	cursor: pointer;
	transition: border-color .15s;
}
body#product .pp #thumbs_list li a {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
	background: none;
}
body#product .pp #thumbs_list li img {
	width: 100%;
	height: 100%;
	max-width: none;
	border: 0;
	object-fit: contain;
}
body#product .pp #thumbs_list li:hover {
	border-color: #cbd0d6;
}
body#product .pp #thumbs_list li.pp-active {
	padding: 3px;
	border: 2px solid var(--pp-red);
}
body#product .pp #view_scroll_left,
body#product .pp #view_scroll_right {
	position: absolute;
	top: 50%;
	z-index: 5;
	width: 28px;
	height: 28px;
	margin: -14px 0 0;
	border: 1px solid var(--pp-border);
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 4px rgba(17, 24, 39, .15);
}
body#product .pp #view_scroll_left {
	left: -6px;
}
body#product .pp #view_scroll_right {
	right: -6px;
}
body#product .pp .resetimg {
	margin: 0;
	padding: 0;
}

/* schema card */
body#product .pp-schema {
	margin: 16px 0 0;
	padding: 14px 16px 16px;
}
body#product .pp-card__head {
	display: -webkit-box;
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 10px;
	padding: 0;
}
body#product .pp-card__icon {
	flex: 0 0 auto;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: var(--pp-red-soft);
	color: var(--pp-red);
	display: -webkit-inline-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
body#product .pp-card__title {
	display: block;
	font: 700 15px/1.25 var(--pp-font);
	color: var(--pp-ink);
}
body#product .pp-card__sub {
	display: block;
	margin-top: 2px;
	font-size: 12px;
	line-height: 1.4;
	color: var(--pp-muted);
}
body#product .pp-schema__link {
	position: relative;
	display: block;
	border: 1px solid #f0f1f3;
	border-radius: 6px;
	background: #fff;
	overflow: hidden;
}
body#product .pp-schema__img {
	display: block;
	width: 100%;
	max-width: 458px;
	height: auto;
	margin: 0 auto;
}
body#product .pp-schema__zoom {
	position: absolute;
	right: 8px;
	bottom: 8px;
	display: -webkit-inline-box;
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 6px 11px;
	border-radius: 999px;
	background: rgba(17, 24, 39, .8);
	color: #fff;
	font: 600 12px/1 var(--pp-font);
}

/* share and print */
body#product .pp-share {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 14px 0 0;
}
body#product .pp-share .socialsharing_product {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0;
	padding: 0;
}
body#product .pp-share .social-sharing {
	margin: 0;
	padding: 6px 10px;
	border: 1px solid var(--pp-border);
	border-radius: 6px;
	background: #fff;
	color: var(--pp-text);
	font-size: 12px;
	line-height: 1.2;
	box-shadow: none;
}
body#product .pp-share .social-sharing:hover {
	border-color: #cbd0d6;
	color: var(--pp-ink);
}
body#product .pp-share .btn-google-plus {
	display: none;
}
body#product .pp-share #usefull_link_block {
	margin: 0;
	padding: 0;
	list-style: none;
	border: 0;
}
body#product .pp-share #usefull_link_block li {
	float: none;
	margin: 0;
	padding: 0;
	border: 0;
}
body#product .pp-share #usefull_link_block li a {
	font-size: 12px;
	font-weight: 400;
	color: var(--pp-muted);
}

/* ---------- info column ---------- */
body#product .pp-head {
	margin: 0 0 14px;
}
body#product .pp-head__brand {
	display: -webkit-box;
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 10px;
}
body#product .pp-head .manufacture_img {
	float: none;
	width: auto;
	height: 70px;
	max-width: 110px;
	margin: 0;
	padding: 2px;
	border: 1px solid var(--pp-border);
	border-radius: 6px;
	background: #fff;
	object-fit: contain;
}
body#product .pp-head__brandname {
	font: 700 13px/1.2 var(--pp-font);
	letter-spacing: .04em;
	text-transform: uppercase;
	color: var(--pp-red);
}
body#product .pp h1.pp-title {
	margin: 0 0 8px;
	padding: 0;
	border: 0;
	font: 700 28px/1.22 var(--pp-font);
	letter-spacing: -.005em;
	text-transform: none;
	color: var(--pp-ink);
}
body#product .pp-codes {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	gap: 2px 18px;
	font-size: 15px;
	line-height: 1.45;
	color: var(--pp-muted);
}
body#product .pp-codes p {
	margin: 0;
	padding: 0;
}
body#product .pp-codes label {
	margin: 0 5px 0 0;
	font-weight: 400;
	text-transform: none;
	color: var(--pp-muted);
}
body#product .pp-codes span,
body#product .pp-codes .editable {
	font-weight: 500;
	color: var(--pp-text);
}

/* stock */
body#product .pp .box-info-product {
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	box-shadow: none;
}
body#product .pp-stock {
	display: -webkit-box;
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 0 14px;
}
body#product .pp-stock__icon {
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	display: -webkit-inline-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
body#product .pp-stock__icon--in {
	background: var(--pp-green);
	color: #fff;
}
body#product .pp-stock__icon--order {
	background: #fff4e5;
	color: var(--pp-amber-text);
}
body#product .pp-stock__text {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	flex-direction: column;
	line-height: 1.3;
}
body#product .pp-stock__label {
	font: 700 17px/1.2 var(--pp-font);
}
body#product .pp-stock__label--in {
	color: var(--pp-green-text);
}
body#product .pp-stock__label--order {
	color: var(--pp-amber-text);
}
body#product .pp-stock__qty {
	font-size: 14px;
	color: var(--pp-muted);
}
body#product .pp #availability_statut {
	min-height: 0;
	margin: -8px 0 14px 46px;
	padding: 0 !important;
	border: 0;
	background: none;
	font-size: 13px;
	line-height: 1.45;
	color: var(--pp-ink);
}
body#product .pp #availability_statut style,
body#product .pp #availability_statut script {
	display: none !important;
}
body#product .pp #availability_statut span,
body#product .pp #availability_statut b,
body#product .pp #availability_statut strong,
body#product .pp #availability_statut a,
body#product .pp #availability_value,
body#product .pp #availability_value.warning_inline {
	display: inline;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	font-weight: 400;
	color: var(--pp-ink);
}
body#product .pp #availability_statut .add_to_preorder,
body#product .pp #availability_statut button[name="PreOrderSubmit"],
body#product #oosHook .add_to_preorder,
body#product #oosHook button[name="PreOrderSubmit"] {
	display: -webkit-box;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 52px;
	margin: 12px 0 0;
	padding: 0 20px;
	border: 0;
	border-radius: 8px;
	background: var(--pp-red);
	color: #fff;
	font: 700 17px/1.2 var(--pp-font);
	text-transform: none;
	box-shadow: none;
}
body#product .pp #availability_statut .add_to_preorder:hover,
body#product .pp #availability_statut button[name="PreOrderSubmit"]:hover,
body#product #oosHook .add_to_preorder:hover,
body#product #oosHook button[name="PreOrderSubmit"]:hover {
	background: var(--pp-red-dark);
}
body#product .pp #availability_date {
	font-size: 13px;
	color: var(--pp-muted);
}

/* price */
body#product .pp-price {
	margin: 4px 0 4px;
	padding: 0;
	border: 0;
}
body#product .pp-price .price {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px 14px;
	float: none;
	margin: 0;
	padding: 0;
}
body#product .pp-price .price p {
	float: none;
	position: static;
	margin: 0;
	padding: 0;
}
body#product .pp #our_price_display {
	font: 700 40px/1.05 var(--pp-font);
	letter-spacing: -.01em;
	color: var(--pp-red);
}
body#product .pp #old_price {
	font-size: 20px;
}
body#product .pp #old_price_display {
	font: 400 20px/1 var(--pp-font);
	color: #8a929e;
	text-decoration: line-through;
}
body#product .pp #reduction_percent,
body#product .pp #reduction_amount {
	position: static;
	float: none;
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	line-height: 1;
}
body#product .pp #reduction_percent_display,
body#product .pp #reduction_amount_display {
	display: inline-block;
	padding: 7px 10px;
	border-radius: 6px;
	background: var(--pp-red);
	color: #fff;
	font: 700 16px/1 var(--pp-font);
}
body#product .pp #pretaxe_price,
body#product .pp .unit-price,
body#product .pp .price-ecotax,
body#product .pp .pack_price {
	font-size: 13px;
	color: var(--pp-muted);
}

/* quantity + buy */
body#product .pp .product_attributes {
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	box-shadow: none;
}
body#product .pp #quantity_wanted_p {
	float: none;
	height: auto;
	margin: 14px 0 6px;
	padding: 0;
	border: 0;
	background: none;
}
body#product .pp-buy {
	display: -webkit-box;
	display: flex;
	align-items: stretch;
	gap: 12px;
}
body#product .pp-qty {
	flex: 0 0 136px;
	display: -webkit-box;
	display: flex;
	align-items: stretch;
	height: 54px;
	border: 1px solid #d1d5db;
	border-radius: 8px;
	background: #fff;
	overflow: hidden;
}
body#product .pp-qty .btn {
	flex: 0 0 42px;
	float: none;
	height: auto;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: #fff;
	color: var(--pp-ink);
	box-shadow: none;
	display: -webkit-box;
	display: flex;
	align-items: center;
	justify-content: center;
}
body#product .pp-qty .btn span {
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	font-size: 13px;
	/* owner 2026-09-17: the + and - must sit dead centre. The glyph is an icon-font
	   character, so its own line box - not the flex box around it - was placing it. */
	display: -webkit-box;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	line-height: 1;
}
body#product .pp-qty .btn span > [class^="icon-"],
body#product .pp-qty .btn span > [class*=" icon-"] {
	display: block;
	line-height: 1;
	vertical-align: middle;
}
body#product .pp-qty .btn:hover,
body#product .pp-qty .btn:focus-visible {
	background: #f3f4f6;
}
body#product .pp #quantity_wanted {
	flex: 1 1 auto;
	float: none;
	width: 100%;
	min-width: 0;
	height: auto;
	margin: 0;
	padding: 0;
	border: 0 !important;
	border-left: 1px solid var(--pp-border) !important;
	border-right: 1px solid var(--pp-border) !important;
	border-radius: 0;
	background: #fff;
	box-shadow: none;
	text-align: center;
	font: 600 18px/1 var(--pp-font);
	color: var(--pp-ink);
}
body#product .pp #add_to_cart {
	flex: 0 0 auto;
	position: static;
	display: block;
	float: none;
	margin: 0;
	padding: 0;
}
body#product .pp #add_to_cart.unvisible {
	visibility: hidden;
}
body#product .pp #add_to_cart .pp-btn-buy {
	display: -webkit-box;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 140px;
	height: 54px;
	margin: 0;
	padding: 0 18px;
	border: 0;
	border-radius: 8px;
	background: var(--pp-green);
	color: #fff;
	font: 700 17px/1 var(--pp-font);
	text-transform: none;
	text-shadow: none;
	box-shadow: 0 2px 0 rgba(0, 0, 0, .08);
	transition: background-color .15s;
}
body#product .pp #add_to_cart .pp-btn-buy:before,
body#product .pp #add_to_cart .pp-btn-buy:after {
	display: none !important;
	content: none !important;
}
body#product .pp #add_to_cart .pp-btn-buy span {
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	color: inherit;
	font: inherit;
}
body#product .pp #add_to_cart .pp-btn-buy:hover {
	background: var(--pp-green-dark);
}
body#product .pp #add_to_cart .pp-btn-buy:focus-visible {
	outline: 3px solid rgba(46, 158, 62, .45);
	outline-offset: 2px;
}
body#product .pp #add_to_cart .pp-btn-buy.disabled {
	opacity: .7;
}
body#product .pp #minimal_quantity_wanted_p {
	margin: 6px 0 0;
	font-size: 13px;
	color: var(--pp-muted);
}
body#product .pp .box-cart-bottom {
	margin: 0;
	padding: 0;
	border: 0;
}
body#product .pp .box-cart-bottom strong:empty {
	display: none;
}

/* trust badges */
body#product .pp-trust {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin: 18px 0;
	padding: 0;
	list-style: none;
}
body#product .pp-trust li {
	display: -webkit-box;
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 0;
	font: 500 13px/1.3 var(--pp-font);
	color: var(--pp-text);
}
body#product .pp-trust__icon {
	flex: 0 0 auto;
	display: -webkit-inline-box;
	display: inline-flex;
	color: var(--pp-red);
}

/* specification card */
body#product .pp-specs {
	padding: 4px 16px;
	border-color: #eceef2;
	background: var(--pp-soft);
	box-shadow: none;
}
body#product .pp-specs__table {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
}
body#product .pp-specs__table th,
body#product .pp-specs__table td {
	padding: 10px 0;
	border: 0;
	border-bottom: 1px solid var(--pp-border);
	background: none;
	vertical-align: top;
	font-size: 14px;
	line-height: 1.4;
}
body#product .pp-specs__table tr:last-child th,
body#product .pp-specs__table tr:last-child td {
	border-bottom: 0;
}
body#product .pp-specs__table th {
	width: 44%;
	padding-right: 12px;
	text-align: left;
	font-weight: 400;
	color: var(--pp-muted);
}
body#product .pp-specs__table td {
	font-weight: 500;
	color: var(--pp-ink);
	word-break: break-word;
}

/* ---------- compatible products (productscategory) ---------- */
body#product .pp-col--side .pp-compat {
	margin: 0;
	padding: 0;
	overflow: hidden;
}
body#product .pp-compat__head {
	display: -webkit-box;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 16px;
	border-bottom: 1px solid var(--pp-border);
	background: #fafafa;
}
body#product .pp-compat__icon {
	flex: 0 0 auto;
	display: -webkit-inline-box;
	display: inline-flex;
	color: var(--pp-red);
}
body#product .pp-compat h3.pp-compat__title {
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	font: 700 17px/1.2 var(--pp-font);
	text-transform: none;
	color: var(--pp-ink);
}
body#product .pp-compat__sub {
	margin: 2px 0 0;
	font-size: 13px;
	color: var(--pp-muted);
}
body#product .pp-compat #productscategory_list {
	width: auto;
	height: auto;
	margin: 0;
	padding: 0 16px;
	overflow: visible;
	list-style: none;
}
body#product .pp-compat .pp-compat__item {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr) auto;
	grid-column-gap: 12px;
	align-items: center;
	float: none;
	width: auto;
	margin: 0;
	padding: 12px 0;
	border: 0;
	border-bottom: 1px solid var(--pp-border);
	background: none;
}
body#product .pp-compat .pp-compat__item:last-child {
	border-bottom: 0;
}
body#product .pp-compat .pp-compat__img {
	display: block;
	width: 72px;
	height: 72px;
	margin: 0;
	padding: 3px;
	border: 1px solid var(--pp-border);
	border-radius: 8px;
	background: #fff;
	overflow: hidden;
}
body#product .pp-compat .pp-compat__img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
body#product .pp-compat .pp-compat__name {
	margin: 0 0 3px;
	padding: 0;
	font: 600 13.5px/1.3 var(--pp-font);
	text-transform: none;
}
body#product .pp-compat .pp-compat__name a {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	color: var(--pp-ink);
}
body#product .pp-compat .pp-compat__name a:hover {
	color: var(--pp-red);
}
body#product .pp-compat__meta {
	margin: 0 0 3px;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-size: 12px;
	color: var(--pp-muted);
}
body#product .pp-compat__price {
	margin: 0;
	font: 700 16px/1.2 var(--pp-font);
	color: var(--pp-red);
}
body#product .pp-compat__old {
	margin-left: 4px;
	font-size: 12px;
	font-weight: 400;
	color: #8a929e;
	text-decoration: line-through;
}
body#product .pp-btn-outline {
	display: -webkit-inline-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 60px;
	height: 36px;
	padding: 0 14px;
	border: 1.5px solid var(--pp-red);
	border-radius: 6px;
	background: #fff;
	color: var(--pp-red);
	font: 600 14px/1 var(--pp-font);
	text-decoration: none;
	white-space: nowrap;
	transition: background-color .15s, color .15s;
}
body#product .pp-btn-outline:hover,
body#product .pp-btn-outline:focus {
	background: var(--pp-red);
	color: #fff;
	text-decoration: none;
}
html.pp-js body#product .pp-compat--collapsible:not(.is-expanded) .pp-compat__item--more {
	display: none;
}
body#product .pp-compat__more {
	display: -webkit-box;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: calc(100% - 32px);
	min-height: 44px;
	margin: 4px 16px 16px;
	padding: 8px 12px;
	border: 1px solid var(--pp-border);
	border-radius: 8px;
	background: var(--pp-soft);
	color: var(--pp-ink);
	font: 600 14px/1.2 var(--pp-font);
	cursor: pointer;
}
body#product .pp-compat__more:hover {
	background: #eef0f3;
}
body#product .pp-compat__more svg {
	transition: transform .2s;
}
body#product .pp-compat.is-expanded .pp-compat__more svg {
	transform: rotate(-90deg);
}
html:not(.pp-js) body#product .pp-compat__more {
	display: none;
}

/* ---------- alternatives (accessories) ---------- */
body#product .pp-alts {
	margin: 0 0 24px;
	padding: 16px 18px;
}
body#product .pp-alts__head {
	display: -webkit-box;
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 12px;
}
body#product .pp-alts__icon {
	display: -webkit-inline-box;
	display: inline-flex;
	color: var(--pp-red);
}
body#product .pp-product .pp-section-title,
body#product .pp-product h3.pp-section-title {
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	font: 700 20px/1.25 var(--pp-font);
	letter-spacing: 0;
	text-transform: none;
	color: var(--pp-ink);
}
body#product .pp-product .pp-section-title span {
	font-weight: 500;
	color: var(--pp-muted);
}
body#product .pp-alts__nav {
	display: -webkit-box;
	display: flex;
	gap: 8px;
	margin-left: auto;
}
body#product .pp-circle {
	width: 40px;
	height: 40px;
	padding: 0;
	border: 1px solid var(--pp-border);
	border-radius: 50%;
	background: #fff;
	color: var(--pp-ink);
	box-shadow: 0 1px 3px rgba(17, 24, 39, .1);
	display: -webkit-inline-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}
body#product .pp-circle:hover {
	color: var(--pp-red);
}
body#product .pp-circle:disabled {
	opacity: .35;
	cursor: default;
}
body#product .pp-alts--static .pp-alts__nav {
	display: none;
}
body#product .pp-alts__track {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(260px, calc((100% - 36px) / 4));
	gap: 12px;
	margin: 0;
	padding: 2px 2px 8px;
	list-style: none;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
}
body#product .pp-alt {
	display: -webkit-box;
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 0;
	padding: 12px;
	border: 1px solid var(--pp-border);
	border-radius: 8px;
	background: #fff;
	scroll-snap-align: start;
}
body#product .pp-alt__img {
	flex: 0 0 76px;
	display: block;
	width: 76px;
	height: 76px;
	border-radius: 6px;
	overflow: hidden;
}
body#product .pp-alt__img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
body#product .pp-alt__body {
	flex: 1 1 auto;
	min-width: 0;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	flex-direction: column;
	gap: 2px;
}
body#product .pp-alt__logo {
	align-self: flex-start;
	width: auto;
	height: auto;
	max-width: 90px;
	max-height: 20px;
	object-fit: contain;
}
body#product .pp-alt__brand {
	font: 700 12px/1.2 var(--pp-font);
	letter-spacing: .03em;
	text-transform: uppercase;
	color: var(--pp-ink);
}
body#product .pp-alt__name {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-size: 13px;
	line-height: 1.3;
	color: var(--pp-text);
}
body#product .pp-alt__name:hover {
	color: var(--pp-red);
}
body#product .pp-alt__ref {
	font-size: 12px;
	color: var(--pp-muted);
}
body#product .pp-alt__foot {
	display: -webkit-box;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-top: 6px;
}
body#product .pp-alt__price {
	font: 700 16px/1 var(--pp-font);
	color: var(--pp-red);
}

/* ---------- tabs ---------- */
body#product .pp-tabs {
	margin: 0 0 24px;
}
body#product .pp-tabs__list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
}
body#product .pp-tabs__tab {
	position: relative;
	margin: 0 -1px -1px 0;
	padding: 14px 28px;
	border: 1px solid var(--pp-border);
	border-radius: 8px 8px 0 0;
	background: #f9fafb;
	color: var(--pp-ink);
	font: 600 15px/1.2 var(--pp-font);
	cursor: pointer;
}
body#product .pp-tabs__tab:hover {
	background: #fff;
}
body#product .pp-tabs__tab.is-active {
	z-index: 1;
	border-color: var(--pp-red);
	background: var(--pp-red);
	color: #fff;
}
body#product .pp-tabs__tab:focus-visible {
	outline: 3px solid rgba(215, 25, 32, .35);
	outline-offset: 2px;
}
body#product .pp-tabs__panel {
	margin: 0;
	padding: 22px 24px;
	border-top-left-radius: 0;
}
html.pp-js body#product .pp-tabs--js .pp-tabs__panel:not(.is-active) {
	display: none;
}
html:not(.pp-js) body#product .pp-tabs__list {
	display: none;
}
html:not(.pp-js) body#product .pp-tabs__panel {
	margin: 0 0 16px;
	border-radius: var(--pp-radius);
}
body#product .pp-product .pp-tabs__panel .pp-section-title {
	margin: 0 0 14px;
	font-size: 19px;
}
body#product .pp-tabs__panel .rte {
	font-size: 14px;
	line-height: 1.65;
	color: var(--pp-text);
}
body#product .pp-tabs__panel #short_description_block {
	margin: 0 0 16px;
	padding: 0 0 14px;
	border: 0;
	border-bottom: 1px solid var(--pp-border);
	background: none;
}
body#product #short_description_content span[style] {
	color: inherit !important;
}
body#product #short_description_content p {
	margin: 0 0 4px;
}
body#product #short_description_content strong {
	font-weight: 600;
	color: var(--pp-ink);
}
body#product .pp-desc h1,
body#product .pp-desc h2,
body#product .pp-desc h3,
body#product .pp-desc h4 {
	margin: 18px 0 8px;
	padding: 0;
	border: 0;
	font: 700 17px/1.3 var(--pp-font);
	text-transform: none;
	color: var(--pp-ink);
}
body#product .pp-desc ul {
	margin: 0 0 12px;
	padding-left: 20px;
	list-style: disc;
}
body#product .pp-desc ul li {
	margin: 0 0 4px;
	padding: 0;
	background: none;
}
body#product .pp-tabs .table-data-sheet {
	width: 100%;
	margin: 0;
	border: 1px solid var(--pp-border);
	border-collapse: collapse;
}
body#product .pp-tabs .table-data-sheet td {
	padding: 10px 14px;
	border: 0;
	border-bottom: 1px solid var(--pp-border);
	font-size: 14px;
	color: var(--pp-ink);
}
body#product .pp-tabs .table-data-sheet tr td:first-child {
	width: 40%;
	border-right: 1px solid var(--pp-border);
	color: var(--pp-muted);
}
body#product .pp-tabs .table-data-sheet tr.even td {
	background: var(--pp-soft);
}
body#product .pp-chips {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 10px;
	padding: 0;
	list-style: none;
}
body#product .pp-chip {
	display: -webkit-inline-box;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 8px 14px 8px 8px;
	border: 1px solid var(--pp-border);
	border-radius: 999px;
	background: var(--pp-soft);
	font: 600 15px/1 var(--pp-font);
	color: var(--pp-ink);
}
body#product .pp-chip__label {
	padding: 4px 8px;
	border-radius: 999px;
	background: var(--pp-red);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
}
body#product .pp-note {
	margin: 0;
	font-size: 13px;
	color: var(--pp-muted);
}

/* other product sections (volume discounts, downloads, customization, pack) */
body#product .pp-section {
	margin: 0 0 24px;
	padding: 18px 20px;
}
body#product .pp-section .page-product-heading {
	margin-bottom: 12px;
}

/* ---------- mobile buy bar ---------- */
body#product .pp-sticky {
	display: none;
}

/* ---------- responsive ---------- */
@media (min-width: 992px) {
	body#product .pp-col--side {
		position: -webkit-sticky;
		position: sticky;
		top: 16px;
	}
}
@media (min-width: 992px) and (max-width: 1199px) {
	body#product .primary_block.pp {
		grid-template-columns: minmax(0, 35fr) minmax(0, 38fr) minmax(0, 27fr);
		grid-column-gap: 18px;
	}
	body#product .pp h1.pp-title {
		font-size: 24px;
	}
	body#product .pp #our_price_display {
		font-size: 34px;
	}
	body#product .pp-trust {
		grid-template-columns: 1fr;
		gap: 8px;
	}
	body#product .pp-compat:not(.pp-samecat) .pp-compat__item {
		grid-template-columns: 60px minmax(0, 1fr);
	}
	body#product .pp-compat:not(.pp-samecat) .pp-compat__img {
		width: 60px;
		height: 60px;
	}
	body#product .pp-compat:not(.pp-samecat) .pp-compat__view {
		grid-column: 2;
		justify-self: start;
		height: 32px;
		margin-top: 6px;
	}
	body#product .pp-alts__track {
		grid-auto-columns: minmax(250px, calc((100% - 24px) / 3));
	}
}
@media (min-width: 768px) and (max-width: 991px) {
	body#product .primary_block.pp,
	body#product .primary_block.pp.pp--no-side {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		grid-column-gap: 18px;
	}
	body#product .pp-col--side {
		grid-column: 1 / -1;
		margin-top: 24px;
	}
	body#product .pp-compat #productscategory_list {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		grid-column-gap: 24px;
	}
	body#product .pp-compat .pp-compat__item:last-child {
		border-bottom: 1px solid var(--pp-border);
	}
	body#product .pp-trust {
		grid-template-columns: 1fr;
		gap: 8px;
	}
	body#product .pp h1.pp-title {
		font-size: 24px;
	}
	body#product .pp #our_price_display {
		font-size: 34px;
	}
	body#product .pp-qty {
		flex-basis: 124px;
	}
	body#product .pp-alts__track {
		grid-auto-columns: minmax(250px, calc((100% - 12px) / 2));
	}
}
@media (max-width: 767px) {
	body#product .primary_block.pp,
	body#product .primary_block.pp.pp--no-side {
		display: -webkit-box;
		display: flex;
		-webkit-box-orient: vertical;
		flex-direction: column;
		gap: 14px;
		margin: 0 0 18px;
	}
	body#product .pp .pb-left-column,
	body#product .pp .pb-center-column {
		display: contents;
	}
	body#product .pp > #admin-action,
	body#product .pp > .confirmation {
		order: 0;
	}
	body#product .pp-head {
		order: 1;
		margin: 0;
	}
	body#product .pp-gallery {
		order: 2;
		padding: 10px;
	}
	body#product .pp-quick-desc {
		order: 3;
	}
	body#product .pp-buybox {
		order: 4;
	}
	body#product .pp-trust {
		order: 5;
		margin: 0;
	}
	body#product .pp-specs {
		order: 6;
	}
	body#product .pp-schema {
		order: 7;
		margin: 0;
	}
	body#product .pp-share {
		order: 8;
		margin: 0;
	}
	body#product .pp-col--side {
		order: 9;
	}
	body#product .pp h1.pp-title {
		font-size: 22px;
		line-height: 1.25;
	}
	body#product .pp-head__brand {
		margin-bottom: 8px;
	}
	body#product .pp-head .manufacture_img {
		height: 36px;
	}
	body#product .pp-codes {
		font-size: 14px;
	}
	body#product .pp #our_price_display {
		font-size: 34px;
	}
	body#product .pp #old_price_display {
		font-size: 18px;
	}
	body#product .pp-qty {
		flex-basis: 120px;
	}
	body#product .pp-trust {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 6px;
	}
	body#product .pp-trust li {
		-webkit-box-orient: vertical;
		flex-direction: column;
		gap: 4px;
		padding: 10px 4px;
		border: 1px solid var(--pp-border);
		border-radius: var(--pp-radius);
		background: #fff;
		text-align: center;
		font-size: 12px;
	}
	body#product .pp-compat__head {
		padding: 12px 14px;
	}
	body#product .pp-compat #productscategory_list {
		padding: 0 14px;
	}
	body#product .pp-tabs__list {
		display: none;
	}
	html.pp-js body#product .pp-tabs--js .pp-tabs__panel:not(.is-active) {
		display: block;
	}
	body#product .pp-tabs__panel {
		margin: 0 0 14px;
		padding: 16px;
		border-radius: var(--pp-radius);
	}
	body#product .pp-alts {
		padding: 14px;
	}
	body#product .pp-alts__nav {
		display: none;
	}
	body#product .pp-alts__track {
		grid-auto-columns: 84%;
	}
	body#product .pp-product .pp-section-title {
		font-size: 18px;
	}

	body#product .pp-sticky {
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 9000;
		display: -webkit-box;
		display: flex;
		align-items: center;
		gap: 12px;
		padding: 10px 14px;
		padding-bottom: calc(10px + env(safe-area-inset-bottom));
		border-top: 1px solid var(--pp-border);
		background: #fff;
		box-shadow: 0 -6px 18px rgba(17, 24, 39, .12);
		visibility: hidden;
		-webkit-transform: translateY(120%);
		transform: translateY(120%);
		transition: transform .22s ease, visibility 0s linear .22s;
	}
	body#product .pp-sticky.is-visible {
		visibility: visible;
		-webkit-transform: none;
		transform: none;
		transition: transform .22s ease;
	}
	body#product .pp-sticky__info {
		flex: 1 1 auto;
		min-width: 0;
		display: -webkit-box;
		display: flex;
		-webkit-box-orient: vertical;
		flex-direction: column;
	}
	body#product .pp-sticky__name {
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
		font-size: 12px;
		color: var(--pp-muted);
	}
	body#product .pp-sticky__price {
		font: 700 20px/1.15 var(--pp-font);
		color: var(--pp-red);
	}
	/* the sticky buy button is green, so its focus ring matches (the ring rule
	   near the top of this file is shared with other outline buttons) */
	body#product .pp-sticky__btn:focus-visible {
		outline: 3px solid rgba(46, 158, 62, .45);
		outline-offset: 2px;
	}
	body#product .pp-sticky__btn {
		flex: 0 0 auto;
		display: -webkit-inline-box;
		display: inline-flex;
		align-items: center;
		gap: 8px;
		height: 48px;
		padding: 0 22px;
		border: 0;
		border-radius: 8px;
		background: var(--pp-green);
		color: #fff;
		font: 700 17px/1 var(--pp-font);
	}
}
@media (max-width: 379px) {
	body#product .pp-buy {
		gap: 8px;
	}
	body#product .pp-qty {
		flex-basis: 108px;
	}
	body#product .pp #add_to_cart .pp-btn-buy {
		font-size: 17px;
		padding: 0 12px;
	}
}
@media (prefers-reduced-motion: reduce) {
	body#product .pp-sticky,
	body#product .pp-compat__more svg,
	body#product .pp-gallery__nav,
	body#product .pp-btn-outline {
		transition: none !important;
	}
}

/* ---------- breadcrumb: red home icon, grey links, "›" separators ---------- */
body#product .breadcrumb {
	display: block;
	min-height: 0;
	margin: 0 0 18px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
	overflow: visible;
	font: 400 13px/1.6 var(--pp-font);
	color: var(--pp-text);
}
body#product .breadcrumb a {
	display: inline;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	font-weight: 400;
	color: var(--pp-muted);
}
body#product .breadcrumb a:before,
body#product .breadcrumb a:after {
	display: none !important;
}
body#product .breadcrumb a:hover {
	color: var(--pp-red);
	text-decoration: none;
}
body#product .breadcrumb a.home {
	display: inline-block;
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
	font-size: 17px;
	line-height: 1;
	vertical-align: -2px;
	color: var(--pp-red);
}
body#product .breadcrumb .navigation-pipe {
	display: inline-block;
	width: auto;
	margin: 0 7px;
	text-indent: 0;
	font-size: 0;
	vertical-align: 0;
}
body#product .breadcrumb .navigation-pipe:before {
	content: "\203A";
	font-size: 16px;
	line-height: 1;
	color: #9ca3af;
}
body#product .pp .resetimg.pp-hide {
	display: none !important;
}
body#product .pp #oosHook,
body#product .pp .product_attributes,
body#product .pp .box-cart-bottom {
	margin: 0;
	padding: 0;
	min-height: 0;
}
body#product .pp #oosHook .pp_countdown_container:empty {
	display: none;
}

/* ---------- thumbnails stay on one row; #thumbs_list scrolls them (serialScroll) ---------- */
body#product .pp #thumbs_list ul#thumbs_list_frame {
	display: -webkit-box;
	display: flex;
	flex-wrap: nowrap;
	width: -webkit-max-content !important;
	width: max-content !important;
}
body#product .pp #thumbs_list li {
	float: none;
	flex: 0 0 76px;
}

/* ---------- buy box order: stock, price, delivery / pre-order, quantity + buy ---------- */
body#product .pp .box-info-product {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	flex-direction: column;
}
body#product .pp .box-info-product > .pp-stock {
	order: 1;
}
body#product .pp .box-info-product > .content_prices {
	order: 2;
}
body#product .pp .box-info-product > #availability_statut,
body#product .pp .box-info-product > #last_quantities,
body#product .pp .box-info-product > #pQuantityAvailable,
body#product .pp .box-info-product > #availability_date {
	order: 3;
}
body#product .pp .box-info-product > .product_attributes {
	order: 4;
}
body#product .pp .box-info-product > .box-cart-bottom {
	order: 5;
}
body#product .pp .box-info-product > #availability_statut {
	margin: 10px 0 4px;
}
body#product .pp-card,
body#product .pp-gallery__stage {
	min-width: 0;
}

@media (max-width: 767px) {
	body#product .primary_block.pp > *,
	body#product .pp .pb-left-column > *,
	body#product .pp .pb-center-column > * {
		/* owner 2026-09-21: width:100% added. min-width/max-width were already here and
		   only PROTECT; width is what actually makes a child fill the row. Measured at
		   390px before the change: gallery/share/head/buybox/trust were all 330px but
		   .pp-specs was 274.109px (fractional = sized by its content), which is the
		   narrow specs table visible on the phone. The two columns are display:contents,
		   so their children are the real flex items and 100% resolves against the
		   330px row. */
		width: 100%;
		min-width: 0;
		max-width: 100%;
	}
	body#product .pp-gallery {
		overflow: hidden;
	}
}

/* quick view (content_only): two columns, no side card */
body#product.content_only .primary_block.pp {
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

@media print {
	body#product .primary_block.pp {
		display: block;
	}
	body#product .pp-tabs__list {
		display: none;
	}
	html.pp-js body#product .pp-tabs--js .pp-tabs__panel:not(.is-active) {
		display: block;
	}
}


/* the main image now carries .pp-schema__zoom inside its own anchor (2026-09-18),
   so the separate .pp-zoom badge is gone from product.tpl. */

/* ---------- owner 2026-09-17: a red button always carries white text ---------- */
/* The preorder button renders as <button class="add_to_preorder"><span>Поръчай</span></button>,
   and the inner span was picking up --pp-ink (#111827) - dark text on the brand red.
   Measured on product 5: button color #fff but span color rgb(17,24,39). */
body#product #oosHook .add_to_preorder,
body#product #oosHook .add_to_preorder span,
body#product #oosHook button[name="PreOrderSubmit"],
body#product #oosHook button[name="PreOrderSubmit"] span,
body#product .pp #availability_statut .add_to_preorder span,
body#product .pp #add_to_cart .pp-btn-buy,
body#product .pp #add_to_cart .pp-btn-buy span,
body#product .pp #add_to_cart button.ajax_add_to_cart_product_button,
body#product .pp #add_to_cart button.ajax_add_to_cart_product_button span {
	color: #fff !important;
}

/* ---------- owner 2026-09-17: "30 други продукта" as a left/right carousel ----------
   The block used to be a tall vertical list with a "Виж всички" expander. It now reuses the
   .pp-alts mechanics (native horizontal scroll + snap, buttons move exactly one card), so it
   takes one card-row of height instead of thirty. .pp-samecat is excluded from the three
   .pp-compat phone rules above, which assume the old two-column list. */
body#product .pp-samecat .pp-samecat__nav {
	display: -webkit-box;
	display: flex;
	gap: 8px;
	margin-left: auto;
}
body#product .pp-samecat.pp-samecat--static .pp-samecat__nav {
	display: none;
}
body#product .pp-samecat #productscategory_list {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(176px, calc((100% - 36px) / 4));
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
	overflow-x: auto;
	scroll-snap-type: x proximity;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}
body#product .pp-samecat #productscategory_list::-webkit-scrollbar {
	display: none;
}
body#product .pp-samecat .pp-compat__item {
	display: flex;
	-webkit-box-orient: vertical;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	margin: 0;
	padding: 12px;
	border: 1px solid var(--pp-border);
	border-radius: 8px;
	background: #fff;
	scroll-snap-align: start;
}
body#product .pp-samecat .pp-compat__img {
	width: 100%;
	height: 104px;
	display: flex;
	align-items: center;
	justify-content: center;
}
body#product .pp-samecat .pp-compat__img img {
	max-width: 100%;
	max-height: 104px;
	width: auto;
	height: auto;
}
body#product .pp-samecat .pp-compat__body {
	flex: 1 1 auto;
	min-width: 0;
	width: 100%;
}
body#product .pp-samecat .pp-compat__name {
	display: block;
	max-height: 2.7em;
	overflow: hidden;
	font: 600 12.5px/1.35 var(--pp-font);
}
body#product .pp-samecat .pp-compat__view {
	width: 100%;
	height: 34px;
	margin: 0;
	text-align: center;
}
/* the old expander has no purpose once every card is reachable by scrolling */
body#product .pp-samecat .pp-compat__more {
	display: none;
}
@media (max-width: 1199px) {
	body#product .pp-samecat #productscategory_list {
		grid-auto-columns: minmax(170px, calc((100% - 24px) / 3));
	}
}
@media (max-width: 991px) {
	body#product .pp-samecat #productscategory_list {
		grid-auto-columns: minmax(160px, calc((100% - 12px) / 2));
	}
}
@media (max-width: 767px) {
	/* parity with .pp-alts, whose arrows are hidden on phones */
	body#product .pp-samecat .pp-samecat__nav {
		display: none;
	}
	body#product .pp-samecat #productscategory_list {
		grid-auto-columns: 62%;
		padding: 0;
	}
}

/* owner 2026-09-18: a related-product card for an out-of-stock item offers the same
   red "Поръчай" as the product page, instead of a neutral "Виж". Declared after the
   .pp-btn-outline rules so it wins at equal specificity. */
body#product .pp-compat__view--order,
body#product a.pp-btn-outline.pp-compat__view--order {
	border-color: var(--pp-red);
	background: var(--pp-red);
	color: #fff;
}
body#product .pp-compat__view--order:hover,
body#product a.pp-btn-outline.pp-compat__view--order:hover {
	border-color: var(--pp-red-dark);
	background: var(--pp-red-dark);
	color: #fff;
}
/* the accessory variant of the same red "Поръчай". Declared after .pp-btn-outline:hover
   (product-pp.css:1030), which already paints a normal outline button red on hover -
   so the order variant needs its own darker hover to stay distinguishable. */
body#product a.pp-btn-outline.pp-btn-outline--order {
	border-color: var(--pp-red);
	background: var(--pp-red);
	color: #fff;
}
body#product a.pp-btn-outline.pp-btn-outline--order:hover,
body#product a.pp-btn-outline.pp-btn-outline--order:focus {
	border-color: var(--pp-red-dark);
	background: var(--pp-red-dark);
	color: #fff;
}

/* PP-BTN-SIZE 2026-09-18 (owner): Купи and Поръчай are 140x54 on desktop and full width on
   phones. The preorder button lives in #availability_statut / #oosHook, the buy button in
   #add_to_cart - both get the same box so the two states look identical. */
body#product #oosHook .add_to_preorder,
body#product #oosHook button[name="PreOrderSubmit"],
body#product .pp #availability_statut .add_to_preorder,
body#product .pp #availability_statut button[name="PreOrderSubmit"] {
	width: 140px;
	height: 54px;
	min-height: 0;
	padding: 0 12px;
}
@media (max-width: 767px) {
	body#product .pp #add_to_cart,
	body#product .pp #add_to_cart .pp-btn-buy,
	body#product #oosHook .add_to_preorder,
	body#product #oosHook button[name="PreOrderSubmit"],
	body#product .pp #availability_statut .add_to_preorder,
	body#product .pp #availability_statut button[name="PreOrderSubmit"] {
		width: 100%;
		flex: 1 1 auto;
	}
	/* the buy row holds a 136px quantity stepper beside the button, so "100%" only
	   reached ~199px. Let the row wrap on phones and the button takes the full field. */
	body#product .pp-buy {
		flex-wrap: wrap;
	}
	body#product .pp-qty {
		flex: 0 0 136px;
	}
	body#product .pp #add_to_cart {
		flex: 1 0 100%;
		margin-top: 10px;
	}
}

/* CODES-H2 2026-09-23 — заглавие е САМО стойността.
   Обвивката вече е div.pp-codes__item, а h2-то държи самата стойност. За да не изглежда
   като заглавие, h2-то е inline и НАСЛЕДЯВА размера от .pp-codes: така едно правило важи
   и за 15px на десктоп, и за 14px на мобилно, без второ правило в media заявката.
   Етикетът и стойността остават на един ред, защото inline елемент запазва интервала
   между тях точно както го правеше span. */
body#product .pp-codes__item {
	margin: 0;
	padding: 0;
	white-space: nowrap;
}
body#product .pp-codes h2 {
	display: inline;
	margin: 0;
	padding: 0;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	font-weight: 500;
	color: var(--pp-text);
	text-transform: none;
	letter-spacing: 0;
}
