/* ==========================================================================
   Single Product Page — Iniyam Gifts Premium Redesign
   Modern two-panel layout with sticky gallery, card summary, and micro-interactions.
   ========================================================================== */

/* Suppress in-page duplicate breadcrumbs (handled by top hero header) */
.single-product .woocommerce-breadcrumb,
.single-product .ast-breadcrumbs-wrap,
.ig-single-product .woocommerce-breadcrumb,
.ig-single-product .ast-breadcrumbs-wrap {
	display: none !important;
}

/* ── 1. Layout Structure ── */
.woocommerce div.product {
	margin: 16px auto 32px !important;
	max-width: 100% !important;
	width: 100% !important;
}

.ig-product-main-row {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 32px !important;
	align-items: start !important;
	width: 100% !important;
	margin-bottom: 32px !important;
}

/* Left side gallery: 40% width */
.ig-product-main-row div.images,
.ig-product-main-row .woocommerce-product-gallery {
	width: calc(40% - 16px) !important;
	max-width: calc(40% - 16px) !important;
	flex: 0 0 calc(40% - 16px) !important;
	float: left !important;
	position: sticky !important;
	top: 110px !important;
	align-self: start !important;
	margin: 0 0 30px !important;
	border-radius: var(--ig-r-lg);
	overflow: visible !important;
	background: var(--ig-bg);
	z-index: 10;
}

/* Right side content: 60% width */
.ig-product-main-row div.summary,
.ig-product-main-row .summary {
	width: calc(60% - 16px) !important;
	max-width: calc(60% - 16px) !important;
	flex: 0 0 calc(60% - 16px) !important;
	float: right !important;
	margin: 0 0 30px !important;
}

/* Tabs, Related & Upsells (Full Width) */
.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .related,
.woocommerce div.product .upsells {
	width: 100% !important;
	clear: both !important;
}

@media (max-width: 1024px) {
	.ig-product-main-row {
		display: block !important;
	}

	.ig-product-main-row div.images,
	.ig-product-main-row .woocommerce-product-gallery,
	.ig-product-main-row div.summary,
	.ig-product-main-row .summary {
		width: 100% !important;
		max-width: 100% !important;
		flex: 0 0 100% !important;
		float: none !important;
		position: static !important;
		margin-bottom: 30px !important;
	}
}

.woocommerce-product-gallery__image {
	border-radius: var(--ig-r-lg);
	overflow: hidden;
	background: var(--ig-bg);
	aspect-ratio: 1 / 1;
	transition: transform 0.4s var(--ig-ease);
}

.woocommerce-product-gallery__image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

/* Thumbnail strip adjustment */
.flex-control-thumbs {
	display: flex !important;
	gap: 12px !important;
	margin: 16px 0 0 !important;
	padding: 0 !important;
	list-style: none !important;
	flex-wrap: wrap;
}

.flex-control-thumbs li {
	width: 80px !important;
	height: 80px !important;
	border-radius: var(--ig-r-md) !important;
	overflow: hidden !important;
	border: 2px solid var(--ig-border) !important;
	cursor: pointer !important;
	transition:
		border-color var(--ig-transition),
		transform var(--ig-transition) !important;
}

.flex-control-thumbs li:hover,
.flex-control-thumbs li img.flex-active {
	border-color: var(--ig-primary) !important;
	transform: translateY(-2px);
}

.flex-control-thumbs li img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

/* ── 3. Right Column: Premium Summary Cards ── */
.woocommerce div.product .summary {
	float: none !important;
	margin: 0 !important;
	background: var(--ig-white) !important;
	border: 1px solid var(--ig-border) !important;
	border-radius: var(--ig-r-lg) !important;
	padding: 30px !important;
	box-shadow: var(--ig-shadow-sm) !important;
}

@media (max-width: 480px) {
	.woocommerce div.product .summary {
		padding: 24px;
	}
}

/* Category Trail */
.woocommerce div.product .posted_in,
.woocommerce div.product .product-categories {
	display: inline-block;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--ig-muted);
	margin-bottom: 12px;
	background: var(--ig-bg);
	padding: 4px 10px;
	border-radius: var(--ig-r-sm);
}

.woocommerce div.product .posted_in a {
	color: var(--ig-primary);
	text-decoration: none;
}

/* Product Title */
.woocommerce div.product .product_title {
	font-family: var(--ig-font-display) !important;
	font-size: clamp(24px, 3.5vw, 28px) !important;
	font-weight: 800 !important;
	color: var(--ig-dark) !important;
	line-height: 1.25 !important;
	margin: 0 0 16px !important;
}

/* Rating Row */
.woocommerce div.product .woocommerce-product-rating {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 20px;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--ig-border-light);
}

.woocommerce div.product .woocommerce-product-rating .star-rating {
	float: none !important;
	margin: 0 !important;
	color: var(--ig-accent) !important;
}

.woocommerce div.product .woocommerce-product-rating .woocommerce-review-link {
	font-size: 13.5px;
	color: var(--ig-muted);
	text-decoration: none;
	font-weight: 500;
}

.woocommerce
	div.product
	.woocommerce-product-rating
	.woocommerce-review-link:hover {
	color: var(--ig-primary);
}

/* Pricing Section */
.woocommerce div.product p.price,
.woocommerce div.product span.price {
	margin: 0 0 24px !important;
	display: flex !important;
	align-items: baseline !important;
	gap: 10px !important;
	flex-wrap: wrap !important;
}

/* Active Price Sizing (32px Bold) for ALL products (Simple & Variable) */
.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins,
.woocommerce div.product p.price ins *,
.woocommerce div.product span.price ins *,
.woocommerce div.product p.price > .woocommerce-Price-amount,
.woocommerce div.product span.price > .woocommerce-Price-amount,
.woocommerce div.product p.price > .woocommerce-Price-amount *,
.woocommerce div.product span.price > .woocommerce-Price-amount *,
.woocommerce div.product p.price .amount,
.woocommerce div.product span.price .amount,
.woocommerce div.product p.price bdi,
.woocommerce div.product span.price bdi {
	font-size: 32px !important;
	font-weight: 800 !important;
	color: var(--ig-primary, #2d6970) !important;
	text-decoration: none !important;
	line-height: 1.1 !important;
}

/* Strikethrough Original Price Sizing (16px) */
.woocommerce div.product p.price del,
.woocommerce div.product span.price del,
.woocommerce div.product p.price del *,
.woocommerce div.product span.price del * {
	font-size: 16px !important;
	font-weight: 500 !important;
	color: #94a3b8 !important;
	text-decoration: line-through !important;
}

/* "You save..." discount text — small 13px red text */
.woocommerce div.product p.price .you-save,
.woocommerce div.product p.price .discount-amount,
.woocommerce div.product p.price .save-price,
.woocommerce div.product p.price span[class*="save"],
.woocommerce div.product p.price span[class*="discount"],
.woocommerce div.product p.price span.save,
.woocommerce div.product p.price span.discount {
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #dc2626 !important;
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	margin-left: 6px !important;
	display: inline !important;
}

/* Stock Status */
.woocommerce div.product .stock {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	font-weight: 700;
	padding: 6px 14px;
	border-radius: var(--ig-r-pill);
	margin-bottom: 24px;
}

.woocommerce div.product .stock::before {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 50%;
	display: inline-block;
	background: currentColor;
}

.woocommerce div.product .in-stock {
	background: #ecfdf5;
	color: #059669;
}

.woocommerce div.product .out-of-stock {
	background: #fef2f2;
	color: #dc2626;
}

/* Short Description */
.woocommerce div.product .woocommerce-product-details__short-description {
	font-size: 14.5px;
	color: var(--ig-body);
	line-height: 1.8;
	margin-bottom: 28px;
	padding: 18px 24px;
	background: var(--ig-bg);
	border-radius: var(--ig-r-md);
	border-left: 4px solid var(--ig-primary);
}

.woocommerce
	div.product
	.woocommerce-product-details__short-description
	p:last-child {
	margin-bottom: 0;
}

/* ── 4. Add to Cart Form & Swatches ── */
.woocommerce div.product form.cart {
	margin-bottom: 28px;
	padding-bottom: 24px;
	border-bottom: 1px solid var(--ig-border-light);
}

/* Swatches & Variations styling overrides */
.woo-variation-items-wrapper {
	margin-bottom: 24px !important;
}

.woocommerce div.product form.cart .variations {
	width: 100% !important;
	border-collapse: collapse !important;
	border: none !important;
	margin-bottom: 24px !important;
	display: block !important;
}

.woocommerce div.product form.cart .variations tr {
	display: block !important;
	margin-bottom: 22px !important;
	border: none !important;
}

.woocommerce div.product form.cart .variations td {
	display: block !important;
	padding: 0 !important;
	border: none !important;
	background: none !important;
}

.woocommerce div.product form.cart .variations td.label {
	margin-bottom: 8px !important;
}

.woocommerce div.product form.cart .variations td.label label {
	font-weight: 700 !important;
	color: var(--ig-heading) !important;
	font-size: 13px !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
}

/* Style default select dropdowns */
.woocommerce div.product form.cart .variations select {
	width: 100% !important;
	max-width: 100% !important;
	padding: 12px 16px !important;
	border: 1px solid var(--ig-border) !important;
	border-radius: var(--ig-r-md) !important;
	background-color: var(--ig-bg) !important;
	color: var(--ig-heading) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	outline: none !important;
	transition: all 0.3s var(--ig-ease) !important;
	cursor: pointer !important;
	appearance: none !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%232d6970' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 16px center !important;
	background-size: 12px !important;
}

.woocommerce div.product form.cart .variations select:focus {
	border-color: var(--ig-primary) !important;
	background-color: var(--ig-white) !important;
	box-shadow: var(--ig-shadow-xs) !important;
}

/* Reset / Clear link style */
.woocommerce div.product form.cart .reset_variations {
	font-size: 11px !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
	color: var(--ig-muted) !important;
	background: var(--ig-border-light) !important;
	padding: 3px 10px !important;
	border-radius: 100px !important;
	text-decoration: none !important;
	margin-top: 10px !important;
	display: inline-block !important;
	font-weight: 700 !important;
	transition: all var(--ig-transition) !important;
}

.woocommerce div.product form.cart .reset_variations:hover {
	color: var(--ig-accent) !important;
	background: var(--ig-accent-light) !important;
}

/* Woo Variation Swatches Custom Styling */
.woo-variation-items-wrapper .variable-items-wrapper,
ul.variable-items-wrapper {
	gap: 8px !important;
	margin: 6px 0 0 !important;
	padding: 0 !important;
	display: flex !important;
	flex-wrap: wrap !important;
	list-style: none !important;
}

.woo-variation-items-wrapper .variable-items-wrapper .variable-item,
ul.variable-items-wrapper li.variable-item {
	border: 1.5px solid var(--ig-border) !important;
	border-radius: var(--ig-r-pill) !important;
	background-color: var(--ig-white) !important;
	padding: 6px 14px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: var(--ig-heading) !important;
	transition: all 0.2s var(--ig-ease) !important;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 44px !important;
	height: auto !important;
	cursor: pointer !important;
	margin: 0 !important;
}

.woo-variation-items-wrapper .variable-items-wrapper .variable-item:hover,
ul.variable-items-wrapper li.variable-item:hover {
	border-color: var(--ig-primary) !important;
	color: var(--ig-primary) !important;
	background-color: var(--ig-primary-light) !important;
	transform: translateY(-1px) !important;
}

.woo-variation-items-wrapper .variable-items-wrapper .variable-item.selected,
ul.variable-items-wrapper li.variable-item.selected {
	border-color: var(--ig-primary) !important;
	background-color: var(--ig-primary-light) !important;
	color: var(--ig-primary) !important;
	font-weight: 700 !important;
	box-shadow: 0 0 0 1.5px var(--ig-primary) !important;
	transform: none !important;
}

.woo-variation-items-wrapper .variable-items-wrapper .variable-item.disabled {
	opacity: 0.5 !important;
	border-color: var(--ig-border-light) !important;
	color: var(--ig-muted) !important;
	background-color: var(--ig-bg) !important;
	cursor: not-allowed !important;
	text-decoration: line-through !important;
}

/* Hide duplicate variation price block above Availability / Stock status */
.single_variation_wrap .woocommerce-variation-price,
.woocommerce-variation-single-variation .woocommerce-variation-price,
.woocommerce-variation-price {
	display: none !important;
}

/* Estimated Dispatch Card Box */
.estimated-dispatch-time,
.estimated-dispatch,
#estimated-dispatch-time,
#estimated-dispatch {
	background: #f0fdf4 !important;
	border: 1.5px solid #bbf7d0 !important;
	border-radius: 12px !important;
	padding: 14px 18px !important;
	font-size: 13.5px !important;
	color: #166534 !important;
	font-weight: 500 !important;
	margin: 18px 0 !important;
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	line-height: 1.5 !important;
}

/* Add to Cart Actions Bar */
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	flex-wrap: wrap !important;
	width: 100% !important;
	margin-top: 16px !important;
}

.woocommerce div.product form.cart button.single_add_to_cart_button,
.woocommerce div.product form.cart .button,
button.single_add_to_cart_button.button {
	flex: 1 !important;
	min-width: 200px !important;
	background: linear-gradient(135deg, #2d6970 0%, #155731 100%) !important;
	background-color: #2d6970 !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 100px !important;
	padding: 15px 32px !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	font-family: var(--ig-font, "Outfit", sans-serif) !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	box-shadow: 0 6px 20px rgba(45, 105, 112, 0.3) !important;
	transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
	cursor: pointer !important;
	text-align: center !important;
}

.woocommerce div.product form.cart button.single_add_to_cart_button:hover,
button.single_add_to_cart_button.button:hover {
	background: linear-gradient(135deg, #155731 0%, #0f381f 100%) !important;
	background-color: #155731 !important;
	color: #ffffff !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 10px 28px rgba(45, 105, 112, 0.45) !important;
}

/* ── 5. Consolidated Product Concierge Card ── */
.ig-single-product-concierge-card {
	background: linear-gradient(135deg, #f0fdf4 0%, #e8f5e9 100%) !important;
	border: 1.5px solid #c8e6c9 !important;
	border-radius: 18px !important;
	padding: 20px 24px !important;
	margin-top: 24px !important;
	box-shadow: 0 4px 20px rgba(31, 122, 70, 0.06) !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 14px !important;
}

.ig-concierge-trust-row {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 10px !important;
	padding-bottom: 12px !important;
	border-bottom: 1px dashed #bbf7d0 !important;
	flex-wrap: wrap !important;
}

.ig-concierge-trust-item {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	font-size: 12.5px !important;
	font-weight: 700 !important;
	color: #166534 !important;
}

.ig-concierge-trust-item svg {
	stroke: #166534 !important;
	flex-shrink: 0 !important;
}

.ig-concierge-bulk-bar {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	flex-wrap: wrap !important;
}

.ig-concierge-bulk-info {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	font-size: 13.5px !important;
	color: #334155 !important;
}

.ig-concierge-bulk-info strong {
	color: #0f172a !important;
}

/* Distinct Worldwide Shipping Feature Pill */
.ig-worldwide-shipping-pill {
	display: inline-flex !important;
	align-items: center !important;
	gap: 7px !important;
	background: linear-gradient(135deg, #eff6ff 0%, #e0f2fe 100%) !important;
	border: 1px solid #bae6fd !important;
	color: #0369a1 !important;
	padding: 5px 14px !important;
	border-radius: 100px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 0.02em !important;
	box-shadow: 0 2px 8px rgba(3, 105, 161, 0.08) !important;
	white-space: nowrap !important;
}

.ig-worldwide-shipping-pill svg {
	stroke: #0284c7 !important;
	flex-shrink: 0 !important;
}

.ig-single-product-concierge-card .ig-btn-whatsapp-inquiry {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px !important;
	background: linear-gradient(135deg, #1f7a46 0%, #155731 100%) !important;
	color: #ffffff !important;
	font-size: 14.5px !important;
	font-weight: 700 !important;
	padding: 13px 24px !important;
	border-radius: 100px !important;
	text-decoration: none !important;
	box-shadow: 0 6px 20px rgba(31, 122, 70, 0.25) !important;
	transition: all 0.3s ease !important;
}

.ig-single-product-concierge-card .ig-btn-whatsapp-inquiry:hover {
	background: linear-gradient(135deg, #248a50 0%, #186438 100%) !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 26px rgba(31, 122, 70, 0.38) !important;
}

/* ── 5. Trust Badges & CTAs (Single Line Layout) ── */
.ig-trust-badges {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 10px !important;
	align-items: center !important;
	margin-bottom: 24px !important;
	padding: 16px 0 !important;
	border-top: 1px solid var(--ig-border-light) !important;
	border-bottom: 1px solid var(--ig-border-light) !important;
}

.ig-trust-badge {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	color: var(--ig-body) !important;
	white-space: nowrap !important;
}

.ig-trust-badge span.icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: var(--ig-primary) !important;
	background: var(--ig-primary-light) !important;
	width: 26px !important;
	height: 26px !important;
	border-radius: 50% !important;
	flex-shrink: 0 !important;
}

.ig-trust-badge span.icon .ig-svg-icon {
	width: 14px !important;
	height: 14px !important;
	stroke-width: 2.5 !important;
}

@media (max-width: 580px) {
	.ig-trust-badges {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 12px 8px !important;
	}
	.ig-trust-badge {
		justify-content: flex-start !important;
	}
}

/* WhatsApp Inquiry Button */
.ig-whatsapp-inquiry-wrap {
	margin-bottom: 24px;
}

.ig-btn-whatsapp-inquiry {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	padding: 12px 24px;
	background: var(--ig-white);
	border: 1.5px solid #25d366;
	color: #25d366;
	font-weight: 700;
	font-size: 14.5px;
	border-radius: var(--ig-r-pill);
	text-decoration: none;
	transition: all 0.3s var(--ig-ease);
}

.ig-btn-whatsapp-inquiry:hover {
	background: #25d366;
	color: var(--ig-white);
	box-shadow: 0 4px 16px rgba(37, 211, 102, 0.25);
	transform: translateY(-1px);
}

.ig-btn-whatsapp-inquiry .ig-svg-icon {
	width: 18px;
	height: 18px;
	fill: currentColor;
	stroke: none;
}

/* ── 6. Ultra-Modern Custom Product Meta Card ── */
.ig-product-meta-card {
	background: #f8fafc !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 16px !important;
	padding: 20px 22px !important;
	margin-top: 28px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.02) !important;
}

.ig-meta-row {
	display: flex !important;
	align-items: flex-start !important;
	gap: 12px !important;
}

.ig-meta-label {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	font-family: var(--ig-font) !important;
	font-size: 11.5px !important;
	font-weight: 700 !important;
	color: var(--ig-muted) !important;
	text-transform: uppercase !important;
	letter-spacing: 0.08em !important;
	min-width: 105px !important;
	padding-top: 4px !important;
	flex-shrink: 0 !important;
}

.ig-meta-label svg {
	color: var(--ig-primary) !important;
}

.ig-meta-sku-val {
	font-family: var(--ig-font) !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	color: var(--ig-heading) !important;
	background: #ffffff !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 6px !important;
	padding: 2px 10px !important;
}

/* Category Pill Badges */
.ig-meta-pills-wrap {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
}

.ig-cat-badge {
	display: inline-flex !important;
	align-items: center !important;
	padding: 5px 14px !important;
	background: var(--ig-primary-light) !important;
	color: var(--ig-primary) !important;
	border: 1px solid rgba(45, 105, 112, 0.2) !important;
	border-radius: 100px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	text-decoration: none !important;
	transition: all 0.22s var(--ig-ease) !important;
	box-shadow: 0 1px 3px rgba(45, 105, 112, 0.08) !important;
}

.ig-cat-badge:hover {
	background: var(--ig-primary) !important;
	color: #ffffff !important;
	border-color: var(--ig-primary) !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 4px 12px rgba(45, 105, 112, 0.28) !important;
}

/* Tag Micro Chips */
.ig-meta-chips-wrap {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 6px !important;
}

.ig-tag-chip {
	display: inline-flex !important;
	align-items: center !important;
	padding: 4px 11px !important;
	background: #ffffff !important;
	color: var(--ig-body) !important;
	border: 1px solid #cbd5e1 !important;
	border-radius: 8px !important;
	font-size: 11.5px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	transition: all 0.2s var(--ig-ease) !important;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) !important;
}

.ig-tag-chip:hover {
	background: var(--ig-primary-light) !important;
	color: var(--ig-primary) !important;
	border-color: var(--ig-primary) !important;
	transform: translateY(-1px) !important;
}

/* Hidden Tags & Expand Toggle */
.ig-meta-tags.ig-tags-collapsed .ig-hidden-tags-container {
	display: none !important;
}

.ig-meta-tags.ig-tags-expanded .ig-hidden-tags-container {
	display: inline-flex !important;
	flex-wrap: wrap !important;
	gap: 6px !important;
}

.ig-toggle-tags-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 4px 13px !important;
	background: var(--ig-accent-light) !important;
	color: var(--ig-accent-dark) !important;
	border: 1px solid rgba(202, 140, 124, 0.35) !important;
	border-radius: 100px !important;
	font-size: 11.5px !important;
	font-weight: 700 !important;
	font-family: var(--ig-font) !important;
	cursor: pointer !important;
	transition: all 0.2s var(--ig-ease) !important;
	outline: none !important;
}

.ig-toggle-tags-btn:hover,
.ig-toggle-tags-btn.active {
	background: var(--ig-accent) !important;
	color: #ffffff !important;
	border-color: var(--ig-accent) !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 3px 10px rgba(202, 140, 124, 0.3) !important;
}

/* Suppress legacy WooCommerce product_meta if rendered elsewhere */
.woocommerce div.product .product_meta:not(.ig-product-meta-card) {
	display: none !important;
}

/* ── 7. Tabs Redesign ── */
.woocommerce div.product .woocommerce-tabs {
	grid-column: 1 / -1;
	margin-top: 48px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	display: flex;
	gap: 8px;
	padding: 0;
	margin: 0 0 -2px;
	list-style: none;
	border-bottom: 2px solid var(--ig-border);
	flex-wrap: wrap;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	margin: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after,
.woocommerce div.product .woocommerce-tabs ul.tabs::before {
	display: none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
	display: block;
	padding: 14px 28px;
	font-size: 14.5px;
	font-weight: 700;
	color: var(--ig-muted);
	text-decoration: none;
	border-bottom: 2px solid transparent;
	transition: all var(--ig-transition);
	font-family: var(--ig-font);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
	color: var(--ig-primary);
	background: var(--ig-primary-light);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
	color: var(--ig-primary);
	border-bottom-color: var(--ig-primary);
	background: var(--ig-white);
}

/* Tab Panels */
.woocommerce div.product .woocommerce-tabs .panel {
	background: var(--ig-white);
	border: 1px solid var(--ig-border);
	border-top: none;
	border-radius: 0 0 var(--ig-r-lg) var(--ig-r-lg);
	padding: 48px;
	box-shadow: var(--ig-shadow-sm);
}

.woocommerce div.product .woocommerce-tabs .panel h2 {
	font-family: var(--ig-font-display);
	font-size: 22px;
	font-weight: 800;
	color: var(--ig-heading);
	margin: 0 0 20px;
}

.woocommerce div.product .woocommerce-tabs .panel p {
	color: var(--ig-body);
	line-height: 1.8;
	font-size: 15px;
}

/* Attribute Table */
.woocommerce div.product .woocommerce-tabs table.shop_attributes {
	width: 100% !important;
	border-collapse: collapse !important;
	border: none !important;
	margin: 0 0 24px !important;
}

.woocommerce div.product .woocommerce-tabs table.shop_attributes tr {
	border-bottom: 1px solid var(--ig-border-light) !important;
	background: none !important;
}

.woocommerce div.product .woocommerce-tabs table.shop_attributes tr:last-child {
	border-bottom: none !important;
}

.woocommerce div.product .woocommerce-tabs table.shop_attributes th {
	width: 250px !important;
	max-width: 250px !important;
	padding: 16px 24px 16px 0 !important;
	font-weight: 700 !important;
	color: var(--ig-heading) !important;
	font-size: 14px !important;
	text-align: left !important;
	vertical-align: middle !important;
	border: none !important;
	background: none !important;
}

.woocommerce div.product .woocommerce-tabs table.shop_attributes td {
	padding: 16px 0 !important;
	color: var(--ig-body) !important;
	font-size: 14px !important;
	font-style: normal !important;
	border: none !important;
	background: none !important;
	vertical-align: middle !important;
}

.woocommerce div.product .woocommerce-tabs table.shop_attributes td p {
	margin: 0 !important;
	padding: 0 !important;
}

/* ── 8. Related & Upsell Sections ── */
.related,
.upsells {
	margin-top: 56px !important;
	padding-top: 40px !important;
	border-top: 1px solid var(--ig-border-light) !important;
	width: 100% !important;
	clear: both !important;
	overflow: visible !important;
}

/* Section Heading */
.related > h2,
.upsells > h2 {
	font-family: var(--ig-font-display) !important;
	font-size: 28px !important;
	font-weight: 700 !important;
	color: var(--ig-heading) !important;
	margin-bottom: 32px !important;
	position: relative !important;
	padding-bottom: 12px !important;
	text-transform: capitalize !important;
	letter-spacing: -0.01em !important;
	text-align: center !important;
}

.related > h2::after,
.upsells > h2::after {
	content: "" !important;
	position: absolute !important;
	bottom: 0 !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	width: 60px !important;
	height: 3px !important;
	background: var(--ig-primary) !important;
	border-radius: var(--ig-r-pill) !important;
}

/* Related & Upsells Products Grid */
.related ul.products,
.upsells ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 24px !important;
	margin: 0 0 40px 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

/* Related card structure overrides for single product page */
.related ul.products li.product.ig-pc,
.upsells ul.products li.product.ig-pc {
	background: var(--ig-white) !important;
	border: 1px solid var(--ig-border) !important;
	border-radius: 18px !important;
	overflow: hidden !important;
	display: flex !important;
	flex-direction: column !important;
	transition:
		transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
		box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04) !important;
	margin: 0 !important;
	width: 100% !important;
	height: 100% !important;
	opacity: 1 !important;
	transform: none !important;
}

.related ul.products li.product.ig-pc:hover,
.upsells ul.products li.product.ig-pc:hover {
	transform: translateY(-5px) !important;
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.1) !important;
	border-color: rgba(45, 105, 112, 0.2) !important;
}

/* Responsive Grid columns */
@media (max-width: 1024px) {
	.related ul.products,
	.upsells ul.products {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 20px !important;
	}
}

@media (max-width: 480px) {
	.related ul.products,
	.upsells ul.products {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}
}

/* ── Container & Whitespace Collapse ── */

/* Astra default: .ast-separate-container #primary { padding: 4em 0; margin: 4em 0 } */
.single-product.ast-separate-container #primary,
.single-product .ast-separate-container #primary {
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
}

/* Astra default: .ast-separate-container .ast-article-single { padding: 5.34em 6.67em } */
.single-product .ast-article-single,
.single-product.ast-separate-container .ast-article-single {
	/* padding/margin handled by global ast-article-single rule in style.css */
	border-bottom: 0 !important;
}

/* Astra default: #primary { margin: 4em 0 }
 * Padding handled by --ig-page-pt/pb token override in style.css.
 * Remove only margins to prevent Astra's 4em top-margin. */
.single-product #primary {
	margin: 0 !important;
}

/* .site-content padding/margin — handled by global rule in style.css */
.single-product .site-content,
.single-product #content {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

/* Widen the container to reduce side whitespace */
.single-product .ast-container,
.single-product-page .ast-container {
	max-width: 98% !important;
	width: 98% !important;
	padding: 0 !important;
}

/* Product wrapper */
.single-product div.product {
	max-width: 100% !important;
}

/* Ensure sticky gallery is not clipped — overflow must remain visible on all ancestors */
.single-product .site-content,
.single-product #primary,
.single-product #main,
.single-product .hentry,
.single-product .ast-article-single,
.single-product div.product,
.single-product .ig-product-main-row {
	overflow: visible !important;
}

/* Position and style WooCommerce single product Sale badge (Main Image only) */
.woocommerce div.product > span.onsale,
.woocommerce div.product > .ig-product-main-row span.onsale,
.woocommerce-page div.product > span.onsale {
	position: absolute !important;
	top: 16px !important;
	left: 16px !important;
	margin: 0 !important;
	z-index: 20 !important;
	background: var(--ig-accent) !important;
	color: var(--ig-white) !important;
	font-weight: 700 !important;
	padding: 6px 14px !important;
	border-radius: var(--ig-r-pill) !important;
	box-shadow: 0 4px 10px rgba(202, 140, 124, 0.4) !important;
	font-size: 12px !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
	border: none !important;
}

/* Ensure related product sale badges don't get broken by the main image badge styling */
.woocommerce div.product ul.products li.product span.onsale {
	position: absolute !important;
	top: 12px !important;
	left: 12px !important;
	right: auto !important;
	margin: 0 !important;
	z-index: 5 !important;
	background: var(--ig-accent) !important;
	color: var(--ig-white) !important;
	font-weight: 700 !important;
	padding: 4px 10px !important;
	border-radius: var(--ig-r-pill) !important;
	font-size: 11px !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
	border: none !important;
	box-shadow: none !important;
	transform: none !important;
}

/* ── Sale Badge inside Related / Upsell product image links ── */
.related ul.products li.product .ig-sale-badge,
.upsells ul.products li.product .ig-sale-badge {
	position: absolute !important;
	top: 10px !important;
	left: 10px !important;
	z-index: 10 !important;
	display: inline-flex !important;
	align-items: center !important;
	background: var(--ig-accent) !important;
	color: #fff !important;
	font-family: var(--ig-font) !important;
	font-size: 10px !important;
	font-weight: 700 !important;
	letter-spacing: 0.07em !important;
	text-transform: uppercase !important;
	padding: 4px 10px !important;
	border-radius: var(--ig-r-pill) !important;
	box-shadow: 0 2px 8px rgba(202, 140, 124, 0.35) !important;
	line-height: 1 !important;
	pointer-events: none !important;
}

/* ── Suppress estimated dispatch & WhatsApp inquiry inside Astra sticky add-to-cart bar ── */
.ast-sticky-add-to-cart .estimated-dispatch,
.ast-sticky-add-to-cart #estimated-dispatch,
.ast-sticky-add-to-cart .estimated-dispatch-time,
.ast-sticky-add-to-cart #estimated-dispatch-time,
.ast-sticky-add-to-cart .product-whatsapp-div,
.ast-sticky-add-to-cart #product-whatsapp-div,
.ast-sticky-add-to-cart .product-whatsapp,
.ast-sticky-add-to-cart #product-whatsapp,
.ast-sticky-add-to-cart .ig-whatsapp-inquiry-wrap,
.ast-sticky-add-to-cart #ig-whatsapp-inquiry-wrap,
.ast-sticky-add-to-cart .quantity,
.ast-sticky-add-to-cart [class*="estimated-dispatch"],
.ast-sticky-add-to-cart [class*="whatsapp-div"],
.ast-sticky-add-to-cart [class*="product-whatsapp"] {
	display: none !important;
}

/* ── Expandable Tags Container & Toggle Button ── */
.tagged_as.ig-tags-collapsed .ig-hidden-tags-container {
	display: none !important;
}

.tagged_as.ig-tags-expanded .ig-hidden-tags-container {
	display: inline-flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 6px !important;
}

.ig-toggle-tags-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 4px 12px !important;
	background: var(--ig-primary-light) !important;
	color: var(--ig-primary) !important;
	border: 1px solid rgba(45, 105, 112, 0.3) !important;
	border-radius: var(--ig-r-pill) !important;
	font-size: 11.5px !important;
	font-weight: 700 !important;
	font-family: var(--ig-font) !important;
	cursor: pointer !important;
	transition: all 0.2s var(--ig-ease) !important;
	margin: 2px 0 2px 6px !important;
	outline: none !important;
	vertical-align: middle !important;
}

.ig-toggle-tags-btn:hover,
.ig-toggle-tags-btn.active {
	background: var(--ig-primary) !important;
	color: var(--ig-white) !important;
	border-color: var(--ig-primary) !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 3px 10px rgba(45, 105, 112, 0.25) !important;
}
/* ── 12. Micro Bulk & Customization Notice Card ── */
.ig-product-bulk-notice-card {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 20px;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 12px 16px;
	margin: 16px 0;
}

.ig-product-bulk-notice-item {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	color: #334155;
}

.ig-product-bulk-notice-item svg {
	stroke: #2d6970;
	flex-shrink: 0;
}

.ig-product-bulk-notice-item strong {
	color: #0f172a;
}

/* ── Mobile Responsiveness for Concierge Card ── */
@media (max-width: 768px) {
	.ig-single-product-concierge-card {
		padding: 16px !important;
		gap: 12px !important;
	}

	.ig-concierge-trust-row {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 8px !important;
	}

	.ig-concierge-bulk-bar {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 10px !important;
	}

	.ig-worldwide-shipping-pill {
		width: 100% !important;
		justify-content: center !important;
		box-sizing: border-box !important;
	}

	.ig-single-product-concierge-card .ig-btn-whatsapp-inquiry {
		width: 100% !important;
		padding: 12px 18px !important;
		font-size: 13.5px !important;
		box-sizing: border-box !important;
		text-align: center !important;
	}
}
