/**
 * ArchVR — WooCommerce Luxury Architectural Styling
 * Dedicated page-specific stylesheet for Shop, Archives, and Product Views.
 *
 * @package ArchVR
 * @version 1.0.0
 */

/* ==========================================================================
   1. Shop Hero Section & Breadcrumb
   ========================================================================== */
.woocommerce-page {
	padding-top: 0 !important;
}

.woocommerce-page > .shop-content-container:first-child {
	padding-top: clamp(6.5rem, 9vw, 9rem);
}

.shop-hero {
	padding-top: clamp(6.5rem, 8.5vw, 8.5rem);
	padding-bottom: clamp(2.5rem, 4vw, 4rem);
	background: radial-gradient(circle at 50% 12%, rgba(207, 161, 93, 0.12) 0%, rgba(13, 15, 18, 0) 75%);
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
	margin-bottom: clamp(2.5rem, 4vw, 4rem);
}

.shop-breadcrumb-row {
	margin-bottom: 2rem;
}

.shop-breadcrumb {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.85rem;
	color: #8b929e;
}

.shop-breadcrumb a {
	color: #8b929e;
	text-decoration: none;
	transition: color 0.2s ease;
}

.shop-breadcrumb a:hover {
	color: var(--color-accent, #cfa15d);
}

.shop-breadcrumb .sep {
	color: rgba(255, 255, 255, 0.2);
	font-size: 0.75rem;
}

.shop-breadcrumb .current {
	color: var(--color-accent, #cfa15d);
	font-weight: 600;
}

/* Hero Intro Headline */
.shop-hero-intro {
	max-width: 820px;
	margin: 0 auto;
}

.shop-hero-badge {
	display: inline-block;
	font-size: 0.76rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	color: var(--color-accent, #cfa15d);
	text-transform: uppercase;
	margin-bottom: 0.85rem;
}

.shop-hero-title {
	font-family: var(--font-heading, "Cinzel", Georgia, serif);
	font-size: clamp(2.2rem, 4.5vw, 3.8rem);
	font-weight: 800;
	color: #ffffff;
	letter-spacing: -0.02em;
	line-height: 1.15;
	margin: 0 0 1rem 0;
}

.shop-hero-description {
	font-size: clamp(0.95rem, 1.2vw, 1.08rem);
	line-height: 1.7;
	color: #9aa1ad;
	max-width: 680px;
	margin: 0 auto 2.5rem auto;
}

/* Category Filter Tabs Bar */
.shop-filter-bar {
	display: flex;
	justify-content: center;
	margin-top: 1.5rem;
}

.shop-filter-pills {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.75rem;
	justify-content: center;
}

.shop-cat-pill {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.55rem 1.25rem;
	border-radius: 9999px;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.09);
	color: #c0c6d2;
	font-size: 0.85rem;
	font-weight: 600;
	text-decoration: none;
	transition: transform 0.25s ease, background 0.25s ease, border-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease;
}

.shop-cat-pill:hover {
	border-color: rgba(207, 161, 93, 0.5);
	color: #ffffff;
	background: rgba(207, 161, 93, 0.08);
	transform: translateY(-2px);
}

.shop-cat-pill--active {
	background: var(--color-accent, #cfa15d);
	border-color: var(--color-accent, #cfa15d);
	color: #000000;
	font-weight: 700;
	box-shadow: 0 4px 18px rgba(207, 161, 93, 0.35);
}

.shop-cat-pill--active:hover {
	background: #d8ad69;
	color: #000000;
	border-color: #d8ad69;
}

.shop-cat-count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.72rem;
	padding: 0.12rem 0.45rem;
	border-radius: 9999px;
	background: rgba(255, 255, 255, 0.1);
	color: inherit;
	line-height: 1;
}

.shop-cat-pill--active .shop-cat-count {
	background: rgba(0, 0, 0, 0.2);
	color: #000000;
	font-weight: 800;
}

/* ==========================================================================
   2. Shop Content Container & Toolbar
   ========================================================================== */
.shop-content-container {
	padding-bottom: 3rem;
}

/* Clearfix for default WooCommerce floats */
.shop-content-container::after {
	content: "";
	display: table;
	clear: both;
}

/* Results Counter */
.woocommerce-result-count {
	float: left;
	margin: 0 0 2rem 0;
	color: #8b929e;
	font-size: 0.88rem;
	font-weight: 500;
	line-height: 2.5;
}

/* Orderby Select Dropdown */
.woocommerce-ordering {
	float: right;
	margin: 0 0 2rem 0;
}

.woocommerce-ordering select.orderby {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background-color: #14171c;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23cfa15d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 1.1rem center;
	background-size: 14px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 8px;
	color: #ffffff;
	padding: 0.65rem 2.6rem 0.65rem 1.1rem;
	font-size: 0.86rem;
	font-family: inherit;
	font-weight: 500;
	cursor: pointer;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	outline: none;
}

.woocommerce-ordering select.orderby:hover {
	border-color: rgba(207, 161, 93, 0.5);
}

.woocommerce-ordering select.orderby:focus {
	border-color: var(--color-accent, #cfa15d);
	box-shadow: 0 0 0 3px rgba(207, 161, 93, 0.2);
}

.woocommerce-ordering select.orderby option {
	background: #14171c;
	color: #ffffff;
	padding: 0.5rem;
}

/* ==========================================================================
   3. Product Grid & Luxury Cards
   ========================================================================== */
ul.products {
	clear: both;
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)) !important;
	gap: 2.2rem !important;
	list-style: none !important;
	padding: 0 !important;
	margin: 0 0 4rem 0 !important;
}

ul.products::before,
ul.products::after {
	display: none !important;
}

/* Product Card */
ul.products li.product {
	position: relative !important;
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 14px !important;
	padding: 1.25rem !important;
	display: flex !important;
	flex-direction: column !important;
	transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1),
	            border-color 0.35s ease,
	            box-shadow 0.35s ease !important;
	box-sizing: border-box !important;
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
}

ul.products li.product:hover {
	transform: translateY(-6px) !important;
	border-color: rgba(207, 161, 93, 0.4) !important;
	box-shadow: 0 20px 45px rgba(0, 0, 0, 0.5) !important;
}

/* Product Media & Image */
ul.products li.product a.woocommerce-LoopProduct-link {
	display: flex !important;
	flex-direction: column !important;
	flex: 1 0 auto !important;
	text-decoration: none !important;
	color: inherit !important;
	position: relative !important;
}

ul.products li.product .woocommerce-loop-product__link img,
ul.products li.product a > img {
	width: 100% !important;
	height: 250px !important;
	object-fit: cover !important;
	border-radius: 10px !important;
	margin-bottom: 1.25rem !important;
	display: block !important;
	transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1) !important;
	background: #0d0f12 !important;
}

ul.products li.product:hover img {
	transform: scale(1.04) !important;
}

/* Sale Badge */
ul.products li.product span.onsale {
	position: absolute !important;
	top: 0.85rem !important;
	left: 0.85rem !important;
	right: auto !important;
	bottom: auto !important;
	margin: 0 !important;
	min-height: auto !important;
	min-width: auto !important;
	line-height: 1 !important;
	background: var(--color-accent, #cfa15d) !important;
	color: #000000 !important;
	font-size: 0.72rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	padding: 0.4rem 0.85rem !important;
	border-radius: 9999px !important;
	z-index: 4 !important;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.4) !important;
}

/* Product Title */
ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--font-heading, "Cinzel", Georgia, serif) !important;
	font-size: 1.18rem !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	line-height: 1.35 !important;
	margin: 0 0 0.65rem 0 !important;
	padding: 0 !important;
	transition: color 0.25s ease !important;
}

ul.products li.product:hover .woocommerce-loop-product__title {
	color: var(--color-accent, #cfa15d) !important;
}

/* Price Formatting */
ul.products li.product span.price {
	font-size: 1.1rem !important;
	color: #ffffff !important;
	margin-bottom: 1.25rem !important;
	display: flex !important;
	align-items: baseline !important;
	gap: 0.6rem !important;
	font-weight: 700 !important;
}

ul.products li.product span.price del {
	font-size: 0.88rem !important;
	color: #747a86 !important;
	font-weight: 400 !important;
	opacity: 0.8 !important;
}

ul.products li.product span.price ins {
	text-decoration: none !important;
	color: var(--color-accent, #cfa15d) !important;
	font-weight: 800 !important;
}

/* Add to Cart Button */
ul.products li.product a.button,
ul.products li.product a.add_to_cart_button,
ul.products li.product .button {
	margin-top: auto !important;
	width: 100% !important;
	text-align: center !important;
	padding: 0.8rem 1.4rem !important;
	background: transparent !important;
	border: 1px solid var(--color-accent, #cfa15d) !important;
	color: var(--color-accent, #cfa15d) !important;
	border-radius: 8px !important;
	font-size: 0.82rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	transition: all 0.25s ease !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0.5rem !important;
	cursor: pointer !important;
	position: relative !important;
	box-sizing: border-box !important;
}

ul.products li.product a.button:hover,
ul.products li.product a.add_to_cart_button:hover {
	background: var(--color-accent, #cfa15d) !important;
	color: #000000 !important;
	box-shadow: 0 6px 20px rgba(207, 161, 93, 0.3) !important;
	transform: translateY(-2px) !important;
}

/* View Cart link that appears after adding */
ul.products li.product a.added_to_cart {
	margin-top: 0.65rem !important;
	display: inline-block !important;
	font-size: 0.82rem !important;
	font-weight: 600 !important;
	color: var(--color-accent, #cfa15d) !important;
	text-decoration: underline !important;
	text-align: center !important;
	width: 100% !important;
	transition: color 0.2s ease !important;
}

ul.products li.product a.added_to_cart:hover {
	color: #ffffff !important;
}

/* AJAX Loading Spinner */
ul.products li.product a.button.loading {
	opacity: 0.7 !important;
	pointer-events: none !important;
}

ul.products li.product a.button.loading::after {
	font-family: inherit !important;
	content: "..." !important;
	margin-left: 0.4rem !important;
}

/* ==========================================================================
   4. WooCommerce Notices & Alerts
   ========================================================================== */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-left: 4px solid var(--color-accent, #cfa15d) !important;
	border-radius: 10px !important;
	color: #e2e8f0 !important;
	padding: 1.1rem 1.6rem !important;
	margin: 0 0 2.5rem 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	font-size: 0.92rem !important;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.35) !important;
}

.woocommerce-message a.button,
.woocommerce-info a.button {
	background: var(--color-accent, #cfa15d) !important;
	color: #000000 !important;
	border-radius: 6px !important;
	padding: 0.5rem 1.1rem !important;
	font-size: 0.8rem !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
	float: none !important;
	text-decoration: none !important;
	transition: all 0.2s ease !important;
}

.woocommerce-message a.button:hover,
.woocommerce-info a.button:hover {
	background: #d8ad69 !important;
	transform: translateY(-1px) !important;
}

.woocommerce-error {
	border-left-color: #e53e3e !important;
}

/* ==========================================================================
   5. Pagination
   ========================================================================== */
.woocommerce-pagination {
	text-align: center !important;
	margin: 4rem 0 2rem 0 !important;
}

.woocommerce-pagination ul.page-numbers {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.5rem !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	list-style: none !important;
}

.woocommerce-pagination ul.page-numbers li {
	display: inline-block !important;
	border: none !important;
	margin: 0 !important;
}

.woocommerce-pagination ul.page-numbers li .page-numbers {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 44px !important;
	height: 44px !important;
	padding: 0 0.85rem !important;
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 8px !important;
	color: #ffffff !important;
	font-size: 0.9rem !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	transition: all 0.2s ease !important;
}

.woocommerce-pagination ul.page-numbers li .page-numbers:hover,
.woocommerce-pagination ul.page-numbers li .page-numbers.current {
	background: var(--color-accent, #cfa15d) !important;
	border-color: var(--color-accent, #cfa15d) !important;
	color: #000000 !important;
	font-weight: 700 !important;
	box-shadow: 0 4px 15px rgba(207, 161, 93, 0.3) !important;
}

/* ==========================================================================
   6. Single Product Luxury View Styling
   ========================================================================== */
.single-product div.product {
	padding-top: clamp(4rem, 6vw, 6rem);
}

.single-product .product_title {
	font-family: var(--font-heading, "Cinzel", Georgia, serif) !important;
	font-size: clamp(2rem, 3.5vw, 2.8rem) !important;
	font-weight: 800 !important;
	color: #ffffff !important;
	line-height: 1.2 !important;
	margin-bottom: 0.8rem !important;
}

.single-product p.price {
	font-size: 1.6rem !important;
	color: var(--color-accent, #cfa15d) !important;
	font-weight: 700 !important;
	margin-bottom: 1.5rem !important;
}

.single-product .woocommerce-product-details__short-description {
	color: #a6abb4 !important;
	line-height: 1.7 !important;
	font-size: 0.98rem !important;
	margin-bottom: 2rem !important;
}

.single-product .quantity input.qty {
	background: #0d0f12 !important;
	border: 1px solid rgba(255, 255, 255, 0.15) !important;
	border-radius: 8px !important;
	color: #ffffff !important;
	padding: 0.75rem 1rem !important;
	font-size: 1rem !important;
	font-weight: 600 !important;
}

.single-product button.single_add_to_cart_button {
	background: var(--color-accent, #cfa15d) !important;
	color: #000000 !important;
	border: none !important;
	border-radius: 8px !important;
	padding: 0.85rem 2.2rem !important;
	font-size: 0.88rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	cursor: pointer !important;
	transition: all 0.25s ease !important;
}

.single-product button.single_add_to_cart_button:hover {
	background: #d8ad69 !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 6px 20px rgba(207, 161, 93, 0.35) !important;
}

/* ==========================================================================
   7. Responsive Design
   ========================================================================== */
@media (max-width: 1024px) {
	ul.products {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 1.8rem !important;
	}
}

@media (max-width: 767px) {
	.shop-hero {
		padding-top: 5.5rem;
		padding-bottom: 2rem;
		margin-bottom: 2rem;
	}

	.shop-hero-title {
		font-size: 1.95rem;
	}

	.shop-hero-description {
		font-size: 0.9rem;
		margin-bottom: 1.5rem;
	}

	.shop-filter-pills {
		overflow-x: auto;
		flex-wrap: nowrap;
		justify-content: flex-start;
		padding-bottom: 0.5rem;
		-webkit-overflow-scrolling: touch;
		width: 100%;
	}

	.shop-cat-pill {
		flex-shrink: 0;
		padding: 0.45rem 1rem;
		font-size: 0.8rem;
	}

	.woocommerce-result-count,
	.woocommerce-ordering {
		float: none;
		text-align: center;
		margin-bottom: 1.2rem;
		width: 100%;
	}

	.woocommerce-ordering select.orderby {
		width: 100%;
	}

	ul.products {
		grid-template-columns: 1fr !important;
		gap: 1.5rem !important;
	}

	ul.products li.product .woocommerce-loop-product__link img,
	ul.products li.product a > img {
		height: 220px !important;
	}
}

/* ==========================================================================
   8. WooCommerce Cart Page Styling (Simple Minimalist Luxury)
   ========================================================================== */
.woocommerce-page-wrapper {
	padding-top: clamp(4.5rem, 7vw, 6.5rem);
	padding-bottom: 6rem;
}

/* Constrain WooCommerce Cart and Checkout to a luxury centered container */
.woocommerce-page-wrapper .container,
.woocommerce-cart-container,
.woocommerce-full-container {
	max-width: 1140px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: clamp(1rem, 3vw, 2rem) !important;
	padding-right: clamp(1rem, 3vw, 2rem) !important;
	box-sizing: border-box !important;
}

/* Simple Minimalist Header for Cart & Checkout */
.wc-simple-page-header {
	margin-bottom: clamp(2rem, 3.5vw, 3.2rem);
	text-align: center;
}

.wc-simple-badge {
	display: inline-block;
	font-family: var(--font-body, 'Plus Jakarta Sans', sans-serif);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--color-accent, #cfa15d);
	margin-bottom: 0.4rem;
}

.wc-simple-title {
	font-family: var(--font-heading, 'Syne', sans-serif) !important;
	font-size: clamp(2rem, 3.5vw, 2.75rem) !important;
	font-weight: 700 !important;
	letter-spacing: -0.02em !important;
	color: #ffffff !important;
	line-height: 1.2 !important;
	margin: 0 !important;
}

/* Real-Time Shopping Cart Badge Pulse & Bounce Animation */
@keyframes cartBadgeBounce {
	0% { transform: scale(1); }
	35% { transform: scale(1.4); background: var(--color-accent, #cfa15d); color: #000000; }
	70% { transform: scale(0.9); }
	100% { transform: scale(1); }
}

.cart-count-badge.cart-badge-bounce {
	animation: cartBadgeBounce 0.45s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

/* --------------------------------------------------------------------------
   8A. Gutenberg WooCommerce Cart Block (.wp-block-woocommerce-cart)
   -------------------------------------------------------------------------- */
.wp-block-woocommerce-cart {
	color: #e0e4ec !important;
	margin-bottom: 4rem !important;
	width: 100% !important;
}

/* 2-COLUMN BALANCED FLEX LAYOUT */
.wp-block-woocommerce-cart .wc-block-components-sidebar-layout,
.wc-block-components-sidebar-layout {
	display: flex !important;
	flex-direction: row !important;
	align-items: flex-start !important;
	justify-content: space-between !important;
	gap: 2rem !important;
	width: 100% !important;
	max-width: 1140px !important;
	margin: 0 auto !important;
	box-sizing: border-box !important;
	position: relative !important;
}

/* Neutralize React sentinel spacer div */
.wc-block-components-sidebar-layout > [aria-hidden="true"] {
	position: absolute !important;
	width: 0 !important;
	height: 0 !important;
	pointer-events: none !important;
	opacity: 0 !important;
}

/* LEFT COLUMN: Cart Items Block Main Card */
.wp-block-woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-main,
.wc-block-components-sidebar-layout .wc-block-components-main,
.wc-block-cart__main {
	flex: 1 1 0% !important;
	min-width: 0 !important;
	width: auto !important;
	max-width: none !important;
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 16px !important;
	padding: clamp(1.25rem, 2.5vw, 2.25rem) !important;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25) !important;
	box-sizing: border-box !important;
}

/* Reset inner items block background so it doesn't double-card */
.wp-block-woocommerce-cart .wc-block-components-main div[data-block-name="woocommerce/cart-items-block"],
.wp-block-woocommerce-cart .wc-block-components-main .wc-block-cart-items-block {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	box-shadow: none !important;
}

/* RIGHT COLUMN: Cart Totals & Order Summary */
.wp-block-woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar,
.wp-block-woocommerce-cart .wc-block-components-sidebar,
.wc-block-cart__sidebar {
	flex: 0 0 380px !important;
	width: 380px !important;
	min-width: 380px !important;
	max-width: 380px !important;
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 16px !important;
	padding: clamp(1.5rem, 2.5vw, 2.25rem) !important;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.35) !important;
	box-sizing: border-box !important;
}

@media (min-width: 961px) {
	.wp-block-woocommerce-cart .wc-block-components-sidebar,
	.wc-block-cart__sidebar {
		position: sticky !important;
		top: 145px !important;
		align-self: flex-start !important;
		z-index: 20 !important;
	}

	body.admin-bar .wp-block-woocommerce-cart .wc-block-components-sidebar,
	body.admin-bar .wc-block-cart__sidebar {
		top: 177px !important;
	}
}

/* Remove padding from inner wrappers in sidebar to avoid compounding narrowness */
.wp-block-woocommerce-cart .wc-block-components-sidebar div[data-block-name="woocommerce/cart-totals-block"],
.wp-block-woocommerce-cart .wc-block-components-sidebar .wp-block-woocommerce-cart-totals-block,
.wp-block-woocommerce-cart .wc-block-components-sidebar .wc-block-cart__totals,
.wp-block-woocommerce-cart .wc-block-components-sidebar .wc-block-cart-totals-block {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	width: 100% !important;
}

/* --------------------------------------------------------------------------
   Gutenberg Cart Items Table Styling (High Specificity Overrides)
   -------------------------------------------------------------------------- */
table.wc-block-cart-items {
	width: 100% !important;
	min-width: 100% !important;
	display: block !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	background: transparent !important;
	border: none !important;
}

table.wc-block-cart-items tbody {
	display: block !important;
	width: 100% !important;
}

/* Table Header (Product / Total) */
table.wc-block-cart-items thead {
	display: block !important;
	width: 100% !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
	padding-bottom: 0.85rem !important;
	margin-bottom: 0.5rem !important;
}

table.wc-block-cart-items thead tr {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	width: 100% !important;
}

table.wc-block-cart-items thead th {
	background: transparent !important;
	color: #8c929e !important;
	font-family: inherit !important;
	font-size: 0.74rem !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.12em !important;
	padding: 0 !important;
	border: none !important;
}

table.wc-block-cart-items thead th.wc-block-cart-items__header-product {
	flex: 1 1 auto !important;
	padding-left: 96px !important;
}

table.wc-block-cart-items thead th.wc-block-cart-items__header-total {
	display: none !important;
}

table.wc-block-cart-items thead th.wc-block-cart-items__header-image {
	display: none !important;
}

/* Table Rows: Flex Layout Overriding WooCommerce's 80px 132px Grid */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row,
table.wc-block-cart-items .wc-block-cart-items__row,
.is-large table.wc-block-cart-items .wc-block-cart-items__row,
.is-medium table.wc-block-cart-items .wc-block-cart-items__row,
.is-small table.wc-block-cart-items .wc-block-cart-items__row,
.is-mobile table.wc-block-cart-items .wc-block-cart-items__row {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 1.25rem !important;
	width: 100% !important;
	padding: 1.5rem 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
	box-sizing: border-box !important;
	grid-template-columns: none !important;
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row:last-child,
table.wc-block-cart-items .wc-block-cart-items__row:last-child {
	border-bottom: none !important;
}

/* Product Thumbnail */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image {
	flex: 0 0 80px !important;
	width: 80px !important;
	height: 80px !important;
	padding: 0 !important;
	margin: 0 !important;
}

.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img {
	width: 80px !important;
	height: 80px !important;
	object-fit: cover !important;
	border-radius: 10px !important;
	background: #0d0f12 !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

/* Product Title & Info */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
}

.wc-block-cart-item__product a,
.wc-block-components-product-name {
	font-family: inherit !important;
	font-size: 1.05rem !important;
	font-weight: 600 !important;
	color: #ffffff !important;
	text-decoration: none !important;
	transition: color 0.2s ease !important;
	display: block !important;
	margin-bottom: 0.35rem !important;
	line-height: 1.35 !important;
}

.wc-block-cart-item__product a:hover,
.wc-block-components-product-name:hover {
	color: var(--color-accent, #cfa15d) !important;
}

/* Product Price Display */
.wc-block-cart-item__prices {
	font-size: 0.92rem !important;
	font-weight: 600 !important;
	color: #8c929e !important;
	display: flex !important;
	align-items: center !important;
	gap: 0.5rem !important;
}

.wc-block-cart-item__prices del,
.wc-block-cart-item__prices .wc-block-components-product-price del {
	color: #656b77 !important;
	font-weight: 400 !important;
}

.wc-block-cart-item__prices ins,
.wc-block-cart-item__prices .wc-block-components-product-price ins {
	color: #ffffff !important;
	font-weight: 700 !important;
	text-decoration: none !important;
}

.wc-block-formatted-money-amount {
	color: #ffffff !important;
	font-weight: 700 !important;
}

/* Quantity Controls & Remove Action */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity {
	flex: 0 0 auto !important;
	display: flex !important;
	align-items: center !important;
	gap: 0.75rem !important;
	padding: 0 !important;
	margin: 0 !important;
}

.wc-block-components-quantity-selector {
	display: inline-flex !important;
	align-items: center !important;
	background: #0d0f12 !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 8px !important;
	padding: 2px !important;
}

.wc-block-components-quantity-selector__button {
	background: transparent !important;
	color: #ffffff !important;
	border: none !important;
	width: 32px !important;
	height: 32px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 1.1rem !important;
	cursor: pointer !important;
	border-radius: 6px !important;
	transition: all 0.2s ease !important;
}

.wc-block-components-quantity-selector__button:hover:not(:disabled) {
	background: rgba(207, 161, 93, 0.15) !important;
	color: var(--color-accent, #cfa15d) !important;
}

.wc-block-components-quantity-selector__input {
	background: transparent !important;
	color: #ffffff !important;
	border: none !important;
	width: 44px !important;
	text-align: center !important;
	font-weight: 700 !important;
	font-size: 0.95rem !important;
	padding: 0 !important;
}

/* Remove Item Action (Trash Button) */
.wc-block-cart-item__remove-link,
button.wc-block-cart-item__remove-link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 34px !important;
	height: 34px !important;
	border-radius: 8px !important;
	background: rgba(255, 255, 255, 0.04) !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	color: #8c929e !important;
	cursor: pointer !important;
	margin: 0 !important;
	padding: 0 !important;
	transition: all 0.2s ease !important;
	text-decoration: none !important;
}

.wc-block-cart-item__remove-link:hover,
button.wc-block-cart-item__remove-link:hover {
	background: rgba(255, 80, 80, 0.15) !important;
	border-color: rgba(255, 80, 80, 0.3) !important;
	color: #ff5050 !important;
	transform: scale(1.05) !important;
}

/* Item Line Total */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total {
	flex: 0 0 auto !important;
	text-align: right !important;
	padding: 0 !important;
	margin: 0 !important;
}

/* Hide line total price (User request: only keep Save badge) */
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total .price,
.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total .wc-block-components-product-price,
.wc-block-cart-item__total .price,
.wc-block-cart-item__total .wc-block-components-product-price {
	display: none !important;
}

.wc-block-cart-item__total-price-and-sale-badge-wrapper {
	align-items: flex-end !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
}

/* Save Badge (Exclusively displayed) */
.wc-block-cart-item__total .wc-block-components-sale-badge,
.wc-block-cart-item__total .wc-block-components-product-badge,
.wc-block-components-sale-badge {
	font-family: inherit !important;
	font-size: 0.8rem !important;
	font-weight: 700 !important;
	color: var(--color-accent, #cfa15d) !important;
	background: rgba(207, 161, 93, 0.12) !important;
	border: 1px solid rgba(207, 161, 93, 0.28) !important;
	padding: 0.4rem 0.9rem !important;
	border-radius: 6px !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.35rem !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	white-space: nowrap !important;
	margin: 0 !important;
}

.wc-block-cart-item__total .wc-block-components-sale-badge .wc-block-formatted-money-amount,
.wc-block-cart-item__total .wc-block-components-product-badge .wc-block-formatted-money-amount {
	display: inline-block !important;
	color: var(--color-accent, #cfa15d) !important;
	font-weight: 800 !important;
	font-size: 0.88rem !important;
}

/* --------------------------------------------------------------------------
   Gutenberg Cart Totals Block (Right Column Card)
   -------------------------------------------------------------------------- */
div[data-block-name="woocommerce/cart-order-summary-heading-block"] h2,
.wc-block-cart__totals-title,
.wp-block-woocommerce-cart-order-summary-heading-block h2 {
	font-family: var(--font-heading, 'Syne', sans-serif) !important;
	font-size: 1.15rem !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	margin: 0 0 1.25rem 0 !important;
	padding-bottom: 0.75rem !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.wc-block-components-totals-item,
.wp-block-woocommerce-cart-order-summary-subtotal-block,
.wp-block-woocommerce-cart-order-summary-shipping-block,
.wp-block-woocommerce-cart-order-summary-taxes-block {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	padding: 0.85rem 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
	font-size: 0.92rem !important;
	color: #8c929e !important;
}

.wc-block-components-totals-item .wc-block-components-totals-item__value {
	color: #ffffff !important;
	font-weight: 600 !important;
}

.wc-block-components-totals-footer-item,
.wc-block-components-totals-item--total {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-bottom: none !important;
	margin-top: 0.75rem !important;
	padding-top: 1.25rem !important;
	padding-bottom: 1.25rem !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
	font-size: 1.05rem !important;
	font-weight: 700 !important;
	color: #ffffff !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-size: 1.5rem !important;
	font-weight: 800 !important;
	color: var(--color-accent, #cfa15d) !important;
}

/* PROCEED TO CHECKOUT BUTTON (FULL WIDTH, LUXURY SHAPE) */
.wp-block-woocommerce-cart .wc-block-components-sidebar div[data-block-name="woocommerce/proceed-to-checkout-block"],
.wp-block-woocommerce-cart .wc-block-components-sidebar .wp-block-woocommerce-proceed-to-checkout-block,
.wp-block-woocommerce-cart .wc-block-components-sidebar .wc-block-cart__submit,
.wp-block-woocommerce-cart .wc-block-components-sidebar .wc-block-cart__submit-container {
	width: 100% !important;
	margin-top: 1.5rem !important;
	display: block !important;
	box-sizing: border-box !important;
}

.wp-block-woocommerce-cart .wc-block-components-sidebar div[data-block-name="woocommerce/proceed-to-checkout-block"] a,
.wp-block-woocommerce-cart .wc-block-components-sidebar div[data-block-name="woocommerce/proceed-to-checkout-block"] button,
.wp-block-woocommerce-cart .wc-block-components-sidebar .wc-block-cart__submit-button,
.wp-block-woocommerce-cart .wc-block-components-sidebar .wc-block-components-checkout-button,
.wp-block-woocommerce-cart .wc-block-components-sidebar a.wc-block-components-checkout-button {
	width: 100% !important;
	min-width: 100% !important;
	min-height: 52px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	white-space: nowrap !important;
	background: var(--color-accent, #cfa15d) !important;
	color: #000000 !important;
	font-family: inherit !important;
	font-weight: 800 !important;
	font-size: 0.92rem !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	padding: 1rem 1.5rem !important;
	border: none !important;
	border-radius: 8px !important;
	text-decoration: none !important;
	cursor: pointer !important;
	transition: all 0.25s ease !important;
	box-shadow: 0 4px 18px rgba(207, 161, 93, 0.35) !important;
	box-sizing: border-box !important;
}

.wp-block-woocommerce-cart .wc-block-components-sidebar div[data-block-name="woocommerce/proceed-to-checkout-block"] a:hover,
.wp-block-woocommerce-cart .wc-block-components-sidebar div[data-block-name="woocommerce/proceed-to-checkout-block"] button:hover,
.wp-block-woocommerce-cart .wc-block-components-sidebar .wc-block-cart__submit-button:hover,
.wp-block-woocommerce-cart .wc-block-components-sidebar .wc-block-components-checkout-button:hover {
	background: #d8ad69 !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 25px rgba(207, 161, 93, 0.45) !important;
}

/* Coupon Accordion in Gutenberg Block */
div[data-block-name="woocommerce/cart-order-summary-coupon-form-block"],
.wc-block-components-panel,
.wc-block-components-totals-coupon {
	border: none !important;
	background: transparent !important;
	padding: 0.75rem 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
}

.wc-block-components-panel__button,
.wc-block-components-totals-coupon__button {
	color: var(--color-accent, #cfa15d) !important;
	font-weight: 600 !important;
	font-size: 0.88rem !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	cursor: pointer !important;
}

.wc-block-components-panel__content input[type="text"] {
	background: #0d0f12 !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 6px !important;
	color: #ffffff !important;
	padding: 0.65rem 1rem !important;
	font-size: 0.88rem !important;
}

/* EMPTY CART CARD (CLEAN & TASTEFUL) */
div[data-block-name="woocommerce/empty-cart-block"],
.wp-block-woocommerce-empty-cart-block,
.wc-block-cart__empty-cart-wrapper {
	max-width: 580px !important;
	margin: 2rem auto 5rem auto !important;
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 16px !important;
	padding: clamp(2.5rem, 5vw, 4rem) 2rem !important;
	text-align: center !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35) !important;
}

.with-empty-cart-icon::before,
.wc-block-cart__empty-cart__title::before {
	font-size: 3rem !important;
	line-height: 1 !important;
	margin-bottom: 1.2rem !important;
	display: block !important;
	opacity: 0.65 !important;
}

.wc-block-cart__empty-cart__title,
.wp-block-woocommerce-empty-cart-block h2.wc-block-cart__empty-cart__title {
	font-family: var(--font-heading, 'Syne', sans-serif) !important;
	font-size: clamp(1.35rem, 2.5vw, 1.75rem) !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	margin-bottom: 1.2rem !important;
	line-height: 1.3 !important;
}

/* Hide ugly dotted divider & messy product grid clutter underneath empty cart */
.wp-block-woocommerce-empty-cart-block hr.wp-block-separator,
.wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title),
.wp-block-woocommerce-empty-cart-block div[data-block-name="woocommerce/product-new"],
.wp-block-woocommerce-empty-cart-block .wc-block-grid {
	display: none !important;
}

/* --------------------------------------------------------------------------
   8B. Classic WooCommerce Cart (.woocommerce-cart-form & table.shop_table)
   -------------------------------------------------------------------------- */
.woocommerce-cart-form {
	margin-bottom: 3.5rem;
}

table.shop_table {
	width: 100% !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 12px !important;
	overflow: hidden !important;
	margin-bottom: 2.5rem !important;
}

table.shop_table th {
	background: rgba(255, 255, 255, 0.03) !important;
	color: #d0d5dd !important;
	font-family: inherit !important;
	font-size: 0.82rem !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.08em !important;
	padding: 1.1rem 1.4rem !important;
	border: none !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

table.shop_table td {
	padding: 1.25rem 1.4rem !important;
	border: none !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
	color: #c0c6d2 !important;
	font-size: 0.92rem !important;
	vertical-align: middle !important;
}

table.shop_table tr:last-child td {
	border-bottom: none !important;
}

table.shop_table td.product-remove a.remove {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 28px !important;
	height: 28px !important;
	border-radius: 50% !important;
	background: rgba(255, 255, 255, 0.06) !important;
	color: #ff6b6b !important;
	text-decoration: none !important;
	font-size: 1.2rem !important;
	line-height: 1 !important;
	transition: all 0.2s ease !important;
}

table.shop_table td.product-remove a.remove:hover {
	background: #ff6b6b !important;
	color: #ffffff !important;
}

table.shop_table td.product-thumbnail img {
	width: 70px !important;
	height: 70px !important;
	object-fit: cover !important;
	border-radius: 8px !important;
	background: #0d0f12 !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
}

table.shop_table td.product-name a {
	color: #ffffff !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	transition: color 0.2s ease !important;
}

table.shop_table td.product-name a:hover {
	color: var(--color-accent, #cfa15d) !important;
}

table.shop_table td.product-price,
table.shop_table td.product-subtotal {
	font-weight: 700 !important;
	color: #ffffff !important;
}

table.shop_table td.actions {
	padding: 1.4rem !important;
	background: rgba(255, 255, 255, 0.02) !important;
}

.actions .coupon {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.75rem !important;
	float: left !important;
}

.actions .coupon input.input-text {
	background: #0d0f12 !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 6px !important;
	color: #ffffff !important;
	padding: 0.65rem 1rem !important;
	font-size: 0.88rem !important;
	min-width: 180px !important;
}

.actions .coupon button.button,
.actions button.button {
	background: transparent !important;
	border: 1px solid var(--color-accent, #cfa15d) !important;
	color: var(--color-accent, #cfa15d) !important;
	border-radius: 6px !important;
	padding: 0.65rem 1.4rem !important;
	font-size: 0.82rem !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
	cursor: pointer !important;
	transition: all 0.2s ease !important;
}

.actions .coupon button.button:hover,
.actions button.button:hover {
	background: var(--color-accent, #cfa15d) !important;
	color: #000000 !important;
}

.actions button[name="update_cart"] {
	float: right !important;
}

/* Classic Cart Totals Box */
.cart-collaterals {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-end !important;
	margin-top: 2rem !important;
}

.cart_totals {
	width: 100% !important;
	max-width: 480px !important;
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 14px !important;
	padding: 2rem !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35) !important;
}

.cart_totals h2 {
	font-family: var(--font-heading, 'Syne', sans-serif) !important;
	font-size: 1.3rem !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	margin: 0 0 1.25rem 0 !important;
	padding-bottom: 0.75rem !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.cart_totals table.shop_table {
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	margin-bottom: 1.5rem !important;
}

.cart_totals table.shop_table th {
	background: transparent !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
	padding: 0.85rem 0 !important;
	width: 40% !important;
}

.cart_totals table.shop_table td {
	background: transparent !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
	padding: 0.85rem 0 !important;
	text-align: right !important;
}

.cart_totals table.shop_table tr.order-total th,
.cart_totals table.shop_table tr.order-total td {
	border-bottom: none !important;
	font-size: 1.15rem !important;
	color: var(--color-accent, #cfa15d) !important;
	font-weight: 800 !important;
	padding-top: 1.2rem !important;
}

.wc-proceed-to-checkout a.checkout-button {
	display: block !important;
	width: 100% !important;
	text-align: center !important;
	background: var(--color-accent, #cfa15d) !important;
	color: #000000 !important;
	font-weight: 800 !important;
	font-size: 0.92rem !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	padding: 0.95rem 2rem !important;
	border-radius: 8px !important;
	text-decoration: none !important;
	transition: all 0.25s ease !important;
	box-shadow: 0 4px 18px rgba(207, 161, 93, 0.35) !important;
}

.wc-proceed-to-checkout a.checkout-button:hover {
	background: #d8ad69 !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 25px rgba(207, 161, 93, 0.45) !important;
}

/* --------------------------------------------------------------------------
   8C. Responsive Media Queries for Cart Page
   -------------------------------------------------------------------------- */
@media (max-width: 960px) {
	.wp-block-woocommerce-cart .wc-block-components-sidebar-layout,
	.wc-block-components-sidebar-layout {
		flex-direction: column !important;
		gap: 2rem !important;
	}

	.wp-block-woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar,
	.wc-block-components-sidebar-layout .wc-block-components-sidebar,
	.wc-block-cart__sidebar {
		flex: 1 1 auto !important;
		width: 100% !important;
		min-width: 100% !important;
		max-width: 100% !important;
		position: static !important;
	}
}

@media (max-width: 640px) {
	.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row,
	table.wc-block-cart-items .wc-block-cart-items__row {
		flex-wrap: wrap !important;
		gap: 1rem !important;
		position: relative !important;
	}

	.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image,
	table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image {
		flex: 0 0 70px !important;
		width: 70px !important;
		height: 70px !important;
	}

	.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img,
	table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img {
		width: 70px !important;
		height: 70px !important;
	}

	.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product,
	table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product {
		flex: 1 1 calc(100% - 86px) !important;
	}

	.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity,
	table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__quantity {
		flex: 1 1 auto !important;
		justify-content: flex-start !important;
	}

	.wc-block-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total,
	table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__total {
		flex: 0 0 auto !important;
		text-align: right !important;
	}

	table.wc-block-cart-items thead {
		display: none !important;
	}
}

/* ==========================================================================
   9. Checkout Page & Payment Gateways (CRITICAL — Classic & Gutenberg Block)
   ========================================================================== */

/* --------------------------------------------------------------------------
   9.1 Gutenberg Checkout Block Styling (.wp-block-woocommerce-checkout)
   -------------------------------------------------------------------------- */
.wp-block-woocommerce-checkout,
.wc-block-checkout {
	color: #c0c6d2 !important;
}

/* Two-column layout container (Side-by-Side on Desktop with Balanced Proportions) */
.wp-block-woocommerce-checkout .wc-block-components-sidebar-layout,
.wc-block-checkout.wc-block-components-sidebar-layout {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	gap: clamp(1.75rem, 2.5vw, 2.5rem) !important;
	align-items: flex-start !important;
}

/* Left Column: Main Form Card (Single Clean Card) */
.wp-block-woocommerce-checkout .wc-block-components-main,
.wc-block-checkout__main {
	flex: 1 1 0% !important;
	width: auto !important;
	max-width: calc(100% - 445px) !important;
	min-width: 0 !important;
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 14px !important;
	padding: clamp(1.5rem, 3vw, 2.5rem) !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35) !important;
}

/* Right Column: Order Summary Sidebar Card (420px Balanced Width & Safe Sticky Locking) */
.wp-block-woocommerce-checkout .wc-block-components-sidebar,
.wc-block-checkout__sidebar {
	flex: 0 0 420px !important;
	width: 420px !important;
	max-width: 420px !important;
	min-width: 320px !important;
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 14px !important;
	padding: 1.25rem 1.4rem !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35) !important;
	box-sizing: border-box !important;
}

/* Sticky Order Summary on Desktop (Maintains clean gap below fixed navbar) */
@media (min-width: 961px) {
	.wp-block-woocommerce-checkout .wc-block-components-sidebar,
	.wc-block-checkout__sidebar {
		position: sticky !important;
		top: 145px !important;
		align-self: flex-start !important;
		z-index: 20 !important;
	}

	body.admin-bar .wp-block-woocommerce-checkout .wc-block-components-sidebar,
	body.admin-bar .wc-block-checkout__sidebar {
		top: 177px !important;
	}
}

/* Section Headings */
.wc-block-components-title,
.wc-block-checkout h2,
.wc-block-checkout h3,
.wc-block-checkout legend,
.wc-block-components-checkout-step__heading {
	font-family: var(--font-heading, "Cinzel", Georgia, serif) !important;
	font-size: 1.2rem !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	margin: 0 0 1.25rem 0 !important;
	padding-bottom: 0.65rem !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
	letter-spacing: 0.02em !important;
}

/* Step wrappers: No nested card borders/backgrounds */
.wc-block-components-checkout-step {
	background: transparent !important;
	border: none !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
	box-shadow: none !important;
	margin-bottom: 2rem !important;
	padding-bottom: 1.5rem !important;
}

.wc-block-components-checkout-step:last-child {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
	border-bottom: none !important;
}

/* --------------------------------------------------------------------------
   9.2 Stacked-Label Form Fields (Email, Country, District, Text Inputs)
   -------------------------------------------------------------------------- */
/* Container positioning for stacked label structure */
.wc-block-components-text-input,
.wc-blocks-components-select,
.wc-blocks-components-select__container,
.wc-block-components-combobox-control {
	position: relative !important;
	margin-bottom: 1rem !important;
}

/* Labels: Normal State */
.wc-block-components-text-input label,
.wc-blocks-components-select label,
.wc-blocks-components-select__label,
.wc-block-components-combobox-control label,
.wc-block-components-address-form label {
	position: absolute !important;
	left: 14px !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	font-size: 0.88rem !important;
	color: #8c929e !important;
	line-height: 1 !important;
	margin: 0 !important;
	pointer-events: none !important;
	z-index: 2 !important;
	background: transparent !important;
	transition: all 0.18s ease-in-out !important;
}

/* Labels: Active / Filled / Focused / Dropdown Stacked State */
.wc-block-components-text-input:has(input:focus) label,
.wc-block-components-text-input:has(input:not(:placeholder-shown)) label,
.wc-block-components-text-input.is-active label,
.wc-block-components-text-input:focus-within label,
.wc-blocks-components-select label,
.wc-blocks-components-select__label,
.wc-block-components-combobox-control.is-active label,
.wc-block-components-combobox-control:focus-within label {
	top: 8px !important;
	transform: translateY(0) !important;
	font-size: 0.72rem !important;
	color: #8c929e !important;
	letter-spacing: 0.02em !important;
}

.wc-block-components-text-input:focus-within label,
.wc-blocks-components-select:focus-within label,
.wc-blocks-components-select__container:focus-within label,
.wc-block-components-combobox-control:focus-within label {
	color: var(--color-accent, #cfa15d) !important;
}

/* Input Fields (52px consistent height, dark obsidian background) */
.wc-block-components-text-input input[type="text"],
.wc-block-components-text-input input[type="email"],
.wc-block-components-text-input input[type="tel"],
.wc-block-components-text-input input[type="password"],
.wc-block-components-text-input input.wc-block-components-text-input__input,
.wc-block-components-combobox-control input,
.wp-block-woocommerce-checkout input.wc-block-components-text-input__input,
select.wc-blocks-components-select__select,
.wc-blocks-components-select select,
.wc-block-components-country-input select,
.wc-block-components-state-input select {
	height: 52px !important;
	min-height: 52px !important;
	background: #0d0f12 !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 8px !important;
	color: #ffffff !important;
	font-size: 0.94rem !important;
	font-weight: 500 !important;
	font-family: inherit !important;
	box-sizing: border-box !important;
	width: 100% !important;
	padding: 0.85rem 14px !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, padding 0.18s ease !important;
}

/* Filled / Active / Select Padding: 3–5px gap between label and value */
.wc-block-components-text-input:has(input:focus) input,
.wc-block-components-text-input:has(input:not(:placeholder-shown)) input,
.wc-block-components-text-input.is-active input,
.wc-block-components-text-input:focus-within input,
.wc-block-components-combobox-control.is-active input,
.wc-block-components-combobox-control:focus-within input,
select.wc-blocks-components-select__select,
.wc-blocks-components-select select,
.wc-block-components-country-input select,
.wc-block-components-state-input select {
	padding-top: 20px !important;
	padding-bottom: 6px !important;
	padding-left: 14px !important;
}

/* Dropdown custom SVG arrow */
select.wc-blocks-components-select__select,
.wc-blocks-components-select select,
.wc-block-components-country-input select,
.wc-block-components-state-input select {
	appearance: none !important;
	-webkit-appearance: none !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%238c929e' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 14px center !important;
	padding-right: 36px !important;
	cursor: pointer !important;
}

/* Textareas (Order Notes, etc.) */
.wc-block-components-textarea textarea,
.wc-block-checkout__add-note textarea {
	background: #0d0f12 !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 8px !important;
	color: #ffffff !important;
	padding: 0.9rem 14px !important;
	font-size: 0.92rem !important;
	font-family: inherit !important;
	box-sizing: border-box !important;
	width: 100% !important;
	min-height: 85px !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

/* Input Focus States */
.wc-block-components-text-input input:focus,
.wc-block-components-combobox-control input:focus,
.wc-blocks-components-select__select:focus,
.wc-block-components-textarea textarea:focus,
.wc-block-checkout__add-note textarea:focus {
	border-color: var(--color-accent, #cfa15d) !important;
	box-shadow: 0 0 0 3px rgba(207, 161, 93, 0.18) !important;
	outline: none !important;
}

/* Browser Autofill Fix */
.wp-block-woocommerce-checkout input:-webkit-autofill,
.wp-block-woocommerce-checkout input:-webkit-autofill:hover, 
.wp-block-woocommerce-checkout input:-webkit-autofill:focus,
.wp-block-woocommerce-checkout textarea:-webkit-autofill,
.wp-block-woocommerce-checkout select:-webkit-autofill {
	-webkit-text-fill-color: #ffffff !important;
	-webkit-box-shadow: 0 0 0px 1000px #0d0f12 inset !important;
	box-shadow: 0 0 0px 1000px #0d0f12 inset !important;
	transition: background-color 5000s ease-in-out 0s !important;
}

/* Select Dropdown Options */
select.wc-blocks-components-select__select option,
.wc-block-components-country-input select option,
.wc-block-components-state-input select option {
	background: #14171c !important;
	color: #ffffff !important;
	padding: 8px !important;
}

/* Combobox Search Listbox (Country / State / District) */
.wc-block-components-combobox-control__menu,
.wc-block-components-combobox-control__listbox {
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 8px !important;
	color: #ffffff !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6) !important;
	z-index: 100 !important;
}

.wc-block-components-combobox-control__option {
	color: #c0c6d2 !important;
	padding: 0.65rem 1rem !important;
}

.wc-block-components-combobox-control__option:hover,
.wc-block-components-combobox-control__option.is-selected,
.wc-block-components-combobox-control__option[aria-selected="true"] {
	background: rgba(207, 161, 93, 0.16) !important;
	color: var(--color-accent, #cfa15d) !important;
}

/* --------------------------------------------------------------------------
   9.3 Shipping Options (Single Clean Container & Visible Radio Dot)
   -------------------------------------------------------------------------- */
/* Strip redundant nested wrapper borders and backgrounds */
.wc-block-checkout__shipping-option,
#shipping-option,
.wc-block-components-shipping-rates-control,
.wc-block-components-shipping-rates-control__package,
.wc-block-components-shipping-rates-control .wc-block-components-radio-control {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	box-shadow: none !important;
}

/* Single Option Container (Shipping) */
.wc-block-checkout__shipping-option .wc-block-components-radio-control__option,
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__option {
	background: #0d0f12 !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 8px !important;
	padding: 1rem 1.25rem !important;
	margin: 0 !important;
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: flex-start !important;
	position: relative !important;
	gap: 14px !important;
	box-sizing: border-box !important;
	min-height: 54px !important;
	width: 100% !important;
	cursor: pointer !important;
	transition: border-color 0.2s ease, background 0.2s ease !important;
}

.wc-block-checkout__shipping-option .wc-block-components-radio-control__option::after,
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__option::after {
	display: none !important;
}

.wc-block-checkout__shipping-option .wc-block-components-radio-control__option:hover,
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__option:hover {
	border-color: rgba(255, 255, 255, 0.18) !important;
	background: rgba(255, 255, 255, 0.02) !important;
}

.wc-block-checkout__shipping-option .wc-block-components-radio-control__option-checked,
.wc-block-checkout__shipping-option .wc-block-components-radio-control__option--checked-option-highlighted,
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__option-checked,
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__option--checked-option-highlighted {
	border-color: rgba(207, 161, 93, 0.5) !important;
	background: rgba(207, 161, 93, 0.05) !important;
	box-shadow: none !important;
}

/* Shipping Option Layout: Radio + Label + Right-aligned Price */
.wc-block-components-shipping-rates-control .wc-block-components-radio-control__option-layout,
.wc-block-checkout__shipping-option .wc-block-components-radio-control__option-layout {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex: 1 1 auto !important;
	width: calc(100% - 34px) !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}

.wc-block-components-shipping-rates-control .wc-block-components-radio-control__label-group,
.wc-block-checkout__shipping-option .wc-block-components-radio-control__label-group {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: space-between !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	gap: 12px !important;
}

.wc-block-components-shipping-rates-control .wc-block-components-radio-control__label,
.wc-block-checkout__shipping-option .wc-block-components-radio-control__label {
	font-size: 0.95rem !important;
	font-weight: 600 !important;
	color: #ffffff !important;
	margin: 0 !important;
	white-space: nowrap !important;
	height: auto !important;
}

.wc-block-components-shipping-rates-control .wc-block-components-radio-control__secondary-label,
.wc-block-checkout__shipping-option .wc-block-components-radio-control__secondary-label {
	margin-left: auto !important;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	text-align: right !important;
	height: auto !important;
}

.wc-block-components-shipping-rates-control .wc-block-checkout__shipping-option--free,
.wc-block-checkout__shipping-option .wc-block-checkout__shipping-option--free {
	font-size: 0.9rem !important;
	font-weight: 800 !important;
	color: var(--color-accent, #cfa15d) !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	margin-left: auto !important;
}

/* --------------------------------------------------------------------------
   9.4 Payment Options (Single Clean Container & Visible Radio Dot)
   -------------------------------------------------------------------------- */
/* Strip redundant nested wrapper borders and backgrounds */
.wc-block-checkout__payment-method,
#payment-method,
.wc-block-components-checkout-payment-methods,
.wc-block-checkout__payment-method .wc-block-components-radio-control {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	box-shadow: none !important;
}

/* Single Option Container (Payment) */
.wc-block-checkout__payment-method .wc-block-components-radio-control__option,
.wc-block-components-checkout-payment-methods .wc-block-components-radio-control__option {
	background: #0d0f12 !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 8px !important;
	padding: 1rem 1.25rem !important;
	margin: 0 !important;
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: flex-start !important;
	position: relative !important;
	gap: 14px !important;
	box-sizing: border-box !important;
	min-height: 54px !important;
	width: 100% !important;
	cursor: pointer !important;
	transition: border-color 0.2s ease, background 0.2s ease !important;
}

.wc-block-checkout__payment-method .wc-block-components-radio-control__option::after,
.wc-block-components-checkout-payment-methods .wc-block-components-radio-control__option::after {
	display: none !important;
}

.wc-block-checkout__payment-method .wc-block-components-radio-control__option:hover,
.wc-block-components-checkout-payment-methods .wc-block-components-radio-control__option:hover {
	border-color: rgba(255, 255, 255, 0.18) !important;
	background: rgba(255, 255, 255, 0.02) !important;
}

.wc-block-checkout__payment-method .wc-block-components-radio-control__option-checked,
.wc-block-components-checkout-payment-methods .wc-block-components-radio-control__option-checked {
	border-color: rgba(207, 161, 93, 0.5) !important;
	background: rgba(207, 161, 93, 0.05) !important;
	box-shadow: none !important;
}

/* Payment Layout & PipraPay Logo Alignment */
.wc-block-checkout__payment-method .wc-block-components-radio-control__option-layout,
.wc-block-components-checkout-payment-methods .wc-block-components-radio-control__option-layout {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex: 1 1 auto !important;
	width: calc(100% - 34px) !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}

.wc-block-checkout__payment-method .wc-block-components-radio-control__label-group,
.wc-block-components-checkout-payment-methods .wc-block-components-radio-control__label-group {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	gap: 10px !important;
}

.wc-block-checkout__payment-method .wc-block-components-radio-control__label,
.wc-block-components-checkout-payment-methods .wc-block-components-radio-control__label {
	display: flex !important;
	align-items: center !important;
	font-size: 0.95rem !important;
	font-weight: 600 !important;
	color: #ffffff !important;
	margin: 0 !important;
}

.wc-block-checkout__payment-method .wc-block-components-radio-control__label img,
.wc-block-components-checkout-payment-methods .wc-block-components-radio-control__label img {
	height: 24px !important;
	width: auto !important;
	margin-right: 10px !important;
	vertical-align: middle !important;
	border-radius: 4px !important;
}

.wc-block-checkout__payment-method .wc-block-components-payment-method-icons {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	margin-left: auto !important;
}

.wc-block-checkout__payment-method .wc-block-components-payment-method-icons img {
	max-height: 24px !important;
	border-radius: 4px !important;
	object-fit: contain !important;
}

/* Payment Sub-Description Container */
.wc-block-components-radio-control-accordion-content,
.wc-block-checkout__payment-method .wc-block-components-payment-method-description {
	padding: 0.85rem 1.25rem !important;
	color: #9aa1ad !important;
	font-size: 0.88rem !important;
	line-height: 1.6 !important;
	border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
	margin-top: 0.5rem !important;
}

/* --------------------------------------------------------------------------
   9.5 High-Visibility Radio Buttons & Distinct Checkboxes
   -------------------------------------------------------------------------- */
/* Radio Button (Visible filled gold dot on selected, distinct empty ring on unselected) */
.wp-block-woocommerce-checkout input[type="radio"].wc-block-components-radio-control__input,
.wc-block-checkout input[type="radio"],
.wc-block-components-radio-control__input,
.wc-block-components-radio-control input[type="radio"] {
	position: static !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
	margin: 0 !important;
	flex: 0 0 20px !important;
	width: 20px !important;
	height: 20px !important;
	min-width: 20px !important;
	border-radius: 50% !important;
	border: 2px solid rgba(255, 255, 255, 0.35) !important;
	background: #0d0f12 !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	cursor: pointer !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: border-color 0.2s ease, background 0.2s ease !important;
}

.wp-block-woocommerce-checkout input[type="radio"].wc-block-components-radio-control__input:checked,
.wc-block-checkout input[type="radio"]:checked,
.wc-block-components-radio-control__input:checked,
.wc-block-components-radio-control input[type="radio"]:checked {
	border-color: var(--color-accent, #cfa15d) !important;
	background: #0d0f12 !important;
}

/* Radio Inner Dot: Crisp 9px gold filled dot */
.wp-block-woocommerce-checkout input[type="radio"].wc-block-components-radio-control__input::before,
.wc-block-checkout input[type="radio"]::before,
.wc-block-components-radio-control__input::before,
.wc-block-components-radio-control input[type="radio"]::before {
	content: "" !important;
	display: none !important;
}

.wp-block-woocommerce-checkout input[type="radio"].wc-block-components-radio-control__input:checked::before,
.wc-block-checkout input[type="radio"]:checked::before,
.wc-block-components-radio-control__input:checked::before,
.wc-block-components-radio-control input[type="radio"]:checked::before {
	content: "" !important;
	display: block !important;
	position: static !important;
	width: 9px !important;
	height: 9px !important;
	min-width: 9px !important;
	min-height: 9px !important;
	border-radius: 50% !important;
	background: var(--color-accent, #cfa15d) !important;
	margin: auto !important;
	transform: none !important;
}

/* Checkboxes ("Add a note to your order" & "Use same address for billing") */
.wc-block-components-checkbox,
.wc-block-checkout__add-note,
.wc-block-checkout__use-address-for-billing {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	margin: 1.25rem 0 !important;
	cursor: pointer !important;
}

.wc-block-components-checkbox label,
.wc-block-components-checkbox__label {
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	color: #e2e6ed !important;
	font-size: 0.92rem !important;
	font-weight: 500 !important;
	cursor: pointer !important;
	margin: 0 !important;
	user-select: none !important;
}

.wc-block-components-checkbox input[type="checkbox"],
.wc-block-components-checkbox__input,
.wc-block-checkout input[type="checkbox"] {
	appearance: none !important;
	-webkit-appearance: none !important;
	width: 19px !important;
	height: 19px !important;
	min-width: 19px !important;
	border: 2px solid rgba(255, 255, 255, 0.35) !important;
	border-radius: 4px !important;
	background: #0d0f12 !important;
	cursor: pointer !important;
	margin: 0 !important;
	position: relative !important;
	transition: all 0.2s ease !important;
	display: inline-grid !important;
	place-content: center !important;
}

.wc-block-components-checkbox input[type="checkbox"]:hover,
.wc-block-components-checkbox__input:hover {
	border-color: var(--color-accent, #cfa15d) !important;
}

.wc-block-components-checkbox input[type="checkbox"]:checked,
.wc-block-components-checkbox__input:checked,
.wc-block-checkout input[type="checkbox"]:checked {
	background: var(--color-accent, #cfa15d) !important;
	border-color: var(--color-accent, #cfa15d) !important;
}

.wc-block-components-checkbox input[type="checkbox"]:checked::after,
.wc-block-components-checkbox__input:checked::after,
.wc-block-checkout input[type="checkbox"]:checked::after {
	content: "" !important;
	width: 5px !important;
	height: 10px !important;
	border: solid #000000 !important;
	border-width: 0 2.2px 2.2px 0 !important;
	transform: rotate(45deg) !important;
	margin-bottom: 2px !important;
	display: block !important;
}

/* --------------------------------------------------------------------------
   9.6 Order Summary Card, Items & Removal of Duplicate Coupon UI
   -------------------------------------------------------------------------- */
/* Remove Duplicate "Add Coupons" UI on Checkout */
.wp-block-woocommerce-checkout .wc-block-components-totals-coupon,
.wc-block-checkout .wc-block-components-totals-coupon,
.wc-block-checkout__sidebar .wc-block-components-totals-coupon {
	display: none !important;
}

/* Clean Order Summary Card (No nested boxes) */
.wp-block-woocommerce-checkout-order-summary-block,
.wc-block-components-order-summary {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.wc-block-components-checkout-order-summary__title {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	padding: 0 0 1rem 0 !important;
	margin: 0 0 0.5rem 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.wc-block-components-checkout-order-summary__title-text {
	font-family: var(--font-heading, "Cinzel", Georgia, serif) !important;
	font-size: 1.15rem !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	margin: 0 !important;
}

.wc-block-components-checkout-order-summary__title-price {
	font-weight: 700 !important;
	color: var(--color-accent, #cfa15d) !important;
	font-size: 1.05rem !important;
}

.wc-block-components-checkout-order-summary__title-icon {
	display: none !important;
}

.wc-block-components-order-summary .wc-block-components-panel__button {
	color: #ffffff !important;
	font-family: var(--font-heading, "Cinzel", Georgia, serif) !important;
	font-size: 1.15rem !important;
	font-weight: 700 !important;
	padding: 0 0 1rem 0 !important;
	margin-bottom: 0.5rem !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
	width: 100% !important;
}

/* Order Summary Item */
.wc-block-components-order-summary-item {
	display: flex !important;
	flex-direction: row !important;
	align-items: flex-start !important;
	justify-content: space-between !important;
	gap: 14px !important;
	padding: 1rem 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.wc-block-components-order-summary-item:last-child {
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.wc-block-components-order-summary-item__image {
	flex: 0 0 54px !important;
	width: 54px !important;
	height: 54px !important;
	position: relative !important;
	overflow: visible !important;
}

.wc-block-components-order-summary-item__image img {
	width: 54px !important;
	height: 54px !important;
	object-fit: cover !important;
	border-radius: 8px !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	display: block !important;
}

/* Quantity Badge (Gold Luxury Floating Pill) */
.wc-block-components-order-summary-item__quantity {
	position: absolute !important;
	top: -7px !important;
	right: -7px !important;
	background: var(--color-accent, #cfa15d) !important;
	color: #000000 !important;
	font-weight: 800 !important;
	font-size: 0.72rem !important;
	line-height: 1 !important;
	min-width: 20px !important;
	height: 20px !important;
	padding: 0 5px !important;
	border-radius: 10px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.45) !important;
	z-index: 2 !important;
}

/* Product Description: Unsquished & Balanced */
.wc-block-components-order-summary-item__description {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	padding: 0 !important;
	word-break: normal !important;
}

.wc-block-components-order-summary-item__description .wc-block-components-product-name,
.wc-block-components-order-summary-item .wc-block-components-product-name {
	font-family: inherit !important;
	font-size: 0.95rem !important;
	font-weight: 600 !important;
	color: #ffffff !important;
	margin: 0 0 0.35rem 0 !important;
	line-height: 1.35 !important;
	white-space: normal !important;
	word-break: break-word !important;
}

.wc-block-components-order-summary-item__description .wc-block-cart-item__prices {
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 0.45rem !important;
	font-size: 0.85rem !important;
	white-space: nowrap !important;
}

.wc-block-components-order-summary-item__individual-prices del {
	color: #717782 !important;
	margin-right: 0.35rem !important;
	font-size: 0.82rem !important;
}

.wc-block-components-order-summary-item__individual-prices ins {
	color: #c0c6d2 !important;
	text-decoration: none !important;
	font-weight: 600 !important;
}

/* Total Price & Save Badge */
.wc-block-components-order-summary-item__total-price {
	flex: 0 0 auto !important;
	width: auto !important;
	max-width: 48% !important;
	margin-left: auto !important;
	text-align: right !important;
	white-space: nowrap !important;
}

.wc-block-components-order-summary-item__total-price .price,
.wc-block-components-order-summary-item__total-price .wc-block-components-product-price__value {
	font-size: 0.98rem !important;
	font-weight: 700 !important;
	color: var(--color-accent, #cfa15d) !important;
}

.wc-block-components-order-summary-item .wc-block-components-sale-badge,
.wc-block-cart-item__total-price-and-sale-badge-wrapper .wc-block-components-sale-badge {
	background: rgba(207, 161, 93, 0.14) !important;
	color: var(--color-accent, #cfa15d) !important;
	border: 1px solid rgba(207, 161, 93, 0.3) !important;
	border-radius: 4px !important;
	font-size: 0.72rem !important;
	font-weight: 700 !important;
	padding: 2px 6px !important;
	margin-top: 4px !important;
	display: inline-block !important;
	white-space: nowrap !important;
}

/* --------------------------------------------------------------------------
   9.7 Order Summary Totals Breakdown (Compact, High-Contrast & Flush Right)
   -------------------------------------------------------------------------- */
.wc-block-components-totals-wrapper {
	margin-top: 0.5rem !important;
	padding-top: 0 !important;
	border-top: none !important;
}

.wc-block-components-totals-item {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	padding: 0.45rem 0 !important;
	font-size: 0.92rem !important;
	color: #9aa1ad !important;
	border: none !important;
}

.wc-block-components-totals-item .wc-block-components-totals-item__value {
	color: #ffffff !important;
	font-weight: 600 !important;
	margin-left: auto !important;
	text-align: right !important;
}

/* Grand Total Footer */
.wc-block-components-totals-footer-item {
	border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
	margin-top: 0.75rem !important;
	padding-top: 1rem !important;
	padding-bottom: 0.25rem !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
	font-size: 1.1rem !important;
	font-weight: 700 !important;
	color: #ffffff !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	font-size: 1.35rem !important;
	font-weight: 800 !important;
	color: var(--color-accent, #cfa15d) !important;
	margin-left: auto !important;
	text-align: right !important;
}

/* --------------------------------------------------------------------------
   9.8 Place Order Button (Gutenberg Block)
   -------------------------------------------------------------------------- */
.wc-block-components-checkout-place-order-button,
button.wc-block-components-checkout-place-order-button {
	width: 100% !important;
	background: var(--color-accent, #cfa15d) !important;
	color: #000000 !important;
	font-size: 0.95rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	min-height: 52px !important;
	padding: 1.05rem 2rem !important;
	border-radius: 8px !important;
	border: none !important;
	cursor: pointer !important;
	transition: all 0.25s ease !important;
	box-shadow: 0 4px 18px rgba(207, 161, 93, 0.35) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-top: 1.75rem !important;
}

.wc-block-components-checkout-place-order-button:hover,
button.wc-block-components-checkout-place-order-button:hover {
	background: #d8ad69 !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 25px rgba(207, 161, 93, 0.45) !important;
}

/* Terms, Steps & Notices */
.wc-block-checkout__terms,
.wc-block-components-checkout-step__description {
	color: #8c929e !important;
	font-size: 0.85rem !important;
	line-height: 1.6 !important;
	margin: 1rem 0 !important;
}

.wc-block-checkout__terms a {
	color: var(--color-accent, #cfa15d) !important;
	text-decoration: underline !important;
}

.wc-block-components-notice-banner {
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 8px !important;
	color: #ffffff !important;
	margin-bottom: 1.5rem !important;
}

.wc-block-components-notice-banner.is-error {
	border-color: rgba(239, 68, 68, 0.5) !important;
	background: rgba(239, 68, 68, 0.08) !important;
}

/* --------------------------------------------------------------------------
   9.6 Classic WooCommerce Checkout (Shortcode / Legacy Fallback)
   -------------------------------------------------------------------------- */
form.checkout.woocommerce-checkout {
	display: grid !important;
	grid-template-columns: 1.15fr 0.85fr !important;
	gap: 3rem !important;
	align-items: start !important;
}

/* Billing & Customer Fields */
#customer_details h3,
#order_review_heading {
	font-family: var(--font-heading, "Cinzel", Georgia, serif) !important;
	font-size: 1.45rem !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	margin: 0 0 1.5rem 0 !important;
	padding-bottom: 0.65rem !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.woocommerce-billing-fields,
.woocommerce-shipping-fields,
.woocommerce-additional-fields {
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 14px !important;
	padding: 2rem !important;
	margin-bottom: 2rem !important;
}

.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 1.25rem !important;
}

p.form-row {
	margin: 0 !important;
	display: flex !important;
	flex-direction: column !important;
}

p.form-row-wide {
	grid-column: span 2 !important;
}

p.form-row label {
	display: block !important;
	font-size: 0.82rem !important;
	font-weight: 600 !important;
	color: #d0d5dd !important;
	margin-bottom: 0.45rem !important;
}

p.form-row abbr.required {
	color: var(--color-accent, #cfa15d) !important;
	text-decoration: none !important;
	font-weight: 700 !important;
}

p.form-row input.input-text,
p.form-row textarea,
p.form-row select,
.select2-container--default .select2-selection--single {
	width: 100% !important;
	background: #0d0f12 !important;
	border: 1px solid rgba(255, 255, 255, 0.12) !important;
	border-radius: 8px !important;
	color: #ffffff !important;
	padding: 0.8rem 1.1rem !important;
	font-size: 0.92rem !important;
	font-family: inherit !important;
	box-sizing: border-box !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

p.form-row textarea {
	min-height: 90px !important;
	line-height: 1.6 !important;
}

p.form-row input.input-text:focus,
p.form-row textarea:focus,
p.form-row select:focus,
.select2-container--default.select2-container--open .select2-selection--single {
	border-color: var(--color-accent, #cfa15d) !important;
	box-shadow: 0 0 0 3px rgba(207, 161, 93, 0.18) !important;
	outline: none !important;
}

/* Order Review Container (Right Column) */
#order_review {
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 14px !important;
	padding: 2rem !important;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35) !important;
}

#order_review table.shop_table {
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	margin-bottom: 2rem !important;
}

#order_review table.shop_table th,
#order_review table.shop_table td {
	padding: 0.85rem 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

#order_review table.shop_table tfoot tr.order-total th,
#order_review table.shop_table tfoot tr.order-total td {
	border-bottom: none !important;
	color: var(--color-accent, #cfa15d) !important;
	font-size: 1.2rem !important;
	font-weight: 800 !important;
	padding-top: 1.25rem !important;
}

/* Payment Methods & Gateways Box */
#payment {
	background: #0d0f12 !important;
	border: 1px solid rgba(255, 255, 255, 0.09) !important;
	border-radius: 10px !important;
	padding: 1.5rem !important;
	margin-top: 1.5rem !important;
}

#payment ul.payment_methods {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
	padding-bottom: 1.2rem !important;
}

#payment ul.payment_methods li.wc_payment_method {
	margin-bottom: 1.2rem !important;
}

#payment ul.payment_methods li.wc_payment_method:last-child {
	margin-bottom: 0 !important;
}

#payment ul.payment_methods li label {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.6rem !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	font-size: 0.92rem !important;
	cursor: pointer !important;
}

#payment ul.payment_methods li input[type="radio"] {
	accent-color: var(--color-accent, #cfa15d) !important;
	width: 17px !important;
	height: 17px !important;
	cursor: pointer !important;
}

#payment ul.payment_methods li img {
	max-height: 26px !important;
	object-fit: contain !important;
	vertical-align: middle !important;
	margin-left: 0.4rem !important;
	border-radius: 4px !important;
}

/* Payment Description Box */
#payment div.payment_box {
	background: rgba(255, 255, 255, 0.04) !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 8px !important;
	padding: 1rem 1.2rem !important;
	margin-top: 0.75rem !important;
	margin-bottom: 0.5rem !important;
	color: #a6abb4 !important;
	font-size: 0.86rem !important;
	line-height: 1.6 !important;
	position: relative !important;
}

#payment div.payment_box::before {
	content: "" !important;
	position: absolute !important;
	top: -6px !important;
	left: 20px !important;
	border-left: 6px solid transparent !important;
	border-right: 6px solid transparent !important;
	border-bottom: 6px solid rgba(255, 255, 255, 0.08) !important;
}

#payment div.payment_box input.input-text {
	background: #0d0f12 !important;
	border: 1px solid rgba(255, 255, 255, 0.15) !important;
	border-radius: 6px !important;
	color: #ffffff !important;
	padding: 0.65rem 0.9rem !important;
	font-size: 0.9rem !important;
	width: 100% !important;
	margin-top: 0.5rem !important;
	box-sizing: border-box !important;
}

/* Terms & Conditions */
.woocommerce-terms-and-conditions-wrapper {
	margin: 1.25rem 0 !important;
	font-size: 0.84rem !important;
	color: #8b929e !important;
}

.woocommerce-terms-and-conditions-wrapper a {
	color: var(--color-accent, #cfa15d) !important;
	text-decoration: underline !important;
}

.woocommerce-terms-and-conditions-wrapper input[type="checkbox"] {
	accent-color: var(--color-accent, #cfa15d) !important;
	margin-right: 0.4rem !important;
}

/* Place Order Button (Classic) */
#payment button#place_order,
button#place_order {
	width: 100% !important;
	background: var(--color-accent, #cfa15d) !important;
	color: #000000 !important;
	font-size: 0.95rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	padding: 1.05rem 2rem !important;
	border-radius: 8px !important;
	border: none !important;
	cursor: pointer !important;
	transition: all 0.25s ease !important;
	box-shadow: 0 4px 18px rgba(207, 161, 93, 0.35) !important;
	display: block !important;
}

#payment button#place_order:hover,
button#place_order:hover {
	background: #d8ad69 !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 25px rgba(207, 161, 93, 0.45) !important;
}

/* ==========================================================================
   10. Order Confirmation / Thank You Page
   ========================================================================== */
.woocommerce-order {
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 14px !important;
	padding: clamp(2rem, 4vw, 3rem) !important;
	margin: 2rem 0 4rem 0 !important;
}

.woocommerce-thankyou-order-received {
	font-family: var(--font-heading, "Cinzel", Georgia, serif) !important;
	font-size: 1.6rem !important;
	font-weight: 700 !important;
	color: var(--color-accent, #cfa15d) !important;
	margin-bottom: 2rem !important;
	text-align: center !important;
}

ul.woocommerce-thankyou-order-details {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 0 2.5rem 0 !important;
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) !important;
	gap: 1.25rem !important;
}

ul.woocommerce-thankyou-order-details li {
	background: #0d0f12 !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 10px !important;
	padding: 1.2rem !important;
	font-size: 0.85rem !important;
	color: #8b929e !important;
}

ul.woocommerce-thankyou-order-details li strong {
	display: block !important;
	color: #ffffff !important;
	font-size: 1.05rem !important;
	font-weight: 700 !important;
	margin-top: 0.35rem !important;
}

/* ==========================================================================
   11. My Account Page Styling
   ========================================================================== */
.woocommerce-account .woocommerce-MyAccount-navigation {
	float: left !important;
	width: 25% !important;
	margin-bottom: 2rem !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 12px !important;
	overflow: hidden !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
	border-bottom: 1px solid rgba(255, 255, 255, 0.06) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li:last-child {
	border-bottom: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
	display: block !important;
	padding: 0.95rem 1.4rem !important;
	color: #c0c6d2 !important;
	text-decoration: none !important;
	font-size: 0.88rem !important;
	font-weight: 600 !important;
	transition: all 0.2s ease !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
	background: rgba(207, 161, 93, 0.12) !important;
	color: var(--color-accent, #cfa15d) !important;
	padding-left: 1.7rem !important;
}

.woocommerce-account .woocommerce-MyAccount-content {
	float: right !important;
	width: 71% !important;
	background: #14171c !important;
	border: 1px solid rgba(255, 255, 255, 0.08) !important;
	border-radius: 12px !important;
	padding: 2rem !important;
}

/* Clearfix for Account layout */
.woocommerce-account .woocommerce::after {
	content: "";
	display: table;
	clear: both;
}

/* Responsive adjustments for Checkout & Cart */
@media (max-width: 960px) {
	.wp-block-woocommerce-checkout .wc-block-components-sidebar-layout,
	.wc-block-checkout.wc-block-components-sidebar-layout {
		flex-direction: column !important;
		gap: 2rem !important;
	}

	.wp-block-woocommerce-checkout .wc-block-components-main,
	.wp-block-woocommerce-checkout .wc-block-components-sidebar,
	.wc-block-checkout__main,
	.wc-block-checkout__sidebar,
	.wp-block-woocommerce-cart .wc-block-components-sidebar,
	.wc-block-cart__sidebar {
		flex: 1 1 100% !important;
		max-width: 100% !important;
		width: 100% !important;
		position: static !important;
		top: auto !important;
	}

	form.checkout.woocommerce-checkout {
		grid-template-columns: 1fr !important;
		gap: 2rem !important;
	}

	.woocommerce-billing-fields__field-wrapper,
	.woocommerce-shipping-fields__field-wrapper {
		grid-template-columns: 1fr !important;
	}

	p.form-row-wide {
		grid-column: span 1 !important;
	}

	.cart-collaterals {
		align-items: stretch !important;
	}

	.cart_totals {
		max-width: 100% !important;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation,
	.woocommerce-account .woocommerce-MyAccount-content {
		float: none !important;
		width: 100% !important;
	}
}
