/**
 * MOVIN - Single Product & Checkout Premium Design Stylesheet
 * Brand Colors: Forest Green (#233D2D), Accent Gold (#C28D38), Sage Tint (#FAF8F5)
 * Typography: Poppins (Headings, CTAs & Body)
 */

/* ==========================================================================
   1. GLOBAL ARCHITECTURE & TOP SPACING
   ========================================================================== */

/* Spacing under sticky header */
.single-product .site-main,
.single-product #main,
.single-product .product-entry-wrapper {
	padding-top: 40px !important;
	background-color: #FFFFFF !important;
}

body.woocommerce-checkout #main-container,
body.woocommerce-checkout .site-main,
body.woocommerce-checkout main#main,
body.woocommerce-checkout main,
body.woocommerce-checkout .entry-content,
body.woocommerce-checkout [data-vertical-spacing*="top"],
body.woocommerce-checkout .ct-container-full,
body.woocommerce-checkout .ct-container {
	padding-top: 0 !important;
	margin-top: 0 !important;
	--theme-content-vertical-spacing: 0px !important;
	background-color: #FFFFFF !important;
}

body.woocommerce-checkout .movin-page-title-banner {
	padding: 50px 30px !important;
	margin-top: 0 !important;
	margin-bottom: 24px !important;
}

/* Ensure no shop loop top margin bleeds into single product related grid */
.single-product .related ul.products,
.single-product .movin-related-section ul.products,
.single-product .movin-related-grid {
	margin-top: 24px !important;
	margin-bottom: 30px !important;
}

/* ==========================================================================
   2. SINGLE PRODUCT PAGE: GALLERY & IMAGE HEIGHT (SINGLE BOX FIX)
   ========================================================================== */

/* Main gallery container */
.single-product .woocommerce-product-gallery,
.single-product .ct-product-gallery-container {
	max-width: 480px !important;
	width: 100% !important;
	margin: 0 auto !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
}

/* Outer stage box - STRICT FIXED HEIGHT SO BOX NEVER SHIFTS/JUMPS */
.single-product .woocommerce-product-gallery .flexy-view,
.single-product .woocommerce-product-gallery > .ct-media-container,
.single-product .woocommerce-product-gallery[data-gallery="default"] .flexy-view,
.single-product .ct-product-gallery-container .flexy-view {
	height: 480px !important;
	min-height: 480px !important;
	max-height: 480px !important;
	--flexy-view-height: 480px !important;
	width: 100% !important;
	background: #FAF8F5 !important;
	border: 1.5px solid #ECE7E1 !important;
	border-radius: 20px !important;
	padding: 0 !important;
	box-shadow: 0 4px 20px rgba(41, 68, 55, 0.04) !important;
	box-sizing: border-box !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	overflow: hidden !important;
	position: relative !important;
}

/* Inner slider tracks and slide items: take exactly 100% of the 480px fixed stage */
.single-product .woocommerce-product-gallery .flexy-items {
	height: 100% !important;
	min-height: 100% !important;
	max-height: 100% !important;
	display: flex !important;
	align-items: center !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.single-product .woocommerce-product-gallery .flexy-item,
.single-product .woocommerce-product-gallery figure,
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__wrapper,
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image {
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
	height: 100% !important;
	min-height: 100% !important;
	max-height: 100% !important;
	width: 100% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	overflow: hidden !important;
}

/* Main Image: Perfectly contained inside the fixed canvas, never stretches or distorts */
.single-product .woocommerce-product-gallery .flexy-view img,
.single-product .woocommerce-product-gallery .flexy-items img,
.single-product .woocommerce-product-gallery .flexy-item img,
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image img,
.single-product .woocommerce-product-gallery > .ct-media-container img {
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain !important;
	object-position: center center !important;
	padding: 24px !important;
	box-sizing: border-box !important;
	margin: auto !important;
	display: block !important;
	transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.single-product .woocommerce-product-gallery .flexy-view:hover img,
.single-product .woocommerce-product-gallery .flexy-items:hover img,
.single-product .woocommerce-product-gallery .woocommerce-product-gallery__image:hover img {
	transform: scale(1.03) !important;
}

/* Lightbox trigger button (Theme Botanical Green Hover - NO BLUE) */
.single-product .woocommerce-product-gallery__trigger {
	top: 16px !important;
	right: 16px !important;
	background: #FFFFFF !important;
	border-radius: 50% !important;
	width: 38px !important;
	height: 38px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: 0 4px 12px rgba(41, 68, 55, 0.12) !important;
	border: 1px solid #EBE7E2 !important;
	z-index: 15 !important;
	color: #294437 !important;
	transition: all 0.25s ease !important;
}

.single-product .woocommerce-product-gallery__trigger:hover {
	background: #294437 !important;
	color: #FAF5EA !important;
	border-color: #294437 !important;
	box-shadow: 0 6px 18px rgba(41, 68, 55, 0.25) !important;
	transform: scale(1.08) !important;
}

/* Gallery Slider Navigation Arrows (STRICTLY THEME PALETTE - ZERO BLUE) */
.single-product .woocommerce-product-gallery [class*="flexy-arrow"],
.single-product .ct-product-gallery-container [class*="flexy-arrow"],
.single-product [class*="flexy-arrow"],
.flexy-arrow-prev,
.flexy-arrow-next {
	--flexy-nav-arrow-color: #294437 !important;
	--flexy-nav-background-color: #FFFFFF !important;
	--flexy-nav-arrow-hover-color: #FAF5EA !important;
	--flexy-nav-background-hover-color: #294437 !important;
	color: #294437 !important;
	background: #FFFFFF !important;
	background-color: #FFFFFF !important;
	width: 44px !important;
	height: 44px !important;
	border-radius: 50% !important;
	border: 1.5px solid rgba(41, 68, 55, 0.14) !important;
	box-shadow: 0 4px 16px rgba(41, 68, 55, 0.08), 0 2px 4px rgba(0, 0, 0, 0.02) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	z-index: 10 !important;
	opacity: 0.92 !important;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
}

.single-product .woocommerce-product-gallery [class*="flexy-arrow"]:hover,
.single-product .woocommerce-product-gallery [class*="flexy-arrow"]:focus,
.single-product .woocommerce-product-gallery [class*="flexy-arrow"]:active,
.single-product .ct-product-gallery-container [class*="flexy-arrow"]:hover,
.single-product [class*="flexy-arrow"]:hover,
.single-product [class*="flexy-arrow"]:focus,
.single-product [class*="flexy-arrow"]:active,
.flexy-arrow-prev:hover,
.flexy-arrow-next:hover,
.flexy-arrow-prev:focus,
.flexy-arrow-next:focus,
.flexy-arrow-prev:active,
.flexy-arrow-next:active {
	color: #FAF5EA !important;
	background: #294437 !important;
	background-color: #294437 !important;
	border-color: #294437 !important;
	box-shadow: 0 8px 24px rgba(41, 68, 55, 0.25) !important;
	transform: translateY(-50%) scale(1.08) !important;
	outline: none !important;
}

.single-product .woocommerce-product-gallery [class*="flexy-arrow"] svg,
.single-product [class*="flexy-arrow"] svg,
.flexy-arrow-prev svg,
.flexy-arrow-next svg {
	fill: currentColor !important;
	stroke: currentColor !important;
	width: 18px !important;
	height: 18px !important;
	pointer-events: none !important;
	transition: transform 0.2s ease !important;
}

.flexy-arrow-prev {
	left: 14px !important;
	--translate-x: 0 !important;
}

.flexy-arrow-next {
	right: 14px !important;
	--translate-x: 0 !important;
}

.flexy-arrow-prev:hover svg {
	transform: translateX(-2px) !important;
}

.flexy-arrow-next:hover svg {
	transform: translateX(2px) !important;
}

/* Thumbnail Gallery: Hide when empty or only 1 image */
.single-product .flexy-pills:empty,
.single-product .flexy-pills ol:empty,
.single-product .flexy-pills:has(li:only-child),
.single-product .woocommerce-product-gallery:not([data-thumbs]) .flexy-pills {
	display: none !important;
}

/* Thumbnail gallery container */
.single-product .flexy-pills,
.single-product .flex-control-nav,
.single-product .flex-control-thumbs,
.single-product .flexy-container[data-thumbs*="bottom"] > .flexy-pills {
	margin-top: 16px !important;
	width: 100% !important;
	height: auto !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	display: block !important;
}

.single-product .flexy-pills ol,
.single-product .flex-control-nav,
.single-product .flex-control-thumbs {
	display: flex !important;
	flex-direction: row !important;
	gap: 12px !important;
	justify-content: center !important;
	align-items: center !important;
	list-style: none !important;
	padding: 0 !important;
	margin: 0 auto !important;
	background: transparent !important;
	border: none !important;
	width: auto !important;
	height: auto !important;
}

.single-product .flexy-pills ol li,
.single-product .flex-control-thumbs li,
.single-product .flex-control-nav li {
	width: 68px !important;
	height: 68px !important;
	min-width: 68px !important;
	min-height: 68px !important;
	max-width: 68px !important;
	max-height: 68px !important;
	flex: 0 0 68px !important;
	border-radius: 14px !important;
	border: 1.5px solid #EBE7E2 !important;
	background: #FAF8F5 !important;
	padding: 4px !important;
	box-sizing: border-box !important;
	cursor: pointer !important;
	overflow: hidden !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.single-product .flexy-pills ol li.active,
.single-product .flexy-pills ol li:hover,
.single-product .flex-control-thumbs li.active,
.single-product .flex-control-thumbs li:hover,
.single-product .flex-control-nav li a.flex-active,
.single-product .flex-control-nav li:hover {
	border-color: #294437 !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 4px 14px rgba(41, 68, 55, 0.18) !important;
	opacity: 1 !important;
}

.single-product .flexy-pills ol li .ct-media-container,
.single-product .flexy-pills ol li a,
.single-product .flexy-pills ol li span {
	width: 100% !important;
	height: 100% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	background: transparent !important;
}

.single-product .flexy-pills ol li img,
.single-product .woocommerce-product-gallery .flexy-pills img,
.single-product .flex-control-thumbs li img,
.single-product .woocommerce-product-gallery .flex-control-nav img {
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain !important;
	object-position: center center !important;
	padding: 2px !important;
	margin: 0 auto !important;
	border-radius: 8px !important;
	box-sizing: border-box !important;
	display: block !important;
	transform: none !important;
	opacity: 1 !important;
}

/* Responsive Breakpoints for Gallery Stage */
@media (max-width: 1024px) {
	.single-product .woocommerce-product-gallery .flexy-view,
	.single-product .woocommerce-product-gallery > .ct-media-container,
	.single-product .woocommerce-product-gallery[data-gallery="default"] .flexy-view,
	.single-product .ct-product-gallery-container .flexy-view {
		height: 420px !important;
		min-height: 420px !important;
		max-height: 420px !important;
		--flexy-view-height: 420px !important;
	}
	.single-product .woocommerce-product-gallery .flexy-view img,
	.single-product .woocommerce-product-gallery .flexy-items img,
	.single-product .woocommerce-product-gallery .flexy-item img {
		padding: 18px !important;
	}
}

@media (max-width: 767px) {
	.single-product .woocommerce-product-gallery .flexy-view,
	.single-product .woocommerce-product-gallery > .ct-media-container,
	.single-product .woocommerce-product-gallery[data-gallery="default"] .flexy-view,
	.single-product .ct-product-gallery-container .flexy-view {
		height: 360px !important;
		min-height: 360px !important;
		max-height: 360px !important;
		--flexy-view-height: 360px !important;
	}
	.single-product .woocommerce-product-gallery .flexy-view img,
	.single-product .woocommerce-product-gallery .flexy-items img,
	.single-product .woocommerce-product-gallery .flexy-item img {
		padding: 14px !important;
	}
	.single-product [class*="flexy-arrow"] {
		width: 38px !important;
		height: 38px !important;
	}
}

/* ==========================================================================
   3. SINGLE PRODUCT PAGE: SUMMARY & QUANTITY FIX
   ========================================================================== */

/* Title */
.single-product .entry-summary .product_title {
	font-family: 'Poppins', sans-serif !important;
	font-size: 32px !important;
	font-weight: 700 !important;
	color: #233D2D !important;
	line-height: 1.25 !important;
	margin-bottom: 12px !important;
	letter-spacing: -0.3px !important;
}

/* Price */
.single-product .entry-summary .price {
	font-family: 'Poppins', sans-serif !important;
	font-size: 26px !important;
	font-weight: 700 !important;
	color: #233D2D !important;
	margin-bottom: 22px !important;
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
}

.single-product .entry-summary .price del {
	color: #9CA3AF !important;
	font-size: 18px !important;
	font-weight: 500 !important;
}

.single-product .entry-summary .price ins {
	text-decoration: none !important;
	color: #233D2D !important;
}

/* Form cart row */
.single-product .entry-summary form.cart {
	display: flex !important;
	align-items: center !important;
	gap: 14px !important;
	margin-bottom: 24px !important;
	flex-wrap: wrap !important;
}

/* Quantity input - Perfect center visibility & button alignment */
.single-product .entry-summary div.quantity {
	position: relative !important;
	display: inline-block !important;
	width: 130px !important;
	height: 50px !important;
	background: #FAF8F5 !important;
	border: 1.5px solid #DCD7D0 !important;
	border-radius: 12px !important;
	box-sizing: border-box !important;
	overflow: hidden !important;
}

.single-product .entry-summary div.quantity input[type="number"],
.single-product .entry-summary div.quantity input.qty {
	width: 100% !important;
	height: 100% !important;
	border: none !important;
	background: transparent !important;
	text-align: center !important;
	font-family: 'Poppins', sans-serif !important;
	font-weight: 700 !important;
	font-size: 16px !important;
	color: #233D2D !important;
	padding: 0 38px !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	box-shadow: none !important;
	outline: none !important;
	display: block !important;
	-moz-appearance: textfield !important;
}

.single-product .entry-summary div.quantity input[type="number"]::-webkit-inner-spin-button,
.single-product .entry-summary div.quantity input[type="number"]::-webkit-outer-spin-button {
	-webkit-appearance: none !important;
	margin: 0 !important;
}

/* Plus & Minus buttons inside quantity */
.single-product .entry-summary div.quantity .ct-increase,
.single-product .entry-summary div.quantity .ct-decrease {
	position: absolute !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	width: 34px !important;
	height: 34px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #233D2D !important;
	background: transparent !important;
	border-radius: 8px !important;
	cursor: pointer !important;
	z-index: 2 !important;
	transition: background 0.2s ease, color 0.2s ease !important;
	user-select: none !important;
}

.single-product .entry-summary div.quantity .ct-decrease {
	inset-inline-start: 4px !important;
}

.single-product .entry-summary div.quantity .ct-increase {
	inset-inline-end: 4px !important;
}

.single-product .entry-summary div.quantity .ct-decrease:hover,
.single-product .entry-summary div.quantity .ct-increase:hover {
	background: rgba(35, 61, 45, 0.1) !important;
	color: #C28D38 !important;
}

/* Primary Add to Cart button */
.single-product .entry-summary .single_add_to_cart_button,
.single-product .entry-summary button[name="add-to-cart"] {
	background: #233D2D !important;
	color: #FFFFFF !important;
	border: none !important;
	border-radius: 12px !important;
	height: 50px !important;
	padding: 0 36px !important;
	font-family: 'Poppins', sans-serif !important;
	font-weight: 700 !important;
	font-size: 14px !important;
	letter-spacing: 0.8px !important;
	text-transform: uppercase !important;
	cursor: pointer !important;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
	box-shadow: 0 4px 16px rgba(35, 61, 45, 0.22) !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.single-product .entry-summary .single_add_to_cart_button:hover,
.single-product .entry-summary button[name="add-to-cart"]:hover {
	background: #182C20 !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 22px rgba(35, 61, 45, 0.32) !important;
}

/* Wishlist Button */
.single-product .entry-summary .ct-product-additional-actions,
.single-product .entry-summary .tinv-wraper {
	margin-top: 14px !important;
	margin-bottom: 18px !important;
}

.single-product .entry-summary .ct-product-additional-actions a,
.single-product .entry-summary .tinv-wishlist a {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #233D2D !important;
	background: #FAF8F5 !important;
	border: 1.5px solid #ECE7E1 !important;
	border-radius: 10px !important;
	padding: 8px 16px !important;
	text-decoration: none !important;
	transition: all 0.25s ease !important;
}

.single-product .entry-summary .ct-product-additional-actions a:hover,
.single-product .entry-summary .tinv-wishlist a:hover {
	color: #C28D38 !important;
	border-color: #C28D38 !important;
	background: #FFFFFF !important;
	transform: translateY(-1px) !important;
}

/* Strictly HIDE Compare button from everywhere */
.woolentor-compare,
.htcompare-btn,
.evercompare-button,
.ct-product-additional-actions [data-id="compare"],
.entry-summary a[href*="compare"],
.single-product [class*="compare"] {
	display: none !important;
}

/* Product Meta (Categories, SKU, Tags) - Set to 16px */
.single-product .entry-summary .product_meta,
.single-product .entry-summary .product_meta * {
	font-family: 'Poppins', sans-serif !important;
	font-size: 16px !important;
	line-height: 1.6 !important;
}

.single-product .entry-summary .product_meta {
	color: #6B7280 !important;
	padding-top: 18px !important;
	border-top: 1px solid #ECE7E1 !important;
	margin-top: 22px !important;
}

.single-product .entry-summary .product_meta span.posted_in,
.single-product .entry-summary .product_meta span.sku_wrapper,
.single-product .entry-summary .product_meta span.tagged_as {
	font-family: 'Poppins', sans-serif !important;
	font-weight: 700 !important;
	color: #233D2D !important;
	text-transform: uppercase !important;
	font-size: 16px !important;
	letter-spacing: 0.5px !important;
}

.single-product .entry-summary .product_meta a {
	color: #4B5563 !important;
	font-weight: 500 !important;
	font-size: 16px !important;
	text-decoration: none !important;
	transition: color 0.2s ease !important;
}

.single-product .entry-summary .product_meta a:hover {
	color: #233D2D !important;
	text-decoration: underline !important;
}

/* ==========================================================================
   4. SINGLE PRODUCT PAGE: TABS & DESCRIPTION (LEFT-ALIGNED, NO BORDERS)
   ========================================================================== */

/* Constrain Description inside 1200px container, centered, NO top border */
.single-product .woocommerce-tabs,
.woocommerce div.product div.woocommerce-tabs {
	max-width: 1200px !important;
	width: 100% !important;
	margin: 40px auto 0 auto !important;
	padding: 20px 20px 0 20px !important;
	border-top: none !important;
	border-bottom: none !important;
	border: none !important;
	box-sizing: border-box !important;
}

/* Tab Header list - LEFT ALIGNED, NO BORDER */
.single-product .woocommerce-tabs ul.tabs,
.woocommerce div.product div.woocommerce-tabs ul.tabs {
	display: flex !important;
	justify-content: flex-start !important;
	--horizontal-alignment: flex-start !important;
	align-items: flex-start !important;
	gap: 20px !important;
	border: none !important;
	border-bottom: none !important;
	padding: 0 !important;
	margin: 0 0 16px 0 !important;
	list-style: none !important;
}

.single-product .woocommerce-tabs ul.tabs li,
.woocommerce div.product div.woocommerce-tabs ul.tabs li {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
}

.single-product .woocommerce-tabs ul.tabs li a,
.woocommerce div.product div.woocommerce-tabs ul.tabs li a {
	font-family: 'Poppins', sans-serif !important;
	font-size: 24px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.03em !important;
	padding: 0 0 12px 0 !important;
	color: #1E3329 !important;
	display: inline-block !important;
	position: relative !important;
	border: none !important;
	border-bottom: none !important;
	margin: 0 !important;
	text-decoration: none !important;
	text-align: left !important;
}

.single-product .woocommerce-tabs ul.tabs li a::after,
.woocommerce div.product div.woocommerce-tabs ul.tabs li a::after {
	content: '' !important;
	position: absolute !important;
	bottom: 0 !important;
	left: 0 !important;
	width: 52px !important;
	height: 3.5px !important;
	background: #D3A04A !important;
	border-radius: 3px !important;
}

.single-product .woocommerce-tabs ul.tabs li:before,
.single-product .woocommerce-tabs ul.tabs li.active:before,
.woocommerce div.product div.woocommerce-tabs ul.tabs li.active:before {
	display: none !important;
	content: none !important;
}

/* Hide reviews tab unconditionally */
.single-product .woocommerce-tabs ul.tabs li.reviews_tab,
.single-product .woocommerce-tabs #tab-reviews {
	display: none !important;
}

/* Product Description (Short Description & Tabs Description) - Set to 16px */
.single-product .entry-summary .woocommerce-product-details__short-description,
.single-product .entry-summary .woocommerce-product-details__short-description p,
.single-product .entry-summary .woocommerce-product-details__short-description *,
.single-product .woocommerce-Tabs-panel--description,
.single-product .woocommerce-Tabs-panel--description p,
.single-product .woocommerce-Tabs-panel--description *,
.single-product #tab-description,
.single-product #tab-description p,
.single-product #tab-description *,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel,
.single-product .woocommerce-tabs .woocommerce-Tabs-panel p,
.woocommerce div.product div.woocommerce-tabs div.woocommerce-Tabs-panel.panel,
.woocommerce div.product div.woocommerce-tabs div.woocommerce-Tabs-panel.panel p {
	font-family: 'Poppins', sans-serif !important;
	font-size: 16px !important;
	color: #4B5563 !important;
	line-height: 1.7 !important;
	text-align: left !important;
}

.single-product .woocommerce-tabs .woocommerce-Tabs-panel,
.woocommerce div.product div.woocommerce-tabs div.woocommerce-Tabs-panel.panel {
	max-width: 900px !important;
	padding: 8px 0 0 0 !important;
	margin: 0 !important;
	border: none !important;
}

.single-product .woocommerce-tabs .woocommerce-Tabs-panel h2 {
	display: none !important; /* Hide duplicate "Description" title inside content */
}

/* ==========================================================================
   5. RELATED PRODUCTS: LEFT-ALIGNED HEADING & CONTAINER (NO TOP BORDER)
   ========================================================================== */

/* Contained within 1200px, clean spacing, NO top border */
.movin-related-section,
.single-product .related.products {
	max-width: 1200px !important;
	width: 100% !important;
	margin: 45px auto 40px auto !important;
	padding: 20px 20px 0 20px !important;
	border-top: none !important;
	border-bottom: none !important;
	border: none !important;
	box-sizing: border-box !important;
}

/* Left aligned header */
.movin-related-header {
	text-align: left !important;
	margin-bottom: 32px !important;
}

.movin-related-subtitle {
	display: block !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 2.2px !important;
	color: #C28D38 !important;
	text-transform: uppercase !important;
	margin-bottom: 8px !important;
	text-align: left !important;
}

.movin-related-heading {
	font-family: 'Poppins', sans-serif !important;
	font-size: 30px !important;
	font-weight: 700 !important;
	color: #233D2D !important;
	letter-spacing: -0.3px !important;
	margin: 0 !important;
	text-align: left !important;
}

.movin-related-divider {
	width: 48px !important;
	height: 3px !important;
	background: #233D2D !important;
	margin: 12px 0 0 0 !important; /* Left aligned, not centered */
	border-radius: 2px !important;
}

/* Related 4-column modern grid */
.movin-related-grid {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 24px !important;
}

@media (max-width: 1024px) {
	.movin-related-grid {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 20px !important;
	}
}

@media (max-width: 540px) {
	.movin-related-grid {
		grid-template-columns: 1fr !important;
		gap: 18px !important;
	}
}

/* Related Minimal Card */
.movin-related-card {
	background: #FFFFFF !important;
	border: 1.5px solid #ECE7E1 !important;
	border-radius: 20px !important;
	overflow: hidden !important;
	transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
	box-shadow: 0 4px 18px rgba(35, 61, 45, 0.03) !important;
	display: flex !important;
	flex-direction: column !important;
}

.movin-related-card:hover {
	transform: translateY(-6px) !important;
	border-color: #D6CEBE !important;
	box-shadow: 0 12px 30px rgba(35, 61, 45, 0.09) !important;
}

.movin-related-card-link {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	text-decoration: none !important;
	color: inherit !important;
}

/* Image recessed stage */
.movin-related-thumb-wrapper {
	background: #FAF8F5 !important;
	margin: 14px 14px 10px 14px !important;
	border-radius: 16px !important;
	height: 200px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	position: relative !important;
	overflow: hidden !important;
	transition: background 0.3s ease !important;
}

.movin-related-card:hover .movin-related-thumb-wrapper {
	background: #F3EFE9 !important;
}

.movin-related-thumb-wrapper img,
.movin-related-thumb-wrapper .movin-related-img {
	max-height: 160px !important;
	max-width: 80% !important;
	width: auto !important;
	object-fit: contain !important;
	transition: transform 0.4s ease !important;
	display: block !important;
}

.movin-related-card:hover .movin-related-thumb-wrapper img {
	transform: scale(1.06) !important;
}

/* Micro hover overlay button */
.movin-related-hover-overlay {
	position: absolute !important;
	inset: 0 !important;
	background: rgba(35, 61, 45, 0.25) !important;
	backdrop-filter: blur(2px) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	opacity: 0 !important;
	transition: opacity 0.3s ease !important;
}

.movin-related-card:hover .movin-related-hover-overlay {
	opacity: 1 !important;
}

.movin-related-view-btn {
	background: #FFFFFF !important;
	color: #233D2D !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	padding: 8px 16px !important;
	border-radius: 20px !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
	transform: translateY(6px) !important;
	transition: transform 0.3s ease !important;
}

.movin-related-card:hover .movin-related-view-btn {
	transform: translateY(0) !important;
}

/* Title container */
.movin-related-info {
	padding: 8px 18px 20px 18px !important;
	text-align: center !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	flex-grow: 1 !important;
}

.movin-related-title {
	font-family: 'Poppins', sans-serif !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #233D2D !important;
	line-height: 1.4 !important;
	margin: 0 !important;
	transition: color 0.25s ease !important;
}

.movin-related-card:hover .movin-related-title {
	color: #C28D38 !important;
}

/* ==========================================================================
   6. CHECKOUT PAGE: FIX DOUBLE BOXES & CLEAN TWO-COLUMN CARDS
   ========================================================================== */

body.woocommerce-checkout {
	background-color: #FAF8F5 !important;
}

.woocommerce-checkout-wrap,
form.woocommerce-checkout,
.ct-woocommerce-checkout {
	max-width: 1240px !important;
	margin: 20px auto 60px auto !important;
	padding: 0 20px !important;
	box-sizing: border-box !important;
}

/* Blocksy / WooCommerce 2-column flex */
form.woocommerce-checkout,
.ct-woocommerce-checkout {
	display: grid !important;
	grid-template-columns: 1.15fr 0.85fr !important;
	gap: 36px !important;
	align-items: start !important;
}

@media (max-width: 991px) {
	form.woocommerce-checkout,
	.ct-woocommerce-checkout {
		grid-template-columns: 1fr !important;
		gap: 30px !important;
	}
}

/* Outer Column Cards - Exactly ONE card per column */
.ct-customer-details,
.ct-order-review {
	background: #FFFFFF !important;
	border: 1.5px solid #EBE7E2 !important;
	border-radius: 18px !important;
	padding: 32px 34px !important;
	box-shadow: 0 4px 20px rgba(35, 61, 45, 0.04) !important;
	box-sizing: border-box !important;
}

/* Explicitly strip all borders, backgrounds, and padding from inner elements to PREVENT DOUBLE BOXES */
#customer_details,
.col2-set,
.col2-set#customer_details,
.col2-set .col-1,
.col2-set .col-2,
.woocommerce-billing-fields,
.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields,
.woocommerce-additional-fields__field-wrapper,
#order_review,
.woocommerce-checkout-review-order {
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	box-shadow: none !important;
	width: 100% !important;
	float: none !important;
}

/* Divider before Additional Information */
.woocommerce-additional-fields {
	background: transparent !important;
	border: none !important;
	border-top: 1px solid #ECE7E1 !important;
	border-radius: 0 !important;
	padding: 24px 0 0 0 !important;
	margin-top: 24px !important;
	box-shadow: none !important;
}

@media (max-width: 600px) {
	.ct-customer-details,
	.ct-order-review {
		padding: 22px 20px !important;
	}
}

/* Section Headings */
.ct-customer-details h3,
#customer_details h3,
.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
.woocommerce-additional-fields h3,
#order_review_heading {
	font-family: 'Poppins', sans-serif !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	color: #233D2D !important;
	letter-spacing: -0.2px !important;
	margin-top: 0 !important;
	margin-bottom: 22px !important;
	padding-bottom: 12px !important;
	border-bottom: 2px solid #233D2D !important;
	text-transform: capitalize !important;
}

/* Form Rows */
.woocommerce form .form-row {
	margin-bottom: 20px !important;
	padding: 0 !important;
}

/* Labels */
.woocommerce form .form-row label:not(.checkbox):not(.woocommerce-form__label-for-checkbox) {
	font-family: 'Poppins', sans-serif !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
	color: #233D2D !important;
	margin-bottom: 8px !important;
	display: block !important;
}

.woocommerce form .form-row label abbr.required {
	color: #DC2626 !important;
	text-decoration: none !important;
	font-weight: 700 !important;
	margin-left: 2px !important;
}

/* Checkbox Labels & Terms Conditions (Fix Misalignment & Screaming Uppercase) */
.woocommerce form .form-row label.checkbox,
.woocommerce form .form-row label.woocommerce-form__label-for-checkbox,
.woocommerce-terms-and-conditions-wrapper label,
.woocommerce-form__label-for-checkbox,
label[for="terms"],
label[for="createaccount"],
label[for="ship-to-different-address-checkbox"] {
	display: inline-flex !important;
	align-items: flex-start !important;
	gap: 10px !important;
	text-transform: none !important;
	letter-spacing: normal !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 13.5px !important;
	font-weight: 400 !important;
	color: #374151 !important;
	line-height: 1.5 !important;
	margin-bottom: 0 !important;
	cursor: pointer !important;
	user-select: none !important;
}

.woocommerce form .form-row label.checkbox a,
.woocommerce form .form-row label.woocommerce-form__label-for-checkbox a,
.woocommerce-terms-and-conditions-wrapper a {
	color: #233D2D !important;
	text-decoration: underline !important;
	font-weight: 600 !important;
	transition: color 0.15s ease !important;
}

.woocommerce form .form-row label.checkbox a:hover,
.woocommerce form .form-row label.woocommerce-form__label-for-checkbox a:hover,
.woocommerce-terms-and-conditions-wrapper a:hover {
	color: #D3A04A !important;
}

.woocommerce form .form-row input[type="checkbox"],
.woocommerce-terms-and-conditions-wrapper input[type="checkbox"],
input#terms,
input#createaccount,
input#ship-to-different-address-checkbox {
	width: 18px !important;
	min-width: 18px !important;
	height: 18px !important;
	margin: 2px 0 0 0 !important;
	accent-color: #233D2D !important;
	border-radius: 4px !important;
	border: 1.5px solid #D1D5DB !important;
	cursor: pointer !important;
	flex-shrink: 0 !important;
	vertical-align: top !important;
}

/* Password Input & Show Password Eye Toggle (Fix Green Rectangle ■) */
.woocommerce .woocommerce-input-wrapper .password-input,
.woocommerce-checkout .password-input,
.password-input {
	position: relative !important;
	display: block !important;
	width: 100% !important;
}

.woocommerce .password-input input[type="password"],
.woocommerce .password-input input[type="text"] {
	padding-right: 48px !important;
}

.woocommerce .password-input .show-password-input,
.woocommerce button.show-password-input,
button.show-password-input {
	position: absolute !important;
	right: 12px !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	background: transparent !important;
	background-color: transparent !important;
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
	width: 32px !important;
	height: 32px !important;
	padding: 0 !important;
	margin: 0 !important;
	cursor: pointer !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #666B66 !important;
	z-index: 5 !important;
	min-height: auto !important;
	min-width: auto !important;
}

.woocommerce .password-input .show-password-input:hover,
button.show-password-input:hover {
	background: transparent !important;
	color: #233D2D !important;
}

.woocommerce .password-input .show-password-input::after,
button.show-password-input::after {
	content: '' !important;
	display: inline-block !important;
	width: 20px !important;
	height: 20px !important;
	background-color: currentColor !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='currentColor'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M15 12a3 3 0 11-6 0 3 3 0 016 0z'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z'/%3E%3C/svg%3E") no-repeat center !important;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='currentColor'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M15 12a3 3 0 11-6 0 3 3 0 016 0z'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2.458 12C3.732 7.943 7.523 5 12 5c4.478 0 8.268 2.943 9.542 7-1.274 4.057-5.064 7-9.542 7-4.477 0-8.268-2.943-9.542-7z'/%3E%3C/svg%3E") no-repeat center !important;
	-webkit-mask-size: contain !important;
	mask-size: contain !important;
}

.woocommerce .password-input .show-password-input.display-password::after,
button.show-password-input.display-password::after {
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='currentColor'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M13.875 18.825A10.05 10.05 0 0112 19c-4.478 0-8.268-2.943-9.543-7a9.97 9.97 0 011.563-3.029m5.858.908a3 3 0 114.243 4.243M9.878 9.878l4.242 4.242M9.88 9.88l-3.29-3.29m7.532 7.532l3.29 3.29M3 3l18 18'/%3E%3C/svg%3E") no-repeat center !important;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='currentColor'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M13.875 18.825A10.05 10.05 0 0112 19c-4.478 0-8.268-2.943-9.543-7a9.97 9.97 0 011.563-3.029m5.858.908a3 3 0 114.243 4.243M9.878 9.878l4.242 4.242M9.88 9.88l-3.29-3.29m7.532 7.532l3.29 3.29M3 3l18 18'/%3E%3C/svg%3E") no-repeat center !important;
	-webkit-mask-size: contain !important;
	mask-size: contain !important;
}

/* Input Fields & Textareas */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.select2-container--default .select2-selection--single {
	width: 100% !important;
	border: 1.5px solid #DCD7D0 !important;
	border-radius: 10px !important;
	background: #FAF9F7 !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 14px !important;
	color: #1F2937 !important;
	padding: 0 16px !important;
	height: 48px !important;
	line-height: 48px !important;
	transition: all 0.25s ease !important;
	box-sizing: border-box !important;
	outline: none !important;
}

.woocommerce form .form-row textarea {
	height: auto !important;
	min-height: 105px !important;
	line-height: 1.6 !important;
	padding: 14px 16px !important;
	resize: vertical !important;
}

/* Field Focus State */
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus,
.select2-container--default.select2-container--open .select2-selection--single {
	border-color: #233D2D !important;
	background: #FFFFFF !important;
	box-shadow: 0 0 0 3px rgba(35, 61, 45, 0.08) !important;
}

/* Select2 dropdown custom styling */
.select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 48px !important;
	padding-left: 0 !important;
	color: #1F2937 !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 48px !important;
	right: 12px !important;
}

.select2-dropdown {
	border-radius: 12px !important;
	border: 1.5px solid #DCD7D0 !important;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08) !important;
	overflow: hidden !important;
}

/* ==========================================================================
   7. CHECKOUT PAGE: ORDER REVIEW TABLE & PAYMENT
   ========================================================================== */

/* Order Table */
.woocommerce-checkout-review-order-table {
	width: 100% !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	margin-bottom: 24px !important;
}

.woocommerce-checkout-review-order-table th {
	font-family: 'Poppins', sans-serif !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.6px !important;
	color: #6B7280 !important;
	padding: 14px 0 !important;
	border-bottom: 1.5px solid #EBE7E2 !important;
	border-top: none !important;
	text-align: left !important;
}

.woocommerce-checkout-review-order-table th.product-total {
	text-align: right !important;
}

.woocommerce-checkout-review-order-table td {
	padding: 16px 0 !important;
	border-bottom: 1px dashed #E5E0D8 !important;
	border-top: none !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 14px !important;
	color: #374151 !important;
}

.woocommerce-checkout-review-order-table td.product-name {
	font-weight: 600 !important;
	color: #233D2D !important;
}

.woocommerce-checkout-review-order-table strong.product-quantity {
	background: #FAF8F5 !important;
	border: 1px solid #ECE7E1 !important;
	border-radius: 6px !important;
	padding: 2px 8px !important;
	font-size: 12px !important;
	color: #233D2D !important;
	margin-left: 8px !important;
	font-family: 'Poppins', sans-serif !important;
}

.woocommerce-checkout-review-order-table td.product-total {
	text-align: right !important;
	font-weight: 700 !important;
	color: #233D2D !important;
	font-family: 'Poppins', sans-serif !important;
}

/* Totals rows */
.woocommerce-checkout-review-order-table tfoot th {
	font-family: 'Poppins', sans-serif !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #4B5563 !important;
	padding: 14px 0 !important;
	border-bottom: 1px solid #ECE7E1 !important;
}

.woocommerce-checkout-review-order-table tfoot td {
	text-align: right !important;
	font-family: 'Poppins', sans-serif !important;
	font-weight: 600 !important;
	color: #233D2D !important;
	padding: 14px 0 !important;
	border-bottom: 1px solid #ECE7E1 !important;
}

.woocommerce-checkout-review-order-table tr.order-total th,
.woocommerce-checkout-review-order-table tr.order-total td {
	font-size: 20px !important;
	font-weight: 700 !important;
	color: #233D2D !important;
	border-top: 2px solid #233D2D !important;
	border-bottom: none !important;
	padding-top: 18px !important;
}

/* Payment Methods Box */
#payment.woocommerce-checkout-payment {
	background: #FAF8F5 !important;
	border: 1.5px solid #EBE7E2 !important;
	border-radius: 14px !important;
	padding: 20px !important;
	margin: 24px 0 16px 0 !important;
}

#payment ul.wc_payment_methods,
#payment ul.payment_methods {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
}

#payment ul.wc_payment_methods li.wc_payment_method {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	position: relative !important;
	margin-bottom: 12px !important;
	border-radius: 12px !important;
	background: #FFFFFF !important;
	border: 1.5px solid #E5E0D8 !important;
	padding: 14px 18px !important;
	transition: all 0.25s ease !important;
}

#payment ul.wc_payment_methods li.wc_payment_method:hover,
#payment ul.wc_payment_methods li.wc_payment_method:has(input[type="radio"]:checked) {
	border-color: #233D2D !important;
	box-shadow: 0 3px 12px rgba(35, 61, 45, 0.08) !important;
}

#payment ul.wc_payment_methods li.wc_payment_method > input[type="radio"] {
	position: static !important;
	clip: auto !important;
	accent-color: #233D2D !important;
	width: 18px !important;
	height: 18px !important;
	cursor: pointer !important;
	margin: 0 12px 0 0 !important;
	flex-shrink: 0 !important;
	display: inline-block !important;
	opacity: 1 !important;
	visibility: visible !important;
}

#payment ul.wc_payment_methods li.wc_payment_method > label {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex-wrap: nowrap !important;
	flex: 1 1 auto !important;
	width: calc(100% - 32px) !important;
	font-family: 'Poppins', sans-serif !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	color: #233D2D !important;
	cursor: pointer !important;
	margin: 0 !important;
	padding: 0 !important;
}

#payment ul.wc_payment_methods li.wc_payment_method > label:before {
	display: none !important;
}

#payment ul.wc_payment_methods li.wc_payment_method > label img {
	float: none !important;
	max-height: 24px !important;
	width: auto !important;
	margin-left: auto !important;
	flex-shrink: 0 !important;
	display: block !important;
	object-fit: contain !important;
}

#payment div.payment_box {
	flex: 1 1 100% !important;
	width: 100% !important;
	background: #F4F1EC !important;
	border-radius: 8px !important;
	padding: 12px 16px !important;
	margin-top: 12px !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 13px !important;
	color: #4B5563 !important;
	line-height: 1.6 !important;
	border: none !important;
	box-sizing: border-box !important;
}

#payment div.payment_box:before {
	display: none !important;
}

/* Privacy policy text */
.woocommerce-privacy-policy-text {
	font-family: 'Poppins', sans-serif !important;
	font-size: 12px !important;
	color: #6B7280 !important;
	line-height: 1.6 !important;
	margin-bottom: 18px !important;
}

.woocommerce-privacy-policy-text a {
	color: #233D2D !important;
	font-weight: 600 !important;
	text-decoration: underline !important;
}

.woocommerce-privacy-policy-text a:hover {
	color: #C28D38 !important;
}

/* Place Order Button */
#payment #place_order,
button#place_order {
	width: 100% !important;
	background: #233D2D !important;
	color: #FFFFFF !important;
	height: 52px !important;
	border-radius: 12px !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	letter-spacing: 0.8px !important;
	text-transform: uppercase !important;
	border: none !important;
	cursor: pointer !important;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
	box-shadow: 0 4px 16px rgba(35, 61, 45, 0.25) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

#payment #place_order:hover,
button#place_order:hover {
	background: #182C20 !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 24px rgba(35, 61, 45, 0.35) !important;
}

/* ==========================================================================
   8. NOTICES & ERROR MESSAGES
   ========================================================================== */

.woocommerce-notices-wrapper,
.woocommerce-NoticeGroup-checkout {
	max-width: 1240px !important;
	margin: 0 auto 24px auto !important;
	padding: 0 20px !important;
	box-sizing: border-box !important;
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message,
.woocommerce-NoticeGroup-checkout .woocommerce-error {
	border-radius: 14px !important;
	padding: 16px 24px 16px 60px !important;
	margin: 0 0 20px 0 !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
	min-height: auto !important;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04) !important;
	position: relative !important;
	box-sizing: border-box !important;
	width: 100% !important;
}

/* Error Notice (Fix Screenshot 5 Icon Overlap & Faint White Text) */
.woocommerce-error,
.woocommerce-NoticeGroup-checkout .woocommerce-error,
ul.woocommerce-error {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: center !important;
	background: #FEF2F2 !important;
	border: 1.5px solid #FCA5A5 !important;
	color: #991B1B !important;
	-webkit-text-fill-color: #991B1B !important;
	text-align: left !important;
}

.woocommerce-error:before,
.woocommerce-NoticeGroup-checkout .woocommerce-error:before,
ul.woocommerce-error:before {
	color: #991B1B !important;
	left: 22px !important;
	top: 20px !important;
	transform: none !important;
	line-height: 1 !important;
	margin: 0 !important;
	font-size: 18px !important;
	opacity: 1 !important;
}

.woocommerce-error li,
.woocommerce-NoticeGroup-checkout .woocommerce-error li,
ul.woocommerce-error li {
	color: #991B1B !important;
	-webkit-text-fill-color: #991B1B !important;
	list-style: none !important;
	margin: 0 0 6px 0 !important;
	padding: 0 !important;
	font-weight: 500 !important;
	font-size: 13.5px !important;
	line-height: 1.5 !important;
	display: block !important;
	width: 100% !important;
}

.woocommerce-error li:last-child,
.woocommerce-NoticeGroup-checkout .woocommerce-error li:last-child {
	margin-bottom: 0 !important;
}

.woocommerce-error a,
.woocommerce-NoticeGroup-checkout .woocommerce-error a {
	color: #991B1B !important;
	-webkit-text-fill-color: #991B1B !important;
	text-decoration: underline !important;
	font-weight: 600 !important;
}

/* Info Notice (Fix "Returning customer? Click here to login" Bell Icon Overlap) */
.woocommerce-checkout .woocommerce-info,
.woocommerce-form-login-toggle .woocommerce-info,
.woocommerce-form-coupon-toggle .woocommerce-info,
.woocommerce-checkout .woocommerce-notice,
.woocommerce-NoticeGroup-checkout .woocommerce-info,
.woocommerce-info {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	flex-wrap: wrap !important;
	gap: 6px 10px !important;
	padding: 16px 24px 16px 58px !important;
	padding-inline-start: 58px !important;
	padding-left: 58px !important;
	border-radius: 12px !important;
	margin: 0 0 20px 0 !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
	background: #F0FDF4 !important;
	border: 1.5px solid #86EFAC !important;
	color: #166534 !important;
	-webkit-text-fill-color: #166534 !important;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03) !important;
	box-sizing: border-box !important;
	width: 100% !important;
	text-align: left !important;
}

.woocommerce-checkout .woocommerce-info:before,
.woocommerce-form-login-toggle .woocommerce-info:before,
.woocommerce-form-coupon-toggle .woocommerce-info:before,
.woocommerce-checkout .woocommerce-notice:before,
.woocommerce-NoticeGroup-checkout .woocommerce-info:before,
.woocommerce-info:before {
	content: '\e901' !important;
	font-family: 'woo' !important;
	position: absolute !important;
	left: 20px !important;
	inset-inline-start: 20px !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	font-size: 20px !important;
	line-height: 1 !important;
	width: 20px !important;
	height: 20px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #166534 !important;
	margin: 0 !important;
	padding: 0 !important;
	flex-shrink: 0 !important;
	opacity: 1 !important;
	pointer-events: none !important;
	z-index: 2 !important;
}

.woocommerce-info li {
	color: #166534 !important;
	-webkit-text-fill-color: #166534 !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.woocommerce-checkout .woocommerce-info a,
.woocommerce-form-login-toggle .woocommerce-info a,
.woocommerce-form-coupon-toggle .woocommerce-info a,
.woocommerce-info a {
	color: #166534 !important;
	-webkit-text-fill-color: #166534 !important;
	font-weight: 600 !important;
	text-decoration: underline !important;
	transition: color 0.15s ease !important;
	display: inline !important;
	margin-left: 4px !important;
}

/* Float "Click here to login" to the right side of the banner */
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info,
.woocommerce-form-login-toggle .woocommerce-info {
	justify-content: space-between !important;
}

.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info a.movin-checkout-login-link,
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info a.showlogin,
.woocommerce-form-login-toggle .woocommerce-info a.movin-checkout-login-link,
.woocommerce-form-login-toggle .woocommerce-info a.showlogin {
	margin-left: auto !important;
	text-align: right !important;
	white-space: nowrap !important;
	order: 2 !important;
	cursor: pointer !important;
}

.woocommerce-checkout .woocommerce-info a:hover,
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info a.movin-checkout-login-link:hover,
.woocommerce-form-login-toggle .woocommerce-info a:hover,
.woocommerce-form-coupon-toggle .woocommerce-info a:hover,
.woocommerce-info a:hover {
	color: #14532D !important;
	-webkit-text-fill-color: #14532D !important;
}

.woocommerce-message {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
	background: #F0FDF4 !important;
	border: 1.5px solid #86EFAC !important;
	color: #166534 !important;
	-webkit-text-fill-color: #166534 !important;
}

.woocommerce-message:before {
	color: #166534 !important;
	left: 22px !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	line-height: 1 !important;
	margin: 0 !important;
	font-size: 18px !important;
	opacity: 1 !important;
}

.woocommerce-message a.button {
	background: #233D2D !important;
	color: #FFFFFF !important;
	-webkit-text-fill-color: #FFFFFF !important;
	border-radius: 8px !important;
	padding: 6px 14px !important;
	font-family: 'Poppins', sans-serif !important;
	font-weight: 700 !important;
	font-size: 12px !important;
	text-transform: uppercase !important;
}

/* Suppress all add-to-cart & success notices on Checkout page */
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-checkout .woocommerce-NoticeGroup .woocommerce-message,
.woocommerce-checkout div.woocommerce-message,
.woolentor-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-message {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.woocommerce-checkout .woocommerce-notices-wrapper:empty {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* ==================================================
   DYNAMIC REAL-TIME QUANTITY PRICE & TOTAL
   ================================================== */
.movin-qty-price-total {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 6px 14px !important;
	background: #F4F7F4 !important;
	border: 1.5px solid #233D2D !important;
	border-radius: 10px !important;
	margin: 8px 0 14px 0 !important;
	font-family: 'Poppins', sans-serif !important;
	color: #233D2D !important;
	box-shadow: 0 2px 6px rgba(35, 61, 45, 0.06) !important;
	transition: all 0.2s ease !important;
	width: fit-content !important;
}

.movin-qty-price-total .movin-qty-total-label {
	font-weight: 700 !important;
	color: #666B66 !important;
	text-transform: uppercase !important;
	font-size: 11px !important;
	letter-spacing: 0.6px !important;
}

.movin-qty-price-total .movin-qty-total-value {
	font-weight: 700 !important;
	font-size: 16px !important;
	color: #233D2D !important;
}

.movin-qty-price-total .movin-qty-unit-hint {
	font-size: 12px !important;
	font-weight: 500 !important;
	color: #858982 !important;
	margin-left: 2px !important;
}

.movin-unit-price-pill {
	display: inline-block !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #666B66 !important;
	margin-left: 8px !important;
	vertical-align: middle !important;
}

/* Ensure Woolentor quantity wrapper & buttons are high-contrast and clickable */
.wl-quantity-wrap {
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
	margin-bottom: 12px !important;
}

.wl-quantity-wrap .label {
	font-family: 'Poppins', sans-serif !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	color: #233D2D !important;
	margin-bottom: 2px !important;
}

.wl-quantity-cal {
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border: 1.5px solid #233D2D !important;
	border-radius: 8px !important;
	background: #FFFFFF !important;
	width: 120px !important;
	height: 44px !important;
	box-sizing: border-box !important;
	overflow: hidden !important;
}

.wl-quantity-cal .wl-quantity {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 32px !important;
	height: 100% !important;
	cursor: pointer !important;
	color: #C28D38 !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	user-select: none !important;
	transition: background 0.2s ease !important;
}

.wl-quantity-cal .wl-quantity:hover {
	background: rgba(35, 61, 45, 0.08) !important;
}

.wl-quantity-cal .quantity {
	flex: 1 !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	align-items: center !important;
}

.wl-quantity-cal input.qty {
	border: none !important;
	background: transparent !important;
	text-align: center !important;
	font-family: 'Poppins', sans-serif !important;
	font-weight: 700 !important;
	font-size: 16px !important;
	color: #C28D38 !important;
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
	box-shadow: none !important;
	outline: none !important;
}

/* ==========================================================================
   CHECKOUT CLEANUP: Remove Company Name and unused fields cleanly
   ========================================================================== */
#billing_company_field,
#shipping_company_field,
.woocommerce-checkout #billing_company_field,
.woocommerce-checkout #shipping_company_field,
.woolentor-checkout #billing_company_field,
.woolentor-checkout #shipping_company_field,
.woolentor-checkout [id*="billing_company"],
.woolentor-checkout [id*="shipping_company"],
.woolentor-checkout [class*="billing_company"],
.woolentor-checkout [class*="shipping_company"],
.woolentor-checkout__form-row.billing_company,
[data-field-id="billing_company"],
.wc-block-components-address-form__company,
#order_comments_field,
.woocommerce-checkout div.create-account,
.woocommerce-checkout .create-account,
.woocommerce-checkout #createaccount,
.woocommerce-checkout label[for="createaccount"],
.woocommerce-checkout #account_password_field,
.woocommerce-checkout [name="account_password"] {
	display: none !important;
	visibility: hidden !important;
}

/* ==========================================================================
   INLINE BILLING COUNTRY & STATE (1 ROW) + FULL WIDTH TOWN / CITY & ADDRESS
   ========================================================================== */
.woocommerce-checkout #billing_country_field,
.woolentor-checkout #billing_country_field,
#billing_country_field {
	width: calc(50% - 10px) !important;
	float: left !important;
	clear: left !important;
	margin-right: 20px !important;
	margin-bottom: 20px !important;
	box-sizing: border-box !important;
	display: inline-block !important;
}

.woocommerce-checkout #billing_state_field,
.woolentor-checkout #billing_state_field,
#billing_state_field {
	width: calc(50% - 10px) !important;
	float: right !important;
	clear: right !important;
	margin-right: 0 !important;
	margin-bottom: 20px !important;
	box-sizing: border-box !important;
	display: inline-block !important;
}

.woocommerce-checkout #billing_country_field .select2-container,
#billing_country_field .select2-container,
.woocommerce-checkout #billing_state_field .select2-container,
#billing_state_field .select2-container {
	width: 100% !important;
}

/* Street Address, Town/City, and PIN Code: 100% Full Width */
.woocommerce-checkout #billing_address_1_field,
.woocommerce-checkout #billing_address_2_field,
.woocommerce-checkout #billing_city_field,
.woocommerce-checkout #billing_postcode_field,
.woolentor-checkout #billing_address_1_field,
.woolentor-checkout #billing_address_2_field,
.woolentor-checkout #billing_city_field,
.woolentor-checkout #billing_postcode_field,
#billing_address_1_field,
#billing_address_2_field,
#billing_city_field,
#billing_postcode_field {
	width: 100% !important;
	float: none !important;
	clear: both !important;
	margin-right: 0 !important;
	margin-bottom: 20px !important;
	box-sizing: border-box !important;
	display: block !important;
}

@media (max-width: 640px) {
	.woocommerce-checkout #billing_country_field,
	.woocommerce-checkout #billing_state_field,
	.woocommerce-checkout #billing_city_field,
	.woocommerce-checkout #billing_address_1_field,
	.woocommerce-checkout #billing_address_2_field,
	.woocommerce-checkout #billing_postcode_field,
	#billing_country_field,
	#billing_state_field,
	#billing_city_field,
	#billing_address_1_field,
	#billing_address_2_field,
	#billing_postcode_field {
		width: 100% !important;
		float: none !important;
		margin-right: 0 !important;
		clear: both !important;
	}
}

/* ==========================================================================
   CHECKOUT RETURNING CUSTOMER LOGIN FORM
   ========================================================================== */
.woocommerce-checkout form.login,
.woocommerce-checkout form.woocommerce-form-login {
	background: #FAF8F5 !important;
	border: 1.5px solid #E8E3DC !important;
	border-radius: 16px !important;
	padding: 28px 32px !important;
	margin: 0 0 30px 0 !important;
	box-shadow: 0 4px 20px rgba(35, 61, 45, 0.05) !important;
	clear: both !important;
}

.woocommerce-checkout form.login p:first-child {
	font-family: 'Poppins', sans-serif !important;
	font-size: 14px !important;
	color: #555E57 !important;
	margin-bottom: 18px !important;
}

/* ==========================================================================
   7. LUXURY ORDER RECEIVED / THANK YOU PAGE & CELEBRATION POPUP MODAL
   ========================================================================== */

/* Outer Wrapper & Typography Reset (Fixing yellow/primary body font colors & Header Separation) */
body.woocommerce-order-received .site-main,
body.woocommerce-order-received #main,
body.woocommerce-order-received .entry-content,
body.woocommerce-order-received .woocommerce,
.woocommerce-order {
	display: flow-root !important;
	width: 100% !important;
	margin: 0 auto !important;
	padding: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	border: none !important;
}

.movin-order-received-wrap {
	max-width: 1240px !important;
	width: 100% !important;
	margin: 50px auto 90px auto !important;
	padding: 0 24px !important;
	box-sizing: border-box !important;
	font-family: 'Poppins', sans-serif !important;
	color: #20241F !important;
}

@media (max-width: 991px) {
	.movin-order-received-wrap {
		margin: 36px auto 70px auto !important;
		padding: 0 20px !important;
	}
}

@media (max-width: 768px) {
	.movin-order-received-wrap {
		margin: 28px auto 50px auto !important;
		padding: 0 16px !important;
	}
}

/* Ensure WooCommerce default order notices don't duplicate */
.movin-order-received-wrap ~ .woocommerce-thankyou-order-details,
.movin-order-received-wrap ~ .woocommerce-order-details,
.movin-order-received-wrap ~ .woocommerce-customer-details {
	display: none !important;
}

/* 1. Hero Confirmation Banner */
.movin-order-hero-banner {
	background: linear-gradient(135deg, #FAF8F5 0%, #FFFFFF 100%) !important;
	border: 1.5px solid #EBE7E2 !important;
	border-radius: 20px !important;
	padding: 38px 36px !important;
	text-align: center !important;
	margin-bottom: 28px !important;
	box-shadow: 0 6px 24px rgba(35, 61, 45, 0.04) !important;
	position: relative !important;
}

.movin-order-hero-badge {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	background: rgba(35, 61, 45, 0.08) !important;
	color: #233D2D !important;
	border: 1px solid rgba(35, 61, 45, 0.15) !important;
	border-radius: 999px !important;
	padding: 6px 14px !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 1px !important;
	text-transform: uppercase !important;
	margin-bottom: 14px !important;
}

.movin-order-hero-badge svg {
	color: #233D2D !important;
}

.movin-order-hero-title {
	font-family: 'Poppins', sans-serif !important;
	font-size: 32px !important;
	font-weight: 700 !important;
	color: #233D2D !important;
	letter-spacing: -0.4px !important;
	margin: 0 0 10px 0 !important;
	line-height: 1.25 !important;
}

.movin-order-hero-subtitle {
	font-family: 'Poppins', sans-serif !important;
	font-size: 15px !important;
	color: #555E54 !important;
	line-height: 1.6 !important;
	max-width: 640px !important;
	margin: 0 auto !important;
}

.movin-order-hero-subtitle strong {
	color: #20241F !important;
	font-weight: 600 !important;
}

/* 2. Key Stats Highlights Grid */
.movin-order-stats-grid {
	display: grid !important;
	grid-template-columns: repeat(5, 1fr) !important;
	gap: 16px !important;
	margin-bottom: 28px !important;
}

@media (max-width: 1024px) {
	.movin-order-stats-grid {
		grid-template-columns: repeat(3, 1fr) !important;
	}
}

@media (max-width: 640px) {
	.movin-order-stats-grid {
		grid-template-columns: 1fr !important;
	}
}

.movin-order-stat-card {
	background: #FFFFFF !important;
	border: 1.5px solid #EBE7E2 !important;
	border-radius: 14px !important;
	padding: 18px 20px !important;
	display: flex !important;
	align-items: center !important;
	gap: 14px !important;
	box-shadow: 0 4px 16px rgba(35, 61, 45, 0.03) !important;
	transition: transform 0.2s ease, border-color 0.2s ease !important;
}

.movin-order-stat-card:hover {
	transform: translateY(-2px) !important;
	border-color: #C28D38 !important;
}

.movin-stat-icon {
	width: 44px !important;
	height: 44px !important;
	min-width: 44px !important;
	background: #FAF8F5 !important;
	border-radius: 10px !important;
	border: 1px solid #ECE7E1 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #233D2D !important;
}

.movin-stat-info {
	display: flex !important;
	flex-direction: column !important;
	min-width: 0 !important;
}

.movin-stat-label {
	font-family: 'Poppins', sans-serif !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	color: #788277 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
	margin-bottom: 3px !important;
	white-space: nowrap !important;
}

.movin-stat-value {
	font-family: 'Poppins', sans-serif !important;
	font-size: 14.5px !important;
	font-weight: 700 !important;
	color: #20241F !important;
	line-height: 1.3 !important;
	word-break: break-word !important;
}

.movin-stat-value--total {
	color: #C28D38 !important;
	font-size: 16px !important;
}

/* 3. Order Stepper / Fulfillment Timeline Card */
.movin-order-stepper-card {
	background: #FFFFFF !important;
	border: 1.5px solid #EBE7E2 !important;
	border-radius: 18px !important;
	padding: 28px 32px !important;
	margin-bottom: 32px !important;
	box-shadow: 0 4px 20px rgba(35, 61, 45, 0.04) !important;
}

.movin-stepper-header {
	margin-bottom: 24px !important;
	padding-bottom: 16px !important;
	border-bottom: 1px solid #ECE7E1 !important;
}

.movin-stepper-title-wrap {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	margin-bottom: 4px !important;
}

.movin-stepper-title {
	font-family: 'Poppins', sans-serif !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	color: #233D2D !important;
	margin: 0 !important;
}

.movin-stepper-badge {
	display: inline-block !important;
	padding: 5px 14px !important;
	border-radius: 999px !important;
	font-size: 11.5px !important;
	font-weight: 700 !important;
	text-transform: capitalize !important;
	letter-spacing: 0.4px !important;
	background: rgba(35, 61, 45, 0.09) !important;
	color: #233D2D !important;
}

.movin-stepper-badge.status-processing {
	background: #EBF5EF !important;
	color: #233D2D !important;
}

.movin-stepper-badge.status-completed {
	background: #E8F5E9 !important;
	color: #2E7D32 !important;
}

.movin-stepper-sub {
	font-size: 13px !important;
	color: #666B66 !important;
	margin: 0 !important;
}

.movin-stepper-track {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	position: relative !important;
	padding: 10px 0 !important;
}

@media (max-width: 680px) {
	.movin-stepper-track {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 20px !important;
	}
}

.movin-stepper-step {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	position: relative !important;
	z-index: 2 !important;
}

.movin-stepper-bubble {
	width: 38px !important;
	height: 38px !important;
	min-width: 38px !important;
	border-radius: 50% !important;
	background: #FAF8F5 !important;
	border: 2px solid #D5CEBF !important;
	color: #788277 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-weight: 700 !important;
	font-size: 14px !important;
	transition: all 0.25s ease !important;
}

.movin-stepper-step.is-active .movin-stepper-bubble {
	background: #233D2D !important;
	border-color: #233D2D !important;
	color: #FFFFFF !important;
	box-shadow: 0 0 0 4px rgba(35, 61, 45, 0.12) !important;
}

.movin-stepper-meta {
	display: flex !important;
	flex-direction: column !important;
}

.movin-step-title {
	font-family: 'Poppins', sans-serif !important;
	font-size: 13.5px !important;
	font-weight: 700 !important;
	color: #233D2D !important;
	line-height: 1.3 !important;
}

.movin-step-date,
.movin-step-desc {
	font-size: 12px !important;
	color: #788277 !important;
	margin-top: 2px !important;
}

.movin-stepper-bar {
	flex: 1 !important;
	height: 3px !important;
	background: #E8E4DA !important;
	margin: 0 16px !important;
	border-radius: 2px !important;
	position: relative !important;
	z-index: 1 !important;
}

.movin-stepper-bar.is-active {
	background: #233D2D !important;
}

@media (max-width: 680px) {
	.movin-stepper-bar {
		display: none !important;
	}
}

/* 4. Two-Column Split Layout */
.movin-order-content-layout {
	display: grid !important;
	grid-template-columns: 1.25fr 0.75fr !important;
	gap: 32px !important;
	align-items: start !important;
	margin-bottom: 36px !important;
}

@media (max-width: 960px) {
	.movin-order-content-layout {
		grid-template-columns: 1fr !important;
		gap: 24px !important;
	}
}

/* Base Card */
.movin-order-card {
	background: #FFFFFF !important;
	border: 1.5px solid #EBE7E2 !important;
	border-radius: 18px !important;
	padding: 28px 30px !important;
	box-shadow: 0 4px 20px rgba(35, 61, 45, 0.04) !important;
	box-sizing: border-box !important;
	margin-bottom: 24px !important;
}

.movin-card-heading {
	font-family: 'Poppins', sans-serif !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	color: #233D2D !important;
	margin: 0 0 20px 0 !important;
	padding-bottom: 12px !important;
	border-bottom: 1.5px solid #ECE7E1 !important;
}

.movin-card-header-icon {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	margin-bottom: 16px !important;
	padding-bottom: 12px !important;
	border-bottom: 1.5px solid #ECE7E1 !important;
	color: #233D2D !important;
}

.movin-card-header-icon .movin-card-heading {
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
}

/* Items List */
.movin-order-items-list {
	display: flex !important;
	flex-direction: column !important;
	gap: 14px !important;
	margin-bottom: 20px !important;
}

.movin-order-item-row {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	padding-bottom: 16px !important;
	border-bottom: 1px solid #F1ECE2 !important;
}

.movin-item-thumb {
	position: relative !important;
	width: 64px !important;
	height: 64px !important;
	min-width: 64px !important;
	border-radius: 10px !important;
	background: #FAF8F5 !important;
	border: 1px solid #E8E3D8 !important;
	overflow: visible !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.movin-item-thumb img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
	border-radius: 10px !important;
	display: block !important;
}

.movin-item-qty-badge {
	position: absolute !important;
	top: -6px !important;
	right: -6px !important;
	background: #233D2D !important;
	color: #FFFFFF !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	width: 20px !important;
	height: 20px !important;
	border-radius: 50% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15) !important;
}

.movin-item-details {
	flex: 1 !important;
	min-width: 0 !important;
}

.movin-item-name {
	font-family: 'Poppins', sans-serif !important;
	font-size: 14.5px !important;
	font-weight: 600 !important;
	color: #233D2D !important;
	margin: 0 0 4px 0 !important;
	line-height: 1.4 !important;
}

.movin-item-name a {
	color: #233D2D !important;
	text-decoration: none !important;
	transition: color 0.2s ease !important;
}

.movin-item-name a:hover {
	color: #C28D38 !important;
}

.movin-item-meta-qty {
	font-size: 12px !important;
	color: #788277 !important;
}

.movin-item-price {
	font-family: 'Poppins', sans-serif !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #20241F !important;
	white-space: nowrap !important;
}

/* Totals Table */
.movin-order-totals-table {
	background: #FAF8F5 !important;
	border-radius: 14px !important;
	padding: 18px 22px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
}

.movin-total-row {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	font-size: 14px !important;
	color: #555E54 !important;
}

.movin-total-label {
	font-weight: 500 !important;
}

.movin-total-val {
	font-weight: 600 !important;
	color: #20241F !important;
}

.movin-free-badge {
	color: #2E7D32 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	background: #E8F5E9 !important;
	padding: 2px 8px !important;
	border-radius: 4px !important;
}

.movin-total-row--discount {
	color: #C62828 !important;
}

.movin-total-row--grand {
	border-top: 1.5px solid #E8E3D8 !important;
	padding-top: 12px !important;
	margin-top: 4px !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	color: #233D2D !important;
}

.movin-total-val--grand {
	color: #C28D38 !important;
	font-size: 20px !important;
	font-weight: 700 !important;
}

/* Delivery Address Content */
.movin-address-content {
	line-height: 1.6 !important;
}

.movin-recipient-name {
	display: block !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #20241F !important;
	margin-bottom: 6px !important;
}

.movin-address-lines {
	font-size: 14px !important;
	color: #555E54 !important;
	margin: 0 0 12px 0 !important;
}

.movin-contact-item {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-size: 13.5px !important;
	color: #20241F !important;
	margin: 4px 0 !important;
}

.movin-contact-item svg {
	color: #233D2D !important;
	flex-shrink: 0 !important;
}

/* Payment Summary Content */
.movin-payment-summary-content {
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
}

.movin-payment-badge {
	display: inline-block !important;
	background: rgba(35, 61, 45, 0.08) !important;
	color: #233D2D !important;
	padding: 6px 14px !important;
	border-radius: 8px !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	align-self: flex-start !important;
}

.movin-payment-instruction {
	font-size: 13px !important;
	color: #666B66 !important;
	margin: 0 !important;
	line-height: 1.5 !important;
}

/* Support Card */
.movin-support-heading {
	font-family: 'Poppins', sans-serif !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	color: #233D2D !important;
	margin: 0 0 6px 0 !important;
}

.movin-support-text {
	font-size: 13px !important;
	color: #666B66 !important;
	margin: 0 0 14px 0 !important;
	line-height: 1.5 !important;
}

.movin-support-btn--whatsapp {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	background: #25D366 !important;
	color: #FFFFFF !important;
	padding: 10px 18px !important;
	border-radius: 8px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	transition: background-color 0.2s ease, transform 0.15s ease !important;
}

.movin-support-btn--whatsapp:hover {
	background: #1EBE5D !important;
	transform: translateY(-1px) !important;
	color: #FFFFFF !important;
}

/* Bottom Actions */
.movin-order-bottom-actions {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 16px !important;
	margin-top: 10px !important;
	flex-wrap: wrap !important;
}

.movin-order-btn-primary {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	background: #233D2D !important;
	color: #FFFFFF !important;
	-webkit-text-fill-color: #FFFFFF !important;
	padding: 14px 32px !important;
	border-radius: 999px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	transition: all 0.25s ease !important;
	box-shadow: 0 4px 16px rgba(35, 61, 45, 0.2) !important;
}

.movin-order-btn-primary:hover {
	background: #C28D38 !important;
	color: #FFFFFF !important;
	-webkit-text-fill-color: #FFFFFF !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 6px 20px rgba(194, 141, 56, 0.35) !important;
}

.movin-order-btn-secondary {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	background: #FFFFFF !important;
	color: #233D2D !important;
	border: 1.5px solid #233D2D !important;
	padding: 13px 28px !important;
	border-radius: 999px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	transition: all 0.2s ease !important;
}

.movin-order-btn-secondary:hover {
	background: #233D2D !important;
	color: #FFFFFF !important;
}

/* ==========================================================================
   8. CELEBRATORY THANK YOU POPUP MODAL (REPLACES ANIMATED PRELOADER)
   ========================================================================== */
.movin-thankyou-popup {
	position: fixed !important;
	inset: 0 !important;
	z-index: 99999999 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	opacity: 0 !important;
	pointer-events: none !important;
	transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.movin-thankyou-popup.is-open {
	opacity: 1 !important;
	pointer-events: auto !important;
}

body.movin-modal-active {
	overflow: hidden !important;
}

.movin-thankyou-backdrop {
	position: absolute !important;
	inset: 0 !important;
	background: rgba(14, 25, 18, 0.65) !important;
	backdrop-filter: blur(8px) !important;
	-webkit-backdrop-filter: blur(8px) !important;
}

.movin-thankyou-dialog {
	position: relative !important;
	z-index: 2 !important;
	width: 100% !important;
	max-width: 520px !important;
	background: #FFFFFF !important;
	border: 2px solid rgba(194, 141, 56, 0.25) !important;
	border-radius: 26px !important;
	padding: 40px 36px 36px 36px !important;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.22), 0 4px 20px rgba(35, 61, 45, 0.08) !important;
	box-sizing: border-box !important;
	transform: scale(0.92) translateY(20px) !important;
	transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.movin-thankyou-popup.is-open .movin-thankyou-dialog {
	transform: scale(1) translateY(0) !important;
}

.movin-thankyou-close {
	position: absolute !important;
	top: 18px !important;
	right: 18px !important;
	width: 36px !important;
	height: 36px !important;
	border-radius: 50% !important;
	border: none !important;
	background: #FAF8F5 !important;
	color: #666B66 !important;
	font-size: 24px !important;
	line-height: 1 !important;
	cursor: pointer !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: all 0.2s ease !important;
}

.movin-thankyou-close:hover {
	background: #233D2D !important;
	color: #FFFFFF !important;
}

.movin-thankyou-content {
	text-align: center !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
}

/* Pulsing Badge */
.movin-thankyou-badge-wrap {
	position: relative !important;
	width: 80px !important;
	height: 80px !important;
	margin-bottom: 18px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.movin-thankyou-badge {
	width: 72px !important;
	height: 72px !important;
	border-radius: 50% !important;
	background: linear-gradient(135deg, #233D2D 0%, #2F533E 100%) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: 0 8px 24px rgba(35, 61, 45, 0.3) !important;
	position: relative !important;
	z-index: 2 !important;
}

.movin-thankyou-pulse-ring {
	position: absolute !important;
	inset: -8px !important;
	border-radius: 50% !important;
	border: 2px solid #C28D38 !important;
	opacity: 0.6 !important;
	animation: movinPulseRing 2s infinite ease-out !important;
}

@keyframes movinPulseRing {
	0% {
		transform: scale(0.95);
		opacity: 0.8;
	}
	50% {
		transform: scale(1.15);
		opacity: 0;
	}
	100% {
		transform: scale(0.95);
		opacity: 0;
	}
}

.movin-thankyou-pill {
	display: inline-block !important;
	background: rgba(194, 141, 56, 0.12) !important;
	color: #C28D38 !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	letter-spacing: 1.2px !important;
	text-transform: uppercase !important;
	padding: 4px 12px !important;
	border-radius: 999px !important;
	margin-bottom: 10px !important;
}

.movin-thankyou-title {
	font-family: 'Poppins', sans-serif !important;
	font-size: 26px !important;
	font-weight: 700 !important;
	color: #233D2D !important;
	margin: 0 0 10px 0 !important;
	letter-spacing: -0.3px !important;
}

.movin-thankyou-subtitle {
	font-family: 'Poppins', sans-serif !important;
	font-size: 14px !important;
	color: #555E54 !important;
	line-height: 1.6 !important;
	margin: 0 0 22px 0 !important;
	max-width: 440px !important;
}

.movin-thankyou-subtitle strong {
	color: #20241F !important;
	font-weight: 600 !important;
}

/* Modal Highlights Grid */
.movin-thankyou-highlights {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	gap: 10px !important;
	width: 100% !important;
	background: #FAF8F5 !important;
	border: 1px solid #ECE7E1 !important;
	border-radius: 14px !important;
	padding: 14px 12px !important;
	margin-bottom: 16px !important;
	box-sizing: border-box !important;
}

.movin-hl-item {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
}

.movin-hl-lbl {
	font-size: 11px !important;
	color: #788277 !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	margin-bottom: 2px !important;
}

.movin-hl-val {
	font-size: 14px !important;
	color: #20241F !important;
	font-weight: 700 !important;
}

.movin-thankyou-notice-box {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	background: rgba(35, 61, 45, 0.05) !important;
	border-radius: 8px !important;
	padding: 10px 14px !important;
	font-size: 12.5px !important;
	color: #233D2D !important;
	margin-bottom: 22px !important;
	width: 100% !important;
	box-sizing: border-box !important;
	justify-content: center !important;
}

.movin-thankyou-notice-box svg {
	color: #233D2D !important;
	flex-shrink: 0 !important;
}

.movin-thankyou-actions {
	display: flex !important;
	gap: 12px !important;
	width: 100% !important;
}

@media (max-width: 480px) {
	.movin-thankyou-actions {
		flex-direction: column !important;
	}
}

.movin-thankyou-btn-view {
	flex: 1 !important;
	height: 48px !important;
	background: #233D2D !important;
	color: #FFFFFF !important;
	border: none !important;
	border-radius: 999px !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: background-color 0.2s ease, transform 0.15s ease !important;
	box-shadow: 0 4px 14px rgba(35, 61, 45, 0.2) !important;
}

.movin-thankyou-btn-view:hover {
	background: #C28D38 !important;
	transform: translateY(-1px) !important;
}

.movin-thankyou-btn-shop {
	flex: 1 !important;
	height: 48px !important;
	background: #FAF8F5 !important;
	border: 1.5px solid #E2DCCF !important;
	color: #233D2D !important;
	border-radius: 999px !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: all 0.2s ease !important;
}

.movin-thankyou-btn-shop:hover {
	background: #233D2D !important;
	border-color: #233D2D !important;
	color: #FFFFFF !important;
}

/* ==========================================================================
   CHECKOUT ERROR NOTICES & INLINE FIELD ERROR ARCHITECTURE
   ========================================================================== */
/* Hide field-specific errors in the top notification banner */
.woocommerce-NoticeGroup-checkout .woocommerce-error li[data-id],
.woocommerce-checkout .woocommerce-NoticeGroup .woocommerce-error li[data-id] {
	display: none !important;
}

.woocommerce-NoticeGroup-checkout:not(:has(.woocommerce-error li:not([data-id]):not(:empty))),
.woocommerce-NoticeGroup-checkout:has(.woocommerce-error:empty) {
	display: none !important;
}

/* Inline Field Errors: Crisp Red Typography, Zero Spacing Bloat, No Overlap */
.woocommerce-checkout .checkout-inline-error-message,
.woocommerce-checkout .form-row .checkout-inline-error-message,
p.checkout-inline-error-message {
	display: block !important;
	color: #DC2626 !important;
	font-family: 'Poppins', sans-serif !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 1.35 !important;
	margin: 6px 0 0 0 !important;
	padding: 0 !important;
	clear: both !important;
	width: 100% !important;
	position: static !important;
	box-sizing: border-box !important;
	float: none !important;
}

/* Red Highlight on Invalid Field Inputs */
.woocommerce-checkout .woocommerce form .form-row.woocommerce-invalid input.input-text,
.woocommerce-checkout .woocommerce form .form-row.woocommerce-invalid select,
.woocommerce-checkout .woocommerce form .form-row.woocommerce-invalid textarea,
.woocommerce-checkout .woocommerce form .form-row.woocommerce-invalid .select2-selection,
.woocommerce-checkout .form-row.woocommerce-invalid input.input-text,
.woocommerce-checkout .form-row.woocommerce-invalid select,
.woocommerce-checkout .form-row.woocommerce-invalid .select2-selection {
	border-color: #DC2626 !important;
	background-color: #FEF2F2 !important;
	box-shadow: 0 0 0 3px rgba(220, 38, 38, 0.08) !important;
}

.woocommerce-checkout .woocommerce form .form-row.woocommerce-invalid label:not(.checkbox),
.woocommerce-checkout .form-row.woocommerce-invalid label:not(.checkbox) {
	color: #DC2626 !important;
}

/* Form Row Layout & Spacing Stability */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row,
.woocommerce-checkout .woocommerce-additional-fields__field-wrapper .form-row {
	position: relative !important;
	margin-bottom: 20px !important;
}

.woocommerce-checkout .woocommerce-input-wrapper {
	display: block !important;
	width: 100% !important;
	position: relative !important;
	clear: both !important;
}




