/*
Theme Name: CozyCorner Child
Theme URI: https://demo.theme-sky.com/cozycorner/
Author: Theme Sky Team
Author URI: http://theme-sky.com/
Description: A Premium and Responsive WordPress theme, designed for E-Commerce websites
Template: cozycorner
Version: 1.0.0
License: GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Tags: two-columns, left-sidebar, custom-background, custom-colors, custom-header, custom-menu, editor-style, featured-images, microformats, post-formats, rtl-language-support, sticky-post, threaded-comments, translation-ready
Text Domain: cozycorner-child
*/


/* ═══════════════════════════════════════════════════════════════════════
   CATALOG PAGE
   ═══════════════════════════════════════════════════════════════════════ */

/* ─── Overridable variables ───────────────────────────────────────────── */
:root {
	--cc-card-radius:       4px;
	--cc-card-img-height:   240px;
	--cc-card-gap:          24px;
	--cc-card-meta-pad:     10px 6px 6px;
	--cc-sku-color:         var(--ts-gray-color);
	--cc-sku-size:          12px;
	--cc-img-transition:    0.35s ease;
}

/* ─── 4-column grid ───────────────────────────────────────────────────── */
.columns-4 .woocommerce .products:not(:is(.cross-sells, .up-sells, .related)):not(.swiper) {
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: var(--cc-card-gap) !important;
}

/* ─── Card wrapper ────────────────────────────────────────────────────── */
.woocommerce .products .cc-product-card .product-wrapper {
	border-radius: var(--cc-card-radius);
	overflow: hidden;
	background: var(--ts-body-bg, #fff);
	transition: box-shadow 0.25s ease;
	height: 100%;
	display: flex;
	flex-direction: column;
	border: 1px solid #e5e5e5;
	outline: none !important;
}

.woocommerce .products .cc-product-card .product-wrapper:hover {
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.09);
}

/* ─── Image container: fixed height ──────────────────────────────────── */
.woocommerce .products .cc-product-card .thumbnail-wrapper {
	background: #f7f7f7;
	overflow: hidden;
	flex-shrink: 0;
}

.woocommerce .products .cc-product-card .cc-card-link {
	display: block;
	text-decoration: none;
}

.woocommerce .products .cc-product-card .cc-images-wrap {
	position: relative !important;
	display: block !important;
	width: 100%;
	height: var(--cc-card-img-height);
	overflow: hidden;
}

/* ─── Εικόνες: γεμίζουν το container ─────────────────────────────────── */
.woocommerce .products .cc-product-card .cc-images-wrap img.cc-img-primary,
.woocommerce .products .cc-product-card .cc-images-wrap img.cc-img-secondary {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: contain;
	transition: opacity var(--cc-img-transition), transform var(--cc-img-transition);
}

.woocommerce .products .cc-product-card .cc-images-wrap img.cc-img-primary {
	opacity: 1;
	z-index: 1;
}

.woocommerce .products .cc-product-card .cc-images-wrap img.cc-img-secondary {
	opacity: 0;
	z-index: 2;
}

/* ─── Hover swap — ΜΟΝΟ για cards με 2η εικόνα ───────────────────────── */
.woocommerce .products .cc-product-card.cc-has-hover-image:hover .cc-images-wrap img.cc-img-primary {
	opacity: 0;
	transform: scale(1.03);
}

.woocommerce .products .cc-product-card.cc-has-hover-image:hover .cc-images-wrap img.cc-img-secondary {
	opacity: 1;
	transform: scale(1.03);
}

/* Cards χωρίς 2η εικόνα: subtle zoom μόνο */
.woocommerce .products .cc-product-card:not(.cc-has-hover-image):hover .cc-images-wrap img.cc-img-primary {
	opacity: 1 !important;
	transform: scale(1.04);
}

/* ─── Meta ────────────────────────────────────────────────────────────── */
.woocommerce .products .cc-product-card .cc-card-meta {
	padding: var(--cc-card-meta-pad);
	display: flex;
	flex-direction: column;
	gap: 4px;
	flex: 1;
}

.woocommerce .products .cc-product-card .cc-card-title-link {
	text-decoration: none;
}

.woocommerce .products .cc-product-card .woocommerce-loop-product__title {
	font-size: var(--ts-body-font-size, 14px) !important;
	font-weight: 600;
	color: var(--ts-heading-color) !important;
	margin: 0 !important;
	line-height: 1.4;
	white-space: normal;
	overflow: visible;
	text-overflow: unset;
	transition: color 0.2s ease;
}

.woocommerce .products .cc-product-card .cc-card-title-link:hover .woocommerce-loop-product__title {
	color: var(--ts-primary-color) !important;
}

.woocommerce .products .cc-product-card .cc-card-sku {
	display: block;
	font-size: var(--cc-sku-size);
	color: var(--cc-sku-color, #999);
	letter-spacing: 0.03em;
}

/* ─── Sale badge ──────────────────────────────────────────────────────── */
.woocommerce .products .cc-product-card .thumbnail-wrapper .onsale {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 4;
	margin: 0;
}

/* ─── Grid spacing ────────────────────────────────────────────────────── */
#main-content .woocommerce.main-products .products::before {
	display: none !important;
	content: none !important;
}

.woocommerce.main-products .products {
	margin-top: 20px !important;
	margin-bottom: 20px !important;
}

.woocommerce.archive .after-loop-wrapper {
	margin-bottom: 20px !important;
}

/* ─── Hide sort, keep show per page ──────────────────────────────────── */
.woocommerce-ordering {
	display: none !important;
}

/* ─── Catalog page container ──────────────────────────────────────────── */
.woocommerce.archive .page-container,
.tax-product_cat .page-container {
	max-width: 1600px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 24px !important;
	padding-right: 24px !important;
	box-sizing: border-box;
}

/* ─── Responsive catalog ──────────────────────────────────────────────── */
@media (max-width: 1200px) {
	.columns-4 .woocommerce .products:not(:is(.cross-sells, .up-sells, .related)):not(.swiper) {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
	.woocommerce.archive .page-container,
	.tax-product_cat .page-container {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
}

@media (max-width: 768px) {
	.columns-4 .woocommerce .products:not(:is(.cross-sells, .up-sells, .related)):not(.swiper) {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 14px !important;
	}
	:root { --cc-card-img-height: 180px; }
	.woocommerce.archive .page-container,
	.tax-product_cat .page-container {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
}

@media (max-width: 480px) {
	.columns-4 .woocommerce .products:not(:is(.cross-sells, .up-sells, .related)):not(.swiper) {
		grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
	}
	:root { --cc-card-img-height: 240px; }
}


/* ═══════════════════════════════════════════════════════════════════════
   SINGLE PRODUCT PAGE
   ═══════════════════════════════════════════════════════════════════════ */

/* ─── Container width ─────────────────────────────────────────────────── */
.single-product .page-container {
	max-width: 1600px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 24px !important;
	padding-right: 24px !important;
	box-sizing: border-box;
}

/* ─── Image στενότερη (36%), summary φαρδύτερη ───────────────────────── */
.single-product.woocommerce div.product,
.single-product .woocommerce div.product {
	--ts-gallery-width: 36%;
}

/* ─── Τίτλος: μικρότερο κενό κάτω ────────────────────────────────────── */
.single-product .summary .product_title {
	margin-bottom: 8px !important;
	padding-bottom: 8px !important;
}

/* ─── Περιγραφή κάτω από social icons ────────────────────────────────── */
.cc-single-description {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid var(--ts-border, #e5e5e5);
	font-size: var(--ts-body-font-size, 14px);
	line-height: 1.7;
	color: var(--ts-text-color);
}

.cc-single-description ul {
	padding-left: 20px;
	margin: 10px 0;
}

.cc-single-description ul li {
	list-style: disc;
	margin-bottom: 4px;
}

/* ─── Επιπλέον πληροφορίες ────────────────────────────────────────────── */
.cc-additional-info {
	max-width: 1600px;
	margin: 0 auto 40px;
	padding: 30px 24px;
	border-top: 1px solid var(--ts-border, #e5e5e5);
}

.cc-additional-info__title {
	font-size: 16px;
	font-weight: 600;
	margin-bottom: 16px;
	color: var(--ts-heading-color);
}

.cc-additional-info table {
	width: 100%;
	border-collapse: collapse;
}

.cc-additional-info table tr td,
.cc-additional-info table tr th {
	padding: 8px 12px;
	border-bottom: 1px solid var(--ts-border, #e5e5e5);
	font-size: 14px;
	text-align: left;
}

.cc-additional-info table tr th {
	font-weight: 600;
	width: 200px;
	color: var(--ts-heading-color);
}

/* ─── Responsive single product ──────────────────────────────────────── */
@media (max-width: 1200px) {
	.single-product .page-container {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
}

@media (max-width: 768px) {
	.single-product .page-container {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}
	.single-product.woocommerce div.product,
	.single-product .woocommerce div.product {
		--ts-gallery-width: 100%;
	}
}
