/*!
Theme Name: Isadora Dance
Theme URI: https://isadora.ro/
Template: kadence
Author: Mach10
Author URI: https://mach10.ro/
Description: Child theme Kadence pentru Isadora Dance — costume și echipamente pentru gimnastică, dans și balet.
Version: 1.0.6
License: GNU General Public License v3.0 (or later)
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Text Domain: isadora
*/

/* ==========================================================================
   Brand / layout bits
   ========================================================================== */

h1, h2, h3 {
	text-transform: none;
}

.kb-image27_br_logo img {
	max-width: 140px;
	height: auto;
	margin-left: auto;
	margin-right: auto;
}

/* ==========================================================================
   Catalog / archive
   ========================================================================== */

.woocommerce ul.products li.product .entry-content-wrap {
	padding-top: 0;
}

/* Hide loop ATC + quick view — cards go to PDP */
.woocommerce .products.align-buttons-bottom li.product .product-action-wrap,
.woocommerce ul.products:not(.woo-archive-btn-button) li.product .button:not(.kb-button),
.kt-woo-quickview-button {
	display: none;
}

/* Cart (Woo Blocks): hide “Selectează opțiunile” on cross-sell / product collection */
.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-product-button,
.woocommerce-cart .wp-block-woocommerce-product-collection .wp-block-woocommerce-product-button,
.woocommerce-cart .cross-sells .product-action-wrap,
.woocommerce-cart .cross-sells a.button {
	display: none;
}

/*
 * Cart checkout CTA: Kadence .wp-element-button:hover flips to black + heavy
 * shadow; a:hover also tints link text. Keep brand red, subtle darken, no float.
 */
.woocommerce-cart .wc-block-cart__submit-button.wp-element-button,
.woocommerce-cart .wc-block-cart__submit-button.wp-element-button:hover,
.woocommerce-cart .wc-block-cart__submit-button.wp-element-button:focus,
.woocommerce-cart .wc-block-cart__submit-button.wp-element-button:active {
	color: #fff;
	background-color: var(--global-palette-btn-bg, #e0121f);
	background-image: none;
	box-shadow: none;
	text-decoration: none;
	filter: none;
}

.woocommerce-cart .wc-block-cart__submit-button.wp-element-button:hover,
.woocommerce-cart .wc-block-cart__submit-button.wp-element-button:focus {
	background-color: #b80e19;
	background-color: color-mix(in srgb, var(--global-palette-btn-bg, #e0121f) 82%, #000);
}

/* Archive: ACF video as primary; keep Kadence / Image Swap hover secondary */
.kwt-image-wrap.isadora-archive-has-video,
.iconic-wis-product-image.isadora-archive-has-video {
	position: relative;
	display: block;
	overflow: hidden;
}

.kwt-image-wrap.isadora-archive-has-video .isadora-archive-product-video,
a.isadora-archive-video-link .isadora-archive-product-video {
	display: block;
	width: 100%;
	height: auto;
	max-width: 100%;
	object-fit: cover;
	vertical-align: middle;
	transition: opacity 0.4s ease, transform 2s cubic-bezier(0, 0, 0.4, 1.1);
}

/* Image Swap fade: video overlays secondary; hover fades video out */
.iconic-wis-product-image.isadora-archive-has-video.iconic-wis-product-image--fade .isadora-archive-product-video {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	margin: 0;
	object-fit: cover;
	transition: opacity 0.3s ease-in-out;
}

.iconic-wis-product-image.isadora-archive-has-video.iconic-wis-product-image--fade .secondary-product-image {
	position: relative !important;
	inset: auto !important;
	z-index: 1;
	display: block;
	width: 100%;
	height: auto;
	min-width: 0;
	min-height: 0;
	opacity: 1 !important;
	object-fit: cover;
}

@media (hover: hover) and (pointer: fine) {
	.iconic-wis-product-image.isadora-archive-has-video.iconic-wis-product-image--fade:hover .isadora-archive-product-video,
	a.isadora-archive-video-link.product-has-hover-image:hover .isadora-archive-product-video {
		opacity: 0;
	}

	a.isadora-archive-video-link.product-has-hover-image:hover .secondary-product-image {
		opacity: 1;
	}
}

/* ==========================================================================
   Single product — gallery
   ========================================================================== */

.single-product .attachment-shop-single,
.single-product .kadence-product-gallery-main .isadora-product-gallery-video,
.single-product .kt-woo-gallery-thumbnail {
	border-radius: 0.25rem;
	overflow: hidden;
}

/*
 * ACF video as first main slide: never taller than viewport (minus chrome).
 * Use svh (small viewport), not dvh — dvh changes when the mobile URL bar
 * shows/hides and makes the gallery jump on scroll.
 */
.single-product .kadence-product-gallery-main:has(.isadora-product-gallery-video) {
	--isadora-gallery-video-max-h: calc(100vh - 10rem - var(--wp-admin--admin-bar--height, 0px));
	max-height: var(--isadora-gallery-video-max-h);
}

@supports (height: 100svh) {
	.single-product .kadence-product-gallery-main:has(.isadora-product-gallery-video) {
		--isadora-gallery-video-max-h: calc(100svh - 10rem - var(--wp-admin--admin-bar--height, 0px));
	}
}

.single-product .kadence-product-gallery-main:has(.isadora-product-gallery-video) .splide__track,
.single-product .kadence-product-gallery-main:has(.isadora-product-gallery-video) .splide__list {
	height: auto !important;
	max-height: var(--isadora-gallery-video-max-h);
}

.single-product .kadence-product-gallery-main:has(.isadora-product-gallery-video) .splide__slide {
	display: flex;
	align-items: center;
	justify-content: center;
	height: auto !important;
	max-height: var(--isadora-gallery-video-max-h);
}

.single-product .kadence-product-gallery-main .isadora-product-gallery-video,
.single-product .kadence-product-gallery-main:has(.isadora-product-gallery-video) .splide__slide img {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: var(--isadora-gallery-video-max-h);
	object-fit: contain;
	margin-inline: auto;
	vertical-align: middle;
}

/* First thumb = video slide: larger play icon, no dark badge */
.single-product .kadence-product-gallery-thumbnails .isadora-video-thumb .kt-woo-play-btn {
	pointer-events: none;
	top: 50%;
	left: 50%;
	width: 60px;
	height: 60px;
	margin: -30px 0 0 -30px;
	background: transparent;
	opacity: 1;
	color: #fff;
	filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.45));
}

.single-product .kadence-product-gallery-thumbnails .isadora-video-thumb .kt-woo-play-btn svg {
	width: 36px;
	height: 36px;
}

/* ==========================================================================
   Single product — summary (order, sizes, price, ATC)
   ========================================================================== */

.single-product .kt-inside-inner-col:has(> .kwt-price-single):has(> .kwt-add-to-cart-single) {
	display: flex;
	flex-direction: column;
}

.single-product .kt-inside-inner-col:has(> .kwt-price-single):has(> .kwt-add-to-cart-single)>.kwt-add-to-cart-wrap,
.single-product .kt-inside-inner-col:has(> .kwt-price-single):has(> .kwt-add-to-cart-single)>.kwt-add-to-cart-wrap>form.cart {
	display: contents;
}

.single-product .kt-inside-inner-col:has(> .kwt-price-single):has(> .kwt-add-to-cart-single)>.kwt-title-wrap {
	order: 1;
}

.single-product .kt-inside-inner-col:has(> .kwt-price-single):has(> .kwt-add-to-cart-single)>.kwt-excerpt-wrap,
.single-product .kt-inside-inner-col:has(> .kwt-price-single):has(> .kwt-add-to-cart-single)>.kwt-excerpt-single {
	order: 2;
}

/* Size radios (inside ATC via display:contents) + linked color swatches */
.single-product .kt-inside-inner-col:has(> .kwt-price-single):has(> .kwt-add-to-cart-single) > .isadora-linked-variations,
.single-product .kt-inside-inner-col:has(> .kwt-price-single):has(> .kwt-add-to-cart-single) table.variations:not(.iconic-wlv-variations),
.single-product .kt-inside-inner-col:has(> .kwt-price-single):has(> .kwt-add-to-cart-single) .reset_variations_alert {
	order: 3;
}

.single-product .kt-inside-inner-col:has(> .kwt-price-single):has(> .kwt-add-to-cart-single)>.kwt-price-single {
	order: 4;
}

.single-product .kt-inside-inner-col:has(> .kwt-price-single):has(> .kwt-add-to-cart-single) .single_variation_wrap,
.single-product .kt-inside-inner-col:has(> .kwt-price-single):has(> .kwt-add-to-cart-single) .yith-par-message,
.single-product .kt-inside-inner-col:has(> .kwt-price-single):has(> .kwt-add-to-cart-single) .yith-par-message-variation {
	order: 5;
}

.single-product .kt-inside-inner-col:has(> .kwt-price-single):has(> .kwt-add-to-cart-single)>.kwt-meta-wrap {
	order: 6;
}

.single-product .kt-inside-inner-col:has(> .kwt-price-single):has(> .kwt-add-to-cart-single)>.wp-block-kadence-column {
	order: 7;
}

/* Single product: size radios — 3 per row */
.single-product .kt-radio-variation-container fieldset.kad_radio_variations,
.single-product .variations .kt-radio-variation-container .kad_radio_variations {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.5rem;
	width: 100%;
	flex-wrap: unset;
}

.single-product .kt-radio-variation-container .kad_radio_variations>label {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-width: 0;
	margin: 0;
	box-sizing: border-box;
	text-align: center;
}

.single-product .kt-radio-variation-container .kad_radio_variations>label.selectedValue,
.single-product .kt-radio-variation-container .kad_radio_variations>input[type="radio"]:checked+label {
	background-color: var(--global-palette-btn-bg) !important;
	border-color: var(--global-palette-btn-bg) !important;
	color: var(--global-palette-btn, #fff) !important;
}

.single-product .kt-radio-variation-container .kad_radio_variations>label.kt_disabled {
	opacity: 0.35;
	pointer-events: none;
	cursor: not-allowed;
	text-decoration: line-through;
}

.single-product .reset_variations {
	display: none !important;
}

/* Keep Woo “in stock” quiet; show only backorder/preorder near CTA */
.single-product .woocommerce-variation-availability:not(:has(.available-on-backorder)) {
	display: none !important;
}

.single-product .woocommerce-variation-availability .available-on-backorder {
	display: block;
	margin: 0 0 0.75rem;
	text-align: center;
	font-size: 0.9rem;
	font-weight: 600;
	line-height: 1.4;
	color: var(--global-palette4, #444);
}

/* Full-width ATC + sticky bar */
.woocommerce div.product .kwt-add-to-cart-single.kwt-add-to-cart-full-btn .button.single_add_to_cart_button,
.kadence-sticky-add-to-cart-action-wrap .button {
	border-radius: 0.5rem;
}

/*
 * Variable prices:
 * - Range (2 amounts): hide the range once a variation is chosen; show variation price.
 * - Fixed (1 amount): keep the main price — Woo leaves .woocommerce-variation-price empty.
 */
.single-product .kt-inside-inner-col:has(.woocommerce-variation-add-to-cart-enabled) > .kwt-price-single:has(.woocommerce-Price-amount ~ .woocommerce-Price-amount) {
	display: none;
}

.single-product .woocommerce-variation-price:not(:has(.woocommerce-Price-amount)) {
	display: none;
}

.single-product .woocommerce-variation-price,
.single-product .woocommerce-variation-price .price {
	margin: 0;
	font-weight: 700;
	font-size: 28px;
	line-height: 26px;
	text-align: center;
}

.single-product .kt-radio-variation-container .kad_radio_variations>label.selectedValue .hcp-size-correspondence,
.single-product .kt-radio-variation-container .kad_radio_variations>input[type="radio"]:checked+label .hcp-size-correspondence {
	opacity: 1;
	color: inherit;
}

/* ==========================================================================
   Reviews
   ========================================================================== */

.woocommerce #reviews #comments h2 {
	font-weight: normal;
}

/* Logged-out review form: label above input, each on its own row */
.woocommerce #review_form .comment-form-author label,
.woocommerce #review_form .comment-form-email label,
.woocommerce #review_form .comment-form-comment label {
	display: block;
	padding-bottom: 0.35em;
}

.woocommerce #review_form .comment-form-author input,
.woocommerce #review_form .comment-form-email input,
.woocommerce #review_form .comment-form-comment textarea {
	display: block;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.woocommerce #review_form p.stars a {
	font-size: 3rem;
	line-height: 1;
	margin-right: 0.2em;
}

/* ==========================================================================
   Header — YITH search
   ========================================================================== */

.ywcas-popover-results {
	width: var(--global-content-width);
	max-width: var(--global-content-width);
}

.site-header .header-html,
#masthead .header-html {
	flex: 1 1 240px;
	min-width: 200px;
	max-width: 320px;
	min-height: 36px;
}

.site-header .header-html-inner,
#masthead .header-html-inner {
	min-width: 0;
	min-height: 36px;
	width: 100%;
}

#masthead .wp-block-yith-search-block,
.site-header .wp-block-yith-search-block,
.header-html .wp-block-yith-search-block {
	margin: 0 !important;
	max-width: 100% !important;
	width: 100% !important;
	min-height: 36px;
	height: 36px;
	clear: none !important;
	box-sizing: border-box;
	min-width: 0;
}

.site-header .wp-block-yith-search-block .lapilliUI-Input__root,
.site-header .wp-block-yith-search-block .ywcas-input-field {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	flex: 1 1 auto !important;
	min-height: 36px !important;
	height: 36px !important;
	border-radius: 8px !important;
	box-sizing: border-box !important;
}

.site-header .wp-block-yith-search-block input.lapilliUI-Input__field,
.site-header .wp-block-yith-search-block input[type="text"] {
	width: 100% !important;
	min-width: 0 !important;
	height: 34px !important;
	min-height: 34px !important;
	box-sizing: border-box !important;
}

@media (max-width: 480px) {

	.single-product .kt-radio-variation-container fieldset.kad_radio_variations,
	.single-product .variations .kt-radio-variation-container .kad_radio_variations {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* ==========================================================================
   Size guide modal
   ========================================================================== */

@keyframes isadora-size-modal-in {
	from {
		opacity: 0;
		transform: translateY(16px);
	}

	to {
		opacity: 1;
		transform: none;
	}
}

.hcp-size-guide-dialog {
	border: 0;
	padding: 0;
	border-radius: 16px;
	max-width: min(640px, 92vw);
	max-height: min(90dvh, 92vh);
	width: 100%;
	box-shadow: 0 24px 64px rgba(0, 0, 0, 0.28);
	overflow: hidden;
	animation: isadora-size-modal-in 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.hcp-size-guide-dialog::backdrop {
	background: rgba(0, 0, 0, 0.55);
	backdrop-filter: blur(3px);
}

.hcp-size-guide-dialog__inner {
	display: flex;
	flex-direction: column;
	max-height: min(90dvh, 92vh);
	background: var(--global-palette9, #fff);
	overflow: hidden;
}

.hcp-size-guide-dialog__header {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 1rem;
	flex-shrink: 0;
	padding: 24px 24px 18px;
	border-bottom: 1px solid var(--global-palette7, #e8e8e8);
}

.hcp-size-guide-dialog__body {
	flex: 1 1 auto;
	min-height: 0;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior: contain;
}

.hcp-size-guide-dialog__heading {
	min-width: 0;
}

.hcp-size-guide-dialog__title {
	display: block;
	font-size: 1.35rem;
	line-height: 1.25;
	font-weight: 700;
	color: var(--global-palette3, #1a1a1a);
}

.hcp-size-guide-dialog__subtitle {
	margin: 8px 0 0;
	font-size: 0.85rem;
	line-height: 1.5;
	color: var(--global-palette5, #666);
	font-weight: 400;
}

.hcp-size-guide-dialog__close {
	appearance: none;
	flex-shrink: 0;
	width: 38px;
	height: 38px;
	border: 0;
	border-radius: 50%;
	background: var(--global-palette8, #f1f1f1);
	color: var(--global-palette4, #444);
	font-size: 1.4rem;
	line-height: 1;
	cursor: pointer;
	padding: 0;
	transition: background 0.2s ease;
}

.hcp-size-guide-dialog__close:hover {
	background: var(--global-palette7, #e2e2e2);
}

.hcp-size-guide-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.95rem;
	margin: 0;
}

.hcp-size-guide-table th,
.hcp-size-guide-table td {
	border: 0;
	padding: 11px 24px;
	text-align: center;
}

.hcp-size-guide-table th {
	background: var(--global-palette-btn-bg, var(--global-palette1, #1a1a1a));
	color: var(--global-palette-btn, #fff);
	font-weight: 600;
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.hcp-size-guide-table td {
	border-bottom: 1px solid var(--global-palette7, #ececec);
	color: var(--global-palette4, #333);
}

.hcp-size-guide-table th:first-child,
.hcp-size-guide-table td:first-child {
	font-weight: 700;
	text-align: left;
}

.hcp-size-guide-table tbody tr:nth-child(even) td {
	background: var(--global-palette8, #f8f8f8);
}

.hcp-size-guide-table tbody tr:hover td {
	background: color-mix(in srgb, var(--global-palette-btn-bg, #000) 7%, transparent);
}

.hcp-size-guide-dialog__tips {
	padding: 18px 24px 4px;
}

.hcp-size-guide-dialog__image {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 10px;
	margin: 0 0 14px;
}

.hcp-size-guide-dialog__tips-title {
	margin: 0 0 10px;
	font-size: 0.95rem;
	font-weight: 700;
	color: var(--global-palette3, #1a1a1a);
}

.hcp-size-guide-dialog__tips-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.hcp-size-guide-dialog__tip {
	background: var(--global-palette8, #f7f7f7);
	border-radius: 10px;
	padding: 12px 14px;
}

.hcp-size-guide-dialog__tip-label {
	display: block;
	font-weight: 700;
	font-size: 0.85rem;
	color: var(--global-palette3, #1a1a1a);
	margin-bottom: 3px;
}

.hcp-size-guide-dialog__tip-text {
	display: block;
	font-size: 0.78rem;
	line-height: 1.45;
	color: var(--global-palette5, #666);
}

.hcp-size-guide-dialog__note {
	margin: 14px 0 0;
	padding: 10px 14px;
	font-size: 0.82rem;
	line-height: 1.5;
	color: var(--global-palette4, #444);
	background: color-mix(in srgb, var(--global-palette-btn-bg, #000) 6%, transparent);
	border-left: 3px solid var(--global-palette-btn-bg, var(--global-palette1, #1a1a1a));
	border-radius: 0 8px 8px 0;
}

.hcp-size-guide-dialog__footer {
	flex-shrink: 0;
	padding: 16px 24px 24px;
	border-top: 1px solid var(--global-palette7, #e8e8e8);
	background: var(--global-palette9, #fff);
}

.hcp-size-guide-dialog__done {
	display: block;
	width: 100%;
	padding: 13px 20px;
	border: 0;
	border-radius: 10px;
	background: var(--global-palette-btn-bg, var(--global-palette1, #1a1a1a));
	color: var(--global-palette-btn, #fff);
	font-weight: 600;
	font-size: 0.95rem;
	cursor: pointer;
	transition: filter 0.2s ease;
}

.hcp-size-guide-dialog__done:hover {
	filter: brightness(1.1);
}

/* ==========================================================================
   Single product — upsells / related
   ========================================================================== */

.single-product .kwt-upsell-wrap,
.single-product .kwt-upsell-wrap.kwt-upsell-single,
.single-product .kwt-related-wrap,
.single-product .kwt-related-wrap.kwt-related-single {
	padding: 0;
	margin-top: 0;
}

/* Cream band rows: tighten Kadence 100px padding to catalog rhythm */
.single-product .kb-row-layout-wrap:has(.kwt-upsell-wrap) > .kt-row-column-wrap,
.single-product .kb-row-layout-wrap:has(.kwt-related-wrap) > .kt-row-column-wrap {
	padding-top: 3rem;
	padding-bottom: 3rem;
}

/* Space around Kadence section headings that precede the blocks */
.single-product .kt-inside-inner-col > .wp-block-kadence-advancedheading:has(+ style + .kwt-upsell-wrap),
.single-product .kt-inside-inner-col > .wp-block-kadence-advancedheading:has(+ .kwt-upsell-wrap),
.single-product .kt-inside-inner-col > .wp-block-kadence-advancedheading:has(+ style + .kwt-related-wrap),
.single-product .kt-inside-inner-col > .wp-block-kadence-advancedheading:has(+ .kwt-related-wrap) {
	margin-top: 2rem;
	margin-bottom: 1.25rem;
}

.single-product .kwt-upsell-wrap .up-sells > h2,
.single-product .kwt-related-wrap .related > h2 {
	margin: 0 0 1.25rem;
	padding: 0;
}

.single-product .kwt-upsell-wrap ul.products,
.single-product .kwt-upsell-wrap .upsells.products ul.products,
.single-product .kwt-upsell-wrap.kwt-upsell-single .upsells.products ul.products,
.single-product .kwt-related-wrap ul.products,
.single-product .kwt-related-wrap .related.products ul.products,
.single-product .kwt-related-wrap.kwt-related-single .related.products ul.products {
	gap: 8px;
	column-gap: 8px;
	row-gap: 8px;
	margin: 0;
	padding: 0;
}

.single-product .kwt-upsell-wrap ul.products li.product,
.single-product .kwt-related-wrap ul.products li.product {
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
}

.single-product.woocommerce.content-style-boxed .kwt-upsell-wrap ul.products.woo-archive-action-visible li.product .product-details.entry-content-wrap,
.single-product .kwt-upsell-wrap ul.products li.product .product-details.entry-content-wrap,
.single-product.woocommerce.content-style-boxed .kwt-related-wrap ul.products.woo-archive-action-visible li.product .product-details.entry-content-wrap,
.single-product .kwt-related-wrap ul.products li.product .product-details.entry-content-wrap {
	padding: 0 16px 24px;
	margin: 0 0.5em;
	border-radius: 4px;
}

.single-product .kwt-upsell-wrap ul.products li.product img,
.single-product .kwt-related-wrap ul.products li.product img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.single-product .kwt-upsell-wrap ul.products li.product .woocommerce-loop-product__title,
.single-product .kwt-related-wrap ul.products li.product .woocommerce-loop-product__title {
	padding: 8px 0;
	margin: 0;
	font-size: 1.125rem;
	line-height: 1.35;
}

.single-product .kwt-upsell-wrap ul.products li.product .price,
.single-product .kwt-related-wrap ul.products li.product .price {
	font-size: 0.95rem;
}

@media (max-width: 600px) {

	.single-product .kwt-upsell-wrap ul.products,
	.single-product .kwt-upsell-wrap .upsells.products ul.products,
	.single-product .kwt-related-wrap ul.products,
	.single-product .kwt-related-wrap .related.products ul.products {
		gap: 8px;
		column-gap: 8px;
		row-gap: 8px;
	}

	.single-product.woocommerce.content-style-boxed .kwt-upsell-wrap ul.products.woo-archive-action-visible li.product .product-details.entry-content-wrap,
	.single-product .kwt-upsell-wrap ul.products li.product .product-details.entry-content-wrap,
	.single-product.woocommerce.content-style-boxed .kwt-related-wrap ul.products.woo-archive-action-visible li.product .product-details.entry-content-wrap,
	.single-product .kwt-related-wrap ul.products li.product .product-details.entry-content-wrap {
		padding: 0 10px 16px;
		margin: 0 4px;
	}

	.single-product .kwt-upsell-wrap ul.products li.product .woocommerce-loop-product__title,
	.single-product .kwt-related-wrap ul.products li.product .woocommerce-loop-product__title {
		font-size: 1rem;
	}
}

/* ==========================================================================
   FacetWP
   ========================================================================== */

/* Hide checkbox group when 0–1 options; hide “Filtre active” when empty */
.wp-block-group__inner-container:has(> .facetwp-facet.facetwp-type-checkboxes):not(:has(.facetwp-checkbox + .facetwp-checkbox)),
.wp-block-group__inner-container:has(> .facetwp-selections):not(:has(.facetwp-selections li)) {
	display: none;
}

/* FacetWP pager replaces WooCommerce pagination */
.woocommerce-pagination {
	display: none;
}

.facetwp-page {
	display: inline-block;
	margin-right: .5em;
	border: 2px solid rgba(0, 0, 0, 0);
	min-width: 2.5em;
	line-height: 2.25em;
	text-align: center;
	text-decoration: none;
	border-radius: .25rem;
	color: inherit;
}

.facetwp-page.active,
.facetwp-page:hover {
	border-color: var(--global-palette-btn-bg);
	background: var(--global-palette-btn-bg);
	color: var(--global-palette-btn);
}

@media (max-width: 600px) {

	.hcp-size-guide-dialog__header {
		padding: 20px 18px 14px;
	}

	.hcp-size-guide-table th,
	.hcp-size-guide-table td {
		padding-left: 18px;
		padding-right: 18px;
	}

	.hcp-size-guide-dialog__tips {
		padding: 14px 18px 0;
	}

	.hcp-size-guide-dialog__tips-grid {
		grid-template-columns: 1fr;
	}

	.hcp-size-guide-dialog__footer {
		padding: 14px 18px 20px;
	}
}

/* ==========================================================================
   YITH points redeem (Cart/Checkout blocks shim)
   ========================================================================== */

.hcp-ywpar-redeem {
	margin: 0;
	box-sizing: border-box;
}

/* Match Woo checkout sidebar inset (coupon / totals-item). */
@container (min-width: 700px) {
	.wc-block-components-sidebar .slot-wrapper .hcp-ywpar-redeem,
	.wc-block-components-sidebar .hcp-ywpar-redeem {
		padding-left: 16px;
		padding-right: 16px;
	}
}

.hcp-ywpar-redeem__body {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.wc-block-components-totals-wrapper.hcp-ywpar-redeem p,
.hcp-ywpar-redeem__intro,
.hcp-ywpar-redeem__hint,
.hcp-ywpar-redeem__message {
	margin: 0;
	font-size: inherit;
	line-height: 1.45;
	color: inherit;
}

.hcp-ywpar-redeem__hint {
	opacity: 0.78;
}

.hcp-ywpar-redeem__row {
	display: flex;
	align-items: stretch;
	gap: 8px;
}

.hcp-ywpar-redeem__input {
	flex: 1 1 88px;
	min-width: 0;
	width: auto;
	height: 40px;
	margin: 0;
	padding: 0 10px;
	border: 1px solid color-mix(in srgb, currentColor 22%, transparent);
	border-radius: 4px;
	background: #fff;
	color: inherit;
	font-size: 14px;
	line-height: 1;
	box-shadow: none;
	appearance: textfield;
}

.hcp-ywpar-redeem__input::-webkit-outer-spin-button,
.hcp-ywpar-redeem__input::-webkit-inner-spin-button {
	appearance: none;
	margin: 0;
}

.hcp-ywpar-redeem__input:focus {
	outline: 2px solid color-mix(in srgb, var(--global-palette-btn-bg, #e0121f) 35%, transparent);
	outline-offset: 1px;
	border-color: var(--global-palette-btn-bg, #e0121f);
}

.hcp-ywpar-redeem__apply {
	flex: 0 0 auto;
	height: 40px;
	margin: 0;
	padding: 0 14px;
	border: 0;
	border-radius: 4px;
	background: var(--global-palette-btn-bg, #e0121f);
	color: #fff;
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0;
	text-transform: none;
	white-space: nowrap;
	cursor: pointer;
	box-shadow: none;
}

.hcp-ywpar-redeem__apply:hover,
.hcp-ywpar-redeem__apply:focus {
	background: #b80e19;
	background: color-mix(in srgb, var(--global-palette-btn-bg, #e0121f) 82%, #000);
	color: #fff;
}

.hcp-ywpar-redeem__apply:disabled,
.hcp-ywpar-redeem__remove:disabled {
	opacity: 0.55;
	cursor: wait;
}

.hcp-ywpar-redeem--applied .hcp-ywpar-redeem__body {
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.hcp-ywpar-redeem__remove {
	flex-shrink: 0;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	color: inherit;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.4;
	text-decoration: underline;
	text-underline-offset: 2px;
	cursor: pointer;
	box-shadow: none;
}

.hcp-ywpar-redeem__remove:hover,
.hcp-ywpar-redeem__remove:focus {
	color: var(--global-palette-btn-bg, #e0121f);
	background: none;
}