/* ==========================================================
   SHAJGHOR STORE — BRAND PRESENTATION v1.8.1
   Brand: Luxury Cosmetics
   Palette: Emerald + Gold
   Migrated from WordPress Additional CSS into the child theme

   Editing standard:
   - Use Ctrl + F and search the numbered section name.
   - Replace only the named section when future updates are provided.
   - Keep the Hero Group class: sg-hero-banner
   ========================================================== */

/* Phase 4 — ShajGhor Luxury Cosmetics Storefront */

.home {
	--sg-ink: #1F2937;
	--sg-muted: #6B7280;

	--sg-emerald: #163F34;
	--sg-emerald-deep: #0E4D3A;
	--sg-emerald-dark: #09382B;

	--sg-gold: #C8A24D;
	--sg-gold-soft: #E6D5A5;

	--sg-white: #FFFFFF;
	--sg-ivory: #FCFBF7;
	--sg-surface: #F8F8F8;
	--sg-emerald-soft: #EEF5F2;

	--sg-border: #E5E7EB;

	--sg-shadow:
		0 18px 50px rgba(14, 77, 58, 0.10);

	--sg-shadow-soft:
		0 10px 30px rgba(14, 77, 58, 0.07);

	color: var(--sg-ink);
	background: var(--sg-ivory);
}

/* Main page background */

.home #main {
	background:
		linear-gradient(
			180deg,
			#FFFFFF 0%,
			#FCFBF7 48%,
			#FFFFFF 100%
		);
}

/* Header */

.home #header {
	border-bottom:
		1px solid rgba(22, 63, 52, 0.10);

	box-shadow:
		0 6px 24px rgba(14, 77, 58, 0.045);
}

/* General content */

.home .entry-content {
	color: var(--sg-ink);
}

/* Headings */

.home .entry-content h1,
.home .entry-content h2 {
	font-family:
		Georgia,
		"Times New Roman",
		serif;

	color: var(--sg-emerald);
	letter-spacing: -0.035em;
	line-height: 1.08;
	text-wrap: balance;
}

.home .entry-content h1 {
	font-size:
		clamp(2.6rem, 5.5vw, 4.8rem);

	max-width: 13ch;
}

.home .entry-content h2 {
	font-size:
		clamp(2rem, 3.4vw, 3rem);

	margin-bottom: 0.8em;
}

.home .entry-content h3 {
	color: var(--sg-emerald);

	font-size:
		clamp(1.25rem, 1.7vw, 1.55rem);

	line-height: 1.25;
}

.home .entry-content p {
	color: var(--sg-muted);
	line-height: 1.75;
}

/* General storefront sections */

.home .commerce-storefront-section {
	margin-block-start:
		clamp(3.75rem, 7vw, 6.5rem);

	padding:
		clamp(2.25rem, 4.5vw, 4.5rem);

	border-radius: 24px;
}

/* Buttons */

.home .wp-block-buttons {
	gap: 0.85rem;
	margin-top: 1.75rem;
}

.home .wp-block-button__link,
.home .wc-block-components-product-button__button {
	min-height: 46px;

	display: inline-flex;
	align-items: center;
	justify-content: center;

	border:
		2px solid var(--sg-emerald) !important;

	border-radius: 999px !important;

	background:
		var(--sg-emerald) !important;

	color: #FFFFFF !important;

	font-weight: 700;
	letter-spacing: 0.01em;

	box-shadow:
		0 8px 20px rgba(22, 63, 52, 0.20);

	transition:
		transform 180ms ease,
		box-shadow 180ms ease,
		background-color 180ms ease,
		border-color 180ms ease;
}

.home .wp-block-button.is-style-outline
.wp-block-button__link {
	background:
		rgba(255, 255, 255, 0.82) !important;

	color:
		var(--sg-emerald) !important;

	box-shadow: none;
}

@media (hover: hover) {

	.home .wp-block-button__link:hover,
	.home .wc-block-components-product-button__button:hover {
		transform: translateY(-2px);

		border-color:
			var(--sg-emerald-deep) !important;

		background:
			var(--sg-emerald-deep) !important;

		box-shadow:
			0 12px 28px rgba(14, 77, 58, 0.25);
	}

	.home .wp-block-button.is-style-outline
	.wp-block-button__link:hover {
		color: #FFFFFF !important;
	}
}

/* Keyboard focus */

.home .wp-block-button__link:focus-visible,
.home .wc-block-components-product-button__button:focus-visible,
.home .wc-block-product-categories-list-item a:focus-visible,
.home summary:focus-visible,
#footer a:focus-visible {
	outline:
		3px solid var(--sg-gold);

	outline-offset: 4px;
}

/* Homepage product section containers */

.home .commerce-storefront-section--products {
	border: 1px solid rgba(229, 231, 235, 0.95);
	background: rgba(255, 255, 255, 0.88);
	box-shadow: 0 8px 30px rgba(14, 77, 58, 0.045);
}

/* Newsletter */

.home .commerce-storefront-section--newsletter {
	border:
		1px solid rgba(200, 162, 77, 0.32);

	background:
		radial-gradient(
			circle at 84% 22%,
			rgba(200, 162, 77, 0.20),
			transparent 32%
		),
		linear-gradient(
			135deg,
			#09382B 0%,
			#163F34 100%
		);

	box-shadow:
		var(--sg-shadow);
}

.home .commerce-storefront-section--newsletter h2,
.home .commerce-storefront-section--newsletter p {
	color:
		#FFFFFF;
}

.home .commerce-storefront-section--newsletter
.wp-block-column:last-child p {
	padding:
		1rem 1.15rem;

	border:
		1px solid rgba(255, 255, 255, 0.20);

	border-radius: 14px;

	background:
		rgba(255, 255, 255, 0.08);
}

/* Social section */

.home .commerce-storefront-section--social {
	border-top:
		1px solid var(--sg-border);

	border-radius: 0;
}

/* Mobile layout */

@media (max-width: 767px) {

	.home .commerce-storefront-section {
		margin-block-start:
			2.75rem;

		padding:
			2rem 1.25rem;

		border-radius:
			18px;
	}

.home .entry-content h1 {
		font-size:
			clamp(2.45rem, 12vw, 3.35rem);
	}

	.home .entry-content h2 {
		font-size:
			clamp(1.9rem, 9vw, 2.45rem);
	}

	.home .wp-block-buttons,
	.home .wp-block-button {
		width: 100%;
	}

	.home .wp-block-button__link {
		width: 100%;
	}

	.home .commerce-storefront-section--products {
		padding:
			1.75rem 0.9rem;
	}

.home .commerce-storefront-section--benefits
	.commerce-layout-panel {
		padding:
			1.3rem;
	}

	.home .commerce-storefront-section--faq {
		padding-inline:
			0;
	}

	.home .commerce-storefront-section--newsletter
	.wp-block-columns {
		gap:
			0.75rem;
	}

	.home .commerce-storefront-section--social {
		padding-inline:
			0;
	}

	#footer [data-row="bottom"] {
		padding-block:
			1.4rem;

		text-align:
			center;
	}
}

/* Accessibility: reduced motion */

@media (prefers-reduced-motion: reduce) {

	.home *,
	.home *::before,
	.home *::after {
		scroll-behavior:
			auto !important;

		transition-duration:
			0.01ms !important;

		animation-duration:
			0.01ms !important;

		animation-iteration-count:
			1 !important;
	}
}

/* ===== ShajGhor — Premium Emerald & Gold Footer (Consolidated) ===== */

#footer {
	--sg-footer-bg: #0E4D3A;
	--sg-footer-bg-deep: #09382B;
	--sg-footer-bottom: #071F19;
	--sg-footer-text: #FCFBF7;
	--sg-footer-muted: #D7E3DE;
	--sg-footer-gold: #C8A24D;
	--sg-footer-border: rgba(230, 213, 165, 0.24);
}

/* Top and middle rows */
#footer [data-row="top"],
#footer [data-row="middle"] {
	background:
		radial-gradient(
			circle at 88% 8%,
			rgba(200, 162, 77, 0.12),
			transparent 28%
		),
		linear-gradient(
			135deg,
			var(--sg-footer-bg-deep) 0%,
			var(--sg-footer-bg) 100%
		) !important;
	color: var(--sg-footer-text);
}

#footer [data-row="top"] {
	border-top: 1px solid rgba(200, 162, 77, 0.30);
}

#footer [data-row="middle"] {
	border-top: 1px solid var(--sg-footer-border);
}

#footer [data-row="top"] .ct-container,
#footer [data-row="middle"] .ct-container {
	padding-top: clamp(34px, 4vw, 58px);
	padding-bottom: clamp(34px, 4vw, 58px);
}

/* Footer widgets */
#footer .ct-widget,
#footer .widget,
#footer .wp-block-group {
	color: var(--sg-footer-text);
}

/* Logo card */
#footer .wp-block-image {
	margin-bottom: 18px;
}

#footer .wp-block-image img {
	display: block;
	width: min(100%, 420px) !important;
	height: auto;
	margin-inline: auto;
	padding: 8px 10px !important;
	border-radius: 14px !important;
	background: #FFFFFF;
	box-shadow: 0 10px 24px rgba(3, 27, 20, 0.16) !important;
}

/* Footer paragraphs */
#footer p {
	max-width: 520px;
	margin: 18px auto 0;
	color: var(--sg-footer-muted);
	font-size: 15px;
	line-height: 1.8;
}

/* Footer headings */
#footer h2,
#footer h3,
#footer h4,
#footer h5,
#footer .widget-title {
	position: relative;
	margin: 0 0 22px;
	color: #FFFFFF;
	font-family: inherit;
	font-size: clamp(17px, 1.4vw, 21px);
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 0.08em;
	text-align: center;
	text-transform: uppercase;
}

#footer h2::after,
#footer h3::after,
#footer h4::after,
#footer h5::after,
#footer .widget-title::after {
	content: "";
	display: block;
	width: 42px;
	height: 2px;
	margin: 12px auto 0 !important;
	border-radius: 999px;
	background: var(--sg-footer-gold);
}

/* Footer navigation */
#footer ul,
#footer .menu {
	margin: 0;
	padding: 0;
	list-style: none;
}

#footer li {
	margin: 0 0 14px;
	padding: 0;
	list-style: none;
}

#footer li::marker {
	content: "";
}

#footer a {
	position: relative;
	color: var(--sg-footer-muted);
	text-decoration: none;
	transition:
		color 180ms ease,
		transform 180ms ease;
}

#footer .menu a,
#footer .wp-block-navigation-item__content {
	display: inline-flex;
	align-items: center;
	padding-block: 2px;
	font-size: 15px;
	line-height: 1.5;
}

#footer .menu a::after,
#footer .wp-block-navigation-item__content::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 1px;
	background: var(--sg-footer-gold);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 180ms ease;
}

@media (hover: hover) {
	#footer a:hover {
		color: var(--sg-footer-gold);
	}

	#footer .menu a:hover,
	#footer .wp-block-navigation-item__content:hover {
		transform: translateX(6px);
	}

	#footer .menu a:hover::after,
	#footer .wp-block-navigation-item__content:hover::after {
		transform: scaleX(1);
	}
}

/* Social icons — locked gold and white */
#footer .ct-social-box,
#footer .wp-block-social-links {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center !important;
	justify-content: center !important;
	width: 100%;
	gap: 14px !important;
	margin: 18px auto 0 !important;
	padding: 0 !important;
}

#footer .ct-social-box a,
#footer .wp-social-link a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 40px !important;
	height: 40px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid var(--sg-footer-gold) !important;
	border-radius: 50% !important;
	background: rgba(255, 255, 255, 0.06) !important;
	color: #FFFFFF !important;
	box-shadow: 0 8px 18px rgba(3, 27, 20, 0.18) !important;
	transition: transform 180ms ease, border-color 180ms ease, background-color 180ms ease, color 180ms ease, box-shadow 180ms ease;
}

/* Force Blocksy and Gutenberg social icons to remain visible */
#footer .ct-social-box a svg,
#footer .ct-social-box a .ct-icon,
#footer .wp-social-link a svg {
	width: 18px !important;
	height: 18px !important;
	color: currentColor !important;
	fill: currentColor !important;
	stroke: currentColor !important;
	opacity: 1 !important;
}

#footer .ct-social-box a svg path,
#footer .ct-social-box a svg use,
#footer .wp-social-link a svg path,
#footer .wp-social-link a svg use {
	fill: currentColor !important;
	stroke: currentColor !important;
	opacity: 1 !important;
}

@media (hover: hover) {
	#footer .ct-social-box a:hover,
	#footer .wp-social-link a:hover {
		transform: translateY(-3px);
		border-color: var(--sg-footer-gold) !important;
		background: var(--sg-footer-gold) !important;
		color: var(--sg-footer-bg-deep) !important;
		box-shadow: 0 10px 22px rgba(200, 162, 77, 0.24) !important;
	}
}

/* Bottom copyright row */
#footer [data-row="bottom"] {
	padding-block: 0 !important;
	border-top: 1px solid rgba(200, 162, 77, 0.36);
	background: var(--sg-footer-bottom) !important;
	color: var(--sg-footer-muted);
}

#footer [data-row="bottom"] .ct-container {
	padding-top: 22px;
	padding-bottom: 22px;
}

#footer .ct-footer-copyright {
	width: 100%;
	max-width: none;
	margin: 0;
	color: var(--sg-footer-muted);
	font-size: 13px;
	line-height: 1.8;
	text-align: center;
}

#footer .ct-footer-copyright a {
	color: var(--sg-footer-text);
	text-decoration: none;
}

#footer .ct-footer-copyright a:hover {
	color: var(--sg-footer-gold);
}

/* Footer focus state */
#footer a:focus-visible {
	outline: 3px solid var(--sg-footer-gold);
	outline-offset: 4px;
	border-radius: 4px;
}

/* Footer tablet */
@media (max-width: 1024px) {
	#footer [data-row="top"] .ct-container,
	#footer [data-row="middle"] .ct-container {
		padding-top: 38px;
		padding-bottom: 38px;
	}

	#footer .wp-block-image img {
		width: min(100%, 380px) !important;
	}
}

/* ==========================================================
   05. HERO BANNER
   Status: Production Ready
   Version: 1.4
   ========================================================== */

.home .sg-hero-banner {
	position: relative;
	overflow: hidden;
	margin-top: 0 !important;
	padding: clamp(42px, 6vw, 86px);
	border: 1px solid rgba(200, 162, 77, 0.28);
	border-radius: 28px;
	background:
		radial-gradient(circle at 86% 18%, rgba(200, 162, 77, 0.18), transparent 34%),
		radial-gradient(circle at 12% 88%, rgba(14, 77, 58, 0.10), transparent 32%),
		linear-gradient(135deg, #FFFFFF 0%, #EEF5F2 100%);
	box-shadow: 0 20px 54px rgba(14, 77, 58, 0.11);
}

.home .sg-hero-banner > .wp-block-columns {
	align-items: center !important;
	gap: clamp(32px, 5vw, 72px);
	margin-bottom: 0;
}

.home .sg-hero-banner .wp-block-column:first-child {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.home .sg-hero-banner h1,
.home .sg-hero-banner h2 {
	max-width: 11.8ch;
	margin: 0 0 22px;
	color: #0E4D3A;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(2.5rem, 4.8vw, 4.7rem);
	font-weight: 700;
	line-height: 1.04;
	letter-spacing: -0.04em;
}

.home .sg-hero-banner p {
	max-width: 52ch;
	margin: 0 0 28px;
	color: #5F6D67;
	font-size: clamp(1rem, 1.25vw, 1.12rem);
	line-height: 1.75;
}

.home .sg-hero-banner .wp-block-button__link {
	min-height: 48px;
	padding: 16px 38px !important;
	border: 2px solid #0E4D3A !important;
	border-radius: 999px !important;
	background: #0E4D3A !important;
	color: #FFFFFF !important;
	font-size: 17px;
	font-weight: 700;
	box-shadow: 0 10px 24px rgba(14, 77, 58, 0.22);
}

.home .sg-hero-banner .wp-block-image {
	margin: 0;
	text-align: center;
}

.home .sg-hero-banner .wp-block-image img {
	display: block;
	width: min(100%, 720px);
	height: auto;
	margin-inline: auto;
	object-fit: contain;
	filter: drop-shadow(0 22px 30px rgba(14, 77, 58, 0.14));
	transition: transform 220ms ease;
}

@media (hover: hover) {
	.home .sg-hero-banner .wp-block-button__link:hover {
		transform: translateY(-2px);
		border-color: #09382B !important;
		background: #09382B !important;
		box-shadow: 0 14px 30px rgba(9, 56, 43, 0.28);
	}

	.home .sg-hero-banner .wp-block-image img:hover {
		transform: translateY(-4px) scale(1.02);
	}
}

@media (max-width: 1024px) {
	.home .sg-hero-banner {
		padding: 48px 34px;
	}

	.home .sg-hero-banner > .wp-block-columns {
		gap: 30px;
	}

	.home .sg-hero-banner h1,
	.home .sg-hero-banner h2 {
		font-size: clamp(2.4rem, 6vw, 3.6rem);
	}
}

@media (max-width: 767px) {
	.home .sg-hero-banner {
		margin-top: 0 !important;
		padding: 34px 20px 26px;
		border-radius: 20px;
		text-align: center;
	}

	.home .sg-hero-banner > .wp-block-columns {
		display: flex;
		flex-direction: column;
		gap: 24px;
	}

	.home .sg-hero-banner .wp-block-column:first-child {
		align-items: center;
		order: 1;
	}

	.home .sg-hero-banner .wp-block-column:last-child {
		order: 2;
		width: 100%;
	}

	.home .sg-hero-banner h1,
	.home .sg-hero-banner h2 {
		max-width: 15ch;
		margin-inline: auto;
		font-size: clamp(2.1rem, 9.2vw, 2.75rem);
		line-height: 1.08;
		letter-spacing: -0.035em;
	}

	.home .sg-hero-banner p {
		max-width: 26ch;
		margin-inline: auto;
		font-size: 15px;
		line-height: 1.65;
	}

	.home .sg-hero-banner .wp-block-buttons,
	.home .sg-hero-banner .wp-block-button {
		width: 100%;
	}

	.home .sg-hero-banner .wp-block-button__link {
		width: 100%;
		max-width: 240px;
		box-shadow: 0 8px 18px rgba(14, 77, 58, 0.18);
	}

	.home .sg-hero-banner .wp-block-image {
		margin-top: -12px;
	}

	.home .sg-hero-banner .wp-block-image img {
		width: min(100%, 420px);
	}
}

/* ==========================================================
   14. MOBILE FOOTER ALIGNMENT
   Status: Production Ready
   Version: 1.1
   ========================================================== */

@media (max-width: 767px) {
	#footer [data-row="top"] .ct-container,
	#footer [data-row="middle"] .ct-container,
	#footer [data-row="bottom"] .ct-container {
		width: 100%;
		max-width: 100%;
		margin-inline: auto;
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	#footer .ct-footer [data-column],
	#footer .ct-widget,
	#footer .widget,
	#footer .wp-block-group {
		width: 100%;
		text-align: center !important;
	}

	#footer .wp-block-image img {
		margin-inline: auto !important;
	}

	#footer p {
		margin-left: auto !important;
		margin-right: auto !important;
		text-align: center !important;
	}

	#footer h2,
	#footer h3,
	#footer h4,
	#footer h5,
	#footer .widget-title {
		text-align: center !important;
	}

	#footer h2::after,
	#footer h3::after,
	#footer h4::after,
	#footer h5::after,
	#footer .widget-title::after {
		margin-left: auto !important;
		margin-right: auto !important;
	}

	#footer ul,
	#footer .menu {
		width: 100%;
		text-align: center !important;
	}

	#footer .menu a,
	#footer .wp-block-navigation-item__content {
		justify-content: center;
	}

	#footer .ct-social-box,
	#footer .wp-block-social-links {
		justify-content: center !important;
	}

	#footer .ct-footer-copyright {
		text-align: center !important;
	}
}

/* ==========================================================
   07. SHOP / PRODUCT CARDS — FINAL
   Wishlist, Quick View and Compare intentionally excluded.
   Order Now will be added later through ShajGhor Commerce.
   ========================================================== */

.woocommerce-shop,
.tax-product_cat,
.tax-product_tag {
	--sg-shop-ink: #1F2937;
	--sg-shop-muted: #6B7280;
	--sg-shop-emerald: #163F34;
	--sg-shop-emerald-deep: #0E4D3A;
	--sg-shop-gold: #C8A24D;
	--sg-shop-border: #E5E7EB;
	--sg-shop-surface: #F5F8F7;
}

.woocommerce-shop ul.products,
.tax-product_cat ul.products,
.tax-product_tag ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 28px !important;
}

.woocommerce-shop ul.products li.product,
.tax-product_cat ul.products li.product,
.tax-product_tag ul.products li.product {
	display: flex !important;
	flex-direction: column;
	min-width: 0;
	height: 100%;
	margin: 0 !important;
	padding: 16px !important;
	overflow: hidden;
	border: 1px solid var(--sg-shop-border);
	border-radius: 20px;
	background: #FFFFFF;
	box-shadow: 0 10px 28px rgba(14, 77, 58, 0.07);
	transition:
		transform 200ms ease,
		border-color 200ms ease,
		box-shadow 200ms ease;
}

.woocommerce-shop ul.products li.product a.woocommerce-LoopProduct-link,
.tax-product_cat ul.products li.product a.woocommerce-LoopProduct-link,
.tax-product_tag ul.products li.product a.woocommerce-LoopProduct-link {
	display: flex;
	flex-direction: column;
	flex: 1;
	color: inherit;
	text-decoration: none;
}

.woocommerce-shop ul.products li.product img,
.tax-product_cat ul.products li.product img,
.tax-product_tag ul.products li.product img {
	width: 100% !important;
	aspect-ratio: 1 / 1;
	margin: 0 0 18px !important;
	object-fit: contain !important;
	border-radius: 15px;
	background: var(--sg-shop-surface);
	transition: transform 220ms ease;
}

.woocommerce-shop ul.products li.product .woocommerce-loop-product__title,
.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
.tax-product_tag ul.products li.product .woocommerce-loop-product__title {
	display: -webkit-box;
	min-height: 48px;
	margin: 0 0 10px !important;
	overflow: hidden;
	color: var(--sg-shop-emerald) !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.woocommerce-shop ul.products li.product .price,
.tax-product_cat ul.products li.product .price,
.tax-product_tag ul.products li.product .price {
	margin: auto 0 14px !important;
	color: var(--sg-shop-emerald-deep) !important;
	font-size: 17px !important;
	font-weight: 800 !important;
}

.woocommerce-shop ul.products li.product .price del,
.tax-product_cat ul.products li.product .price del,
.tax-product_tag ul.products li.product .price del {
	color: var(--sg-shop-muted) !important;
	font-size: 13px;
	opacity: 0.65;
}

.woocommerce-shop ul.products li.product .price ins,
.tax-product_cat ul.products li.product .price ins,
.tax-product_tag ul.products li.product .price ins {
	color: var(--sg-shop-emerald-deep) !important;
	text-decoration: none;
}

.woocommerce-shop ul.products li.product .star-rating,
.tax-product_cat ul.products li.product .star-rating,
.tax-product_tag ul.products li.product .star-rating {
	margin: 0 0 10px;
	color: var(--sg-shop-gold);
}

.woocommerce-shop ul.products li.product .onsale,
.tax-product_cat ul.products li.product .onsale,
.tax-product_tag ul.products li.product .onsale {
	top: 12px !important;
	left: 12px !important;
	right: auto !important;
	min-width: 0;
	min-height: 0;
	padding: 6px 10px !important;
	border: 0;
	border-radius: 999px;
	background: var(--sg-shop-emerald-deep) !important;
	color: #FFFFFF !important;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.2;
}

.woocommerce-shop ul.products li.product .button,
.tax-product_cat ul.products li.product .button,
.tax-product_tag ul.products li.product .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 44px;
	margin-top: auto !important;
	padding: 10px 16px !important;
	border: 2px solid var(--sg-shop-emerald-deep) !important;
	border-radius: 999px !important;
	background: var(--sg-shop-emerald-deep) !important;
	color: #FFFFFF !important;
	font-size: 14px;
	font-weight: 700;
	text-align: center;
	box-shadow: 0 8px 20px rgba(14, 77, 58, 0.18);
}

@media (hover: hover) {
	.woocommerce-shop ul.products li.product:hover,
	.tax-product_cat ul.products li.product:hover,
	.tax-product_tag ul.products li.product:hover {
		transform: translateY(-6px);
		border-color: rgba(200, 162, 77, 0.75);
		box-shadow: 0 18px 42px rgba(14, 77, 58, 0.13);
	}

	.woocommerce-shop ul.products li.product:hover img,
	.tax-product_cat ul.products li.product:hover img,
	.tax-product_tag ul.products li.product:hover img {
		transform: scale(1.035);
	}

	.woocommerce-shop ul.products li.product .button:hover,
	.tax-product_cat ul.products li.product .button:hover,
	.tax-product_tag ul.products li.product .button:hover {
		border-color: var(--sg-shop-gold) !important;
		background: var(--sg-shop-gold) !important;
		color: #09382B !important;
	}
}

@media (max-width: 767px) {
	.woocommerce-shop ul.products,
	.tax-product_cat ul.products,
	.tax-product_tag ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 12px !important;
	}

	.woocommerce-shop ul.products li.product,
	.tax-product_cat ul.products li.product,
	.tax-product_tag ul.products li.product {
		padding: 10px !important;
		border-radius: 15px;
	}

	.woocommerce-shop ul.products li.product img,
	.tax-product_cat ul.products li.product img,
	.tax-product_tag ul.products li.product img {
		margin-bottom: 12px !important;
		border-radius: 11px;
	}

	.woocommerce-shop ul.products li.product .woocommerce-loop-product__title,
	.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
	.tax-product_tag ul.products li.product .woocommerce-loop-product__title {
		min-height: 40px;
		font-size: 13px !important;
		line-height: 1.35 !important;
	}

	.woocommerce-shop ul.products li.product .price,
	.tax-product_cat ul.products li.product .price,
	.tax-product_tag ul.products li.product .price {
		font-size: 14px !important;
	}

	.woocommerce-shop ul.products li.product .button,
	.tax-product_cat ul.products li.product .button,
	.tax-product_tag ul.products li.product .button {
		min-height: 38px;
		padding: 8px 7px !important;
		font-size: 12px;
	}
}

/* ==========================================================
   08. HOMEPAGE PRODUCT CARDS — LOCKED
   Featured Products / New Arrivals / Best Sellers
   Desktop + Tablet + Mobile

   Required section classes:
   sg-featured-products
   sg-new-arrivals
   sg-best-sellers
   ========================================================== */

/* Product grid — desktop */
.home .sg-featured-products .wc-block-product-template,
.home .sg-new-arrivals .wc-block-product-template,
.home .sg-best-sellers .wc-block-product-template {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	align-items: stretch !important;
	gap: 20px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Product card */
.home .sg-featured-products .wc-block-product,
.home .sg-new-arrivals .wc-block-product,
.home .sg-best-sellers .wc-block-product {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 14px !important;
	overflow: hidden !important;
	border: 1px solid #E5E7EB !important;
	border-radius: 16px !important;
	background: #FFFFFF !important;
	box-shadow: 0 8px 22px rgba(14, 77, 58, 0.07) !important;
	transition:
		transform 180ms ease,
		border-color 180ms ease,
		box-shadow 180ms ease;
}

/* Product image wrapper */
.home .sg-featured-products .wc-block-components-product-image,
.home .sg-new-arrivals .wc-block-components-product-image,
.home .sg-best-sellers .wc-block-components-product-image {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 260px !important;
	margin: 0 0 16px !important;
	overflow: hidden !important;
	border-radius: 12px !important;
	background: #F5F8F7 !important;
}

/* Product image */
.home .sg-featured-products .wc-block-components-product-image img,
.home .sg-new-arrivals .wc-block-components-product-image img,
.home .sg-best-sellers .wc-block-components-product-image img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	object-fit: contain !important;
	border-radius: 12px !important;
	background: #F5F8F7 !important;
	transition: transform 200ms ease;
}

/* Product title */
.home .sg-featured-products .wc-block-components-product-name,
.home .sg-new-arrivals .wc-block-components-product-name,
.home .sg-best-sellers .wc-block-components-product-name {
	display: -webkit-box !important;
	width: 100% !important;
	min-height: 44px !important;
	margin: 0 0 10px !important;
	overflow: hidden !important;
	color: #0E4D3A !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	text-align: left !important;
	text-decoration: none !important;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

/* Product price */
.home .sg-featured-products .wc-block-components-product-price,
.home .sg-new-arrivals .wc-block-components-product-price,
.home .sg-best-sellers .wc-block-components-product-price {
	width: 100% !important;
	margin: 0 0 12px !important;
	color: #0E4D3A !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	line-height: 1.3 !important;
	text-align: left !important;
}

.home .sg-featured-products .wc-block-components-product-price ins,
.home .sg-new-arrivals .wc-block-components-product-price ins,
.home .sg-best-sellers .wc-block-components-product-price ins {
	color: #0E4D3A !important;
	font-weight: 800 !important;
	text-decoration: none !important;
}

.home .sg-featured-products .wc-block-components-product-price del,
.home .sg-new-arrivals .wc-block-components-product-price del,
.home .sg-best-sellers .wc-block-components-product-price del {
	color: #6B7280 !important;
	font-size: 12px !important;
	opacity: 0.65;
}

/* Button wrapper */
.home .sg-featured-products .wc-block-components-product-button,
.home .sg-new-arrivals .wc-block-components-product-button,
.home .sg-best-sellers .wc-block-components-product-button {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	margin: auto 0 0 !important;
	padding: 0 !important;
}

/* Add to Cart — desktop */
.home .sg-featured-products .wc-block-components-product-button__button,
.home .sg-new-arrivals .wc-block-components-product-button__button,
.home .sg-best-sellers .wc-block-components-product-button__button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	min-width: 120px !important;
	max-width: 150px !important;
	min-height: 40px !important;
	margin: 0 !important;
	padding: 8px 16px !important;
	border: 1px solid #0E4D3A !important;
	border-radius: 999px !important;
	background: #0E4D3A !important;
	color: #FFFFFF !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	text-align: center !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	box-shadow: 0 7px 16px rgba(14, 77, 58, 0.16) !important;
	transition:
		transform 180ms ease,
		background-color 180ms ease,
		border-color 180ms ease,
		box-shadow 180ms ease;
}

@media (hover: hover) {
	.home .sg-featured-products .wc-block-product:hover,
	.home .sg-new-arrivals .wc-block-product:hover,
	.home .sg-best-sellers .wc-block-product:hover {
		transform: translateY(-4px);
		border-color: rgba(200, 162, 77, 0.70) !important;
		box-shadow: 0 16px 34px rgba(14, 77, 58, 0.12) !important;
	}

	.home .sg-featured-products .wc-block-product:hover
		.wc-block-components-product-image img,
	.home .sg-new-arrivals .wc-block-product:hover
		.wc-block-components-product-image img,
	.home .sg-best-sellers .wc-block-product:hover
		.wc-block-components-product-image img {
		transform: scale(1.025);
	}

	.home .sg-featured-products
		.wc-block-components-product-button__button:hover,
	.home .sg-new-arrivals
		.wc-block-components-product-button__button:hover,
	.home .sg-best-sellers
		.wc-block-components-product-button__button:hover {
		transform: translateY(-1px);
		border-color: #C8A24D !important;
		background: #C8A24D !important;
		color: #09382B !important;
		box-shadow: 0 10px 20px rgba(200, 162, 77, 0.22) !important;
	}
}

/* Tablet */
@media (max-width: 1024px) {
	.home .sg-featured-products .wc-block-product-template,
	.home .sg-new-arrivals .wc-block-product-template,
	.home .sg-best-sellers .wc-block-product-template {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 14px !important;
	}

	.home .sg-featured-products .wc-block-components-product-image,
	.home .sg-new-arrivals .wc-block-components-product-image,
	.home .sg-best-sellers .wc-block-components-product-image {
		height: 230px !important;
	}
}

/* Mobile — 2 cards, compact portrait cards, small pill button */
@media (max-width: 767px) {
	.home .sg-featured-products .wc-block-product-template,
	.home .sg-new-arrivals .wc-block-product-template,
	.home .sg-best-sellers .wc-block-product-template {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 10px !important;
	}

	.home .sg-featured-products .wc-block-product,
	.home .sg-new-arrivals .wc-block-product,
	.home .sg-best-sellers .wc-block-product {
		width: 100% !important;
		min-width: 0 !important;
		height: 100% !important;
		padding: 8px !important;
		border-radius: 13px !important;
	}

	.home .sg-featured-products .wc-block-components-product-image,
	.home .sg-new-arrivals .wc-block-components-product-image,
	.home .sg-best-sellers .wc-block-components-product-image {
		height: 145px !important;
		margin: 0 0 10px !important;
		border-radius: 10px !important;
	}

	.home .sg-featured-products .wc-block-components-product-image img,
	.home .sg-new-arrivals .wc-block-components-product-image img,
	.home .sg-best-sellers .wc-block-components-product-image img {
		border-radius: 10px !important;
	}

	.home .sg-featured-products .wc-block-components-product-name,
	.home .sg-new-arrivals .wc-block-components-product-name,
	.home .sg-best-sellers .wc-block-components-product-name {
		min-height: 40px !important;
		margin: 0 0 8px !important;
		font-size: 12px !important;
		line-height: 1.3 !important;
	}

	.home .sg-featured-products .wc-block-components-product-price,
	.home .sg-new-arrivals .wc-block-components-product-price,
	.home .sg-best-sellers .wc-block-components-product-price {
		margin: 0 0 10px !important;
		font-size: 13px !important;
		line-height: 1.25 !important;
	}

	.home .sg-featured-products .wc-block-components-product-button,
	.home .sg-new-arrivals .wc-block-components-product-button,
	.home .sg-best-sellers .wc-block-components-product-button {
		display: flex !important;
		align-items: center !important;
		width: 100% !important;
		margin: auto 0 0 !important;
	}

	.home .sg-featured-products
		.wc-block-components-product-button__button,
	.home .sg-new-arrivals
		.wc-block-components-product-button__button,
	.home .sg-best-sellers
		.wc-block-components-product-button__button {
		width: auto !important;
		min-width: 82px !important;
		max-width: 94px !important;
		min-height: 32px !important;
		margin: 0 !important;
		padding: 6px 9px !important;
		border-radius: 999px !important;
		font-size: 9px !important;
		font-weight: 700 !important;
		line-height: 1 !important;
		white-space: nowrap !important;
	}
}

/* Very small mobile */
@media (max-width: 360px) {
	.home .sg-featured-products .wc-block-product-template,
	.home .sg-new-arrivals .wc-block-product-template,
	.home .sg-best-sellers .wc-block-product-template {
		gap: 8px !important;
	}

	.home .sg-featured-products .wc-block-product,
	.home .sg-new-arrivals .wc-block-product,
	.home .sg-best-sellers .wc-block-product {
		padding: 7px !important;
	}

	.home .sg-featured-products .wc-block-components-product-image,
	.home .sg-new-arrivals .wc-block-components-product-image,
	.home .sg-best-sellers .wc-block-components-product-image {
		height: 130px !important;
	}

	.home .sg-featured-products .wc-block-components-product-name,
	.home .sg-new-arrivals .wc-block-components-product-name,
	.home .sg-best-sellers .wc-block-components-product-name {
		font-size: 11px !important;
	}

	.home .sg-featured-products
		.wc-block-components-product-button__button,
	.home .sg-new-arrivals
		.wc-block-components-product-button__button,
	.home .sg-best-sellers
		.wc-block-components-product-button__button {
		min-width: 76px !important;
		max-width: 86px !important;
		min-height: 30px !important;
		padding: 5px 7px !important;
		font-size: 8px !important;
	}
}

/* ==========================================================
   09. BANGLA TYPOGRAPHY SYSTEM — LOCKED
   Applies to: Why Choose / Customer Feedback / FAQ
   Font: Hind Siliguri
   ========================================================== */

.home .sg-why-choose,
.home .sg-customer-feedback,
.home .sg-faq {
	font-family: "Hind Siliguri", "Noto Sans Bengali", sans-serif !important;
	letter-spacing: normal !important;
}

.home .sg-why-choose h2,
.home .sg-why-choose h3,
.home .sg-why-choose p,
.home .sg-customer-feedback h2,
.home .sg-customer-feedback p,
.home .sg-faq h2,
.home .sg-faq summary,
.home .sg-faq details p {
	font-family: "Hind Siliguri", "Noto Sans Bengali", sans-serif !important;
	letter-spacing: 0 !important;
	word-spacing: normal !important;
	word-break: normal !important;
	overflow-wrap: break-word !important;
	text-transform: none !important;
}


/* ==========================================================
   10. WHY CHOOSE SHAJGHOR
   Required Group class: sg-why-choose
   ========================================================== */

.home .sg-why-choose {
	padding: clamp(34px, 5vw, 64px);
	border: 1px solid rgba(200, 162, 77, 0.28);
	border-radius: 26px;
	background:
		radial-gradient(circle at 92% 10%, rgba(200, 162, 77, 0.18), transparent 28%),
		linear-gradient(135deg, #09382B 0%, #163F34 100%);
	box-shadow: var(--sg-shadow);
}

.home .sg-why-choose > h2 {
	margin: 0 0 34px !important;
	color: #FFFFFF !important;
	font-size: clamp(2rem, 3.4vw, 3rem) !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	text-align: center !important;
}

.home .sg-why-choose > h2::after {
	content: "";
	display: block;
	width: 62px;
	height: 3px;
	margin: 15px auto 0;
	border-radius: 999px;
	background: var(--sg-gold);
}

.home .sg-why-choose > .wp-block-columns {
	align-items: stretch !important;
	gap: 18px;
}

.home .sg-why-choose .wp-block-column > .wp-block-group {
	height: 100%;
	padding: 24px 20px;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.97);
	box-shadow: 0 12px 28px rgba(5, 30, 23, 0.18);
	transition:
		transform 180ms ease,
		box-shadow 180ms ease;
}

.home .sg-why-choose h3 {
	margin: 0 0 12px !important;
	color: var(--sg-emerald-deep) !important;
	font-size: clamp(1.25rem, 1.7vw, 1.55rem) !important;
	font-weight: 700 !important;
	line-height: 1.45 !important;
}

.home .sg-why-choose p {
	margin: 0 !important;
	color: var(--sg-muted) !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 1.7 !important;
}

@media (hover: hover) {
	.home .sg-why-choose .wp-block-column > .wp-block-group:hover {
		transform: translateY(-5px);
		box-shadow: 0 18px 38px rgba(5, 30, 23, 0.25);
	}
}


/* ==========================================================
   11. CUSTOMER FEEDBACK
   Required Group class: sg-customer-feedback
   ========================================================== */

.home .sg-customer-feedback {
	padding: clamp(34px, 5vw, 58px);
	border: 1px solid rgba(200, 162, 77, 0.24);
	border-radius: 24px;
	background: linear-gradient(135deg, #EEF5F2 0%, #FFFFFF 100%);
	text-align: center;
	box-shadow: 0 12px 34px rgba(14, 77, 58, 0.07);
}

.home .sg-customer-feedback h2 {
	margin: 0 0 16px !important;
	color: var(--sg-emerald-deep) !important;
	font-size: clamp(2rem, 3.4vw, 3rem) !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
}

.home .sg-customer-feedback h2::after {
	content: "";
	display: block;
	width: 56px;
	height: 3px;
	margin: 14px auto 0;
	border-radius: 999px;
	background: var(--sg-gold);
}

.home .sg-customer-feedback p {
	max-width: 620px;
	margin: 0 auto !important;
	color: var(--sg-muted) !important;
	font-size: 16px !important;
	line-height: 1.75 !important;
}


/* ==========================================================
   12. FAQ
   Required Group class: sg-faq
   ========================================================== */

.home .sg-faq {
	padding: clamp(34px, 5vw, 60px);
	border: 1px solid rgba(200, 162, 77, 0.22);
	border-radius: 24px;
	background: #FCFBF7;
	box-shadow: 0 12px 34px rgba(14, 77, 58, 0.06);
}

.home .sg-faq > h2 {
	margin: 0 0 28px !important;
	color: var(--sg-emerald-deep) !important;
	font-size: clamp(2rem, 3.4vw, 3rem) !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	text-align: center !important;
}

.home .sg-faq > h2::after {
	content: "";
	display: block;
	width: 58px;
	height: 3px;
	margin: 14px auto 0;
	border-radius: 999px;
	background: var(--sg-gold);
}

.home .sg-faq details {
	margin: 0 0 12px;
	padding: 0 18px;
	border: 1px solid var(--sg-border);
	border-radius: 15px;
	background: #FFFFFF;
	box-shadow: 0 7px 20px rgba(14, 77, 58, 0.05);
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease;
}

.home .sg-faq details[open] {
	border-color: rgba(200, 162, 77, 0.72);
	box-shadow: 0 12px 26px rgba(14, 77, 58, 0.09);
}

.home .sg-faq summary {
	padding: 17px 0;
	color: var(--sg-emerald-deep) !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	line-height: 1.6 !important;
	cursor: pointer;
}

.home .sg-faq details p {
	margin: 0 !important;
	padding: 0 0 18px;
	color: var(--sg-muted) !important;
	font-size: 15px !important;
	line-height: 1.75 !important;
}


/* Bengali sections — mobile */
@media (max-width: 767px) {
	.home .sg-why-choose {
		padding: 30px 16px;
		border-radius: 20px;
	}

	.home .sg-why-choose > .wp-block-columns {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}

	.home .sg-why-choose .wp-block-column > .wp-block-group {
		padding: 18px 14px;
		border-radius: 15px;
	}

	.home .sg-customer-feedback,
	.home .sg-faq {
		padding: 28px 16px;
		border-radius: 19px;
	}

	.home .sg-why-choose > h2,
	.home .sg-customer-feedback h2,
	.home .sg-faq > h2 {
		font-size: 2rem !important;
		line-height: 1.4 !important;
	}

	.home .sg-why-choose h3 {
		font-size: 16px !important;
		line-height: 1.5 !important;
	}

	.home .sg-why-choose p {
		font-size: 13px !important;
		line-height: 1.65 !important;
	}

	.home .sg-customer-feedback p {
		font-size: 13px !important;
		line-height: 1.7 !important;
	}

	.home .sg-faq details {
		padding: 0 14px;
	}

	.home .sg-faq summary {
		padding: 15px 0;
		font-size: 14px !important;
		line-height: 1.6 !important;
	}

	.home .sg-faq details p {
		font-size: 13px !important;
		line-height: 1.7 !important;
	}
}


/* ==========================================================
   06. HOMEPAGE SECTION HEADINGS — FINAL
   Shop by Category / Featured Products / New Arrivals / Best Sellers
   ========================================================== */

.home .commerce-storefront-section--catalog > h2,
.home .sg-category-section > h2,
.home .sg-featured-products > h2,
.home .sg-new-arrivals > h2,
.home .sg-best-sellers > h2 {
	position: relative;
	width: 100%;
	max-width: 100%;
	margin: 0 auto 34px !important;
	color: #0E4D3A !important;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(2.6rem, 4.8vw, 4.5rem) !important;
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -0.04em;
	text-align: center !important;
	text-wrap: balance;
}

/* Gold eyebrow */
.home .commerce-storefront-section--catalog > h2::before,
.home .sg-category-section > h2::before,
.home .sg-featured-products > h2::before,
.home .sg-new-arrivals > h2::before,
.home .sg-best-sellers > h2::before {
	display: block;
	margin: 0 auto 14px;
	color: #C8A24D;
	font-family: system-ui, sans-serif;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: 0.22em;
	text-align: center;
	text-transform: uppercase;
}

/* Eyebrow text per section */
.home .commerce-storefront-section--catalog > h2::before,
.home .sg-category-section > h2::before {
	content: "—  ✦  EXPLORE OUR COLLECTION  ✦  —";
}

.home .sg-featured-products > h2::before {
	content: "—  ✦  HANDPICKED FOR YOU  ✦  —";
}

.home .sg-new-arrivals > h2::before {
	content: "—  ✦  JUST IN  ✦  —";
}

.home .sg-best-sellers > h2::before {
	content: "—  ✦  CUSTOMER FAVOURITES  ✦  —";
}

/* Subtitle per section */
.home .commerce-storefront-section--catalog > h2::after,
.home .sg-category-section > h2::after,
.home .sg-featured-products > h2::after,
.home .sg-new-arrivals > h2::after,
.home .sg-best-sellers > h2::after {
	display: block;
	max-width: 760px;
	margin: 14px auto 0;
	color: #5F6D67;
	font-family: system-ui, sans-serif;
	font-size: clamp(0.98rem, 1.35vw, 1.18rem);
	font-weight: 400;
	line-height: 1.65;
	letter-spacing: 0;
	text-align: center;
}

.home .commerce-storefront-section--catalog > h2::after,
.home .sg-category-section > h2::after {
	content: "Discover premium beauty essentials crafted for your daily routine.";
}

.home .sg-featured-products > h2::after {
	content: "A refined selection of beauty essentials chosen for quality and everyday elegance.";
}

.home .sg-new-arrivals > h2::after {
	content: "Explore the newest beauty additions freshly added to ShajGhor.";
}

.home .sg-best-sellers > h2::after {
	content: "Discover the products customers love and choose again and again.";
}


/* Mobile heading lock — one line */
@media (max-width: 767px) {
	.home .commerce-storefront-section--catalog > h2,
	.home .sg-category-section > h2,
	.home .sg-featured-products > h2,
	.home .sg-new-arrivals > h2,
	.home .sg-best-sellers > h2 {
		width: 100% !important;
		max-width: none !important;
		margin: 0 auto 26px !important;
		font-size: clamp(1.75rem, 8.4vw, 2.25rem) !important;
		line-height: 1.08 !important;
		letter-spacing: -0.035em !important;
		text-align: center !important;
		white-space: nowrap !important;
		text-wrap: nowrap !important;
	}

	.home .commerce-storefront-section--catalog > h2::before,
	.home .sg-category-section > h2::before,
	.home .sg-featured-products > h2::before,
	.home .sg-new-arrivals > h2::before,
	.home .sg-best-sellers > h2::before {
		margin-bottom: 10px !important;
		font-size: 8px !important;
		line-height: 1.3 !important;
		letter-spacing: 0.10em !important;
		white-space: nowrap !important;
	}

	.home .commerce-storefront-section--catalog > h2::after,
	.home .sg-category-section > h2::after,
	.home .sg-featured-products > h2::after,
	.home .sg-new-arrivals > h2::after,
	.home .sg-best-sellers > h2::after {
		max-width: 30ch !important;
		margin: 12px auto 0 !important;
		font-size: 13px !important;
		line-height: 1.55 !important;
		letter-spacing: 0 !important;
		white-space: normal !important;
		text-wrap: balance !important;
	}
}

/* Very small mobile heading lock */
@media (max-width: 360px) {
	.home .commerce-storefront-section--catalog > h2,
	.home .sg-category-section > h2,
	.home .sg-featured-products > h2,
	.home .sg-new-arrivals > h2,
	.home .sg-best-sellers > h2 {
		font-size: 1.7rem !important;
	}

	.home .commerce-storefront-section--catalog > h2::before,
	.home .sg-category-section > h2::before,
	.home .sg-featured-products > h2::before,
	.home .sg-new-arrivals > h2::before,
	.home .sg-best-sellers > h2::before {
		font-size: 7px !important;
		letter-spacing: 0.07em !important;
	}
}

/* ==========================================================
   07. SHOP BY CATEGORY — LOCKED
   Parent categories only
   Desktop: 6 columns
   Tablet: 4 columns
   Mobile: 3 × 2 grid
   Section class: sg-category-section
   List block class: sg-category-grid
   WooCommerce setting: Show hierarchy ON
   ========================================================== */

.home .sg-category-section {
	max-width: 1400px;
	margin: 80px auto;
	padding: 0 20px;
}

/* Actual WooCommerce category list */
.home .sg-category-grid.wc-block-product-categories-list,
.home .sg-category-grid .wc-block-product-categories-list {
	display: grid !important;
	grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
	gap: 22px !important;
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

/* Hide nested child-category lists on the Homepage only */
.home .sg-category-grid
	.wc-block-product-categories-list-item
	> .wc-block-product-categories-list,
.home .sg-category-grid
	.wc-block-product-categories-list-item
	> ul {
	display: none !important;
}

/* Category card */
.home .sg-category-grid .wc-block-product-categories-list-item,
.home .sg-category-grid.wc-block-product-categories-list
	> .wc-block-product-categories-list-item {
	min-width: 0 !important;
	width: 100% !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden;
	border: 1px solid var(--sg-border);
	border-radius: 20px;
	background: #FFFFFF;
	box-shadow: var(--sg-shadow-soft);
	transition:
		transform 180ms ease,
		border-color 180ms ease,
		box-shadow 180ms ease;
}

/* Entire clickable card */
.home .sg-category-grid .wc-block-product-categories-list-item > a,
.home .sg-category-grid.wc-block-product-categories-list
	> .wc-block-product-categories-list-item > a {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: flex-start !important;
	width: 100% !important;
	height: auto !important;
	min-height: 290px !important;
	padding: 18px 14px 16px !important;
	color: var(--sg-emerald-deep) !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	text-align: center !important;
	text-decoration: none !important;
}

/* Image wrapper */
.home .sg-category-grid
	.wc-block-product-categories-list-item__image,
.home .sg-category-grid figure {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 200px !important;
	margin: 0 auto 10px !important;
	overflow: visible !important;
	border: 0 !important;
	background: transparent !important;
}

/* Image */
.home .sg-category-grid
	.wc-block-product-categories-list-item__image img,
.home .sg-category-grid figure img,
.home .sg-category-grid
	.wc-block-product-categories-list-item > a > img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	margin: 0 auto !important;
	object-fit: contain !important;
	transform: scale(1.35) !important;
	transform-origin: center;
	transition: transform 200ms ease;
}

/* Gold arrow */
.home .sg-category-grid
	.wc-block-product-categories-list-item > a::after {
	content: "→";
	display: block;
	margin-top: auto;
	padding-top: 10px;
	color: var(--sg-gold);
	font-size: 21px;
	line-height: 1;
	transition: transform 180ms ease;
}

@media (hover: hover) {
	.home .sg-category-grid
		.wc-block-product-categories-list-item:hover {
		transform: translateY(-4px);
		border-color: rgba(200, 162, 77, 0.78);
		box-shadow: 0 16px 36px rgba(14, 77, 58, 0.13);
	}

	.home .sg-category-grid
		.wc-block-product-categories-list-item:hover img {
		transform: scale(1.40) !important;
	}

	.home .sg-category-grid
		.wc-block-product-categories-list-item:hover > a::after {
		transform: translateX(4px);
	}
}

/* Tablet */
@media (max-width: 1180px) {
	.home .sg-category-grid.wc-block-product-categories-list,
	.home .sg-category-grid .wc-block-product-categories-list {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	}
}

/* Mobile */
@media (max-width: 767px) {
	.home .sg-category-section {
		margin: 50px auto;
		padding: 0 10px;
	}

	.home .sg-category-grid.wc-block-product-categories-list,
	.home .sg-category-grid .wc-block-product-categories-list {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: 10px !important;
	}

	.home .sg-category-grid
		.wc-block-product-categories-list-item,
	.home .sg-category-grid.wc-block-product-categories-list
		> .wc-block-product-categories-list-item {
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		border-radius: 13px !important;
	}

	.home .sg-category-grid
		.wc-block-product-categories-list-item > a,
	.home .sg-category-grid.wc-block-product-categories-list
		> .wc-block-product-categories-list-item > a {
		width: 100% !important;
		height: auto !important;
		min-height: 155px !important;
		padding: 9px 5px 11px !important;
		font-size: 11px !important;
		line-height: 1.2 !important;
	}

	.home .sg-category-grid
		.wc-block-product-categories-list-item__image,
	.home .sg-category-grid figure {
		width: 100% !important;
		height: 88px !important;
		margin: 0 auto 7px !important;
	}

	.home .sg-category-grid
		.wc-block-product-categories-list-item__image img,
	.home .sg-category-grid figure img,
	.home .sg-category-grid
		.wc-block-product-categories-list-item > a > img {
		transform: scale(1.18) !important;
	}

	.home .sg-category-grid
		.wc-block-product-categories-list-item > a::after {
		display: none !important;
	}
}

/* Very small mobile */
@media (max-width: 360px) {
	.home .sg-category-grid.wc-block-product-categories-list,
	.home .sg-category-grid .wc-block-product-categories-list {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: 7px !important;
	}

	.home .sg-category-grid
		.wc-block-product-categories-list-item > a,
	.home .sg-category-grid.wc-block-product-categories-list
		> .wc-block-product-categories-list-item > a {
		min-height: 145px !important;
		padding: 7px 3px 9px !important;
		font-size: 10px !important;
	}

	.home .sg-category-grid
		.wc-block-product-categories-list-item__image,
	.home .sg-category-grid figure {
		height: 80px !important;
	}
}
/* Temporarily hide selected Homepage section */
.home .sg-hide-home-section {
	display: none !important;
}

/* ==========================================================
   15. SINGLE PRODUCT — LINKED PRODUCT GRID
   Theme owns presentation only; ShajGhor Commerce owns the
   single-product feature logic and purchase behaviour.
   ========================================================== */

body.single-product .woocommerce :where(.related.products, .up-sells.products, .upsells.products) {
	width: 100%;
}

body.single-product .woocommerce :where(.related.products, .up-sells.products, .upsells.products) ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(220px, 300px)) !important;
	justify-content: center !important;
	gap: 22px !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.single-product .woocommerce :where(.related.products, .up-sells.products, .upsells.products) ul.products li.product {
	width: 100% !important;
	max-width: 300px !important;
	margin: 0 !important;
	justify-self: center;
}

body.single-product .woocommerce :where(.related.products, .up-sells.products, .upsells.products) ul.products li.product img {
	object-fit: contain !important;
	background: #F5F8F7;
}


@media (max-width: 767px) {
	body.single-product .woocommerce :where(.related.products, .up-sells.products, .upsells.products) ul.products {
		grid-template-columns: repeat(auto-fit, minmax(135px, 1fr)) !important;
		justify-content: stretch !important;
		gap: 10px !important;
	}

	body.single-product .woocommerce :where(.related.products, .up-sells.products, .upsells.products) ul.products li.product {
		max-width: 280px !important;
	}
}


/* ==========================================================
   16. LINKED PRODUCTS VISIBILITY SAFETY — v1.8.3
   Presentation only. The plugin and WooCommerce retain all
   product-page layout and business logic.
   ========================================================== */

body.single-product .woocommerce :where(.related.products, .up-sells.products, .upsells.products) {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	width: 100% !important;
	max-width: none !important;
}

body.single-product .woocommerce :where(.related.products, .up-sells.products, .upsells.products) ul.products {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(220px, 300px)) !important;
	justify-content: center !important;
	align-items: stretch !important;
	gap: 22px !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.single-product .woocommerce :where(.related.products, .up-sells.products, .upsells.products) ul.products li.product {
	display: flex !important;
	flex-direction: column !important;
	visibility: visible !important;
	width: 100% !important;
	max-width: 300px !important;
	height: 100% !important;
	margin: 0 !important;
	justify-self: center !important;
}

@media (max-width: 767px) {
	body.single-product .woocommerce :where(.related.products, .up-sells.products, .upsells.products) ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		justify-content: stretch !important;
		gap: 10px !important;
	}

	body.single-product .woocommerce :where(.related.products, .up-sells.products, .upsells.products) ul.products li.product {
		max-width: none !important;
	}
}


/* ==========================================================
   17. PURCHASE ACTIONS — LOCKED v1.8.5
   Presentation only. ShajGhor Commerce owns Order Now logic.
   Homepage and product-category buttons remain side by side.
   ========================================================== */

/* ==========================================================
   SHAJGHOR HOMEPAGE PRODUCT BUTTONS — LOCKED
   Featured Products / New Arrivals / Best Sellers
   Default: Emerald
   Hover: Champagne Gold
   ========================================================== */

/* Product card grid structure */
.home :is(
	.sg-featured-products,
	.sg-new-arrivals,
	.sg-best-sellers
)
.wc-block-product:has(
	> .shajghor-order-now-form--home,
	> .shajghor-order-now-wrap--home
) {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	grid-template-rows: auto auto 1fr auto !important;
	column-gap: 10px !important;
	align-items: stretch !important;
}

/* Product image */
.home :is(
	.sg-featured-products,
	.sg-new-arrivals,
	.sg-best-sellers
)
.wc-block-product:has(
	> .shajghor-order-now-form--home,
	> .shajghor-order-now-wrap--home
)
> .wc-block-components-product-image {
	grid-column: 1 / -1 !important;
	grid-row: 1 !important;
}

/* Product title */
.home :is(
	.sg-featured-products,
	.sg-new-arrivals,
	.sg-best-sellers
)
.wc-block-product:has(
	> .shajghor-order-now-form--home,
	> .shajghor-order-now-wrap--home
)
> .wc-block-components-product-name {
	grid-column: 1 / -1 !important;
	grid-row: 2 !important;
}

/* Product price */
.home :is(
	.sg-featured-products,
	.sg-new-arrivals,
	.sg-best-sellers
)
.wc-block-product:has(
	> .shajghor-order-now-form--home,
	> .shajghor-order-now-wrap--home
)
> .wc-block-components-product-price {
	grid-column: 1 / -1 !important;
	grid-row: 3 !important;
	align-self: end !important;
}

/* Add to Cart wrapper — left */
.home :is(
	.sg-featured-products,
	.sg-new-arrivals,
	.sg-best-sellers
)
.wc-block-product
> .wc-block-components-product-button {
	grid-column: 1 !important;
	grid-row: 4 !important;
	display: flex !important;
	width: 100% !important;
	min-width: 0 !important;
	margin: auto 0 0 !important;
	position: relative !important;
	z-index: 2 !important;
}

/* Order Now wrapper — right */
.home :is(
	.sg-featured-products,
	.sg-new-arrivals,
	.sg-best-sellers
)
.wc-block-product
> :is(
	.shajghor-order-now-form--home,
	.shajghor-order-now-wrap--home
) {
	grid-column: 2 !important;
	grid-row: 4 !important;
	display: flex !important;
	width: 100% !important;
	min-width: 0 !important;
	margin: auto 0 0 !important;
	padding: 0 !important;
	position: relative !important;
	z-index: 3 !important;
	pointer-events: auto !important;
}

/* Both buttons — equal size */
.home :is(
	.sg-featured-products,
	.sg-new-arrivals,
	.sg-best-sellers
)
.wc-block-components-product-button__button,
.home :is(
	.sg-featured-products,
	.sg-new-arrivals,
	.sg-best-sellers
)
.shajghor-order-now--home {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	min-height: 40px !important;
	margin: 0 !important;
	padding: 8px 8px !important;
	border: 1px solid #0F5C4D !important;
	border-radius: 999px !important;
	background: #0F5C4D !important;
	color: #FFFFFF !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: 1.15 !important;
	text-align: center !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	cursor: pointer !important;
	pointer-events: auto !important;
	user-select: none !important;
	-webkit-user-select: none !important;
	box-shadow: 0 7px 16px rgba(15, 92, 77, 0.20) !important;
	transition:
		transform 180ms ease,
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease,
		box-shadow 180ms ease !important;
}

/* Ensure Order Now remains clickable */
.home :is(
	.sg-featured-products,
	.sg-new-arrivals,
	.sg-best-sellers
)
.shajghor-order-now--home {
	position: relative !important;
	z-index: 4 !important;
}

/* Keyboard focus — Champagne Gold */
.home :is(
	.sg-featured-products,
	.sg-new-arrivals,
	.sg-best-sellers
)
.wc-block-components-product-button__button:focus-visible,
.home :is(
	.sg-featured-products,
	.sg-new-arrivals,
	.sg-best-sellers
)
.shajghor-order-now--home:focus-visible {
	outline: 3px solid #C9A86A !important;
	outline-offset: 3px !important;
}

/* Desktop hover — Champagne Gold */
@media (hover: hover) {
	.home :is(
		.sg-featured-products,
		.sg-new-arrivals,
		.sg-best-sellers
	)
	.wc-block-components-product-button__button:hover,
	.home :is(
		.sg-featured-products,
		.sg-new-arrivals,
		.sg-best-sellers
	)
	.shajghor-order-now--home:hover {
		border-color: #C9A86A !important;
		background: #C9A86A !important;
		color: #0B473C !important;
		transform: translateY(-1px) !important;
		box-shadow: 0 10px 22px rgba(201, 168, 106, 0.28) !important;
		cursor: pointer !important;
	}
}

/* Mobile — keep both buttons side by side */
@media (max-width: 767px) {
	.home :is(
		.sg-featured-products,
		.sg-new-arrivals,
		.sg-best-sellers
	)
	.wc-block-product:has(
		> .shajghor-order-now-form--home,
		> .shajghor-order-now-wrap--home
	) {
		column-gap: 6px !important;
	}

	.home :is(
		.sg-featured-products,
		.sg-new-arrivals,
		.sg-best-sellers
	)
	.wc-block-components-product-button__button,
	.home :is(
		.sg-featured-products,
		.sg-new-arrivals,
		.sg-best-sellers
	)
	.shajghor-order-now--home {
		min-height: 32px !important;
		padding: 6px 3px !important;
		font-size: 9px !important;
	}
}
/* ==========================================================
   SHAJGHOR CATEGORY PRODUCT CARDS — LOCKED
   Add to Cart + Order Now side by side
   Default: Emerald | Hover: Champagne Gold
   Applies only to WooCommerce category pages
   ========================================================== */

/* Product card */
.tax-product_cat ul.products li.product:has(
	[class*="shajghor-order-now"]
) {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	grid-template-rows: auto auto auto auto 1fr auto !important;
	column-gap: 10px !important;
	row-gap: 0 !important;
	align-items: stretch !important;
}

/* সব সাধারণ content full card width নেবে */
.tax-product_cat ul.products li.product:has(
	[class*="shajghor-order-now"]
)
> :not(
	.ct-woo-card-actions,
	[class*="shajghor-order-now"]
) {
	grid-column: 1 / -1 !important;
}

/* Blocksy Add to Cart wrapper — left */
.tax-product_cat ul.products li.product
> .ct-woo-card-actions {
	grid-column: 1 !important;
	grid-row: 6 !important;

	display: flex !important;
	align-items: stretch !important;
	width: 100% !important;
	min-width: 0 !important;

	margin: 0 !important;
	padding: 0 !important;

	position: relative !important;
	z-index: 2 !important;
}

/* কিছু Blocksy version-এ action wrapper-এর অন্য class থাকতে পারে */
.tax-product_cat ul.products li.product
> :is(
	.ct-woo-card-actions,
	.ct-product-actions,
	.product-actions
) {
	grid-column: 1 !important;
	grid-row: 6 !important;

	display: flex !important;
	align-items: stretch !important;
	width: 100% !important;
	min-width: 0 !important;

	margin: 0 !important;
	padding: 0 !important;
}

/* Add to Cart button */
.tax-product_cat ul.products li.product
:is(
	.ct-woo-card-actions,
	.ct-product-actions,
	.product-actions
)
:is(
	a.button,
	button.button,
	.add_to_cart_button,
	.product_type_simple
) {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;

	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	min-height: 42px !important;

	margin: 0 !important;
	padding: 8px 6px !important;

	border: 1px solid #0F5C4D !important;
	border-radius: 999px !important;
	background: #0F5C4D !important;
	color: #FFFFFF !important;

	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: 1.15 !important;
	text-align: center !important;
	text-decoration: none !important;
	white-space: nowrap !important;

	box-shadow: 0 7px 16px rgba(15, 92, 77, 0.18) !important;
	cursor: pointer !important;
}

/* Order Now form/wrapper — right */
.tax-product_cat ul.products li.product
> :is(
	form[class*="shajghor-order-now"],
	div[class*="shajghor-order-now"],
	span[class*="shajghor-order-now"]
) {
	grid-column: 2 !important;
	grid-row: 6 !important;

	display: flex !important;
	align-items: stretch !important;
	width: 100% !important;
	min-width: 0 !important;

	margin: 0 !important;
	padding: 0 !important;

	position: relative !important;
	z-index: 3 !important;
	pointer-events: auto !important;
}

/* Order Now button */
.tax-product_cat ul.products li.product
:is(
	button[class*="shajghor-order-now"],
	a[class*="shajghor-order-now"],
	input[class*="shajghor-order-now"]
) {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;

	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	min-height: 42px !important;

	margin: 0 !important;
	padding: 8px 6px !important;

	border: 1px solid #0F5C4D !important;
	border-radius: 999px !important;
	background: #0F5C4D !important;
	color: #FFFFFF !important;

	font-size: 12px !important;
	font-weight: 700 !important;
	line-height: 1.15 !important;
	text-align: center !important;
	text-decoration: none !important;
	white-space: nowrap !important;

	box-shadow: 0 7px 16px rgba(15, 92, 77, 0.18) !important;
	cursor: pointer !important;
	pointer-events: auto !important;
}

/* Remove inherited spacing around both action areas */
.tax-product_cat ul.products li.product
:is(
	.ct-woo-card-actions,
	.ct-product-actions,
	.product-actions,
	form[class*="shajghor-order-now"],
	div[class*="shajghor-order-now"]
) {
	margin-top: auto !important;
	margin-bottom: 0 !important;
}

/* Hover — Champagne Gold */
@media (hover: hover) {

	.tax-product_cat ul.products li.product
	:is(
		.ct-woo-card-actions,
		.ct-product-actions,
		.product-actions
	)
	:is(
		a.button,
		button.button,
		.add_to_cart_button,
		.product_type_simple
	):hover,

	.tax-product_cat ul.products li.product
	:is(
		button[class*="shajghor-order-now"],
		a[class*="shajghor-order-now"],
		input[class*="shajghor-order-now"]
	):hover {
		border-color: #C9A86A !important;
		background: #C9A86A !important;
		color: #0B473C !important;

		transform: translateY(-1px) !important;
		box-shadow: 0 10px 22px rgba(201, 168, 106, 0.28) !important;
	}
}

/* Keyboard focus */
.tax-product_cat ul.products li.product
:is(
	.ct-woo-card-actions,
	.ct-product-actions,
	.product-actions
)
:is(
	a.button,
	button.button,
	.add_to_cart_button,
	.product_type_simple
):focus-visible,

.tax-product_cat ul.products li.product
:is(
	button[class*="shajghor-order-now"],
	a[class*="shajghor-order-now"],
	input[class*="shajghor-order-now"]
):focus-visible {
	outline: 3px solid #C9A86A !important;
	outline-offset: 3px !important;
}

/* Mobile */
@media (max-width: 767px) {

	.tax-product_cat ul.products li.product:has(
		[class*="shajghor-order-now"]
	) {
		column-gap: 6px !important;
	}

	.tax-product_cat ul.products li.product
	:is(
		.ct-woo-card-actions,
		.ct-product-actions,
		.product-actions
	)
	:is(
		a.button,
		button.button,
		.add_to_cart_button,
		.product_type_simple
	),

	.tax-product_cat ul.products li.product
	:is(
		button[class*="shajghor-order-now"],
		a[class*="shajghor-order-now"],
		input[class*="shajghor-order-now"]
	) {
		min-height: 33px !important;
		padding: 6px 2px !important;
		font-size: 9px !important;
	}
}

