/* ─────────────────────────────────────────────────────────────────────
   Single product — Lindex-style PDP
   ───────────────────────────────────────────────────────────────────── */

body.single-product .lindex-header { border-bottom: 0 !important; }

body.single-product .cb-shop-breadcrumb {
	padding: 16px clamp(16px, 2.5vw, 32px);
	background: var(--lindex-header-bg, #f6f3ee);
	border-bottom: 0 !important; margin-bottom: 0 !important;
}

/* Bare WC breadcrumb sitting as a direct body child on PDPs — give it the beige header strip. */
body.single-product > nav.woocommerce-breadcrumb {
	background: #f6f3ee !important;
	padding: 8px clamp(16px, 2.5vw, 32px) !important;
	margin: 0 !important;
}
body.single-product nav.woocommerce-breadcrumb,
body.single-product nav.woocommerce-breadcrumb a {
	color: #242118 !important;
	font-size: 16px !important;
}

/* —— PDP wishlist heart (top-right of gallery) —— */
body.single-product .cb-pdp-gallery {
	position: relative;
}
.cb-wishlist-btn--pdp {
	position: absolute;
	top: 16px;
	right: 16px;
	z-index: 10;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	background: transparent;
	border: 0;
	border-radius: 50%;
	color: #242118;
	cursor: pointer;
	transition: background-color 150ms ease;
}
.cb-wishlist-btn--pdp:hover,
.cb-wishlist-btn--pdp:focus-visible {
	background: rgba(0, 0, 0, 0.05);
	outline: none;
}
.cb-wishlist-btn--pdp .cb-wishlist-btn__icon {
	display: block;
	transition: fill 150ms ease;
}
.cb-wishlist-btn--pdp.is-active .cb-wishlist-btn__icon,
.cb-wishlist-btn--pdp.is-active .cb-wishlist-btn__icon path {
	fill: var(--lindex-logo-red, #d6253b) !important;
	stroke: var(--lindex-logo-red, #d6253b) !important;
}

body.single-product .cb-container,
body.single-product main.cb-main,
body.single-product #primary,
body.single-product #main,
body.single-product main#main.site-main,
body.single-product .content-area,
body.single-product .woocommerce-notices-wrapper { max-width: none !important; width: 100% !important; padding: 0 !important; margin: 0 !important; overflow-x: hidden; }

.cb-pdp__layout {
	display: grid; grid-template-columns: 1fr; gap: 32px;
	align-items: flex-start; max-width: none; margin: 0;
	padding: 0 clamp(16px, 2.5vw, 32px);
}
@media (min-width: 64rem) { .cb-pdp__layout { grid-template-columns: 2fr 1fr; gap: 48px; } }

.cb-pdp__summary { position: sticky; top: 96px; padding: 16px 0; }
.cb-pdp__short-desc { margin: .5rem 0 1.25rem; color: #444; font-size: .9375rem; line-height: 1.6; }
.cb-pdp__short-desc p { margin: 0 0 .5rem; }

body.single-product .product_title.entry-title {
	font-size: clamp(20px, 2.4vw, 28px); font-weight: 700; margin: 0 0 .5rem;
	color: #1a1a1a; line-height: 1.25;
}
body.single-product .cb-pdp__summary .price,
body.single-product .cb-pdp__summary .price ins,
body.single-product .cb-pdp__summary .price ins .amount,
body.single-product .cb-pdp__summary .price .amount {
	font-size: 1.5rem; font-weight: 600; margin: 0 0 1.25rem;
	color: #1a1a1a !important; background: transparent; text-decoration: none;
}
body.single-product .cb-pdp__summary .price del { color: #999 !important; font-weight: 400; margin-right: .5rem; font-size: 1.125rem; }
body.single-product .product_meta { display: none !important; }

/* ── Gallery ── */
.cb-pdp-gallery { display: block; }
.cb-pdp-gallery__slider { position: relative; overflow: hidden; background: #fff; }
.cb-pdp-gallery__track { display: flex; width: 100%; transition: transform 350ms cubic-bezier(0.22, 1, 0.36, 1); }
.cb-pdp-gallery__slide { flex: 0 0 100%; min-width: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 0; background: #fff; }
.cb-pdp-gallery__cell { background: #fff; overflow: hidden; aspect-ratio: 3 / 4; }
.cb-pdp-gallery__img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: top center; }
.cb-pdp-gallery__cell-empty { width: 100%; height: 100%; background: #fff; }
.cb-pdp-gallery__slide--single { grid-template-columns: 1fr 1fr; }
.cb-pdp-gallery__slide--single .cb-pdp-gallery__cell:first-child { grid-column: 1; }
.cb-pdp-gallery__slide--single .cb-pdp-gallery__cell:last-child { grid-column: 2; }
.cb-pdp-gallery--single-slide .cb-pdp-gallery__slide--single { grid-template-columns: 1fr 1fr; }

.cb-pdp-gallery__nav {
	position: absolute; top: 50%; transform: translateY(-50%); z-index: 4;
	width: 40px; height: 40px; border-radius: 9999px; background: rgba(255,255,255,.92);
	border: 0; color: #1a1a1a; display: inline-flex; align-items: center; justify-content: center;
	cursor: pointer; box-shadow: 0 2px 8px rgba(0,0,0,.08); transition: background 150ms ease;
}
.cb-pdp-gallery__nav:hover { background: #fff; }
.cb-pdp-gallery__nav svg { width: 18px; height: 18px; display: block; }
.cb-pdp-gallery__nav--prev { left: 12px; }
.cb-pdp-gallery__nav--next { right: 12px; }

.cb-pdp-gallery__rest { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin-top: 0; justify-items: start; }
.cb-pdp-gallery__rest-cell { background: #fff; overflow: hidden; aspect-ratio: 3 / 4; pointer-events: none; width: 100%; }

/* ── Variations ── */
body.single-product table.variations { margin: 1rem 0; border: 0; width: 100%; border-collapse: collapse; }
body.single-product table.variations tbody,
body.single-product table.variations tr,
body.single-product table.variations th,
body.single-product table.variations td {
	display: block; width: 100%; margin: 0; padding: 0 !important; background: transparent !important;
	border: 0 !important; text-align: left !important; font-size: .9375rem;
}
body.single-product table.variations tr { margin-bottom: 16px; }
body.single-product table.variations th { font-weight: 700; color: #1a1a1a; margin-bottom: 8px; }
body.single-product table.variations select[name="attribute_pa_color"],
body.single-product table.variations select[name="attribute_pa_size"] { display: none !important; }
body.single-product .reset_variations { display: none !important; }

/* ── Color swatches ── */
.cb-pdp-swatches { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; }
.cb-pdp-swatch {
	width: 76px; height: 76px; padding: 0; border: 0; border-radius: 0;
	background: #fff; cursor: pointer; overflow: hidden;
	outline: 1px solid transparent; outline-offset: -1px; transition: outline-color 150ms ease;
}
.cb-pdp-swatch img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: top center; border-radius: 0; }
.cb-pdp-swatch:hover, .cb-pdp-swatch.is-active { outline-color: #1a1a1a; }

/* ── Size buttons ── */
.cb-pdp-sizes { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; }
.cb-pdp-size {
	min-width: 64px; height: 56px; padding: 0 18px; border: 1px solid #d8d3ca;
	border-radius: 4px; background: #fff; color: #1a1a1a; font-size: 1rem; font-weight: 500;
	cursor: pointer; text-transform: uppercase;
	transition: border-color 150ms ease, background 150ms ease, color 150ms ease;
}
.cb-pdp-size:hover, .cb-pdp-size.is-active { border-color: #1a1a1a; background: #1a1a1a; color: #fff; }
.cb-pdp-size-error { margin: 8px 0 0; color: #c62828; font-size: .875rem; font-weight: 500; }
.cb-cart-message { margin: 10px 0 0; color: #c62828; font-size: .875rem; font-weight: 500; }

/* Out-of-stock size: greyed + struck through, not selectable */
.cb-pdp-size--oos,
.cb-pdp-size--oos:hover {
	color: #c2bdb4; border-color: #e6e3dd; background: #fff;
	text-decoration: line-through; cursor: not-allowed;
}

/* "Few in stock" availability line (orange dot) */
body.single-product p.stock,
body.single-product .woocommerce-variation-availability p.stock {
	display: flex; align-items: center; gap: 8px;
	margin: 10px 0 0; font-size: .9rem; font-weight: 500; color: #5a5a5a;
}
body.single-product p.stock.low-stock::before {
	content: ""; flex: 0 0 auto; width: 8px; height: 8px;
	border-radius: 50%; background: #f5a623;
}

/* ── Add to cart ── */
body.single-product .product form.cart button.single_add_to_cart_button,
body.single-product .product form.cart button.single_add_to_cart_button.alt,
body.single-product .product form.cart button.button.alt {
	background: #d6253b !important; background-color: #d6253b !important;
	background-image: none !important; color: #fff !important; border: 0 !important;
	border-radius: 9999px !important; min-height: 56px !important; width: 100%; max-width: 480px;
	padding: 0 2rem !important; font-size: 1.0625rem !important; font-weight: 700 !important;
	text-transform: none !important; letter-spacing: 0 !important; cursor: pointer;
	box-shadow: none !important; text-shadow: none !important; opacity: 1 !important;
	filter: none !important; transition: background 150ms ease; margin-top: 1rem;
}
body.single-product .product form.cart button.single_add_to_cart_button:hover,
body.single-product .product form.cart button.single_add_to_cart_button.alt:hover {
	background: #b81e30 !important; background-color: #b81e30 !important; color: #fff !important; opacity: 1 !important;
}
body.single-product .product form.cart button.single_add_to_cart_button:disabled { opacity: .55 !important; cursor: not-allowed; }
body.single-product .product form.cart .quantity,
body.single-product .product form.cart .quantity input,
body.single-product .product form.cart .quantity .qty,
body.single-product .product form.cart .quantity .plus,
body.single-product .product form.cart .quantity .minus,
body.single-product .product form.cart .quantity-selector,
body.single-product .product form.cart input.qty { display: none !important; }
body.single-product .single_variation_wrap .woocommerce-variation { margin: .5rem 0; }
body.single-product .single_variation_wrap .woocommerce-variation-price { display: none; }

/* ── Free delivery — hidden ── */
.cb-free-delivery { display: none !important; }

/* ── Description accordion ── */
.cb-pdp-accordion { margin: 0; padding: 0; border-bottom: 1px solid #e6e1d8; }
.cb-pdp-accordion__summary {
	display: flex; align-items: center; justify-content: space-between; gap: 12px;
	padding: 1rem 0; cursor: pointer; list-style: none; font-size: 1rem; font-weight: 700; color: #1a1a1a;
}
.cb-pdp-accordion__summary::-webkit-details-marker, .cb-pdp-accordion__summary::marker { display: none; content: ""; }
.cb-pdp-accordion__icon { width: 18px; height: 18px; flex-shrink: 0; transition: transform 200ms ease; }
.cb-pdp-accordion[open] .cb-pdp-accordion__icon { transform: rotate(180deg); }
.cb-pdp-accordion__body { padding: 0 0 1.25rem; font-size: .9375rem; line-height: 1.6; color: #444; }
.cb-pdp-accordion__body p { margin: 0 0 .75rem; }
.cb-pdp-accordion__body p:last-child { margin-bottom: 0; }
body.single-product .woocommerce-tabs { display: none !important; }

/* ── Description v2: text + bullets ── */
.cb-pdp-desc__text { margin: 0 0 1rem; }
.cb-pdp-desc__bullets {
	margin: 0 0 1.5rem; padding: 0 0 0 1.125rem;
	list-style-type: disc;
}
.cb-pdp-desc__bullets li {
	margin: 0 0 .4rem; padding-left: .25rem;
	font-size: .9375rem; line-height: 1.5; color: #444;
}

/* ── Description v2: attribute table ── */
.cb-pdp-desc__table {
	margin: 1rem 0 0; padding: 0;
}
.cb-pdp-desc__row {
	display: grid;
	grid-template-columns: 140px 1fr;
	gap: 8px;
	padding: .25rem 0;
	border: none;
	font-size: .9375rem;
	line-height: 1.4;
}
.cb-pdp-desc__label {
	font-weight: 700;
	color: #1a1a1a;
}
.cb-pdp-desc__value {
	color: #444;
}

/* ── Product strips ── */
.cb-pdp-related { margin: 64px 0 0; padding: 0 clamp(16px, 2.5vw, 32px) 48px; }
.cb-pdp-related + .cb-pdp-related { margin-top: 16px; padding-top: 0; }
.cb-pdp-related__title { margin: 0 0 24px; font-size: clamp(20px, 2vw, 24px); font-weight: 700; color: #1a1a1a; }
.cb-pdp-related__head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin: 0 0 24px; }
.cb-pdp-related__head .cb-pdp-related__title { margin: 0; }
.cb-pdp-related__clear {
	background: transparent; border: 0; padding: 0; font-size: .9375rem; color: #1a1a1a;
	text-decoration: underline; text-underline-offset: 3px; cursor: pointer; transition: color 150ms ease;
}
.cb-pdp-related__clear:hover { color: var(--lindex-logo-red, #d6253b); }
.cb-pdp-related__grid::before, .cb-pdp-related__grid::after,
ul.cb-pdp-related__grid::before, ul.cb-pdp-related__grid::after,
.woocommerce ul.cb-pdp-related__grid::before, .woocommerce ul.cb-pdp-related__grid::after { content: none !important; display: none !important; }
.cb-pdp-related__grid {
	width: 100%; max-width: 100%; margin: 0; padding: 0; display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 0; row-gap: 32px; list-style: none; clear: none !important; box-sizing: border-box;
}
@media (min-width: 64rem) { .cb-pdp-related__grid { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
.cb-pdp-related__grid .cb-pdp-related__item {
	width: auto !important; max-width: 100% !important; min-width: 0 !important;
	margin: 0 !important; padding: 0 !important; float: none !important; clear: none !important;
	list-style: none !important; position: relative; box-sizing: border-box; background: #fff;
}
.cb-pdp-related__item--hidden { display: none !important; }
.cb-pdp-related__grid a.woocommerce-LoopProduct-link { display: block !important; color: inherit !important; text-decoration: none !important; width: 100% !important; }
.cb-pdp-related__grid img {
	display: block !important; width: 100% !important; height: auto !important;
	max-width: 100% !important; background: #f5f3ee !important;
	aspect-ratio: 3 / 4 !important; object-fit: cover !important;
	object-position: top center !important; margin: 0 !important;
}

/* ── Mosaic grid (recently viewed) ── */
.cb-pdp-related__grid--mosaic {
	display: grid !important; width: 100%; max-width: 100%; margin: 0; padding: 0;
	column-gap: 0 !important; row-gap: 0 !important; list-style: none; box-sizing: border-box;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (min-width: 64rem) { .cb-pdp-related__grid--mosaic { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
@media (max-width: 63.999rem) { .cb-pdp-related__grid--mosaic > .cb-pdp-related__item { grid-column: auto !important; grid-row: auto !important; } }
.cb-pdp-related__grid--mosaic .cb-pdp-related__item { aspect-ratio: 3 / 4; overflow: hidden; min-height: 0; }
.cb-pdp-related__grid--mosaic .cb-pdp-related__item .woocommerce-LoopProduct-link { display: block !important; width: 100% !important; height: 100% !important; }
.cb-pdp-related__grid--mosaic .cb-pdp-related__item img {
	display: block !important; width: 100% !important; height: 100% !important;
	aspect-ratio: unset !important; object-fit: cover !important;
	object-position: top center !important; margin: 0 !important; background: #f5f3ee !important;
}

/* Title + price */
body.single-product .cb-pdp-related__grid .woocommerce-loop-product__title,
body.single-product .cb-pdp-related__grid h2,
body.single-product .cb-pdp-related__grid h3 {
	font-family: var(--cb-font-body, inherit) !important; font-size: .9375rem !important;
	font-weight: 400 !important; line-height: 1.3 !important; color: var(--cb-color-text, #1a1a1a) !important;
	margin: 0 !important; padding: .65rem clamp(.5rem, 1vw, .85rem) .15rem !important;
}
body.single-product .cb-pdp-related__grid .price {
	display: block !important; margin: 0 !important; padding: 0 clamp(.5rem, 1vw, .85rem) .85rem !important;
	font-family: var(--cb-font-body, inherit) !important; font-size: .9375rem !important;
	font-weight: 600 !important; line-height: 1.3 !important; color: var(--cb-color-text, #1a1a1a) !important;
	background: transparent !important; text-decoration: none !important; text-align: left !important;
}
body.single-product .cb-pdp-related__grid .price ins,
body.single-product .cb-pdp-related__grid .price ins .amount,
body.single-product .cb-pdp-related__grid .price .amount {
	font-size: inherit !important; font-weight: inherit !important; font-family: inherit !important;
	line-height: inherit !important; color: inherit !important; background: transparent !important;
	text-decoration: none !important; margin: 0 !important; padding: 0 !important;
}
body.single-product .cb-pdp-related__grid .price del,
body.single-product .cb-pdp-related__grid .price del .amount { color: #999 !important; font-weight: 400 !important; margin-right: .35rem !important; font-size: inherit !important; }
body.single-product .cb-pdp-related__grid .price ins,
body.single-product .cb-pdp-related__grid .price ins .amount { color: #c62828 !important; }

/* Wishlist heart */
.cb-pdp-related__item .cb-wishlist-btn {
	position: absolute; top: 8px; right: 8px; z-index: 5;
	display: inline-flex; align-items: center; justify-content: center;
	width: 36px; height: 36px; padding: 0; border: 0;
	background: rgba(255,255,255,.85); color: #1a1a1a; border-radius: 999px; cursor: pointer;
	backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px);
	transition: background 150ms ease, color 150ms ease, transform 150ms ease;
}
.cb-pdp-related__item .cb-wishlist-btn svg { width: 18px; height: 18px; display: block; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; transition: fill 150ms ease, stroke 150ms ease; }
.cb-pdp-related__item .cb-wishlist-btn:hover { background: #fff; color: #c62828; transform: scale(1.06); }
.cb-pdp-related__item .cb-wishlist-btn:hover svg { stroke: #c62828; }
.cb-pdp-related__item .cb-wishlist-btn.is-active { background: #fff; color: #c62828; }
.cb-pdp-related__item .cb-wishlist-btn.is-active svg { fill: #c62828; stroke: #c62828; }

/* Show more */
.cb-pdp-related__more-wrap { display: flex; justify-content: center; margin-top: 32px; }
.cb-pdp-related__more { background: #fff; color: #1a1a1a; border: 1px solid #1a1a1a; border-radius: 9999px; padding: 12px 32px; font-size: .9375rem; font-weight: 600; cursor: pointer; transition: background 150ms ease, color 150ms ease; }
.cb-pdp-related__more:hover { background: #1a1a1a; color: #fff; }
.cb-pdp-related__more.is-hidden { display: none; }