/* Keralcart Site Settings — home page (Elementor page 1149) spacing and clean-up.
 *
 * Sections, top to bottom:
 *   aeb52a9  category carousel (full width)
 *   855c8c3  hero slider (full width)          980ab68  moving "Made with Kerala Tradition" bar
 *   4e8fe26  phone-only logo/cart block (moved here by the WPCode "move" snippet) — hidden
 *   4583357  "New Hottest Products": heading a38b168 + WooCommerce products widget d05d5db
 *   #kc-code2-products   Hot Selling / Special Offers tiles (WPCode "Imgg - Copy")
 *   #kc-youtube-code1    Shorts row (WPCode "YouTube - Copy")
 *   .kc-reviews-updating Google reviews card (WPCode "Google")
 * Selectors start with body.home so they win over the snippets' inline <style> blocks.
 */

body.home {
	--kc-green: #355d3f;
	--kc-green-dark: #06442f;
	--kc-gold: #d9b45b;
	--kc-border: #e6ece8;
	--kc-max: 1440px;
	--kc-gutter: 24px;
	--kc-section: 56px;
	--kc-grid-gap: 24px;
	--kc-radius: 12px;
}
@media (max-width: 1024px) { body.home { --kc-section: 44px; --kc-grid-gap: 16px; --kc-gutter: 16px; } }
@media (max-width: 767px)  { body.home { --kc-section: 36px; --kc-grid-gap: 12px; } }

/* ---------- Full-width bands: no 100vw overflow (it added ~15px sideways scroll) ---------- */
body.home .elementor-1149 .elementor-element.elementor-element-855c8c3,
body.home .elementor-1149 .elementor-element.elementor-element-980ab68 {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	left: auto !important;
	transform: none !important; /* old full-bleed trick used translateX(-50%) */
}

/* Phone-only logo/cart/wishlist block dropped mid-page by the "move" snippet. */
body.home .elementor-1149 .elementor-element.elementor-element-4e8fe26 { display: none !important; }

/* ---------- Shared content container ---------- */
body.home .elementor-1149 .elementor-element.elementor-element-4583357,
body.home #kc-code2-products,
body.home #kc-youtube-code1,
body.home .kc-reviews-updating {
	width: 100% !important;
	max-width: var(--kc-max) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: var(--kc-gutter) !important;
	padding-right: var(--kc-gutter) !important;
	box-sizing: border-box !important;
}

/* Vertical rhythm */
body.home .elementor-1149 .elementor-element.elementor-element-4583357 { padding-top: calc(var(--kc-section) - 8px) !important; padding-bottom: 0 !important; }
body.home #kc-code2-products { margin-top: var(--kc-section) !important; overflow: visible !important; }
body.home #kc-youtube-code1 { margin-top: var(--kc-section) !important; margin-bottom: 0 !important; }
body.home .kc-reviews-updating { margin-top: var(--kc-section) !important; margin-bottom: calc(var(--kc-section) + 8px) !important; }

/* ---------- Section headings: one style for all ---------- */
body.home .elementor-1149 .elementor-element.elementor-element-a38b168 { margin-bottom: 28px !important; }
body.home .elementor-1149 .elementor-element.elementor-element-a38b168 .elementor-heading-title,
body.home #kc-code2-products .kc-code2-heading {
	display: block !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 auto !important;
	padding: 0 0 14px !important;
	position: relative;
	border: 0 !important;
	border-radius: 0 !important;
	background: none !important;
	box-shadow: none !important;
	color: var(--kc-green) !important;
	font-size: 32px !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	letter-spacing: -0.01em;
	text-align: center !important;
	text-transform: none !important;
}
body.home #kc-code2-products .kc-code2-heading { margin-bottom: 24px !important; }
body.home .elementor-1149 .elementor-element.elementor-element-a38b168 .elementor-heading-title::after,
body.home #kc-code2-products .kc-code2-heading::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 48px;
	height: 3px;
	border-radius: 3px;
	background: var(--kc-gold);
	transform: translateX(-50%);
}
@media (max-width: 767px) {
	body.home .elementor-1149 .elementor-element.elementor-element-a38b168 .elementor-heading-title,
	body.home #kc-code2-products .kc-code2-heading { font-size: 24px !important; }
}

/* ---------- Product toolbar: count left, view toggle + sort right ---------- */
body.home .elementor-element-d05d5db .woocommerce > .row { margin: 0 0 24px !important; }
body.home .elementor-element-d05d5db .woocommerce > .row > [class*="col-"] { padding: 0 !important; }
body.home .elementor-element-d05d5db .woocommerce > .row > [class*="col-"] > * {
	display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px;
}
body.home .elementor-element-d05d5db .shop-one__product-count { margin: 0 !important; color: #5b6b60; font-size: 14px; }
body.home .elementor-element-d05d5db .woocommerce-ordering { margin: 0 !important; }
body.home .elementor-element-d05d5db .woocommerce-ordering select {
	height: 40px; padding: 0 36px 0 12px; border: 1px solid var(--kc-border); border-radius: 8px; background-color: #fff; font-size: 14px;
}
@media (max-width: 767px) {
	body.home .elementor-element-d05d5db .woocommerce > .row > [class*="col-"] > * { justify-content: center; text-align: center; }
}

/* ---------- Product grid + cards ---------- */
body.home .elementor-element-d05d5db ul.products {
	display: grid !important;
	gap: var(--kc-grid-gap) !important;
	margin: 0 !important;
	padding: 0 !important;
}
body.home .elementor-element-d05d5db ul.products::before,
body.home .elementor-element-d05d5db ul.products::after { display: none !important; }
body.home .elementor-element-d05d5db ul.products li.product {
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 1fr auto;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #fff;
	border: 1px solid var(--kc-border);
	border-radius: var(--kc-radius);
	overflow: hidden;
	box-shadow: 0 1px 2px rgba(6, 68, 47, .04);
	transition: transform .2s ease, box-shadow .2s ease;
}
body.home .elementor-element-d05d5db ul.products li.product:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 24px rgba(6, 68, 47, .10);
}
body.home .elementor-element-d05d5db li.product .product__all-single {
	grid-column: 1 / -1;
	display: flex; flex-direction: column;
	margin: 0 !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; background: none !important;
}
body.home .elementor-element-d05d5db li.product .product__all-single-inner {
	display: flex; flex-direction: column; flex: 1 1 auto;
	margin: 0 !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; background: none !important;
}
body.home .elementor-element-d05d5db li.product .product__all-img {
	margin: 0 !important; padding: 0 !important; border-radius: 0 !important; aspect-ratio: 1 / 1; overflow: hidden; background: #f4f7f5;
}
body.home .elementor-element-d05d5db li.product .product__all-img img {
	width: 100% !important; height: 100% !important; object-fit: cover; border-radius: 0 !important; display: block;
}
body.home .elementor-element-d05d5db li.product .product__all-content {
	display: flex; flex-direction: column; align-items: center; flex: 1 1 auto;
	padding: 14px 14px 16px !important; margin: 0 !important; text-align: center;
}
body.home .elementor-element-d05d5db li.product .product__all-review:empty { display: none; }
body.home .elementor-element-d05d5db li.product .product__all-title {
	margin: 0 0 6px !important;
	font-size: 16px !important;
	line-height: 1.35 !important;
	min-height: calc(1.35em * 2);
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
body.home .elementor-element-d05d5db li.product .product__all-title a { color: #1f2a22 !important; }
body.home .elementor-element-d05d5db li.product .product__all-title a:hover { color: var(--kc-green) !important; }
body.home .elementor-element-d05d5db li.product .product__all-price { margin: 0 0 12px !important; font-size: 15px; }
body.home .elementor-element-d05d5db li.product .product__all-price .price,
body.home .elementor-element-d05d5db li.product .product__all-price .amount,
body.home .elementor-element-d05d5db li.product .product__all-price ins { color: var(--kc-green) !important; font-weight: 700; text-decoration: none; }
body.home .elementor-element-d05d5db li.product .product__all-price del,
body.home .elementor-element-d05d5db li.product .product__all-price del .amount { color: #8a978e !important; font-weight: 400; }
body.home .elementor-element-d05d5db li.product .product__add-to-cart { margin-top: auto !important; }

/* Quick view + Add to wishlist: two equal links along the bottom of the card. */
body.home .elementor-element-d05d5db li.product > .woosq-btn,
body.home .elementor-element-d05d5db li.product > .woosw-btn,
body.home .elementor-element-d05d5db li.product > a.woosw-btn {
	grid-row: 2;
	display: flex !important; align-items: center; justify-content: center; gap: 6px;
	width: 100% !important; min-height: 42px; margin: 0 !important; padding: 8px 6px !important;
	border: 0 !important; border-top: 1px solid var(--kc-border) !important; border-radius: 0 !important;
	background: #fff !important; color: #44544a !important;
	font-size: 13px !important; font-weight: 500 !important; line-height: 1.2 !important; text-transform: none !important;
	white-space: nowrap !important; overflow: hidden; text-overflow: ellipsis; min-width: 0 !important;
	box-shadow: none !important; cursor: pointer;
	transition: background-color .2s ease, color .2s ease;
}
body.home .elementor-element-d05d5db li.product > .woosq-btn { grid-column: 1; }
body.home .elementor-element-d05d5db li.product > .woosw-btn { grid-column: 2; border-left: 1px solid var(--kc-border) !important; }
body.home .elementor-element-d05d5db li.product > .woosq-btn:hover,
body.home .elementor-element-d05d5db li.product > .woosw-btn:hover {
	background: #f3f7f4 !important; color: var(--kc-green) !important;
}
body.home .elementor-element-d05d5db li.product > .woosw-btn.woosw-added { color: var(--kc-green) !important; }
body.home .elementor-element-d05d5db li.product > .woosq-btn > *,
body.home .elementor-element-d05d5db li.product > .woosw-btn > * { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
@media (max-width: 767px) {
	body.home .elementor-element-d05d5db li.product > .woosq-btn,
	body.home .elementor-element-d05d5db li.product > .woosw-btn { font-size: 12px !important; gap: 4px; padding: 8px 4px !important; }
}

/* Pagination */
body.home .elementor-element-d05d5db .woocommerce-pagination,
body.home .elementor-element-d05d5db nav.woocommerce-pagination { margin-top: 32px !important; text-align: center; }

/* ---------- Hot Selling / Special Offers tiles ---------- */
body.home #kc-code2-products .kc-code2-row { margin: 0 0 36px !important; }
body.home #kc-code2-products .kc-code2-row:last-child { margin-bottom: 0 !important; }
body.home #kc-code2-products .kc-code2-grid { gap: var(--kc-grid-gap) !important; }
body.home #kc-code2-products .kc-code2-card,
body.home #kc-youtube-code1 .kc-yt-card {
	border-radius: var(--kc-radius) !important;
	overflow: hidden !important;
	box-shadow: 0 1px 3px rgba(6, 68, 47, .08);
	transition: transform .2s ease, box-shadow .2s ease;
}
body.home #kc-code2-products .kc-code2-card:hover,
body.home #kc-youtube-code1 .kc-yt-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 12px 26px rgba(6, 68, 47, .16);
}

/* ---------- Shorts ---------- */
body.home #kc-youtube-code1 .kc-yt-grid { gap: var(--kc-grid-gap) !important; padding: 0 !important; margin: 0 !important; }

/* ---------- Reviews card ---------- */
body.home .kc-reviews-updating-inner { margin-left: auto !important; margin-right: auto !important; }

/* ---------- Motion ---------- */
@media (prefers-reduced-motion: reduce) {
	body.home .elementor-element-d05d5db ul.products li.product,
	body.home #kc-code2-products .kc-code2-card,
	body.home #kc-youtube-code1 .kc-yt-card { transition: none; }
	body.home .elementor-element-d05d5db ul.products li.product:hover,
	body.home #kc-code2-products .kc-code2-card:hover,
	body.home #kc-youtube-code1 .kc-yt-card:hover { transform: none; }
}
