/**
 * ECSTATIC global styles — loaded on all front-end pages.
 * Homepage section layout lives in home.css (#ecstatic-home only).
 */

@font-face {
	font-family: 'Tahoma';
	src: url('fonts/Tahoma.ttf') format('truetype');
	font-weight: 400;
	font-display: swap;
}

@font-face {
	font-family: 'Tahoma';
	src: url('fonts/Tahoma%20Bold.ttf') format('truetype');
	font-weight: 700;
	font-display: swap;
}

:root {
	--ec-black: #000;
	--ec-dark: #111;
	--ec-gold: #ffcc88;
	--ec-gold-hot: #ffb800;
	--ec-grey-text: #555;
	--ec-grey-mid: #22231f;
	--ec-grey-bg: #f5f5f5;
	--ec-grey-card: #ececec;
	--ec-white: #fff;
	--ec-line: #e0e0e0;
	--ec-max: 1200px;
	--ec-pill: 50px;
	--ec-radius: 10px;
	--ec-font: 'Tahoma', Arial, sans-serif;
}

html {
	scroll-behavior: smooth;
}

body {
	font-family: var(--ec-font);
	font-size: 15px;
	line-height: 1.6;
	color: var(--ec-black);
}

img {
	max-width: 100%;
	height: auto;
}

/* Homepage wrapper reuses legacy variable names */
#ecstatic-home {
	--black: var(--ec-black);
	--dark: var(--ec-dark);
	--gold: var(--ec-gold);
	--gold-hot: var(--ec-gold-hot);
	--grey-text: var(--ec-grey-text);
	--grey-mid: var(--ec-grey-mid);
	--grey-bg: var(--ec-grey-bg);
	--grey-card: var(--ec-grey-card);
	--white: var(--ec-white);
	--line: var(--ec-line);
	--max: var(--ec-max);
	--pill: var(--ec-pill);
	--radius: var(--ec-radius);
	--ff: var(--ec-font);
}

/* ─── WooCommerce (cart, checkout, product pages) ─── */

.woocommerce .price,
.woocommerce-page .price {
	text-align: left;
}

.woocommerce .input-text.qty.text,
.woocommerce-page .input-text.qty.text {
	height: 40px !important;
}
.ct-cart-actions .input-text.qty.text{height: 50px !important;}
.woocommerce-cart-form__contents .coupon {
	flex-wrap: wrap;
}

p#coupon-error-notice {
	width: 100%;
	text-align: left;
	padding-top: 10px;
	padding-left: 10px;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	border-radius: var(--ec-radius);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--ec-font);
}

.woocommerce span.onsale {
	border-radius: var(--ec-radius);
}

/* ─── Elementor collection pages (mens/kids/unisex watches) ─── */

.elementor-widget-woolentor-universal-product .ht-product {
	font-family: var(--ec-font);
}

.elementor-widget-woolentor-universal-product .price {
	text-align: left;
}

/* Product grid spacing */
.ht-products .woolentor-products.wl-row,
.woocommerce ul.products {
	gap: 24px 20px;
}

.ht-products .ht-product,
.woocommerce ul.products li.product {
	margin-bottom: 24px;
	padding-bottom: 8px;
}

/* Hover zoom — clip inside image box */
.ht-products .ht-product-image-wrap-2,
.ht-products .ht-product-image-wrap,
.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product .woocommerce-loop-product__link {
	overflow: hidden;
}

.ht-products .ht-product-image-wrap-2 a img,
.ht-products .ht-product-image-wrap a img,
.woocommerce ul.products li.product img {
	transition: transform 0.45s ease;
}

li.product:hover img,
.woolentor-product-same-height.ht-products .ht-product:hover img {
	transform: scale(1.05) !important;
}
.ht-product-image-wrap .ht-product-image a {
    padding: 10px;
    display: block;
}
.ht-product-content-inner .ht-product-title a {
    font-size: 18px !important;
}
.summary.entry-summary .product_title.entry-title {
    font-size: 22px !important;
}

.single-product .ecstatic-product-detail-desc {
	margin: 0 0 16px;
	color: var(--ec-grey-text, #555);
	font-size: 15px;
	line-height: 1.6;
}

.single-product .ecstatic-product-detail-desc p {
	margin: 0;
}

.single-product .ecstatic-product-detail-desc p + p {
	margin-top: 8px;
}

/* ─── Unisex collection page (homepage card layout, 3 columns) ─── */

#ecstatic-home.ecstatic-unisex-collection .everyday {
	width: 100%;
	margin: 0 auto;
	padding: 3vw 0 5vw;
}

#ecstatic-home.ecstatic-unisex-collection .everyday2 {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1.3vw;
}

#ecstatic-home.ecstatic-unisex-collection .everyday21 {
	width: 32.3%;
}

@media only screen and (max-width: 1024px) {
	#ecstatic-home.ecstatic-unisex-collection .everyday {
		width: 92%;
		padding: 5vw 0;
	}

	#ecstatic-home.ecstatic-unisex-collection .everyday21 {
		width: calc(50% - 0.65vw);
	}
}

@media only screen and (max-width: 767px) {
	#ecstatic-home.ecstatic-unisex-collection .everyday21 {
		width: 100%;
	}
}

/* Footer social links — left column on desktop, after Contact on mobile */
.ct-footer [data-row="middle"] [data-column="widget-area-2"] {
	display: flex;
	flex-direction: column;
}

.ct-footer .ec-footer-socials {
	display: flex;
	flex-wrap: wrap;
	gap: 18px;
	padding-top: 22px;
}

.ct-footer [data-column="widget-area-2"] .ec-footer-socials--desktop {
	margin-top: auto;
}

.ct-footer .ec-footer-socials--mobile {
	display: none;
}

.ct-footer .ec-footer-socials a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #fff;
	text-decoration: none;
	font-size: 14px;
	line-height: 1;
}

.ct-footer .ec-footer-socials svg {
	width: 18px;
	height: 18px;
	fill: currentColor;
	flex: 0 0 auto;
}

.ct-footer .ec-footer-socials a:hover {
	color: #ffcc88;
}

@media (max-width: 689.98px) {
	.ct-footer .ec-footer-socials--desktop {
		display: none;
	}

	.ct-footer .ec-footer-socials--mobile {
		display: flex;padding-top: 40px;
	}
}