/* Product page print styles — loaded with media="print" on single product pages only */

@page {
	margin: 10mm;
}

body.single-product,
body.single-product #main,
body.single-product #primary,
body.single-product .page-container,
body.single-product .site-content {
	background: #fff !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.single-product * {
	box-shadow: none !important;
	text-shadow: none !important;
}

body.single-product,
body.single-product p,
body.single-product li,
body.single-product td,
body.single-product th,
body.single-product h1,
body.single-product h2,
body.single-product h3,
body.single-product h4,
body.single-product h5,
body.single-product label,
body.single-product span {
	color: #000 !important;
}

a,
a:visited {
	color: #000 !important;
	text-decoration: underline;
}

img {
	max-width: 100% !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	object-position: center center !important;
}

.images-thumbnails img {
	width: auto !important;
	max-width: 100% !important;
	height: auto !important;
	max-height: none !important;
	min-width: 0 !important;
	min-height: 0 !important;
	aspect-ratio: auto !important;
	object-fit: contain !important;
}

.zoomImg,
img.zoomImg {
	display: none !important;
}

/* Hide site chrome */
.ts-header,
.footer-container,
#to-top,
.hamburger-menu,
.breadcrumb-title-wrapper,
.page-title,
.maati-whatsapp-fab,
#colophon,
.cta-form {
	display: none !important;
}

/* Hide product actions and interactive UI */
form.cart .quantity,
form.cart .single_add_to_cart_button,
.product-group-button,
.yith-wcwl-add-to-wishlist,
.compare,
.ts-social-sharing,
.single-navigation,
.related.products,
section.up-sells,
.cloud-zoom-big,
.woocommerce-tabs ul.tabs,
.woocommerce-product-gallery__trigger,
.woocommerce-product-gallery .flex-control-nav,
.woocommerce-product-gallery .flex-direction-nav,
.images-thumbnails .owl-nav,
.images-thumbnails .owl-controls,
a.reset_variations,
.yith-wapo-edit-product-cart,
.pdp-usps,
.pdp-usps-warranty-modal {
	display: none !important;
}

/* Core product layout — kill theme floats/sticky offsets */
.single-product div.product {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	overflow: visible !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

.single-product div.product::after {
	content: "" !important;
	display: table !important;
	clear: both !important;
}

.single-product div.product .images-thumbnails,
.single-product div.product .summary,
.single-product .woocommerce-tabs {
	display: block !important;
	float: none !important;
	clear: both !important;
	width: 100% !important;
	max-width: 100% !important;
	position: static !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
	transform: none !important;
	z-index: auto !important;
	margin: 0 0 24px !important;
	padding: 0 !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	overflow: visible !important;
}

.single-product.thumbnail-summary-scrolling div.product .images-thumbnails,
.single-product.thumbnail-summary-scrolling div.product .summary,
.single-product .summary-scrolling .images-thumbnails,
.single-product .summary-scrolling .summary {
	position: static !important;
	top: auto !important;
}

.single-product .product_title {
	font-size: 18pt !important;
	margin: 0 0 0.5em !important;
	page-break-after: avoid;
}

.single-product .woocommerce-product-details__short-description,
.single-product .sku-wrapper,
.single-product .product_meta,
.single-product .product-content,
.single-product .woocommerce-Tabs-panel {
	margin-bottom: 1em !important;
}

/* Main image */
.images-thumbnails > .images {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	margin: 0 0 12px !important;
	page-break-inside: avoid;
	position: static !important;
	float: none !important;
	overflow: visible !important;
}

.images-thumbnails > .images .woocommerce-product-gallery__image,
.images-thumbnails > .images a {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	overflow: visible !important;
	position: static !important;
}

.images-thumbnails > .images img {
	display: block !important;
	max-width: 100% !important;
	width: auto !important;
	height: auto !important;
	max-height: none !important;
	min-width: 0 !important;
	min-height: 0 !important;
	aspect-ratio: auto !important;
	object-fit: contain !important;
	object-position: center center !important;
	margin: 0 auto !important;
	position: static !important;
}

/* Thumbnail stack — full width, one image per row */
.images-thumbnails > .thumbnails {
	display: block !important;
	width: 100% !important;
	margin: 0 0 24px !important;
	position: static !important;
	float: none !important;
}

.images-thumbnails .thumbnails-container {
	overflow: visible !important;
	height: auto !important;
	width: 100% !important;
	position: static !important;
}

.images-thumbnails .thumbnails-container.loading:before,
.images-thumbnails .thumbnails-container.loading:after {
	display: none !important;
}

.images-thumbnails .product-thumbnails.owl-carousel {
	display: none !important;
}

.images-thumbnails .print-thumbnail-grid {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	position: static !important;
}

.images-thumbnails .print-thumbnail-grid > li {
	display: block !important;
	width: 100% !important;
	padding: 0 !important;
	margin: 0 0 20px !important;
	page-break-inside: avoid;
	position: static !important;
	overflow: visible !important;
}

.images-thumbnails .print-thumbnail-grid > li:last-child {
	margin-bottom: 0 !important;
}

.images-thumbnails .print-thumbnail-grid > li a {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	overflow: visible !important;
	opacity: 1 !important;
	position: static !important;
	text-align: center !important;
	box-sizing: border-box !important;
}

.images-thumbnails .print-thumbnail-grid > li img {
	display: block !important;
	max-width: 100% !important;
	width: auto !important;
	height: auto !important;
	max-height: none !important;
	min-width: 0 !important;
	min-height: 0 !important;
	aspect-ratio: auto !important;
	object-fit: contain !important;
	object-position: center center !important;
	margin: 0 auto !important;
	position: static !important;
}

/* Grid / carousel layouts — force full-width stack in print */
.thumbnail-grid .images-thumbnails .thumbnails-container ul,
.thumbnail-grid .images-thumbnails .thumbnails-container ul li,
.thumbnail-grid .images-thumbnails .print-thumbnail-grid > li,
.images-thumbnails .product-thumbnails > li,
.images-thumbnails .print-thumbnail-grid > li {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	clear: both !important;
	padding: 0 !important;
	margin: 0 0 20px !important;
	box-sizing: border-box !important;
}

.images-thumbnails .owl-stage-outer,
.images-thumbnails .owl-stage,
.images-thumbnails .owl-item,
.images-thumbnails .cloud-zoom-wrap,
.images-thumbnails .thumbnails .thumbnails-container {
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	max-height: none !important;
	min-height: 0 !important;
	overflow: visible !important;
	transform: none !important;
}

/* Summary / cart form */
.single-product form.cart {
	display: block !important;
	clear: both !important;
	width: 100% !important;
	position: static !important;
	overflow: visible !important;
}

.single-product form.cart .variations,
.single-product form.cart .variations tbody,
.single-product form.cart .variations tr,
.single-product form.cart .variations td {
	display: block !important;
	width: 100% !important;
	position: static !important;
}

.single-product form.cart .variations tr {
	margin: 0 0 1em !important;
	page-break-inside: avoid;
}

/* Expand collapsed text */
.product-content.show-more-less,
.product-content.show-more-less.opened,
.product-content.closed {
	max-height: none !important;
	overflow: visible !important;
	position: static !important;
}

.product-content.show-more-less:before {
	display: none !important;
	content: none !important;
}

.more-less-buttons,
.more-less-buttons a,
a.more-button,
a.less-button,
button.read-more,
button.read-less,
.read-more-toggle {
	display: none !important;
}

.short-description,
.description-wrapper .dots {
	display: none !important;
}

.full-description,
.read-more-wrapper,
.read-more-wrapper.expanded {
	display: block !important;
	max-height: none !important;
	overflow: visible !important;
}

.read-more-wrapper::after {
	content: none !important;
}

p.option-description {
	display: block !important;
}

/* Tabs */
#tab-description,
#tab-custom_editor_tab,
.woocommerce-Tabs-panel {
	display: block !important;
	border: 0 !important;
	margin: 0 0 1.5em !important;
	padding: 0 !important;
	clear: both !important;
	position: static !important;
}

#tab-description::before {
	content: "Description";
	display: block !important;
	font-size: 14pt !important;
	font-weight: 700 !important;
	margin: 0 0 0.5em !important;
}

#tab-custom_editor_tab::before {
	content: "Details";
	display: block !important;
	font-size: 14pt !important;
	font-weight: 700 !important;
	margin: 0 0 0.5em !important;
}

/* Price */
.single-product p.price,
.single-product .ts-variation-price,
.single-product .price,
#wapo-total-price-table,
.wapo-total-order {
	display: block !important;
	font-size: 14pt !important;
	font-weight: 700 !important;
	margin: 0.5em 0 1em !important;
	clear: both !important;
}

/* Variation swatches */
.single-product .variations .label,
.single-product .variations .value {
	display: block !important;
	margin-bottom: 0.5em !important;
	position: static !important;
}

.woo-variation-swatches .variable-items-wrapper {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 12px !important;
	width: 100% !important;
	margin: 0 0 1em !important;
	position: static !important;
	align-items: start !important;
}

.woo-variation-swatches .variable-items-wrapper .variable-item,
.woo-variation-swatches .variable-item.hidden {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: flex-start !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: static !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 6px !important;
	box-sizing: border-box !important;
	overflow: visible !important;
}

.woo-variation-swatches .variable-item-contents {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	overflow: visible !important;
	position: static !important;
}

.woo-variation-swatches .variable-item img {
	display: block !important;
	max-width: 100% !important;
	max-height: none !important;
	min-width: 0 !important;
	min-height: 0 !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	object-position: center center !important;
	margin: 0 auto !important;
	position: static !important;
}

.print-option-name,
.woo-variation-swatches .mobile-variation-label {
	display: block !important;
	width: 100% !important;
	margin-top: 6px !important;
	padding: 0 !important;
	text-align: center !important;
	font-size: 10pt !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	word-break: break-word !important;
	clear: both !important;
	order: 2 !important;
}

.woo-variation-swatches .variable-item-contents,
.woo-variation-swatches .variable-item .variable-item-span,
.woo-variation-swatches .variable-item .variable-item-span-button {
	order: 1 !important;
}

.woo-variation-swatches .variable-item.selected .variable-item-contents::after {
	display: none !important;
	content: none !important;
}

.variations select {
	display: none !important;
}

/* Printable select lists */
.print-select-options {
	display: block !important;
	list-style: none !important;
	margin: 0.25em 0 1em !important;
	padding: 0 !important;
	clear: both !important;
}

.print-select-options li {
	display: block !important;
	padding: 0.2em 0 !important;
	border-bottom: 1px solid #ccc !important;
}

.print-select-options li.is-selected {
	font-weight: 700 !important;
}

.print-select-options li.is-selected::before {
	content: "✓ ";
}

/* YITH WAPO */
.yith-wapo-block,
.yith-wapo-container,
#yith-wapo-container {
	display: block !important;
	width: 100% !important;
	clear: both !important;
	position: static !important;
}

.yith-wapo-addon.deactivate {
	display: none !important;
}

.yith-wapo-addon {
	display: block !important;
	clear: both !important;
	width: 100% !important;
	margin: 0 0 1em !important;
	padding: 0 !important;
	position: static !important;
	page-break-inside: avoid;
}

.yith-wapo-addon .wapo-addon-title {
	display: block !important;
	width: 100% !important;
	margin: 0 0 0.5em !important;
	padding: 8px 0 !important;
	position: static !important;
	background: transparent !important;
	text-align: left !important;
}

.yith-wapo-block .yith-wapo-addon .yith-wapo-option .label_price label {
	padding: 0 !important;
	display: block !important;
	text-align: center !important;
	font-size: 9pt !important;
	line-height: 1.3 !important;
	word-break: break-word !important;
}

.yith-wapo-addon.wapo-toggle .options-container,
.yith-wapo-addon.wapo-toggle .options-container.default-closed,
.yith-wapo-addon.wapo-toggle .options-container.default-open,
.yith-wapo-addon .options-container,
.yith-wapo-addon .options-container[style] {
	display: block !important;
	visibility: visible !important;
	height: auto !important;
	overflow: visible !important;
	position: static !important;
	clear: both !important;
}

.yith-wapo-addon .wapo-addon-title .special-space-col-one,
.yith-wapo-addon .wapo-addon-title .special-space-col-two,
.yith-wapo-addon .selected-op-ttl-hdr,
.yith-wapo-addon .selected-op-prc-hdr {
	display: block !important;
	overflow: visible !important;
	white-space: normal !important;
	text-overflow: unset !important;
	width: auto !important;
	max-width: none !important;
	flex: none !important;
}

.yith-wapo-block .options.per-row-5,
.yith-wapo-block .options,
.yith-wapo-block .options.per-row-10,
.yith-wapo-block .options.per-row-1 {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 12px !important;
	width: 100% !important;
	position: static !important;
	align-items: start !important;
}

.yith-wapo-option {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: flex-start !important;
	position: static !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 6px !important;
	box-sizing: border-box !important;
	opacity: 1 !important;
	overflow: visible !important;
}

.yith-wapo-option .label,
.yith-wapo-option .image-container,
.yith-wapo-option div.label .label-container-display {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	position: static !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	min-width: 0 !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
}

.yith-wapo-option .image-container img,
.yith-wapo-option div.label .label-container-display img {
	display: block !important;
	max-width: 100% !important;
	max-height: none !important;
	min-width: 0 !important;
	min-height: 0 !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	object-position: center center !important;
	margin: 0 auto 4px !important;
	position: static !important;
}

.yith-wapo-option .image-container,
.yith-wapo-option .label-container-display > img,
.yith-wapo-option .color-container .color,
.yith-wapo-option .color-container .image-container {
	order: 1 !important;
}

.yith-wapo-option .inside,
.yith-wapo-option .outside,
.yith-wapo-option .label_price,
.yith-wapo-option .option-container,
.yith-wapo-option .option-container small,
.yith-wapo-option .print-option-name {
	order: 2 !important;
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	width: 100% !important;
	position: static !important;
}

.yith-wapo-option .label_price label,
.yith-wapo-option .option-container small {
	display: block !important;
	margin-top: 6px !important;
	padding: 0 !important;
	text-align: center !important;
	font-size: 10pt !important;
	font-weight: 600 !important;
	line-height: 1.3 !important;
	word-break: break-word !important;
}

.yith-wapo-option .color-container {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	width: 100% !important;
}

.yith-wapo-option::after,
.yith-wapo-option.selected div.label .label-container-display::after,
.options-container .options .label-container-display .inside::before,
.options-container .options .label-container-display .inside::after {
	display: none !important;
	content: none !important;
}

/* Remove rounded masks that can clip image corners in print */
.images-thumbnails img,
.yith-wapo-option img,
.woo-variation-swatches img,
.pdp-spec-img img,
.vc_single_image-img {
	border-radius: 0 !important;
}

/* Details tab / VC */
.vc_row,
.vc_row_inner,
.wpb_row {
	display: block !important;
	width: 100% !important;
	margin: 0 0 1em !important;
	position: static !important;
}

.vc_column_container,
.vc_column_inner,
.wpb_column {
	display: block !important;
	width: 100% !important;
	float: none !important;
	position: static !important;
	margin: 0 0 1em !important;
}

.pdp-table-icon-v2 table,
.pdp-table-icon-v3 table {
	display: table !important;
	width: 100% !important;
	max-width: 100% !important;
	page-break-inside: avoid;
	position: static !important;
	margin: 0 0 1em !important;
}

.pdp-spec-img,
.pdp-spec-img .vc_single_image-wrapper,
.vc_single_image-wrapper {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	max-width: 100% !important;
	overflow: visible !important;
	position: static !important;
	margin: 0 0 1em !important;
	page-break-inside: avoid;
}

.pdp-spec-img img,
.vc_single_image-img,
.woocommerce-tabs img,
.product-content img {
	display: block !important;
	width: auto !important;
	max-width: 100% !important;
	height: auto !important;
	max-height: none !important;
	min-width: 0 !important;
	min-height: 0 !important;
	object-fit: contain !important;
	object-position: center center !important;
	margin: 0 auto !important;
	position: static !important;
}

.single-product .ywmmq-rules-wrapper {
	margin: 0.5em 0 1em !important;
	padding: 0 !important;
	border: 0 !important;
	clear: both !important;
}

/* Prevent overlap from positioned descendants */
.single-product div.product .images-thumbnails *,
.single-product div.product .summary *,
.single-product .woocommerce-tabs * {
	transform: none !important;
}

.single-product div.product .images-thumbnails .images *,
.single-product div.product .summary form.cart *,
.single-product div.product .summary .woocommerce-product-details__short-description *,
.single-product .yith-wapo-block * {
	position: static !important;
	float: none !important;
}

.single-product .mobile-variation-label {
	display: block !important;
	text-align: center !important;
	font-size: 10pt !important;
	font-weight: 600 !important;
	margin-top: 6px !important;
}

/* Prevent theme fixed dimensions from cropping images */
.single-product .image-container,
.single-product .label-container-display,
.single-product .variable-item-contents,
.single-product .woocommerce-product-gallery__image,
.single-product .woocommerce-product-gallery__image a,
.single-product .thumbnails-container,
.single-product .thumbnails,
.single-product .wvs-archive-product-image {
	overflow: visible !important;
	max-height: none !important;
	min-height: 0 !important;
	min-width: 0 !important;
}

.yith-wapo-block .yith-wapo-addon.yith-wapo-addon-type-label .yith-wapo-option div.label .label-container-display,
.yith-wapo-block .yith-wapo-addon.yith-wapo-addon-type-label .yith-wapo-option div.label .label-container-display img,
.woo-variation-swatches .variable-items-wrapper .variable-item:not(.radio-variable-item) {
	width: auto !important;
	height: auto !important;
	min-width: 0 !important;
	min-height: 0 !important;
	max-width: 100% !important;
	max-height: none !important;
}
