/**
 * WooCommerce Specific Styles & Overrides
 *
 * @package InstantBullion
 * @since 1.0.0
 */

/* ==========================================================================
   PRODUCT LOOP GRIDS & CARDS
   ========================================================================== */
.woocommerce-layout-wrapper,
.woocommerce-account .container.site-content-padding {
	/* padding-top: var(--spacing-md);
	padding-bottom: var(--spacing-xl); */

	padding-top: 120px;
	padding-bottom: 120px;
}

.woocommerce-account .site-breadcrumbs {
	padding: 0px;
}

.related.products .products.columns-4 {
	margin-bottom: 0px !important;
}

/* WooCommerce Loop Resets & Grid Configuration */
.woocommerce ul.products,
.woocommerce-page ul.products,
ul.products {
	display: grid !important;
	grid-template-columns: repeat(1, 1fr) !important;
	gap: 20px !important;
	list-style: none;
	padding: 0;
	margin: 0 0 40px 0;
}

@media (min-width: 576px) {

	.woocommerce ul.products,
	.woocommerce-page ul.products,
	ul.products {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 24px !important;
	}
}

@media (min-width: 992px) {

	.woocommerce ul.products,
	.woocommerce-page ul.products,
	ul.products {
		grid-template-columns: repeat(3, 1fr) !important;
		gap: 30px 24px !important;
	}
}

/* Override WooCommerce's default float, width, and margin on loop products */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.woocommerce ul.products[class*="columns-"] li.product,
.woocommerce-page ul.products[class*="columns-"] li.product,
li.product-card {
	width: 100% !important;
	margin: 0 !important;
	float: none !important;
	clear: none !important;
}

/* Disable WooCommerce default clearfix pseudo-elements from acting as grid cells */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after {
	content: none !important;
	display: none !important;
}

/* Product Card Design */
.product-card {
	position: relative;
	display: flex;
	flex-direction: column;
	background-color: transparent;
	border: none;
	border-radius: 0;
	overflow: hidden;
	box-shadow: none;
	transition: none;
}

.product-card:hover {
	transform: none;
	box-shadow: none;
	border-color: transparent;
}

.product-card-media {
	position: relative;
	width: 100%;
	aspect-ratio: 1/1;
	overflow: hidden;
	background-color: #ffffff;
	border: 1px solid #f2f2f2;
	border-radius: 4px;
	margin-bottom: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px;
}

/* Smooth Image Cross-Fade Transition */
.product-card-image-link {
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.main-image {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 1;
	transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	will-change: opacity;
}

.product-card-media .card-image {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.product-card:hover .product-card-media .card-image,
.product-card:hover .secondary-image-wrapper img {
	transform: scale(1.04);
}

.secondary-image-wrapper {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	pointer-events: none;
	background-color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px;
	transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	will-change: opacity;
	z-index: 2;
}

.secondary-image-wrapper img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* On hover when secondary image is present: smooth cross-fade main to secondary */
.product-card.has-secondary-image:hover .main-image {
	opacity: 0 !important;
}

.product-card.has-secondary-image:hover .secondary-image-wrapper {
	opacity: 1 !important;
	pointer-events: auto !important;
}

/* Custom Badges */
.product-badge {
	position: absolute;
	top: var(--spacing-2xs);
	left: var(--spacing-2xs);
	z-index: 10;
	padding: 4px 8px;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	border-radius: var(--radius-xs);
}

.badge-sale {
	background-color: var(--color-danger);
	color: var(--color-background);
}

.badge-out-of-stock {
	background-color: var(--color-danger);
	color: #ffffff;
}

/* Card actions overlay (Right vertical panel on hover) */
.product-quick-actions {
	position: absolute;
	right: 12px;
	top: 50%;
	left: auto;
	bottom: auto;
	transform: translateY(-50%) translateX(10px);
	display: flex;
	flex-direction: column;
	gap: 8px;
	opacity: 0;
	pointer-events: none;
	transition: transform var(--transition-normal), opacity var(--transition-normal);
	z-index: 20;
}

.product-card:hover .product-quick-actions {
	transform: translateY(-50%) translateX(0);
	opacity: 1;
	pointer-events: auto;
}

.btn-icon-only,
.product-quick-actions .btn-icon-only,
.product-quick-actions a.button.btn-icon-only,
.product-quick-actions button.btn-icon-only {
	width: 38px !important;
	height: 38px !important;
	min-width: 38px !important;
	min-height: 38px !important;
	padding: 0 !important;
	margin: 0 !important;
	border-radius: 0px !important;
	border: 1px solid #e0e0e0 !important;
	background-color: #ffffff !important;
	color: #333333 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
	transition: all 0.15s ease !important;
	line-height: 1 !important;
	font-size: 0 !important;
	text-decoration: none !important;
}

.btn-icon-only:hover,
.product-quick-actions .btn-icon-only:hover,
.product-quick-actions a.button.btn-icon-only:hover {
	background-color: #F55F1E !important;
	color: #ffffff !important;
	border-color: #F55F1E !important;
}

.btn-icon-only svg,
.product-quick-actions svg {
	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	min-height: 18px !important;
	max-width: 18px !important;
	max-height: 18px !important;
	display: block !important;
	flex-shrink: 0 !important;
	stroke: currentColor !important;
}

/* Product Card body styles */
.product-card-body {
	padding: 0;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

.product-card-category {
	font-size: 11px;
	text-transform: uppercase;
	color: var(--color-text-muted);
	letter-spacing: 0.05em;
	margin-bottom: var(--spacing-3xs);
}

.product-card-title {
	font-size: var(--font-small);
	font-weight: 600;
	margin-bottom: var(--spacing-2xs);
	line-height: var(--lh-small);
	flex-grow: 1;
}

.product-card-title a {
	color: var(--color-text-title);
}

.product-card-title a:hover {
	color: var(--color-primary);
}

/* Product Ratings */
.product-card-rating {
	display: flex;
	align-items: center;
	margin-bottom: var(--spacing-2xs);
}

/* ==========================================================================
   SHOP 2-COLUMN SIDEBAR LAYOUT
   ========================================================================== */
.shop-layout-container {
	display: flex;
	gap: 24px;
	align-items: stretch;
	width: 100%;
	margin-top: 10px;
}

.shop-sidebar-column {
	width: 250px;
	flex-shrink: 0;
}

.shop-sidebar-divider {
	width: 1px;
	background-color: #e5e5e5;
	flex-shrink: 0;
	margin: 0 4px;
}

.shop-main-content-column {
	flex-grow: 1;
	min-width: 0;
}

@media (max-width: 991px) {
	.shop-layout-container {
		flex-direction: column;
	}

	.shop-sidebar-column {
		width: 100%;
	}

	.shop-sidebar-divider {
		display: none;
	}
}

/* Shop Sidebar Widget Styles */
.shop-widget {
	margin-bottom: 30px;
}

.shop-widget-title {
	font-size: 15px;
	font-weight: 700;
	color: #222222;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	padding-bottom: 10px;
	border-bottom: 2px solid #F55F1E;
	margin-bottom: 16px;
}

.shop-widget ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.shop-widget li {
	margin-bottom: 10px;
	font-size: 14px;
	color: #1a1a1a;
}

.shop-widget a,
.shop-sidebar-column a,
.widget_product_categories a,
.widget_product_categories li a {
	color: #1a1a1a !important;
	text-decoration: none !important;
	transition: color 0.15s ease !important;
}

.shop-widget a:hover,
.shop-sidebar-column a:hover,
.widget_product_categories a:hover,
.widget_product_categories li a:hover {
	color: #F55F1E !important;
}

.widget_product_categories .count {
	color: #666666 !important;
	font-size: 13.5px !important;
}

/* ==========================================================================
   WOOCOMMERCE PRICE FILTER WIDGET (Yellow Line + Red Filter Button + Price Range Above Slider)
   ========================================================================== */
.widget_price_filter .price_slider_wrapper {
	display: flex !important;
	flex-direction: column !important;
}

.widget_price_filter .price_slider_amount {
	display: contents !important;
}

.widget_price_filter .price_label {
	order: 1 !important;
	font-size: 13.5px !important;
	color: #444444 !important;
	font-weight: 500 !important;
	margin-bottom: 12px !important;
	text-align: start;
}

.widget_price_filter .price_slider {
	order: 2 !important;
	margin-bottom: 16px !important;
}

.widget_price_filter .price_slider_amount button.button,
.widget_price_filter button.button {
	order: 3 !important;
	align-self: flex-start !important;
	background-color: #F55F1E !important;
	/* Red Filter Button */
	color: #ffffff !important;
	border: none !important;
	border-radius: 3px !important;
	padding: 7px 18px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	cursor: pointer !important;
	transition: background-color 0.15s ease !important;
	line-height: 1.2 !important;
}

.widget_price_filter .price_slider_amount button.button:hover,
.widget_price_filter button.button:hover {
	background-color: #d84b0e !important;
	color: #ffffff !important;
}

.widget_price_filter .price_slider_wrapper .ui-widget-content {
	background-color: #e2e8f0 !important;
	height: 5px !important;
	border-radius: 4px !important;
	border: none !important;
}

.widget_price_filter .ui-slider-range {
	background-color: #C9A227 !important;
	/* Yellow / Gold Slider Bar Line */
	height: 5px !important;
	border-radius: 4px !important;
}

.widget_price_filter .ui-slider-handle {
	background-color: #C9A227 !important;
	/* Yellow / Gold Slider Handles */
	border: 2px solid #ffffff !important;
	width: 14px !important;
	height: 14px !important;
	border-radius: 50% !important;
	top: -5px !important;
	cursor: pointer !important;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25) !important;
	outline: none !important;
}

/* Product pricing matching mockup */
.product-card-price.price {
	font-size: 16px !important;
	font-weight: 700 !important;
	color: #E53935 !important;
	margin-bottom: 6px !important;
	line-height: 1.2 !important;
}

.product-card-price.price ins {
	text-decoration: none !important;
	color: #E53935 !important;
}

.product-card-price.price del {
	font-size: 13px !important;
	color: #999999 !important;
	margin-right: 6px !important;
	font-weight: 400 !important;
}

.product-card-title {
	font-size: 13.5px !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	margin-bottom: 0 !important;
}

.product-card-title a {
	color: #333333 !important;
	text-decoration: none !important;
	transition: color 0.15s ease !important;
}

.product-card-title a:hover {
	color: #F55F1E !important;
}

/* ==========================================================================
   SHOP ARCHIVE TOOLBAR & TITLE STYLING
   ========================================================================== */
.shop-toolbar-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 16px;
	margin-bottom: 25px;
	padding-bottom: 16px;
	border-bottom: 1px solid #f0f0f0;
}

.shop-toolbar-left .woocommerce-result-count {
	font-size: 13.5px;
	color: #666666;
	font-weight: 500;
	margin: 0;
}

.shop-toolbar-right {
	display: flex;
	align-items: center;
	gap: 14px;
}

.sort-by-wrapper {
	display: flex;
	align-items: center;
	gap: 8px;
}

.sort-by-label {
	font-size: 14px;
	color: #222222;
	font-weight: 500;
}

.shop-toolbar-row .woocommerce-ordering {
	margin: 0;
	position: relative;
}

.woocommerce-ordering select {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background: transparent;
	border: none;
	font-size: 14px;
	font-weight: 500;
	color: #222222;
	padding: 0 20px 0 0;
	cursor: pointer;
	outline: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%3C333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right center;
	box-shadow: none;
}

/* Custom Sort Dropdown Component matching Image 2 & 3 */
.custom-sort-dropdown {
	position: relative;
	display: inline-block;
}

.custom-sort-trigger {
	background: transparent;
	border: none;
	font-size: 14px;
	font-weight: 500;
	color: #222222;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0;
	outline: none;
	font-family: inherit;
}

.custom-sort-trigger .chevron-icon {
	transition: transform 0.2s ease;
	stroke: #555555;
}

.custom-sort-dropdown.is-open .custom-sort-trigger .chevron-icon {
	transform: rotate(180deg);
}

.custom-sort-menu {
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	z-index: 1000;
	background-color: #ffffff;
	border: 1px solid #e0e0e0;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
	border-radius: 2px;
	padding: 4px 0;
	margin: 0;
	list-style: none;
	min-width: 220px;
	display: none;
}

.custom-sort-dropdown.is-open .custom-sort-menu {
	display: block;
}

.custom-sort-menu li {
	padding: 9px 16px;
	font-size: 13.5px;
	color: #333333;
	cursor: pointer;
	transition: color 0.15s ease, background-color 0.15s ease;
	border-bottom: 1px solid #f6f6f6;
	white-space: nowrap;
}

.custom-sort-menu li:last-child {
	border-bottom: none;
}

.custom-sort-menu li.active,
.custom-sort-menu li:hover {
	color: #F55F1E;
	background-color: #ffffff;
}

.shop-toolbar-divider {
	width: 1px;
	height: 18px;
	background-color: #e0e0e0;
	margin: 0 4px;
}

.shop-view-mode-toggle {
	display: flex;
	align-items: center;
	gap: 8px;
}

.shop-view-mode-toggle .view-btn {
	width: 28px;
	height: 28px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #999999;
	background: #ffffff;
	color: #555555;
	border-radius: 6px;
	cursor: pointer;
	padding: 0;
	transition: all 0.15s ease;
}

.shop-view-mode-toggle .view-btn:hover,
.shop-view-mode-toggle .view-btn.active {
	color: #F55F1E !important;
	border-color: #F55F1E !important;
	background-color: #ffffff !important;
}

.shop-view-mode-toggle .view-btn svg {
	width: 15px;
	height: 15px;
}

.shop-page-title {
	text-align: center;
	font-size: 20px;
	font-weight: 600;
	color: #333333;
	margin-top: 15px;
	margin-bottom: 30px;
	letter-spacing: -0.01em;
}

/* Pagination Styling matching mockup */
.shop-pagination-wrapper,
.woocommerce-pagination {
	text-align: center;
	margin-top: 40px;
	margin-bottom: 30px;
}

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

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

.woocommerce-pagination ul.page-numbers li a,
.woocommerce-pagination ul.page-numbers li span {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 36px !important;
	height: 36px !important;
	padding: 0 10px !important;
	border-radius: 0px !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	border: 1px solid #e0e0e0 !important;
	background-color: #ffffff !important;
	color: #555555 !important;
	transition: all 0.15s ease !important;
}

.woocommerce-pagination ul.page-numbers li span.current {
	background-color: #F55F1E !important;
	color: #ffffff !important;
	border-color: #F55F1E !important;
}

.woocommerce-pagination ul.page-numbers li a:hover {
	border-color: #F55F1E !important;
	color: #F55F1E !important;
}

/* ==========================================================================
   SINGLE PRODUCT PAGE STYLING
   ========================================================================== */
/* .product-template-default .woocommerce-layout-wrapper {
	max-width: 1200px;
} */

div.product {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--spacing-lg);
}

@media (min-width: 768px) {
	div.product {
		grid-template-columns: 1fr 1fr;
		gap: var(--spacing-2xl);
	}
}

/* Gallery column */
.woocommerce-product-gallery {
	position: relative;
	border-radius: var(--radius-md);
	overflow: hidden;
}

.woocommerce-product-gallery img {
	width: 100%;
	height: auto;
}

/* Summary Details Column */
.summary.entry-summary {
	display: flex;
	flex-direction: column;
}

.product_title {
	font-size: var(--font-h2);
	margin-bottom: var(--spacing-xs);
}

.summary .price {
	font-size: var(--font-h3);
	font-weight: 700;
	color: var(--color-text-title);
	margin-bottom: var(--spacing-sm);
}

.woocommerce-product-details__short-description {
	margin-bottom: var(--spacing-md);
	font-size: var(--font-body);
	color: var(--color-text);
}

/* Form cart buttons styles */
form.cart {
	display: flex;
	gap: var(--spacing-sm);
	margin-bottom: var(--spacing-md);
}

form.cart .quantity {
	display: flex;
	align-items: center;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-sm);
	overflow: hidden;
}

form.cart .quantity input {
	width: 50px;
	height: 100%;
	border: none;
	text-align: center;
	background: none;
	font-weight: 600;
}

/* Variable Products lists */
table.variations {
	width: 100%;
	margin-bottom: var(--spacing-sm);
}

table.variations td.label {
	width: 80px;
	font-weight: 600;
	font-size: var(--font-small);
}

/* Related Products header */
.related.products,
.upsells.products {
	grid-column: 1 / -1;
	margin-top: var(--spacing-3xl);
}

/* ==========================================================================
   MINI CART DRAWER STYLES
   ========================================================================== */
.mini-cart-drawer-body {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	padding: var(--spacing-md);
	overflow-y: auto;
}

ul.cart_list {
	list-style: none;
	padding: 0;
	margin: 0;
}

ul.cart_list li {
	display: flex;
	gap: var(--spacing-sm);
	padding: var(--spacing-sm) 0;
	border-bottom: 1px solid var(--color-border);
	position: relative;
}

ul.cart_list li img {
	width: 60px;
	height: 60px;
	object-fit: cover;
	border-radius: var(--radius-sm);
}

ul.cart_list li a.remove {
	position: absolute;
	top: var(--spacing-sm);
	right: 0;
	color: var(--color-danger) !important;
	font-size: 16px;
}

.woocommerce-mini-cart__total {
	margin-top: auto;
	padding-top: var(--spacing-md);
	border-top: 2px solid var(--color-border);
	display: flex;
	justify-content: space-between;
	font-weight: 700;
}

.woocommerce-mini-cart__buttons {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--spacing-xs);
	margin-top: var(--spacing-sm);
}

.woocommerce-mini-cart__buttons a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: var(--spacing-sm);
	border-radius: var(--radius-sm);
	font-weight: 600;
	font-size: var(--font-small);
}

.woocommerce-mini-cart__buttons a.checkout {
	background-color: var(--color-primary);
	color: var(--color-secondary);
}

.woocommerce-mini-cart__buttons a:not(.checkout) {
	background-color: var(--color-secondary);
	color: var(--color-background);
}

/* ==========================================================================
   QUICK VIEW MODAL STYLING
   ========================================================================== */
.quick-view-modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: var(--z-modal);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	transition: opacity var(--transition-normal), visibility var(--transition-normal);
}

.quick-view-modal.is-open {
	opacity: 1;
	visibility: visible;
}

.quick-view-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(15, 23, 42, var(--opacity-overlay));
}

.quick-view-content-wrapper {
	position: relative;
	background-color: var(--color-surface);
	max-width: 800px;
	width: 90%;
	border-radius: var(--radius-md);
	overflow: hidden;
	box-shadow: var(--shadow-xl);
	z-index: 10;
	transform: scale(0.95);
	transition: transform var(--transition-normal);
}

.quick-view-modal.is-open .quick-view-content-wrapper {
	transform: scale(1);
}

.quick-view-close {
	position: absolute;
	top: var(--spacing-sm);
	right: var(--spacing-sm);
	background: none;
	border: none;
	color: var(--color-text-title);
	cursor: pointer;
	z-index: 20;
}

.quick-view-dynamic-content {
	padding: 0px;
}

.quick-view-product-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--spacing-md);
}

@media (min-width: 640px) {
	.quick-view-product-grid {
		grid-template-columns: 1fr 1fr;
		gap: var(--spacing-lg);
	}
}

.quick-view-gallery img {
	border-radius: var(--radius-sm);
}

.quick-view-summary {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.quick-view-title {
	font-size: var(--font-h3);
	margin-bottom: var(--spacing-2xs);
}

.quick-view-price {
	font-size: var(--font-body-large);
	font-weight: 700;
	margin-bottom: var(--spacing-sm);
}

.quick-view-description {
	margin-bottom: var(--spacing-md);
	font-size: var(--font-small);
}

/* ==========================================================================
   CART & CHECKOUT PAGE LAYOUTS (Premium 2-Column Design)
   ========================================================================== */
.cart-collaterals,
#order_review_heading,
#order_review {
	grid-column: auto;
}

/* Cart Table adjustments */
table.shop_table {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-sm);
}

table.shop_table th {
	background-color: var(--color-surface-hover);
	padding: var(--spacing-sm);
	text-align: left;
	font-weight: 600;
	border-bottom: 2px solid var(--color-border);
}

table.shop_table td {
	padding: var(--spacing-sm);
	border-bottom: 1px solid var(--color-border);
}

table.shop_table img {
	width: 50px;
	border-radius: var(--radius-xs);
}

/* ==========================================================================
   INSTANT LIST VIEW MODE STYLING (Matching Image 2)
   ========================================================================== */
ul.products.is-list-view {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	grid-template-columns: 1fr !important;
}

ul.products.is-list-view li.product-card {
	display: flex !important;
	flex-direction: row !important;
	align-items: flex-start !important;
	gap: 30px !important;
	padding: 24px 0 !important;
	border-bottom: 1px solid #eeeeee !important;
	box-shadow: none !important;
	background: transparent !important;
	width: 100% !important;
}

ul.products.is-list-view li.product-card:last-child {
	border-bottom: none !important;
}

ul.products.is-list-view .product-card-media {
	width: 200px !important;
	height: 200px !important;
	flex-shrink: 0 !important;
	margin-bottom: 0 !important;
	background: #ffffff !important;
}

ul.products.is-list-view .product-quick-actions {
	display: none !important;
}

ul.products.is-list-view .product-card-body {
	flex-grow: 1 !important;
	display: flex !important;
	flex-direction: column !important;
	padding-top: 4px !important;
}

ul.products.is-list-view .product-card-top-row {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	width: 100% !important;
	margin-bottom: 6px !important;
}

ul.products.is-list-view .product-card-category {
	font-size: 13.5px !important;
	color: #777777 !important;
	font-weight: 500 !important;
}

ul.products.is-list-view .list-view-actions {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
}

ul.products.is-list-view .list-view-actions .btn-icon-only {
	width: 34px !important;
	height: 34px !important;
	min-width: 34px !important;
	min-height: 34px !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 4px !important;
	background: #ffffff !important;
	color: #555555 !important;
	box-shadow: none !important;
}

ul.products.is-list-view .list-view-actions .btn-icon-only:hover {
	border-color: #F55F1E !important;
	color: #F55F1E !important;
}

ul.products.is-list-view .product-card-price.price {
	font-size: 16px !important;
	font-weight: 700 !important;
	color: #E53935 !important;
	margin-bottom: 6px !important;
}

ul.products.is-list-view .product-card-title {
	font-size: 15px !important;
	font-weight: 600 !important;
	margin-bottom: 8px !important;
	line-height: 1.4 !important;
}

ul.products.is-list-view .product-card-title a {
	color: #222222 !important;
	text-decoration: none !important;
}

ul.products.is-list-view .product-card-title a:hover {
	color: #F55F1E !important;
}

ul.products.is-list-view .product-card-excerpt {
	font-size: 13.5px !important;
	color: #666666 !important;
	line-height: 1.55 !important;
	margin-top: 6px !important;
	display: block !important;
}

/* Hide List View specific elements in Grid View */
ul.products:not(.is-list-view) .product-card-top-row,
ul.products:not(.is-list-view) .product-card-excerpt {
	display: none !important;
}

@media (max-width: 767px) {
	ul.products.is-list-view li.product-card {
		flex-direction: column !important;
		align-items: center !important;
	}

	ul.products.is-list-view .product-card-media {
		width: 100% !important;
		height: auto !important;
	}

	.woocommerce-orders-table .woocommerce-orders-table__cell {
		width: 686px;
		max-width: 100%;
	}
}

/* ==========================================================================
   TARGET QUICK VIEW POPUP MODAL (Exact Match to Image 1 & Image 2)
   ========================================================================== */

/* Orange Square Quick View Trigger Button matching Image 2 */
.btn-quick-view,
.product-quick-actions .btn-quick-view {
	width: 38px !important;
	height: 38px !important;
	min-width: 38px !important;
	min-height: 38px !important;
	background-color: #F55F1E !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 0px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
	transition: background-color 0.15s ease !important;
}

.btn-quick-view:hover,
.product-quick-actions .btn-quick-view:hover {
	background-color: #d84b0e !important;
	color: #ffffff !important;
}

.btn-quick-view svg {
	width: 18px !important;
	height: 18px !important;
	stroke: currentColor !important;
}

/* Quick View Modal Shell */
.quick-view-modal {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	z-index: 999999 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.25s ease, visibility 0.25s ease;
	padding: 20px !important;
}

.quick-view-modal.is-open {
	opacity: 1 !important;
	visibility: visible !important;
}

.quick-view-overlay {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	background-color: rgba(0, 0, 0, 0.65) !important;
}

.quick-view-content-wrapper {
	position: relative !important;
	background: #ffffff !important;
	width: 100% !important;
	max-width: 920px !important;
	border-radius: 0px !important;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3) !important;
	z-index: 2 !important;
	padding: 35px 35px 30px !important;
	max-height: 90vh !important;
	overflow-y: auto !important;
}

/* Floating White Circular Close Button on Top Right Corner */
.quick-view-close {
	position: absolute !important;
	top: 10px !important;
	right: 10px !important;
	width: 32px !important;
	height: 32px !important;
	border-radius: 50% !important;
	background: #ffffff !important;
	border: none !important;
	color: #333333 !important;
	box-shadow: 0 3px 12px rgba(0, 0, 0, 0.25) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	cursor: pointer !important;
	z-index: 100 !important;
	padding: 0 !important;
	transition: transform 0.15s ease !important;
}

.quick-view-close:hover {
	transform: scale(1.08) !important;
	background: #ffffff !important;
}

.quick-view-close svg {
	width: 14px !important;
	height: 14px !important;
	stroke: #333333 !important;
}

/* Grid Layout Inside Modal */
.qv-modal-grid {
	display: flex !important;
	gap: 40px !important;
	align-items: flex-start !important;
}

.qv-left-column {
	width: 44% !important;
	flex-shrink: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
}

.qv-gallery-dots {
	display: none !important;
}

.qv-main-image-wrap {
	width: 100% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-bottom: 30px !important;
	min-height: 260px !important;
}

.qv-main-image-wrap img {
	max-width: 100% !important;
	max-height: 320px !important;
	object-fit: contain !important;
}

/* Solid Orange VIEW DETAILS Button */
.btn-qv-view-details {
	width: 100% !important;
	height: 44px !important;
	background-color: #F55F1E !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-decoration: none !important;
	border-radius: 0 !important;
	transition: background-color 0.15s ease !important;
}

.btn-qv-view-details:hover {
	background-color: #d84b0e !important;
	color: #ffffff !important;
}

/* Right Column */
.qv-right-column {
	width: 56% !important;
	display: flex !important;
	flex-direction: column !important;
}

.qv-price {
	font-size: 20px !important;
	font-weight: 700 !important;
	color: #F55F1E !important;
	margin-bottom: 12px !important;
	line-height: 1.2 !important;
}

.qv-price ins {
	text-decoration: none !important;
	color: #F55F1E !important;
}

.qv-title {
	font-size: 18px !important;
	font-weight: 700 !important;
	color: #222222 !important;
	line-height: 1.4 !important;
	margin-bottom: 10px !important;
}

.qv-meta-row {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-size: 13px !important;
	color: #888888 !important;
	margin-bottom: 14px !important;
}

.qv-stars-wrap {
	color: #d1d1d1 !important;
	letter-spacing: 1px !important;
}

.qv-meta-sep {
	color: #e0e0e0 !important;
}

.qv-excerpt {
	font-size: 13px !important;
	color: #666666 !important;
	line-height: 1.5 !important;
	margin-bottom: 18px !important;
}

.qv-deposit-info {
	margin-bottom: 10px !important;
}

.qv-deposit-text {
	font-size: 13.5px !important;
	color: #555555 !important;
	font-weight: 500 !important;
}

/* Payment Pills */
.qv-payment-options {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	margin-bottom: 20px !important;
}

.qv-pay-pill {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 8px 16px !important;
	background-color: #f5f5f5 !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 4px !important;
	font-size: 13.5px !important;
	color: #444444 !important;
	font-weight: 500 !important;
	cursor: pointer !important;
	transition: all 0.15s ease !important;
}

.qv-pay-pill input[type="radio"] {
	display: none !important;
}

.qv-pay-pill .radio-circle {
	width: 14px !important;
	height: 14px !important;
	border: 2px solid #aaaaaa !important;
	border-radius: 50% !important;
	display: inline-block !important;
	position: relative !important;
	transition: all 0.15s ease !important;
}

.qv-pay-pill.active {
	background-color: #f5f5f5 !important;
	border-color: #52c41a !important;
	color: #222222 !important;
}

.qv-pay-pill.active .radio-circle {
	border-color: #52c41a !important;
	background-color: #52c41a !important;
	box-shadow: inset 0 0 0 3px #f5f5f5 !important;
}

/* Purchase Box (Grey Container) */
.qv-purchase-box {
	background-color: #f8f8f8 !important;
	border: 1px solid #eeeeee !important;
	padding: 16px !important;
	border-radius: 2px !important;
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	margin-bottom: 22px !important;
	flex-wrap: wrap !important;
}

.qv-qty-selector {
	display: inline-flex !important;
	align-items: center !important;
	border: 1px solid #dcdcdc !important;
	background: #ffffff !important;
	height: 42px !important;
	border-radius: 2px !important;
}

.qv-qty-btn {
	width: 32px !important;
	height: 100% !important;
	background: transparent !important;
	border: none !important;
	font-size: 16px !important;
	color: #444444 !important;
	cursor: pointer !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.qv-qty-input {
	width: 100px !important;
	height: 100% !important;
	border: none !important;
	text-align: center !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #222222 !important;
	outline: none !important;
	appearance: textfield !important;
	-moz-appearance: textfield !important;
}

.btn-qv-add-to-cart {
	height: 42px !important;
	padding: 0 24px !important;
	background-color: #1a1a1a !important;
	color: #ffffff !important;
	font-size: 13.5px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	border: none !important;
	border-radius: 2px !important;
	cursor: pointer !important;
	transition: background-color 0.15s ease !important;
}

.btn-qv-add-to-cart:hover {
	background-color: #333333 !important;
}

.btn-qv-buy-now {
	height: 42px !important;
	padding: 0 26px !important;
	background-color: #F55F1E !important;
	color: #ffffff !important;
	font-size: 13.5px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	border-radius: 2px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-decoration: none !important;
	transition: background-color 0.15s ease !important;
	width: 100%;
}

.btn-qv-buy-now:hover {
	background-color: #d84b0e !important;
	color: #ffffff !important;
}

.qv-categories {
	font-size: 13px !important;
	color: #777777 !important;
}

.qv-categories a {
	color: #555555 !important;
	text-decoration: none !important;
}

.qv-categories a:hover {
	color: #F55F1E !important;
}

@media (max-width: 767px) {
	.qv-modal-grid {
		flex-direction: column !important;
		gap: 20px !important;
	}

	.qv-left-column,
	.qv-right-column {
		width: 100% !important;
	}
}

.qv-cart-form {
	margin-bottom: 0px !important;
	flex-direction: column;
	width: 100%;
}

/* Quick View Button Loading Spinner */
.btn-quick-view.is-loading svg {
	display: none !important;
}

.btn-quick-view.is-loading::after {
	content: '' !important;
	width: 16px !important;
	height: 16px !important;
	border: 2px solid rgba(0, 0, 0, 0) !important;
	border-top-color: #00000038 !important;
	border-radius: 50% !important;
	display: inline-block !important;
	animation: qv-spin 0.6s linear infinite !important;
	box-sizing: border-box !important;
}

@keyframes qv-spin {
	to {
		transform: rotate(360deg);
	}
}

/* ==========================================================================
   SINGLE PRODUCT PAGE STYLING (Matching Image 2 Reference)
   ========================================================================== */
.single-product-main-container,
.woocommerce div.product.single-product-main-container {
	width: 100% !important;
	max-width: 100% !important;
	/* margin-top: 10px !important; */
	margin-top: 0px !important;
	/* margin-bottom: 60px !important; */
	margin-bottom: 0px !important;
	display: block !important;
}

.single-product-top-grid {
	display: flex !important;
	flex-direction: row !important;
	gap: 45px !important;
	align-items: flex-start !important;
	margin-bottom: 50px !important;
	width: 100% !important;
}

.single-product-gallery-col,
.woocommerce div.product div.images.single-product-gallery-col {
	width: 48% !important;
	float: none !important;
	flex-shrink: 0 !important;
	margin-bottom: 0 !important;
	position: relative !important;
}

/* Vertical Gallery Thumbnails Stack matching Image 2 */
.woocommerce div.product div.images .flex-control-thumbs {
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
	width: 70px !important;
	float: left !important;
	margin: 0 15px 0 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.woocommerce div.product div.images .flex-viewport {
	width: calc(100% - 85px) !important;
	float: right !important;
}

.woocommerce div.product div.images .flex-control-thumbs li {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
}

.woocommerce div.product div.images .flex-control-thumbs li img {
	width: 100% !important;
	height: 70px !important;
	object-fit: cover !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 0px !important;
	cursor: pointer !important;
	transition: border-color 0.15s ease !important;
	padding: 4px;
}

.woocommerce div.product div.images .flex-control-thumbs li img.flex-active {
	border-color: #F55F1E !important;
}

.single-product-summary-col,
.woocommerce div.product div.summary.single-product-summary-col {
	width: 52% !important;
	float: none !important;
	flex-grow: 1 !important;
	display: flex !important;
	flex-direction: column !important;
}

.single-price {
	font-size: 22px !important;
	font-weight: 700 !important;
	color: #E53935 !important;
	margin-bottom: 10px !important;
	line-height: 1.2 !important;
}

.single-price ins {
	text-decoration: none !important;
	color: #E53935 !important;
}

.single-product-title {
	font-size: 22px !important;
	font-weight: 700 !important;
	color: #222222 !important;
	line-height: 1.35 !important;
	margin-bottom: 12px !important;
}

.single-meta-row {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-size: 13.5px !important;
	color: #777777 !important;
	margin-bottom: 14px !important;
}

.single-stars-wrap {
	color: #d1d1d1 !important;
	letter-spacing: 1px !important;
}

.single-meta-sep {
	color: #e0e0e0 !important;
}

.single-delivery-tag {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-size: 13.5px !important;
	color: #2e7d32 !important;
	font-weight: 600 !important;
	margin-bottom: 16px !important;
	background-color: #f1f8e9 !important;
	padding: 6px 14px !important;
	border-radius: 4px !important;
	align-self: flex-start !important;
}

.single-excerpt {
	font-size: 13.5px !important;
	color: #666666 !important;
	line-height: 1.55 !important;
	margin-bottom: 20px !important;
}

.single-deposit-info {
	margin-bottom: 10px !important;
}

.single-deposit-text {
	font-size: 14px !important;
	color: #555555 !important;
	font-weight: 500 !important;
}

.single-payment-options {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	margin-bottom: 22px !important;
}

.single-pay-pill {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 8px 18px !important;
	background-color: #f5f5f5 !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 4px !important;
	font-size: 14px !important;
	color: #444444 !important;
	font-weight: 500 !important;
	cursor: pointer !important;
	transition: all 0.15s ease !important;
}

.single-pay-pill input[type="radio"] {
	display: none !important;
}

.single-pay-pill .radio-circle {
	width: 14px !important;
	height: 14px !important;
	border: 2px solid #aaaaaa !important;
	border-radius: 50% !important;
	display: inline-block !important;
	position: relative !important;
	transition: all 0.15s ease !important;
}

.single-pay-pill.active {
	background-color: #f5f5f5 !important;
	border-color: #52c41a !important;
	color: #222222 !important;
}

.single-pay-pill.active .radio-circle {
	border-color: #52c41a !important;
	background-color: #52c41a !important;
	box-shadow: inset 0 0 0 3px #f5f5f5 !important;
}

/* Single Product Purchase Box & Deposit Responsive Styles */
.single-purchase-box {
	background-color: #f8f8f8 !important;
	border: 1px solid #eeeeee !important;
	padding: 16px 20px !important;
	border-radius: 2px !important;
	display: block !important;
	margin-bottom: 24px !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.single-cart-form {
	display: flex !important;
	flex-direction: column !important;
	gap: 5px !important;
	margin: 0 !important;
	width: 100% !important;
}

/* Deposits Plugin Notice & Inputs Styling */
.deposits-frontend-wrapper {
	width: 100% !important;
	padding-bottom: 12px !important;
	border-bottom: 1px solid #eeeeee !important;
	margin-bottom: 2px !important;
	box-sizing: border-box !important;
}

.deposits-frontend-wrapper .deposit-notice {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #222222 !important;
	margin: 0 0 8px 0 !important;
	display: block !important;
}

.deposits-frontend-wrapper .deposit-notice .woocommerce-Price-amount {
	font-weight: 700 !important;
	color: #222222 !important;
}

.deposits-input-wrapper {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	flex-wrap: wrap !important;
}

.deposits-input-wrapper .pretty {
	margin-right: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	border: 1px solid #dcdcdc !important;
}

.deposits-input-wrapper .pretty .state label {
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #444444 !important;
	cursor: pointer !important;
}

.deposits-frontend-wrapper>span {
	display: none !important;
}

/* Action Controls Row (Qty + Add to Cart + Buy Now) */
.single-actions-row {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	flex-wrap: wrap !important;
	width: 100% !important;
	padding-top: 4px;
	margin-top: 2px;
}

.variations_form.cart .single-actions-row{
	padding-top: 10px;
	margin-top: 2px;
}

.single-qty-selector {
	display: inline-flex !important;
	align-items: center !important;
	border: 1px solid #dcdcdc !important;
	background: #ffffff !important;
	height: 42px !important;
	border-radius: 2px !important;
	overflow: hidden !important;
	flex-shrink: 0 !important;
}

.single-qty-btn {
	width: 32px !important;
	height: 100% !important;
	background: transparent !important;
	border: none !important;
	font-size: 16px !important;
	color: #444444 !important;
	cursor: pointer !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: background-color 0.15s ease !important;
}

.single-qty-btn:hover {
	background-color: #f0f0f0 !important;
}

.single-qty-input {
	width: 70px !important;
	height: 100% !important;
	border: none !important;
	text-align: center !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #222222 !important;
	outline: none !important;
	background: #ffffff !important;
	appearance: textfield !important;
	-moz-appearance: textfield !important;
}

.btn-single-add-to-cart {
	height: 42px !important;
	padding: 0 24px !important;
	background-color: #1a1a1a !important;
	color: #ffffff !important;
	font-size: 13.5px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	border: none !important;
	border-radius: 2px !important;
	cursor: pointer !important;
	transition: background-color 0.15s ease !important;
	margin: 0 !important;
	white-space: nowrap !important;
	flex: 1 1 140px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.btn-single-add-to-cart:hover {
	background-color: #333333 !important;
	color: #ffffff !important;
}

.btn-single-buy-now {
	height: 42px !important;
	padding: 0 28px !important;
	background-color: #F55F1E !important;
	color: #ffffff !important;
	font-size: 13.5px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	border-radius: 2px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-decoration: none !important;
	transition: background-color 0.15s ease !important;
	white-space: nowrap !important;
	flex: 1 1 130px !important;
	cursor: pointer !important;
	outline: none;
    border: none;
}

.btn-single-buy-now:hover {
	background-color: #d84b0e !important;
	color: #ffffff !important;
}

/* Responsive Purchase Box Breakpoints */
@media (max-width: 768px) {
	.single-purchase-box {
		padding: 14px 16px !important;
	}

	.single-actions-row {
		gap: 10px !important;
	}

	.btn-single-add-to-cart,
	.btn-single-buy-now {
		flex: 1 1 calc(50% - 65px) !important;
		min-width: 120px !important;
		padding: 0 14px !important;
		font-size: 13px !important;
	}
}

@media (max-width: 576px) {
	.single-actions-row {
		flex-direction: column !important;
		align-items: stretch !important;
		width: 100% !important;
	}

	.single-qty-selector {
		width: 100% !important;
		max-width: 100% !important;
		justify-content: space-between !important;
	}

	.single-qty-btn {
		width: 44px !important;
	}

	.single-qty-input {
		flex: 1 !important;
		width: 100% !important;
	}

	.btn-single-add-to-cart,
	.btn-single-buy-now,
	.single_add_to_cart_button {
		width: 100% !important;
		flex: 0 0 auto !important;
		min-height: 44px !important;
		height: 44px !important;
		font-size: 13.5px !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		box-sizing: border-box !important;
		margin: 0 !important;
	}

	.deposits-input-wrapper {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 10px !important;
	}

	.deposits-input-wrapper .pretty {
		width: 100%;
	}
}

.single-meta-footer {
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
	font-size: 13.5px !important;
	color: #777777 !important;
}

.single-meta-item .meta-label {
	font-weight: 600 !important;
	color: #444444 !important;
	margin-right: 4px !important;
}

.single-meta-item a {
	color: #555555 !important;
	text-decoration: none !important;
}

.single-meta-item a:hover {
	color: #F55F1E !important;
}

/* Full Width Tabs Below Top Grid matching Image 2 */
.single-product-tabs-wrapper,
.woocommerce div.product .single-product-tabs-wrapper {
	clear: both !important;
	width: 100% !important;
	margin-top: 40px !important;
	border-top: 1px solid #eeeeee !important;
	padding-top: 30px !important;
}

.woocommerce-tabs ul.tabs {
	display: flex !important;
	gap: 30px !important;
	border-bottom: 1px solid #e5e5e5 !important;
	list-style: none !important;
	padding: 0 !important;
	margin: 0 0 30px 0 !important;
}

.woocommerce-tabs ul.tabs::before,
.woocommerce-tabs ul.tabs::after {
	display: none !important;
}

.woocommerce-tabs ul.tabs li {
	padding-bottom: 12px !important;
	margin: 0 0 -1px 0 !important;
	border: none !important;
	border-bottom: 2px solid transparent !important;
	background: transparent !important;
	border-radius: 0 !important;
	font-size: 15px !important;
	color: #777777 !important;
	cursor: pointer !important;
	transition: all 0.15s ease !important;
}

.woocommerce-tabs ul.tabs li.active {
	border-bottom-color: #F55F1E !important;
	color: #222222 !important;
	font-weight: 700 !important;
}

.woocommerce-tabs ul.tabs li a {
	color: inherit !important;
	text-decoration: none !important;
	font-weight: inherit !important;
	padding: 0 !important;
}

@media (max-width: 576px) {
	.woocommerce-tabs ul.tabs {
		display: flex !important;
		gap: 14px !important;
		overflow-x: auto !important;
		white-space: nowrap !important;
		flex-wrap: nowrap !important;
		-webkit-overflow-scrolling: touch !important;
		padding-bottom: 6px !important;
		margin-bottom: 20px !important;
		border-bottom: 1px solid #e5e5e5 !important;
		scrollbar-width: none;
	}

	.woocommerce-tabs ul.tabs::-webkit-scrollbar {
		display: none;
	}

	.woocommerce-tabs ul.tabs li {
		flex-shrink: 0 !important;
		font-size: 13.5px !important;
		padding-bottom: 8px !important;
		white-space: nowrap !important;
	}

	.woocommerce-tabs ul.tabs li a {
		white-space: nowrap !important;
	}
}

/* Specifications Table (Image 2) */
table.shop_attributes {
	width: 100% !important;
	border-collapse: collapse !important;
	border: 1px solid #e5e5e5 !important;
	margin-top: 15px !important;
}

table.shop_attributes th {
	width: 25% !important;
	padding: 12px 18px !important;
	text-align: left !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #222222 !important;
	background-color: #ffffff !important;
	border-bottom: 1px solid #e5e5e5 !important;
	border-right: 1px solid #e5e5e5 !important;
}

table.shop_attributes td {
	padding: 12px 18px !important;
	font-size: 14px !important;
	color: #555555 !important;
	background-color: #ffffff !important;
	border-bottom: 1px solid #e5e5e5 !important;
}

table.shop_attributes tr:nth-child(even) th,
table.shop_attributes tr:nth-child(even) td {
	background-color: #f9f9f9 !important;
}

/* Reviews Tab Form (Image 3) */
#review_form_wrapper {
	margin-top: 20px;
}

#review_form #submit {
	height: 42px !important;
	padding: 0 28px !important;
	background-color: #F55F1E !important;
	color: #ffffff !important;
	font-size: 13.5px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	border: none !important;
	border-radius: 2px !important;
	cursor: pointer !important;
	transition: background-color 0.15s ease !important;
}

#review_form #submit:hover {
	background-color: #d84b0e !important;
}

/* Related Products Header */
.related.products {
	clear: both !important;
	width: 100% !important;
	margin-top: 50px !important;
	padding-top: 30px !important;
	border-top: 1px solid #eeeeee !important;
}

.related.products h2 {
	text-align: center !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	color: #222222 !important;
	margin-bottom: 30px !important;
	position: relative !important;
	text-transform: capitalize !important;
}

.related.products h2::after {
	content: '' !important;
	display: block !important;
	width: 50px !important;
	height: 2px !important;
	background-color: #F55F1E !important;
	margin: 10px auto 0 !important;
}

@media (max-width: 991px) {
	.single-product-top-grid {
		flex-direction: column !important;
		gap: 30px !important;
	}

	.single-product-gallery-col,
	.single-product-summary-col {
		width: 100% !important;
	}
}

.woocommerce-product-gallery.woocommerce-product-gallery--with-images {
	width: 100% !important;
}

/* ==========================================================================
   WOOCOMMERCE MY ACCOUNT STYLES & RESPONSIVE DESIGN
   ========================================================================== */

/* Page Title */
.woocommerce-account .entry-title,
.woocommerce-account h1.page-title,
.woocommerce-account .page-header h1 {
	font-size: 26px !important;
	font-weight: 700 !important;
	color: #222222 !important;
	margin-bottom: 25px !important;
}

/* Page Container & Flex Layout */
.woocommerce-account .woocommerce,
.woocommerce-page .woocommerce-MyAccount-navigation-wrapper {
	display: flex !important;
	gap: 35px !important;
	align-items: flex-start !important;
	margin-top: 15px !important;
}

.woocommerce-account .woocommerce::before,
.woocommerce-account .woocommerce::after,
.woocommerce-MyAccount-navigation::before,
.woocommerce-MyAccount-navigation::after,
.woocommerce-MyAccount-content::before,
.woocommerce-MyAccount-content::after {
	display: none !important;
}

/* Sidebar Navigation Container */
.woocommerce-MyAccount-navigation {
	width: 250px !important;
	flex-shrink: 0 !important;
	float: none !important;
}

.woocommerce-MyAccount-navigation ul {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
}

.woocommerce-MyAccount-navigation li {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

/* Navigation Links */
.woocommerce-MyAccount-navigation li a {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	padding: 12px 18px !important;
	height: 44px !important;
	background-color: #f5f5f5 !important;
	color: #666666 !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	border-radius: 0px !important;
	text-decoration: none !important;
	transition: background-color 0.15s ease, color 0.15s ease !important;
	box-sizing: border-box !important;
}

.woocommerce-MyAccount-navigation li:not(.is-active) a:hover {
	background-color: #eaeaea !important;
	color: #222222 !important;
}

/* Active Menu Item */
.woocommerce-MyAccount-navigation li.is-active a {
	background-color: #F55F1E !important;
	color: #ffffff !important;
	font-weight: 600 !important;
}

/*/* Navigation SVG Icons */
.woocommerce-MyAccount-navigation li a::before {
	content: '' !important;
	display: inline-block !important;
	width: 18px !important;
	height: 18px !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: contain !important;
	flex-shrink: 0 !important;
}

/* Dashboard Icon */
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23666666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7'/%3E%3Crect x='14' y='3' width='7' height='7'/%3E%3Crect x='14' y='14' width='7' height='7'/%3E%3Crect x='3' y='14' width='7' height='7'/%3E%3C/svg%3E") !important;
}

.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard.is-active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard.active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard.current-menu-item a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7'/%3E%3Crect x='14' y='3' width='7' height='7'/%3E%3Crect x='14' y='14' width='7' height='7'/%3E%3Crect x='3' y='14' width='7' height='7'/%3E%3C/svg%3E") !important;
}

/* Orders Icon */
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--orders a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23666666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2L3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4z'/%3E%3Cline x1='3' y1='6' x2='21' y2='6'/%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'/%3E%3C/svg%3E") !important;
}

.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--orders.is-active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--orders.active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--orders.current-menu-item a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2L3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4z'/%3E%3Cline x1='3' y1='6' x2='21' y2='6'/%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'/%3E%3C/svg%3E") !important;
}

/* Downloads Icon */
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--downloads a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23666666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' y1='15' x2='12' y2='3'/%3E%3C/svg%3E") !important;
}

.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--downloads.is-active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--downloads.active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--downloads.current-menu-item a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpolyline points='7 10 12 15 17 10'/%3E%3Cline x1='12' y1='15' x2='12' y2='3'/%3E%3C/svg%3E") !important;
}

/* Addresses Icon */
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--addresses a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-address a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23666666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E") !important;
}

.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--addresses.is-active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--addresses.active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--addresses.current-menu-item a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-address.is-active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-address.active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-address.current-menu-item a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E") !important;
}

/* Account Details Icon */
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-account a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--account-details a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23666666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E") !important;
}

.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-account.is-active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-account.active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--edit-account.current-menu-item a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--account-details.is-active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--account-details.active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--account-details.current-menu-item a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E") !important;
}

/* Logout Icon */
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--logout a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23666666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpolyline points='16 17 21 12 16 7'/%3E%3Cline x1='21' y1='12' x2='9' y2='12'/%3E%3C/svg%3E") !important;
}

.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout.is-active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout.active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout.current-menu-item a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--logout.is-active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--logout.active a::before,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--logout.current-menu-item a::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpolyline points='16 17 21 12 16 7'/%3E%3Cline x1='21' y1='12' x2='9' y2='12'/%3E%3C/svg%3E") !important;
}

/* Right Content Area */
.woocommerce-MyAccount-content {
	flex: 1 !important;
	min-width: 0 !important;
	float: none !important;
	width: auto !important;
}

.woocommerce-MyAccount-content>p {
	font-size: 14.5px !important;
	line-height: 1.7 !important;
	color: #555555 !important;
	margin-bottom: 20px !important;
}

.woocommerce-MyAccount-content a {
	color: #F55F1E !important;
	text-decoration: none !important;
	font-weight: 500 !important;
}

.woocommerce-MyAccount-content a:hover {
	text-decoration: underline !important;
}

/* Info Messages & Alert Banners */
.woocommerce-Message,
.woocommerce-info,
.woocommerce-message,
.woocommerce-error {
	background-color: #f7f9fa !important;
	border: 1px solid #e2e8f0 !important;
	border-left: 4px solid #F55F1E !important;
	padding: 16px 20px !important;
	border-radius: 4px !important;
	color: #333333 !important;
	font-size: 14.5px !important;
	margin-bottom: 25px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 15px !important;
}

.woocommerce-info::before,
.woocommerce-Message::before,
.woocommerce-message::before,
.woocommerce-error::before {
	content: '' !important;
	display: inline-block !important;
	width: 18px !important;
	height: 18px !important;
	flex-shrink: 0 !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: contain !important;
	margin-right: 10px !important;
}

.woocommerce-info::before,
.woocommerce-Message::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23F55F1E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='16' x2='12' y2='12'/%3E%3Cline x1='12' y1='8' x2='12.01' y2='8'/%3E%3C/svg%3E") !important;
}

.woocommerce-message::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%232e7d32' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 11.08V12a10 10 0 1 1-5.93-9.14'/%3E%3Cpolyline points='22 4 12 14.01 9 11.01'/%3E%3C/svg%3E") !important;
}

.woocommerce-error::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23d32f2f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='15' y1='9' x2='9' y2='15'/%3E%3Cline x1='9' y1='9' x2='15' y2='15'/%3E%3C/svg%3E") !important;
}

.woocommerce-message {
	border-left-color: #2e7d32 !important;
}

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

.woocommerce-info .button,
.woocommerce-Message .button {
	background: transparent !important;
	color: #F55F1E !important;
	font-weight: 700 !important;
	padding: 0 !important;
	border: none !important;
	font-size: 14px !important;
}

/* Orders Table */
table.shop_table.my_account_orders {
	width: 100% !important;
	border-collapse: collapse !important;
	border: 1px solid #e5e5e5 !important;
	background-color: #ffffff !important;
	margin-bottom: 30px !important;
}

table.shop_table.my_account_orders th {
	background-color: #ffffff !important;
	color: #666666 !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	padding: 14px 18px !important;
	border-bottom: 1px solid #e5e5e5 !important;
	border-top: none !important;
	text-align: left !important;
}

table.shop_table.my_account_orders td {
	padding: 14px 18px !important;
	font-size: 14px !important;
	color: #444444 !important;
	border-bottom: 1px solid #eeeeee !important;
	vertical-align: middle !important;
}

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

table.shop_table.my_account_orders td.woocommerce-orders-table__cell-order-number a {
	color: #F55F1E !important;
	font-weight: 700 !important;
	text-decoration: none !important;
}

table.shop_table.my_account_orders td.woocommerce-orders-table__cell-order-actions .button,
table.shop_table.my_account_orders td.woocommerce-orders-table__cell-order-actions a.button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	height: 36px !important;
	padding: 0 24px !important;
	background-color: #F55F1E !important;
	color: #ffffff !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	border: none !important;
	border-radius: 0px !important;
	text-decoration: none !important;
	cursor: pointer !important;
	transition: background-color 0.15s ease !important;
}

table.shop_table.my_account_orders td.woocommerce-orders-table__cell-order-actions .button:hover {
	background-color: #d84b0e !important;
	color: #ffffff !important;
}

/* Addresses Container & Cards */
.woocommerce-Addresses {
	display: flex !important;
	gap: 24px !important;
	margin-top: 20px !important;
}

.woocommerce-Address {
	flex: 1 !important;
	border: 1px solid #e5e5e5 !important;
	background-color: #ffffff !important;
	display: flex !important;
	flex-direction: column !important;
}

.woocommerce-Address header.title {
	background-color: #f5f5f5 !important;
	padding: 12px 18px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	border-bottom: 1px solid #e5e5e5 !important;
}

.woocommerce-Address header.title h3 {
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #222222 !important;
	margin: 0 !important;
}

.woocommerce-Address header.title a.edit {
	color: #F55F1E !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
}

.woocommerce-Address header.title a.edit:hover {
	text-decoration: underline !important;
}

.woocommerce-Address address {
	padding: 18px !important;
	font-style: normal !important;
	font-size: 14px !important;
	line-height: 1.65 !important;
	color: #555555 !important;
	margin: 0 !important;
}

/* Edit Address Form (Billing & Shipping) & Account Forms */
form.edit-account,
form.woocommerce-EditAccountForm,
form.edit-address,
form.woocommerce-EditAddressForm,
.woocommerce-address-fields {
	max-width: 100% !important;
}

.woocommerce-address-fields h3,
.woocommerce-MyAccount-content h3 {
	font-size: 24px !important;
	font-weight: 700 !important;
	color: #222222 !important;
	margin-top: 0 !important;
	margin-bottom: 22px !important;
}

form.edit-account .form-row,
form.woocommerce-EditAccountForm .form-row,
form.edit-address .form-row,
form.woocommerce-EditAddressForm .form-row,
.woocommerce-address-fields .form-row {
	margin-bottom: 18px !important;
	padding: 0 !important;
}

form.edit-account .form-row-first,
form.woocommerce-EditAccountForm .form-row-first,
form.edit-address .form-row-first,
form.woocommerce-EditAddressForm .form-row-first,
.woocommerce-address-fields .form-row-first {
	width: 48.5% !important;
	float: left !important;
}

form.edit-account .form-row-last,
form.woocommerce-EditAccountForm .form-row-last,
form.edit-address .form-row-last,
form.woocommerce-EditAddressForm .form-row-last,
.woocommerce-address-fields .form-row-last {
	width: 48.5% !important;
	float: right !important;
}

form.edit-account .form-row-wide,
form.woocommerce-EditAccountForm .form-row-wide,
form.edit-address .form-row-wide,
form.woocommerce-EditAddressForm .form-row-wide,
.woocommerce-address-fields .form-row-wide {
	clear: both !important;
	width: 100% !important;
}

form.edit-account label,
form.woocommerce-EditAccountForm label,
form.edit-address label,
form.woocommerce-EditAddressForm label,
.woocommerce-address-fields label {
	display: block !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	color: #333333 !important;
	margin-bottom: 6px !important;
}

form.edit-account label span.required,
form.edit-address label span.required,
.woocommerce-address-fields label span.required,
form.edit-account label abbr.required,
form.edit-address label abbr.required,
.woocommerce-address-fields label abbr.required {
	color: #F55F1E !important;
	font-weight: 700 !important;
	text-decoration: none !important;
	border: none !important;
}

/* Inputs & Select Elements */
form.edit-account input.input-text,
form.woocommerce-EditAccountForm input.input-text,
form.edit-address input.input-text,
form.woocommerce-EditAddressForm input.input-text,
form.edit-account input[type="text"],
form.edit-account input[type="email"],
form.edit-account input[type="password"],
form.edit-address input[type="text"],
form.edit-address input[type="tel"],
form.edit-address input[type="email"],
.woocommerce-address-fields input.input-text,
.woocommerce-address-fields select {
	width: 100% !important;
	height: 44px !important;
	padding: 0 14px !important;
	border: 1px solid #dcdcdc !important;
	border-radius: 2px !important;
	background-color: #ffffff !important;
	font-size: 14px !important;
	color: #222222 !important;
	transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
}

form.edit-account input.input-text:focus,
form.woocommerce-EditAccountForm input.input-text:focus,
form.edit-address input.input-text:focus,
form.woocommerce-EditAddressForm input.input-text:focus,
form.edit-address input[type="text"]:focus,
form.edit-address input[type="tel"]:focus,
form.edit-address input[type="email"]:focus,
.woocommerce-address-fields input.input-text:focus,
.woocommerce-address-fields select:focus {
	border-color: #F55F1E !important;
	background-color: #ffffff !important;
	outline: none !important;
	box-shadow: 0 0 0 3px rgba(245, 95, 30, 0.12) !important;
}

/* Select2 / SelectWoo Dropdowns (Country & State Dropdowns) */
.select2-container--default .select2-selection--single {
	height: 44px !important;
	border: 1px solid #dcdcdc !important;
	border-radius: 2px !important;
	background-color: #ffffff !important;
	transition: border-color 0.15s ease !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 28px !important;
	padding-left: 14px !important;
	color: #222222 !important;
	font-size: 14px !important;
}

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

.select2-container--default.select2-container--open .select2-selection--single,
.select2-container--default.select2-container--focus .select2-selection--single {
	border-color: #F55F1E !important;
	outline: none !important;
	box-shadow: 0 0 0 3px rgba(245, 95, 30, 0.12) !important;
}

.select2-dropdown {
	border-color: #e0e0e0 !important;
	border-radius: 2px !important;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08) !important;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
	background-color: #F55F1E !important;
	color: #ffffff !important;
}

form.edit-account fieldset,
form.woocommerce-EditAccountForm fieldset {
	border: none !important;
	padding: 0 !important;
	margin: 25px 0 10px 0 !important;
}

form.edit-account fieldset legend,
form.woocommerce-EditAccountForm fieldset legend {
	font-size: 18px !important;
	font-weight: 700 !important;
	color: #222222 !important;
	margin-bottom: 15px !important;
	padding: 0 !important;
	display: block !important;
	width: 100% !important;
}

/* Submit Buttons (Save address & Save account details) */
form.edit-account .button,
form.edit-account button[type="submit"],
form.woocommerce-EditAccountForm button[type="submit"],
form.edit-address .button,
form.edit-address button[type="submit"],
form.edit-address input[type="submit"],
form.woocommerce-EditAddressForm button[type="submit"],
form.woocommerce-EditAddressForm input[type="submit"],
.woocommerce-address-fields button[type="submit"],
.woocommerce-address-fields input[type="submit"],
button[name="save_address"],
input[name="save_address"] {
	height: 44px !important;
	padding: 0 32px !important;
	background-color: #F55F1E !important;
	color: #ffffff !important;
	font-size: 13.5px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	border: none !important;
	border-radius: 2px !important;
	cursor: pointer !important;
	transition: background-color 0.15s ease !important;
	margin-top: 15px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

form.edit-account button[type="submit"]:hover,
form.woocommerce-EditAccountForm button[type="submit"]:hover,
form.edit-address button[type="submit"]:hover,
form.edit-address input[type="submit"]:hover,
form.woocommerce-EditAddressForm button[type="submit"]:hover,
form.woocommerce-EditAddressForm input[type="submit"]:hover,
button[name="save_address"]:hover,
input[name="save_address"]:hover {
	background-color: #d84b0e !important;
	color: #ffffff !important;
}

/* ==========================================================================
   MY ACCOUNT RESPONSIVE BREAKPOINTS
   ========================================================================== */

@media (max-width: 991px) {

	.woocommerce-account .woocommerce,
	.woocommerce-page .woocommerce-MyAccount-navigation-wrapper {
		flex-direction: column !important;
		gap: 24px !important;
	}

	.woocommerce-MyAccount-navigation {
		width: 100% !important;
	}

	.woocommerce-MyAccount-navigation ul {
		flex-direction: row !important;
		overflow-x: auto !important;
		-webkit-overflow-scrolling: touch !important;
		padding-bottom: 6px !important;
		gap: 8px !important;
		scrollbar-width: none !important;
	}

	.woocommerce-MyAccount-navigation ul::-webkit-scrollbar {
		display: none !important;
	}

	.woocommerce-MyAccount-navigation li {
		flex: 0 0 auto !important;
	}

	.woocommerce-MyAccount-navigation li a {
		white-space: nowrap !important;
		padding: 10px 16px !important;
		height: 40px !important;
		font-size: 13.5px !important;
	}

	.woocommerce-MyAccount-content {
		width: 100% !important;
	}

	.woocommerce-Addresses {
		flex-direction: column !important;
	}
}

@media (max-width: 767px) {
	table.shop_table.my_account_orders {
		display: block !important;
		width: 100% !important;
		overflow-x: auto !important;
		-webkit-overflow-scrolling: touch !important;
		white-space: nowrap !important;
	}

	table.shop_table.my_account_orders th,
	table.shop_table.my_account_orders td {
		padding: 12px 14px !important;
		font-size: 13px !important;
	}

	form.edit-account .form-row-first,
	form.edit-account .form-row-last,
	form.woocommerce-EditAccountForm .form-row-first,
	form.woocommerce-EditAccountForm .form-row-last,
	form.edit-address .form-row-first,
	form.edit-address .form-row-last,
	form.woocommerce-EditAddressForm .form-row-first,
	form.woocommerce-EditAddressForm .form-row-last,
	.woocommerce-address-fields .form-row-first,
	.woocommerce-address-fields .form-row-last {
		width: 100% !important;
		float: none !important;
	}

	form.edit-account button[type="submit"],
	form.woocommerce-EditAccountForm button[type="submit"],
	form.edit-address button[type="submit"],
	form.woocommerce-EditAddressForm button[type="submit"],
	.woocommerce-address-fields button[type="submit"],
	button[name="save_address"],
	input[name="save_address"] {
		width: 100% !important;
	}
}

.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after {
	position: unset;
	border: unset;
	box-sizing: unset;
}

/* Hide WooCommerce single product tab headings (Description, Additional Information) */
.woocommerce-Tabs-panel--description>h2:first-child,
.woocommerce-Tabs-panel--additional_information>h2:first-child,
#tab-description>h2:first-child,
#tab-additional_information>h2:first-child {
	display: none !important;
}

/* Reviews Tab Title & Rating Layout - Match Reference Design */
#reviews #comments h2.woocommerce-Reviews-title,
#reviews h2,
#tab-reviews h2,
.woocommerce-Tabs-panel--reviews>h2:first-child {
	display: block !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	color: #1a1a1a !important;
	margin-top: 0 !important;
	margin-bottom: 10px !important;
	text-transform: none !important;
	letter-spacing: normal !important;
}

#reviews .comment-form-rating,
.woocommerce #reviews .comment-form-rating {
	display: flex !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
	gap: 10px !important;
	margin-bottom: 14px !important;
}

#reviews .comment-form-rating label,
.woocommerce #reviews .comment-form-rating label {
	margin-bottom: 0 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #333 !important;
	white-space: nowrap !important;
}

#reviews .comment-form-rating p.stars,
.woocommerce #reviews .comment-form-rating p.stars {
	display: inline-flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1 !important;
}

#reviews .comment-form-rating p.stars a,
.woocommerce #reviews .comment-form-rating p.stars a {
	font-size: 13px !important;
	color: #f55f1e !important;
	margin-right: 4px !important;
}

#reviews .comment-form-rating p.stars a:hover,
#reviews .comment-form-rating p.stars a.active,
.woocommerce #reviews .comment-form-rating p.stars a:hover,
.woocommerce #reviews .comment-form-rating p.stars a.active {
	color: #f55f1e !important;
}

.single-qty-input:focus {
	border-color: unset !important;
	box-shadow: unset !important;
}

/* ==========================================================================
   Single Product Image Corner Radius Removal & Sliders
   ========================================================================== */

/* 1. Remove border-radius from main image & thumbnails */
.woocommerce-product-gallery,
.woocommerce-product-gallery img,
.woocommerce-product-gallery__image,
.woocommerce-product-gallery__image img,
.woocommerce-product-gallery .flex-viewport,
.woocommerce-product-gallery .woocommerce-product-gallery__wrapper,
.flex-control-thumbs img,
.flex-control-thumbs li img,
.woocommerce-product-gallery .flex-control-thumbs li {
	border-radius: 0 !important;
}

/* ==========================================================================
   Custom WooCommerce Checkout 2-Column Layout & Styles
   ========================================================================== */

.page .entry-content,
.woocommerce-checkout .entry-content,
.woocommerce-checkout .content-area {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	clear: both !important;
	display: block !important;
}

.ib-checkout-main-title {
	font-size: 28px;
	font-weight: 700;
	color: #1a1a1a;
	margin-bottom: 28px;
	letter-spacing: -0.5px;
}

.ib-checkout-layout-grid {
	display: flex !important;
	gap: 30px !important;
	align-items: flex-start !important;
	width: 100% !important;
	clear: both !important;
	box-sizing: border-box !important;
}

.ib-checkout-col-left {
	flex: 1 1 60% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

.ib-checkout-col-right {
	flex: 0 0 38% !important;
	min-width: 320px !important;
	box-sizing: border-box !important;
}

.ib-checkout-block {
	margin-bottom: 28px;
}

.ib-block-heading,
.ib-summary-card-title {
	font-size: 16px;
	font-weight: 700;
	color: #1a1a1a;
	margin-bottom: 16px;
	text-transform: none;
	letter-spacing: 0;
}

/* Form Inputs & Labels */
.ib-form-row-2col {
	display: flex !important;
	gap: 16px !important;
	width: 100% !important;
}

.ib-form-row-2col .form-row {
	flex: 1 1 50% !important;
	width: 50% !important;
	margin-bottom: 14px !important;
}

.ib-checkout-form p.form-row {
	margin-bottom: 14px;
	width: 100%;
}

.ib-checkout-form label {
	font-size: 13px;
	font-weight: 500;
	color: #333;
	margin-bottom: 6px;
	display: block;
}

.ib-checkout-form input[type="text"],
.ib-checkout-form input[type="email"],
.ib-checkout-form input[type="tel"],
.ib-checkout-form input[type="password"],
.ib-checkout-form select,
.ib-checkout-form textarea {
	width: 100% !important;
	height: 44px !important;
	padding: 0 14px !important;
	border: 1px solid #d0d0d0 !important;
	border-radius: 4px !important;
	font-size: 14px !important;
	color: #1a1a1a !important;
	background: #ffffff !important;
	outline: none !important;
	box-shadow: none !important;
	transition: border-color 0.2s ease;
}

.ib-checkout-form textarea {
	height: 90px !important;
	padding: 10px 14px !important;
}

.ib-checkout-form input:focus,
.ib-checkout-form select:focus,
.ib-checkout-form textarea:focus {
	border-color: #ff5722 !important;
}

/* Saved Address Card */
.ib-saved-address-card {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px 18px;
	border: 1px solid #e0e0e0;
	border-radius: 6px;
	background: #ffffff;
	margin-bottom: 16px;
}

.ib-saved-addr-content strong {
	font-size: 14px;
	color: #1a1a1a;
	display: block;
	margin-bottom: 2px;
}

.ib-saved-addr-content p {
	font-size: 13px;
	color: #666;
	margin: 0;
	line-height: 1.4;
}

.ib-edit-addr-btn {
	background: #f5f5f5;
	border: 1px solid #d0d0d0;
	border-radius: 4px;
	padding: 6px 14px;
	font-size: 12px;
	font-weight: 600;
	color: #333;
	cursor: pointer;
	transition: all 0.2s ease;
}

.ib-edit-addr-btn:hover {
	background: #e8e8e8;
	color: #000;
}

.ib-address-fields-wrap.is-collapsed {
	display: none;
}

.ib-same-address-checkbox-wrap,
.ib-order-note-wrap {
	margin-top: 14px;
	margin-bottom: 18px;
}

.ib-checkbox-label {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: #333 !important;
	cursor: pointer !important;
	margin: 0 !important;
}

.ib-checkbox-label input[type="checkbox"] {
	width: 16px !important;
	height: 16px !important;
	accent-color: #f55f1e !important;
	margin: 0 !important;
	cursor: pointer !important;
}

/* Custom Radio Card Options (Shipping & Payment) */
.woocommerce-checkout #shipping_method,
.woocommerce-checkout ul.wc_payment_methods {
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.woocommerce-checkout #shipping_method li,
.woocommerce-checkout ul.wc_payment_methods li {
	border: 1px solid #d0d0d0 !important;
	border-radius: 4px !important;
	padding: 14px 18px !important;
	background: #ffffff !important;
	margin: 0 !important;
	cursor: pointer !important;
	transition: all 0.2s ease !important;
}

.woocommerce-checkout #shipping_method li:hover,
.woocommerce-checkout ul.wc_payment_methods li:hover,
.woocommerce-checkout #shipping_method li.active,
.woocommerce-checkout ul.wc_payment_methods li.payment_method_selected {
	border-color: #f55f1e !important;
	background: #ffffff !important;
}

.woocommerce-checkout input[type="radio"] {
	accent-color: #f55f1e !important;
	margin-right: 10px !important;
}

.woocommerce-checkout div.payment_box {
	background: none !important;
	padding: 10px 0 0 28px !important;
	margin: 0 !important;
	font-size: 13px !important;
	color: #666 !important;
	line-height: 1.5 !important;
}

.woocommerce-checkout div.payment_box::before {
	display: none !important;
}

/* Footer Actions */
.ib-checkout-footer-actions {
	margin-top: 30px;
}

.ib-checkout-terms-notice {
	font-size: 12px;
	color: #777;
	margin-bottom: 20px;
	line-height: 1.5;
}

.ib-checkout-terms-notice a {
	color: #f55f1e;
	text-decoration: underline;
}

.ib-actions-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.ib-return-cart-link {
	font-size: 14px;
	font-weight: 600;
	color: #666;
	text-decoration: none;
	transition: color 0.2s ease;
}

.ib-return-cart-link:hover {
	color: #f55f1e;
}

.ib-main-place-order-btn,
#place_order {
	background: #f55f1e !important;
	background-color: #f55f1e !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 0px !important;
	padding: 14px 36px !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	letter-spacing: 0.5px !important;
	cursor: pointer !important;
	text-transform: uppercase !important;
	box-shadow: 0 4px 12px rgba(245, 95, 30, 0.25) !important;
	transition: background-color 0.2s ease !important;
}

#ib_apply_checkout_coupon,
#ib_checkout_coupon_code {
	border-radius: 0px !important;
}

.ib-main-place-order-btn:hover,
#place_order:hover {
	background: #e04818 !important;
	background-color: #e04818 !important;
}

/* Right Column: Order Summary Sidebar Card */
.ib-order-summary-sidebar-card {
	border: 1px solid #e0e0e0;
	border-radius: 6px;
	padding: 24px;
	background: #ffffff;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
	position: sticky;
	top: 20px;
}

.ib-summary-cart-items {
	margin-bottom: 16px;
}

.ib-summary-cart-item {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 12px 0;
	border-bottom: 1px solid #f0f0f0;
}

.ib-summary-cart-item:last-child {
	border-bottom: none;
}

.ib-item-thumb-wrap {
	position: relative;
	width: 50px;
	height: 50px;
	flex-shrink: 0;
}

.ib-item-thumb-wrap img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 4px !important;
}

.ib-item-qty-badge {
	position: absolute;
	top: -6px;
	right: -6px;
	width: 20px;
	height: 20px;
	background: #f55f1e;
	color: #ffffff;
	border-radius: 50%;
	font-size: 11px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
}

.ib-item-details {
	flex: 1;
	min-width: 0;
}

.ib-item-name {
	font-size: 13px;
	font-weight: 600;
	color: #1a1a1a;
	line-height: 1.3;
}

.ib-item-subtext {
	font-size: 11px;
	color: #888;
	margin-top: 2px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.ib-item-total-price {
	font-size: 14px;
	font-weight: 700;
	color: #f55f1e;
	white-space: nowrap;
}

/* Coupon Accordion */
.ib-summary-coupon-accordion {
	border-top: 1px solid #f0f0f0;
	border-bottom: 1px solid #f0f0f0;
	padding: 12px 0;
}

.ib-coupon-toggle-btn {
	background: none;
	border: none;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 13px;
	font-weight: 600;
	color: #333;
	cursor: pointer;
	padding: 0;
}

.ib-coupon-form-box {
	display: flex;
	gap: 10px;
	margin-top: 12px;
}

.ib-coupon-input-field {
	flex: 1 !important;
	height: 40px !important;
	border: 1px solid #d0d0d0 !important;
	border-radius: 4px !important;
	padding: 0 12px !important;
	font-size: 13px !important;
}

.ib-coupon-apply-btn {
	background: #f55f1e !important;
	background-color: #f55f1e !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 4px !important;
	padding: 0 20px !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	cursor: pointer !important;
	text-transform: uppercase !important;
}

.ib-coupon-apply-btn:hover {
	background: #e04818 !important;
	background-color: #e04818 !important;
}

/* Summary Totals Table */
.ib-summary-totals-table {
	padding-top: 12px;
}

.ib-summary-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 8px 0;
	font-size: 14px;
	color: #555;
}

.ib-grand-total-row {
	font-size: 18px;
	font-weight: 700;
	color: #1a1a1a;
	border-top: 1px solid #e0e0e0;
	padding-top: 14px;
	margin-top: 6px;
}

.ib-total-amount-highlight {
	color: #f55f1e;
	font-weight: 700;
}

/* Responsive Styles */
@media (max-width: 991px) {
	.ib-checkout-layout-grid {
		flex-direction: column-reverse;
		gap: 30px;
	}

	.ib-checkout-col-left,
	.ib-checkout-col-right {
		width: 100%;
		flex: 1 1 100%;
	}

	.ib-order-summary-sidebar-card {
		position: static;
	}
}

@media (max-width: 576px) {
	.ib-actions-row {
		flex-direction: column-reverse;
		gap: 16px;
		align-items: stretch;
	}

	.ib-main-place-order-btn {
		width: 100%;
	}

	.ib-return-cart-link {
		text-align: center;
	}
}

/* ==========================================================================
   WooCommerce Notices & Alert Messages Layout Fix & View Cart Button Styling
   ========================================================================== */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-notice {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex-wrap: wrap !important;
	gap: 12px 18px !important;
	padding: 14px 20px !important;
	margin-bottom: 16px !important;
	background-color: #ffffff !important;
	border: 1px solid #e0e0e0 !important;
	border-left: 4px solid #f55f1e !important;
	border-radius: 4px !important;
	font-size: 14px !important;
	color: #222222 !important;
	line-height: 1.4 !important;
	position: relative !important;
	clear: both !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before,
.woocommerce-notice::before {
	position: static !important;
	float: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-right: 10px !important;
	font-size: 16px !important;
	color: #f55f1e !important;
	flex-shrink: 0 !important;
}

.woocommerce-error::before {
	color: #e53935 !important;
}

.woocommerce-error {
	border-left-color: #e53935 !important;
	background-color: #fdf2f2 !important;
}

.woocommerce-info {
	border-left-color: #2196f3 !important;
	background-color: #f0f7ff !important;
}

.woocommerce-info::before {
	color: #2196f3 !important;
}

/* View Cart Button Styling (Matching Theme Orange Combination) */
.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button,
.woocommerce-notice .button,
.woocommerce-message a.button,
.woocommerce-info a.button,
.woocommerce-error a.button,
.woocommerce-notice a.button {
	order: 2 !important;
	margin-left: auto !important;
	float: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: #f55f1e !important;
	background-color: #f55f1e !important;
	color: #ffffff !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	padding: 8px 18px !important;
	border-radius: 4px !important;
	border: none !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	box-shadow: 0 2px 8px rgba(245, 95, 30, 0.2) !important;
	transition: all 0.2s ease !important;
	cursor: pointer !important;
}

.woocommerce-message .button:hover,
.woocommerce-info .button:hover,
.woocommerce-error .button:hover,
.woocommerce-notice .button:hover,
.woocommerce-message a.button:hover,
.woocommerce-info a.button:hover,
.woocommerce-error a.button:hover,
.woocommerce-notice a.button:hover {
	background: #e04818 !important;
	background-color: #e04818 !important;
	color: #ffffff !important;
}

/* Hide top coupon banner (sidebar coupon accordion is used instead) */
.woocommerce-form-coupon-toggle,
.woocommerce-form-coupon {
	display: none !important;
}

/* Hide WooCommerce default left-column product table & duplicate place order button */
#order_review table.shop_table.woocommerce-checkout-review-order-table {
	display: none !important;
}

#payment .form-row.place-order,
#payment .woocommerce-privacy-policy-text {
	display: none !important;
}

#payment {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
}

/* Clean Shipping Options Table & Radio Styling */
.ib-shipping-methods-wrap table.shop_table {
	border: none !important;
	background: transparent !important;
	margin: 0 !important;
}

.ib-shipping-methods-wrap tr,
.ib-shipping-methods-wrap td {
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
}

.ib-shipping-methods-wrap ul#shipping_method {
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.ib-shipping-methods-wrap ul#shipping_method li {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	border: 1px solid #d0d0d0 !important;
	border-radius: 4px !important;
	padding: 14px 18px !important;
	background: #ffffff !important;
	margin: 0 !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #1a1a1a !important;
	cursor: pointer !important;
}

.ib-shipping-methods-wrap ul#shipping_method li label {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	margin: 0 !important;
	cursor: pointer !important;
}

.ib-shipping-methods-wrap ul#shipping_method li input[type="radio"] {
	accent-color: #f55f1e !important;
	margin-right: 10px !important;
}

.ib-shipping-methods-wrap ul#shipping_method li span.woocommerce-Price-amount {
	margin-left: auto !important;
	color: #f55f1e !important;
	font-weight: 700 !important;
}

/* Hide red asterisks from checkout labels to match Screenshot 1 */
.ib-checkout-form .required,
.ib-checkout-form abbr.required {
	display: none !important;
}

/* Hide extra Shipment headers in Shipping options block */
.ib-shipping-methods-wrap th,
.ib-shipping-methods-wrap td.shipping strong,
.ib-shipping-methods-wrap tr.shipping th {
	display: none !important;
}

/* Hide extra shipping radio selection box inside sidebar totals (only text line item is shown) */
.ib-summary-totals-table .woocommerce-shipping-methods,
.ib-summary-totals-table ul#shipping_method,
.ib-summary-totals-table .woocommerce-shipping-destination,
.ib-summary-totals-table .shipping-calculator-button,
.ib-summary-totals-table .woocommerce-shipping-calculator {
	display: none !important;
}

/* Crisp Input Box Borders matching Screenshot 1 */
.ib-checkout-form input[type="text"],
.ib-checkout-form input[type="email"],
.ib-checkout-form input[type="tel"],
.ib-checkout-form input[type="password"],
.ib-checkout-form select,
.ib-checkout-form textarea {
	border: 1px solid #333333 !important;
	border-radius: 4px !important;
	color: #1a1a1a !important;
	font-weight: 500 !important;
	font-size: 13px !important;
}

/* ==========================================================================
   Exact Payment Options Card Group & Inline Radio Styling
   ========================================================================== */

.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-checkout ul.wc_payment_methods {
	display: flex !important;
	flex-direction: column !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 4px !important;
	overflow: hidden !important;
	background: #ffffff !important;
	gap: 0px !important;
}

.woocommerce-checkout #payment ul.payment_methods li,
.woocommerce-checkout ul.wc_payment_methods li {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 8px 10px !important;
	margin: 0 !important;
	padding: 14px 18px !important;
	border: none !important;
	border-bottom: 1px solid #e0e0e0 !important;
	background: #ffffff !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
	position: relative !important;
	box-sizing: border-box !important;
}

.woocommerce-checkout #payment ul.payment_methods li:last-child,
.woocommerce-checkout ul.wc_payment_methods li:last-child {
	border-bottom: none !important;
}

/* Selected Payment Card Dark Grey Outline Highlight */
.woocommerce-checkout #payment ul.payment_methods li.payment_method_selected,
.woocommerce-checkout ul.wc_payment_methods li.payment_method_selected,
.woocommerce-checkout #payment ul.payment_methods li:has(input[type="radio"]:checked),
.woocommerce-checkout ul.wc_payment_methods li:has(input[type="radio"]:checked) {
	border: 1px solid #333333 !important;
	border-radius: 4px !important;
	margin: 0px !important;
	z-index: 2 !important;
	box-shadow: 0 0 0 1px #333333 !important;
}

/* Radio Button + Label INLINE Alignment on SAME Row */
.woocommerce-checkout #payment ul.payment_methods li input[type="radio"],
.woocommerce-checkout ul.wc_payment_methods li input[type="radio"] {
	accent-color: #f55f1e !important;
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
	padding: 0 !important;
	flex-shrink: 0 !important;
	cursor: pointer !important;
	float: none !important;
	display: inline-block !important;
	vertical-align: middle !important;
}

.woocommerce-checkout #payment ul.payment_methods li label,
.woocommerce-checkout ul.wc_payment_methods li label {
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #1a1a1a !important;
	cursor: pointer !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.2 !important;
	width: auto !important;
	flex: 1 1 auto !important;
	float: none !important;
}

/* Hide payment description when UNSELECTED */
.woocommerce-checkout #payment ul.payment_methods li div.payment_box,
.woocommerce-checkout ul.wc_payment_methods li div.payment_box {
	display: none !important;
}

/* Show payment description ONLY when SELECTED */
.woocommerce-checkout #payment ul.payment_methods li.payment_method_selected div.payment_box,
.woocommerce-checkout ul.wc_payment_methods li.payment_method_selected div.payment_box,
.woocommerce-checkout #payment ul.payment_methods li:has(input[type="radio"]:checked) div.payment_box,
.woocommerce-checkout ul.wc_payment_methods li:has(input[type="radio"]:checked) div.payment_box {
	display: block !important;
	width: 100% !important;
	flex: 0 0 100% !important;
	background: none !important;
	padding: 8px 0 0 28px !important;
	margin: 0 !important;
	font-size: 13px !important;
	color: #666666 !important;
	line-height: 1.5 !important;
	box-sizing: border-box !important;
}

.woocommerce-checkout #payment ul.payment_methods li div.payment_box p,
.woocommerce-checkout ul.wc_payment_methods li div.payment_box p {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 13px !important;
	color: #666666 !important;
}

.woocommerce-checkout #payment ul.payment_methods li div.payment_box::before,
.woocommerce-checkout ul.wc_payment_methods li div.payment_box::before {
	display: none !important;
}

/* Decrease Checkout Page Title Font Size */
.woocommerce-checkout h1.entry-title,
.woocommerce-checkout .entry-header h1,
.ib-checkout-main-title {
	font-size: 20px !important;
	font-weight: 600 !important;
	color: #333333 !important;
	margin-top: 15px !important;
	margin-bottom: 30px !important;
	letter-spacing: -0.01em !important;
}

/* Notice Close Button Styling */
.ib-notice-close-btn {
	background: none !important;
	border: none !important;
	font-size: 22px !important;
	font-weight: 700 !important;
	color: #888888 !important;
	cursor: pointer !important;
	line-height: 1 !important;
	padding: 0 4px !important;
	margin-left: 12px !important;
	order: 3 !important;
	transition: color 0.2s ease !important;
}

.ib-notice-close-btn:hover {
	color: #1a1a1a !important;
}

/* Hide added to cart message bar on checkout page */
.woocommerce-checkout .woocommerce-message {
	display: none !important;
}

/* ==========================================================================
   Target Cart Page Layout (.ib-custom-cart-wrapper)
   ========================================================================== */

.ib-custom-cart-wrapper,
.ib-custom-cart-wrapper * {
	box-sizing: border-box !important;
	float: none !important;
}

.ib-custom-cart-wrapper {
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 0 0 60px !important;
	width: 100% !important;
}

.ib-custom-cart-grid {
	display: flex !important;
	flex-direction: row !important;
	gap: 40px !important;
	align-items: flex-start !important;
	width: 100% !important;
}

.ib-custom-cart-left {
	flex: 1 1 0% !important;
	min-width: 0 !important;
	width: auto !important;
}

.ib-custom-cart-right {
	width: 360px !important;
	flex: 0 0 360px !important;
}

@media (max-width: 991px) {
	.ib-custom-cart-grid {
		flex-direction: column !important;
		gap: 30px !important;
	}

	.ib-custom-cart-right {
		width: 100% !important;
		flex: 1 1 100% !important;
	}
}

/* Header Row */
.ib-custom-cart-header {
	display: flex !important;
	justify-content: space-between !important;
	padding-bottom: 12px !important;
	border-bottom: 1px solid #e0e0e0 !important;
	margin-bottom: 8px !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	color: #888888 !important;
	letter-spacing: 0.5px !important;
}

/* Items List */
.ib-custom-cart-row {
	display: flex !important;
	justify-content: space-between !important;
	align-items: flex-start !important;
	padding: 24px 0 !important;
	border-bottom: 1px solid #eeeeee !important;
	width: 100% !important;
}

.ib-custom-prod-info {
	display: flex !important;
	flex-direction: row !important;
	gap: 20px !important;
	align-items: flex-start !important;
	flex: 1 1 auto !important;
}

/* Thumb Box */
.ib-custom-thumb-wrap {
	position: relative !important;
	width: 64px !important;
	height: 64px !important;
	flex: 0 0 64px !important;
	margin: 0 !important;
}

.ib-custom-thumb-wrap img {
	width: 64px !important;
	height: 64px !important;
	object-fit: cover !important;
	border-radius: 4px !important;
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
}

.ib-custom-badge {
	position: absolute !important;
	top: -6px !important;
	right: -6px !important;
	background: #f55f1e !important;
	color: #ffffff !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	width: 18px !important;
	height: 18px !important;
	border-radius: 50% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	line-height: 1 !important;
	z-index: 5 !important;
}

/* Details Box */
.ib-custom-details-wrap {
	display: flex !important;
	flex-direction: column !important;
	gap: 4px !important;
	flex: 1 1 auto !important;
}

.ib-custom-prod-title {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #1a1a1a !important;
	margin: 0 !important;
	line-height: 1.3 !important;
}

.ib-custom-prod-title a {
	color: #1a1a1a !important;
	text-decoration: none !important;
}

.ib-custom-prod-price {
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #f55f1e !important;
}

.ib-custom-prod-desc {
	font-size: 12px !important;
	color: #777777 !important;
	line-height: 1.4 !important;
	margin-bottom: 6px !important;
	max-width: 460px !important;
}

/* Actions Bar (Qty + Delete) */
.ib-custom-actions-bar {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	gap: 16px !important;
	margin-top: 6px !important;
}

.ib-custom-qty-box {
	display: inline-flex !important;
	flex-direction: row !important;
	align-items: center !important;
	border: 1px solid #d0d0d0 !important;
	border-radius: 4px !important;
	overflow: hidden !important;
	background: #ffffff !important;
	height: 30px !important;
}

.ib-qty-dec,
.ib-qty-inc {
	background: #f8f8f8 !important;
	border: none !important;
	width: 30px !important;
	height: 30px !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #444444 !important;
	cursor: pointer !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 !important;
	margin: 0 !important;
}

.ib-qty-dec:hover,
.ib-qty-inc:hover {
	background: #eeeeee !important;
}

.ib-qty-num {
	width: 36px !important;
	height: 30px !important;
	border: none !important;
	border-left: 1px solid #eee !important;
	border-right: 1px solid #eee !important;
	text-align: center !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	padding: 0 !important;
	margin: 0 !important;
	background: #ffffff !important;
	color: #1a1a1a !important;
	box-shadow: none !important;
}

.ib-custom-remove-btn {
	color: #666666 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-decoration: none !important;
}

.ib-custom-remove-btn:hover {
	color: #e53935 !important;
}

/* Total Val */
.ib-custom-total-val {
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #f55f1e !important;
	text-align: right !important;
	white-space: nowrap !important;
}

/* Sidebar Totals Card */
.ib-custom-totals-card {
	border: 1px solid #e0e0e0 !important;
	border-radius: 4px !important;
	padding: 24px !important;
	background: #ffffff !important;
}

.ib-totals-card-title {
	font-size: 12px !important;
	font-weight: 700 !important;
	color: #666666 !important;
	margin-bottom: 20px !important;
	letter-spacing: 0.5px !important;
	text-transform: uppercase !important;
}

.ib-custom-coupon-toggle {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	width: 100% !important;
	background: none !important;
	border: none !important;
	padding: 10px 0 !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: #333333 !important;
	cursor: pointer !important;
	border-bottom: 1px solid #eee !important;
}

.ib-custom-coupon-form {
	display: flex !important;
	gap: 10px !important;
	margin: 12px 0 !important;
}

.ib-custom-coupon-input {
	flex: 1 !important;
	height: 40px !important;
	padding: 0 12px !important;
	border: 1px solid #d0d0d0 !important;
	font-size: 13px !important;
	outline: none !important;
}

.ib-custom-coupon-apply {
	background: #f55f1e !important;
	color: #ffffff !important;
	border: none !important;
	padding: 0 20px !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	cursor: pointer !important;
}

.ib-custom-totals-rows {
	margin-top: 10px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 14px !important;
}

.ib-custom-totals-rows>div {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	font-size: 13px !important;
	color: #666666 !important;
}

.ib-orange-price {
	color: #f55f1e !important;
	font-weight: 600 !important;
}

.ib-row-grandtotal {
	margin-top: 10px !important;
	padding-top: 14px !important;
	border-top: 1px solid #eeeeee !important;
}

.ib-grand-lbl {
	font-size: 15px !important;
	font-weight: 600 !important;
	color: #333333 !important;
}

.ib-grand-val {
	font-size: 18px !important;
	font-weight: 700 !important;
	color: #f55f1e !important;
}

.ib-custom-checkout-btn {
	width: 100% !important;
	display: block !important;
	text-align: center !important;
	background: #f55f1e !important;
	color: #ffffff !important;
	border-radius: 0px !important;
	padding: 14px 10px !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	letter-spacing: 0.5px !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	margin-top: 20px !important;
	box-shadow: 0 4px 12px rgba(245, 95, 30, 0.25) !important;
	box-sizing: border-box !important;
}

/* ==========================================================================
   Off-Canvas Mini Cart Drawer Styling
   ========================================================================== */

body.ib-mini-cart-open {
	overflow: hidden !important;
}

.ib-mini-cart-drawer {
	position: fixed !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	z-index: 99999 !important;
	pointer-events: none !important;
}

.ib-mini-cart-drawer.is-open {
	pointer-events: auto !important;
}

/* Dark Backdrop Overlay */
.ib-mini-cart-overlay {
	position: fixed !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	background: rgba(0, 0, 0, 0.5) !important;
	opacity: 0 !important;
	visibility: hidden !important;
	transition: opacity 0.3s ease, visibility 0.3s ease !important;
	z-index: 99998 !important;
}

.ib-mini-cart-drawer.is-open .ib-mini-cart-overlay {
	opacity: 1 !important;
	visibility: visible !important;
}

/* Drawer Sliding Panel */
.ib-mini-cart-content {
	position: fixed !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	width: 400px !important;
	max-width: 90vw !important;
	background: #ffffff !important;
	box-shadow: -4px 0 20px rgba(0, 0, 0, 0.15) !important;
	transform: translateX(100%) !important;
	transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
	z-index: 99999 !important;
	display: flex !important;
	flex-direction: column !important;
}

.ib-mini-cart-drawer.is-open .ib-mini-cart-content {
	transform: translateX(0) !important;
}

/* Header */
.ib-mini-cart-header {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	padding: 20px 24px !important;
	border-bottom: 1px solid #eeeeee !important;
	background: #ffffff !important;
}

.ib-mini-cart-title {
	font-size: 16px !important;
	font-weight: 700 !important;
	color: #1a1a1a !important;
	margin: 0 !important;
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
}

.ib-cart-count-badge {
	background: #f55f1e !important;
	color: #ffffff !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	padding: 2px 8px !important;
	border-radius: 12px !important;
}

.ib-mini-cart-close {
	background: none !important;
	border: none !important;
	font-size: 26px !important;
	font-weight: 400 !important;
	color: #666666 !important;
	cursor: pointer !important;
	line-height: 1 !important;
	padding: 0 !important;
	transition: color 0.2s ease !important;
}

.ib-mini-cart-close:hover {
	color: #f55f1e !important;
}

/* Body Content */
.ib-mini-cart-body {
	flex: 1 1 auto !important;
	overflow-y: auto !important;
	padding: 24px !important;
}

.ib-mini-cart-body .widget_shopping_cart_content {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
}

/* Item List */
.ib-mini-cart-body ul.cart_list,
.ib-mini-cart-body ul.mini_cart_item_list {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.ib-mini-cart-body ul.cart_list li {
	display: flex !important;
	align-items: center !important;
	gap: 14px !important;
	padding: 14px 0 !important;
	border-bottom: 1px solid #f0f0f0 !important;
	position: relative !important;
}

.ib-mini-cart-body ul.cart_list li img {
	width: 54px !important;
	height: 54px !important;
	object-fit: cover !important;
	border-radius: 4px !important;
	float: none !important;
	margin: 0 !important;
}

.ib-mini-cart-body ul.cart_list li a:not(.remove) {
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #1a1a1a !important;
	text-decoration: none !important;
	line-height: 1.3 !important;
	display: block !important;
	margin-bottom: 4px !important;
}

.ib-mini-cart-body ul.cart_list li .quantity {
	font-size: 13px !important;
	color: #f55f1e !important;
	font-weight: 700 !important;
}

.ib-mini-cart-body ul.cart_list li a.remove {
	position: absolute !important;
	right: 0 !important;
	top: 14px !important;
	color: #999999 !important;
	font-size: 18px !important;
	line-height: 1 !important;
	text-decoration: none !important;
	transition: color 0.2s ease !important;
}

.ib-mini-cart-body ul.cart_list li a.remove:hover {
	color: #e53935 !important;
}

/* Subtotal & Action Buttons at Bottom */
.ib-mini-cart-body p.total,
.ib-mini-cart-body .woocommerce-mini-cart__total {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	margin-top: auto !important;
	padding-top: 20px !important;
	border-top: 1px solid #eeeeee !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #1a1a1a !important;
}

.ib-mini-cart-body p.total .amount,
.ib-mini-cart-body .woocommerce-mini-cart__total .amount {
	color: #f55f1e !important;
	font-weight: 700 !important;
}

.ib-mini-cart-body p.buttons,
.ib-mini-cart-body .woocommerce-mini-cart__buttons {
	display: flex !important;
	gap: 10px !important;
	margin-top: 16px !important;
}

.ib-mini-cart-body p.buttons a,
.ib-mini-cart-body .woocommerce-mini-cart__buttons a {
	flex: 1 !important;
	text-align: center !important;
	padding: 12px 10px !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	border-radius: 0px !important;
	transition: all 0.2s ease !important;
}

.ib-mini-cart-body p.buttons a.wc-forward:not(.checkout),
.ib-mini-cart-body .woocommerce-mini-cart__buttons a.wc-forward:not(.checkout) {
	background: #f0f0f0 !important;
	color: #333333 !important;
	border: 1px solid #d0d0d0 !important;
}

.ib-mini-cart-body p.buttons a.wc-forward:not(.checkout):hover {
	background: #e0e0e0 !important;
}

.ib-mini-cart-body p.buttons a.checkout,
.ib-mini-cart-body .woocommerce-mini-cart__buttons a.checkout {
	background: #f55f1e !important;
	color: #ffffff !important;
	border: none !important;
}

.ib-mini-cart-body p.buttons a.checkout:hover {
	background: #e04818 !important;
}

/* ==========================================================================
   Exact Mini Cart Product Display Item Styling Matching Target Screenshot
   ========================================================================== */

.ib-mini-cart-body ul.cart_list li.ib-mini-cart-item {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	gap: 14px !important;
	padding: 16px 0 !important;
	border-bottom: 1px solid #eeeeee !important;
	position: relative !important;
	width: 100% !important;
}

/* Left: Thumbnail */
.ib-mini-thumb {
	width: 56px !important;
	height: 56px !important;
	flex: 0 0 56px !important;
}

.ib-mini-thumb img {
	width: 56px !important;
	height: 56px !important;
	object-fit: cover !important;
	border-radius: 4px !important;
	display: block !important;
}

/* Middle: Details */
.ib-mini-details {
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
	flex: 1 1 auto !important;
	min-width: 0 !important;
}

.ib-mini-title {
	font-size: 13px !important;
	font-weight: 500 !important;
	color: #1a1a1a !important;
	line-height: 1.3 !important;
}

.ib-mini-title a {
	color: #1a1a1a !important;
	text-decoration: none !important;
}

/* Bottom Row: Qty Box + Price Inline */
.ib-mini-bottom-row {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
}

.ib-mini-qty-box {
	display: inline-flex !important;
	align-items: center !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 4px !important;
	background: #ffffff !important;
	height: 28px !important;
	overflow: hidden !important;
}

.ib-mini-qty-dec,
.ib-mini-qty-inc {
	background: #f9f9f9 !important;
	border: none !important;
	width: 24px !important;
	height: 28px !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #333333 !important;
	cursor: pointer !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 !important;
	margin: 0 !important;
}

.ib-mini-qty-dec:hover,
.ib-mini-qty-inc:hover {
	background: #eeeeee !important;
}

.ib-mini-qty-input {
	width: 28px !important;
	height: 28px !important;
	border: none !important;
	text-align: center !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	padding: 0 !important;
	margin: 0 !important;
	background: #ffffff !important;
	color: #1a1a1a !important;
	box-shadow: none !important;
	-moz-appearance: textfield !important;
}

.ib-mini-qty-input::-webkit-outer-spin-button,
.ib-mini-qty-input::-webkit-inner-spin-button {
	-webkit-appearance: none !important;
	margin: 0 !important;
}

.ib-mini-price {
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #f55f1e !important;
	white-space: nowrap !important;
}

.ib-mini-price .amount {
	color: #f55f1e !important;
	font-weight: 700 !important;
}

/* Right: Trash Button */
.ib-mini-remove {
	flex: 0 0 auto !important;
	margin-left: auto !important;
}

.ib-mini-trash-btn {
	color: #999999 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-decoration: none !important;
	transition: color 0.2s ease !important;
	background: none !important;
	border: none !important;
}

.ib-mini-trash-btn:hover {
	color: #e53935 !important;
}

/* ==========================================================================
   InstantBullion Custom 404 Page Styling
   ========================================================================== */

.ib-404-container {
	width: 100% !important;
	padding: 60px 20px 90px !important;
	background: #fbfbfd !important;
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	box-sizing: border-box !important;
}

.ib-404-wrapper {
	max-width: 840px !important;
	width: 100% !important;
	text-align: center !important;
	margin: 0 auto !important;
}

/* Badge */
.ib-404-badge {
	display: inline-block !important;
	margin-bottom: 16px !important;
}

.ib-404-badge span {
	background: #fff4ef !important;
	color: #f55f1e !important;
	border: 1px solid #ffd8c8 !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	letter-spacing: 1px !important;
	text-transform: uppercase !important;
	padding: 6px 18px !important;
	border-radius: 20px !important;
}

/* Giant 404 Num */
.ib-404-glitch-num {
	font-size: 110px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	margin: 0 0 10px !important;
	background: #f55f1e !important;
	-webkit-background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
	letter-spacing: -3px !important;
}

/* Titles */
.ib-404-title {
	font-size: 32px !important;
	font-weight: 800 !important;
	color: #1a1a1a !important;
	margin: 0 0 12px !important;
	letter-spacing: -0.5px !important;
}

.ib-404-subtitle {
	font-size: 15px !important;
	color: #666666 !important;
	line-height: 1.6 !important;
	max-width: 580px !important;
	margin: 0 auto 36px !important;
}

/* Search Box */
.ib-404-search-box {
	max-width: 540px !important;
	margin: 0 auto 50px !important;
}

.ib-404-input-group {
	display: flex !important;
	align-items: center !important;
	background: #ffffff !important;
	border: 2px solid #e2e8f0 !important;
	border-radius: 8px !important;
	padding: 4px 4px 4px 16px !important;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.04) !important;
	transition: border-color 0.2s ease !important;
}

.ib-404-input-group:focus-within {
	border-color: #f55f1e !important;
}

.ib-search-icon {
	flex-shrink: 0 !important;
	margin-right: 10px !important;
}

.ib-404-input {
	flex: 1 !important;
	border: none !important;
	outline: none !important;
	font-size: 14px !important;
	color: #1a1a1a !important;
	background: transparent !important;
	padding: 10px 0 !important;
	box-shadow: none !important;
}

.ib-404-search-btn {
	background: #f55f1e !important;
	color: #ffffff !important;
	border: none !important;
	padding: 12px 24px !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: 0.5px !important;
	border-radius: 6px !important;
	cursor: pointer !important;
	transition: background 0.2s ease !important;
}

.ib-404-search-btn:hover {
	background: #e04818 !important;
}

/* Grid Cards */
.ib-404-grid {
	display: flex !important;
	gap: 24px !important;
	margin-bottom: 40px !important;
}

.ib-404-card {
	flex: 1 !important;
	background: #ffffff !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 10px !important;
	padding: 30px 24px !important;
	text-align: left !important;
	display: flex !important;
	flex-direction: column !important;
	transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}

.ib-404-card:hover {
	transform: translateY(-4px) !important;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08) !important;
	border-color: #ffd8c8 !important;
}

.ib-404-card-icon {
	width: 52px !important;
	height: 52px !important;
	background: #fff4ef !important;
	border-radius: 8px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-bottom: 16px !important;
}

.ib-404-card h3 {
	font-size: 18px !important;
	font-weight: 700 !important;
	color: #1a1a1a !important;
	margin: 0 0 8px !important;
}

.ib-404-card p {
	font-size: 13px !important;
	color: #666666 !important;
	line-height: 1.5 !important;
	margin: 0 0 20px !important;
	flex: 1 !important;
}

.ib-404-btn {
	display: inline-block !important;
	text-align: center !important;
	padding: 13px 20px !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	letter-spacing: 0.5px !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	border-radius: 4px !important;
	transition: all 0.2s ease !important;
}

.ib-404-btn-primary {
	background: #f55f1e !important;
	color: #ffffff !important;
	border: none !important;
	box-shadow: 0 4px 12px rgba(245, 95, 30, 0.25) !important;
}

.ib-404-btn-primary:hover {
	background: #e04818 !important;
}

.ib-404-btn-secondary {
	background: #1a1a1a !important;
	color: #ffffff !important;
	border: none !important;
}

.ib-404-btn-secondary:hover {
	background: #f55f1e !important;
}

/* Quick Pills */
.ib-404-quick-links {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 14px !important;
	flex-wrap: wrap !important;
	margin-top: 10px !important;
}

.ib-quick-title {
	font-size: 13px !important;
	font-weight: 700 !important;
	color: #888888 !important;
}

.ib-quick-pills {
	display: flex !important;
	gap: 10px !important;
	flex-wrap: wrap !important;
}

.ib-pill {
	background: #ffffff !important;
	border: 1px solid #d0d0d0 !important;
	color: #444444 !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	padding: 6px 14px !important;
	border-radius: 20px !important;
	text-decoration: none !important;
	transition: all 0.2s ease !important;
}

.ib-pill:hover {
	border-color: #f55f1e !important;
	color: #f55f1e !important;
	background: #fff4ef !important;
}

@media (max-width: 768px) {
	.ib-404-grid {
		flex-direction: column !important;
	}

	.ib-404-glitch-num {
		font-size: 80px !important;
	}

}

@media (max-width: 520px) {

	.woocommerce table.shop_attributes tr td,
	.woocommerce table.shop_attributes tr th,
	.woocommerce-page table.shop_attributes tr td,
	.woocommerce-page table.shop_attributes tr th {
		display: block !important;
		max-width: 100% !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	.woocommerce table.shop_attributes tr th,
	.woocommerce-page table.shop_attributes tr th {
		border-right: none !important;
		background-color: #f5f5f5 !important;
		font-weight: 700 !important;
		padding: 10px 14px !important;
	}

	.woocommerce table.shop_attributes tr td,
	.woocommerce-page table.shop_attributes tr td {
		padding: 10px 14px !important;
		border-bottom: 1px solid #e5e5e5 !important;
	}
}

/* ==========================================================================
   InstantBullion Custom My Account & Auth Page Styling
   ========================================================================== */

/* Outer Auth Container (Login / Register) */
.ib-account-auth-container {
	max-width: 960px !important;
	/* margin: 40px auto 0px !important; */
	padding: 0 20px !important;
	box-sizing: border-box !important;
}

.ib-auth-grid {
	display: flex !important;
	gap: 40px !important;
	align-items: stretch !important;
}

.ib-auth-col {
	flex: 1 1 0% !important;
	min-width: 0 !important;
}

/* Single login centering when registration disabled */
.ib-account-auth-container>.ib-auth-card,
.ib-account-auth-container>form.login {
	max-width: 460px !important;
	margin: 0 auto !important;
}

.ib-auth-card {
	background: #ffffff !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 8px !important;
	padding: 36px 32px !important;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.04) !important;
	height: 100% !important;
	box-sizing: border-box !important;
}

/* Header */
.ib-auth-header {
	margin-bottom: 28px !important;
	text-align: left !important;
}

.ib-auth-badge {
	display: inline-block !important;
	background: #fff4ef !important;
	color: #f55f1e !important;
	border: 1px solid #ffd8c8 !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	letter-spacing: 0.8px !important;
	text-transform: uppercase !important;
	padding: 4px 12px !important;
	border-radius: 12px !important;
	margin-bottom: 12px !important;
}

.ib-badge-reg {
	background: #fff4ef !important;
	color: #f55f1e !important;
	border-color: #ffd8c8 !important;
}

/* Reset WooCommerce default inner border boxes on register form */
.ib-auth-card form,
.ib-auth-card form.register,
.ib-auth-card .woocommerce-form-register,
.woocommerce form.register {
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

.ib-btn-reg {
	background: #f55f1e !important;
	box-shadow: 0 4px 12px rgba(245, 95, 30, 0.25) !important;
}

.ib-btn-reg:hover {
	background: #e04818 !important;
}

.ib-auth-notice {
	font-size: 12px !important;
	color: #777777 !important;
	margin: 8px 0 16px !important;
	line-height: 1.4 !important;
}

.woocommerce-privacy-policy-text {
	font-size: 12px !important;
	color: #777777 !important;
	line-height: 1.5 !important;
	margin: 16px 0 !important;
}

.woocommerce-privacy-policy-text a {
	color: #f55f1e !important;
	text-decoration: underline !important;
}


.ib-auth-title {
	font-size: 24px !important;
	font-weight: 800 !important;
	color: #1a1a1a !important;
	margin: 0 0 6px !important;
	letter-spacing: -0.3px !important;
}

.ib-auth-desc {
	font-size: 13px !important;
	color: #666666 !important;
	line-height: 1.5 !important;
	margin: 0 !important;
}

/* Form Controls */
.ib-form-group {
	margin-bottom: 20px !important;
}

.ib-form-group label {
	display: block !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #333333 !important;
	margin-bottom: 6px !important;
}

.ib-form-group label .required {
	color: #e53935 !important;
}

.ib-input {
	width: 100% !important;
	height: 46px !important;
	border: 1px solid #d0d0d0 !important;
	border-radius: 6px !important;
	padding: 0 16px !important;
	font-size: 14px !important;
	color: #1a1a1a !important;
	background: #ffffff !important;
	box-shadow: none !important;
	outline: none !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
	box-sizing: border-box !important;
}

.ib-input:focus {
	border-color: #f55f1e !important;
	box-shadow: 0 0 0 3px rgba(245, 95, 30, 0.12) !important;
}

/* Utility Row (Remember Me & Lost Password) */
.ib-form-utility-row {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	margin-bottom: 24px !important;
	font-size: 13px !important;
}

.ib-checkbox-label {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	color: #555555 !important;
	cursor: pointer !important;
	font-weight: 500 !important;
	margin: 0 !important;
}

.ib-checkbox-label input[type="checkbox"] {
	width: 16px !important;
	height: 16px !important;
	accent-color: #f55f1e !important;
	cursor: pointer !important;
}

.ib-lost-pass-link {
	color: #f55f1e !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	transition: color 0.2s ease !important;
}

.ib-lost-pass-link:hover {
	color: #e04818 !important;
	text-decoration: underline !important;
}

/* Buttons */
.ib-form-submit-wrap {
	margin-top: 10px !important;
}

.ib-auth-submit-btn {
	width: 100% !important;
	height: 48px !important;
	background: #f55f1e !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 4px !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	letter-spacing: 0.5px !important;
	text-transform: uppercase !important;
	cursor: pointer !important;
	box-shadow: 0 4px 12px rgba(245, 95, 30, 0.25) !important;
	transition: background 0.2s ease !important;
}

.ib-auth-submit-btn:hover {
	background: #e04818 !important;
}

.ib-btn-reg {
	background: #1a1a1a !important;
	box-shadow: none !important;
}

.ib-btn-reg:hover {
	background: #f55f1e !important;
}

.ib-auth-notice {
	font-size: 12px !important;
	color: #777777 !important;
	margin-bottom: 20px !important;
	line-height: 1.4 !important;
}

/* ==========================================================================
   Logged-In My Account Dashboard Layout
   ========================================================================== */

/* Hide default My account page heading when logged in */
body.woocommerce-account:not(.logged-out) h1.entry-title,
body.woocommerce-account:not(.logged-out) h1.page-title {
	display: none !important;
}

.ib-myaccount-grid {
	display: flex !important;
	gap: 50px !important;
	align-items: flex-start !important;
}

/* Sidebar */
.ib-myaccount-sidebar {
	width: 250px !important;
	flex: 0 0 250px !important;
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	box-shadow: none !important;
}

/* Navigation Links Stack */
.ib-account-nav ul,
.woocommerce-MyAccount-navigation ul {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 6px !important;
}

.ib-account-nav li,
.woocommerce-MyAccount-navigation li {
	margin: 0 !important;
}

.ib-account-nav a,
.woocommerce-MyAccount-navigation a {
	display: flex !important;
	align-items: center !important;
	gap: 14px !important;
	padding: 13px 20px !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: #555555 !important;
	background: #f4f4f4 !important;
	text-decoration: none !important;
	border: none !important;
	border-radius: 0px !important;
	transition: all 0.2s ease !important;
}

/* Suppress any theme pseudo-element icons to prevent duplicate icons */
.ib-account-nav a::before,
.ib-account-nav a::after,
.woocommerce-MyAccount-navigation a::before,
.woocommerce-MyAccount-navigation a::after {
	content: none !important;
	display: none !important;
}

.ib-account-nav a svg,
.woocommerce-MyAccount-navigation a svg {
	flex-shrink: 0 !important;
	stroke: currentColor !important;
}

.ib-account-nav a:hover,
.woocommerce-MyAccount-navigation a:hover {
	background: #eaeaea !important;
	color: #1a1a1a !important;
}

.ib-account-nav li.is-active a,
.woocommerce-MyAccount-navigation li.is-active a {
	background: #f55f1e !important;
	color: #ffffff !important;
	font-weight: 600 !important;
}

.ib-account-nav li.is-active a svg,
.woocommerce-MyAccount-navigation li.is-active a svg {
	stroke: #ffffff !important;
}

/* Main Content Panel */
.ib-myaccount-content {
	flex: 1 1 0% !important;
	min-width: 0 !important;
}

.ib-myaccount-main-card {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	box-shadow: none !important;
}

.woocommerce-MyAccount-content {
	font-size: 14px !important;
	color: #555555 !important;
	line-height: 1.7 !important;
}

.woocommerce-MyAccount-content p {
	margin-bottom: 20px !important;
}

.woocommerce-MyAccount-content a,
.woocommerce-MyAccount-content p a {
	color: #f55f1e !important;
	font-weight: 600 !important;
	text-decoration: none !important;
}

.woocommerce-MyAccount-content a:hover,
.woocommerce-MyAccount-content p a:hover {
	color: #e04818 !important;
	text-decoration: underline !important;
}



@media (max-width: 991px) {

	.ib-auth-grid,
	.ib-myaccount-grid {
		flex-direction: column !important;
		gap: 30px !important;
	}

	.ib-myaccount-sidebar {
		width: 100% !important;
		flex: 1 1 100% !important;
	}
}

/* ==========================================================================
   Notice Bar Alignment & Styling inside Auth Container
   ========================================================================== */

.ib-account-auth-container .woocommerce-NoticeGroup,
.ib-account-auth-container .woocommerce-error,
.ib-account-auth-container .woocommerce-message,
.ib-account-auth-container .woocommerce-info {
	/* max-width: 460px !important; */
	margin: 0 auto 28px !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

/* When 2-column grid is active (registration enabled) */
.ib-account-auth-container:has(.ib-auth-grid) .woocommerce-NoticeGroup,
.ib-account-auth-container:has(.ib-auth-grid) .woocommerce-error,
.ib-account-auth-container:has(.ib-auth-grid) .woocommerce-message,
.ib-account-auth-container:has(.ib-auth-grid) .woocommerce-info {
	max-width: 960px !important;
}


/* Error Notice Box Styling */
.woocommerce-error,
.woocommerce-message,
.woocommerce-info {
	display: flex !important;
	flex-direction: column !important;
	align-items: start !important;
	justify-content: space-between !important;
	background: #fff5f5 !important;
	border: 1px solid #ffcdd2 !important;
	border-left: 4px solid #e53935 !important;
	border-radius: 8px !important;
	padding: 14px 18px 14px 44px !important;
	color: #c62828 !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	line-height: 1.4 !important;
	position: relative !important;
	box-shadow: 0 4px 12px rgba(229, 57, 53, 0.08) !important;
}

.woocommerce-message,
.woocommerce-info {
	background: #fff4ef !important;
	border-color: #ffd8c8 !important;
	border-left-color: #f55f1e !important;
	color: #333333 !important;
	box-shadow: 0 4px 12px rgba(245, 95, 30, 0.08) !important;
}

.woocommerce-error::before {
	content: "!" !important;
	position: absolute !important;
	left: 16px !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	width: 18px !important;
	height: 18px !important;
	background: #e53935 !important;
	color: #ffffff !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	border-radius: 50% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	line-height: 1 !important;
}

.woocommerce-message::before,
.woocommerce-info::before {
	content: "i" !important;
	position: absolute !important;
	left: 16px !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	width: 18px !important;
	height: 18px !important;
	background: #f55f1e !important;
	color: #ffffff !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	border-radius: 50% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	line-height: 1 !important;
}

.woocommerce-error a,
.woocommerce-message a,
.woocommerce-info a {
	color: #f55f1e !important;
	font-weight: 700 !important;
	text-decoration: underline !important;
}

.woocommerce-error li,
.woocommerce-message li,
.woocommerce-info li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	flex: 1 1 auto !important;
	flex-wrap: wrap !important;
}

.ib-notice-close-btn {
	display: none !important;
}

/* Clean Reset for Auth Forms & Privacy Text */
.ib-auth-card form,
.ib-auth-card .woocommerce-form,
.ib-lost-pass-card form {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	box-shadow: none !important;
}

.ib-auth-card .woocommerce-privacy-policy-text {
	font-size: 12px !important;
	color: #777777 !important;
	line-height: 1.5 !important;
	margin: 16px 0 !important;
}

.ib-auth-card .woocommerce-privacy-policy-text a {
	color: #f55f1e !important;
	text-decoration: underline !important;
}

/* Lost Password Card Styling */
.ib-lost-pass-card {
	max-width: 480px !important;
	margin: 0 auto !important;
}

.ib-lost-pass-back-link {
	margin-top: 20px !important;
	text-align: center !important;
}

.ib-lost-pass-back-link a {
	color: #f55f1e !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
}

.ib-lost-pass-back-link a:hover {
	text-decoration: underline !important;
}

.woocommerce .ib-myaccount-content a {
	color: #f55f1e !important;
}

.ib-myaccount-container {
	width: 100%;
}

/* ==========================================================================
   View Order Page Premium Styling
   ========================================================================== */

.ib-view-order-wrap {
	display: flex !important;
	flex-direction: column !important;
	gap: 28px !important;
}

/* Header Banner Card */
.ib-order-header-card {
	background: #ffffff !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 10px !important;
	padding: 22px 28px !important;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.03) !important;
}

.ib-order-header-top {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	margin-bottom: 10px !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
}

.ib-order-id-badge {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
}

.ib-order-id-badge .ib-label {
	background: #fff4ef !important;
	color: #f55f1e !important;
	border: 1px solid #ffd8c8 !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	letter-spacing: 0.8px !important;
	padding: 3px 10px !important;
	border-radius: 12px !important;
	text-transform: uppercase !important;
}

.ib-order-id-badge .ib-num {
	font-size: 22px !important;
	font-weight: 800 !important;
	color: #1a1a1a !important;
}

/* Status Pill */
.ib-order-status-pill {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 0.5px !important;
	text-transform: uppercase !important;
	padding: 6px 14px !important;
	border-radius: 20px !important;
	background: #fff8e1 !important;
	color: #b78103 !important;
	border: 1px solid #ffe082 !important;
}

.ib-order-status-pill.status-completed {
	background: #e8f5e9 !important;
	color: #2e7d32 !important;
	border-color: #a5d6a7 !important;
}

.ib-order-status-pill.status-processing {
	background: #e3f2fd !important;
	color: #1565c0 !important;
	border-color: #90caf9 !important;
}

.ib-order-status-pill.status-cancelled,
.ib-order-status-pill.status-failed {
	background: #ffebee !important;
	color: #c62828 !important;
	border-color: #ef9a9a !important;
}

.ib-status-dot {
	width: 7px !important;
	height: 7px !important;
	border-radius: 50% !important;
	background: currentColor !important;
}

.ib-order-header-meta {
	font-size: 13px !important;
	color: #666666 !important;
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
}

.ib-order-header-meta .ib-meta-item {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
}

/* Order Details Table Overhaul */
.woocommerce-order-details {
	margin-top: 10px !important;
}

.woocommerce-order-details__title,
.woocommerce-Address-title.title h2,
.ib-myaccount-main-card form h2 {
	font-size: 22px !important;
	font-weight: 800 !important;
	color: #1a1a1a !important;
	margin-bottom: 18px !important;
	letter-spacing: -0.2px !important;
}

.woocommerce-Address-title.title h2 {
	margin-bottom: 0px !important;
	width: 100%;
}

.woocommerce-Address-title.title a {
	width: 100%;
	text-align: end;
}

.woocommerce-Address header.title a.edit:hover {
	text-decoration: none !important;
}

.woocommerce-table--order-details,
table.order_details {
	width: 100% !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	background: #ffffff !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 10px !important;
	overflow: hidden !important;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.02) !important;
	margin-bottom: 30px !important;
}

.woocommerce-table--order-details th,
table.order_details th {
	background: #f8fafc !important;
	color: #475569 !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
	padding: 14px 20px !important;
	border-bottom: 1px solid #e2e8f0 !important;
	text-align: left !important;
}

.woocommerce-table--order-details th.woocommerce-table__product-name,
table.order_details th.product-name {
	width: 70% !important;
}

.woocommerce-table--order-details td,
table.order_details td {
	padding: 16px 20px !important;
	font-size: 14px !important;
	color: #334155 !important;
	border-bottom: 1px solid #f1f5f9 !important;
	vertical-align: middle !important;
}

.woocommerce-table--order-details tbody tr:last-child td,
table.order_details tbody tr:last-child td {
	border-bottom: 1px solid #e2e8f0 !important;
}

.woocommerce-table--order-details td.woocommerce-table__product-name a,
table.order_details td.product-name a {
	color: #f55f1e !important;
	font-weight: 600 !important;
	text-decoration: none !important;
}

.woocommerce-table--order-details td.woocommerce-table__product-name a:hover,
table.order_details td.product-name a:hover {
	text-decoration: underline !important;
}

/* Footer Summary Rows (Subtotal, Shipping, Total, Payment Method) */
.woocommerce-table--order-details tfoot th,
table.order_details tfoot th {
	background: #ffffff !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: #64748b !important;
	padding: 12px 20px !important;
	border-bottom: 1px solid #f1f5f9 !important;
	text-align: left !important;
	text-transform: none !important;
	letter-spacing: normal !important;
}

.woocommerce-table--order-details tfoot td,
table.order_details tfoot td {
	background: #ffffff !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #1e293b !important;
	padding: 12px 20px !important;
	border-bottom: 1px solid #f1f5f9 !important;
}

.woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-table--order-details tfoot tr:last-child td,
table.order_details tfoot tr:last-child th,
table.order_details tfoot tr:last-child td {
	border-bottom: none !important;
}

/* Highlight Grand Total Row */
.woocommerce-table--order-details tfoot tr:nth-last-child(2) th,
table.order_details tfoot tr:nth-last-child(2) th {
	font-size: 15px !important;
	font-weight: 800 !important;
	color: #0f172a !important;
}

.woocommerce-table--order-details tfoot tr:nth-last-child(2) td,
table.order_details tfoot tr:nth-last-child(2) td {
	font-size: 18px !important;
	font-weight: 800 !important;
	color: #f55f1e !important;
}

/* Addresses Grid Cards */
.woocommerce-customer-details,
.woocommerce-columns--addresses {
	margin-top: 35px !important;
}

.woocommerce-columns--addresses {
	display: flex !important;
	gap: 24px !important;
	flex-wrap: wrap !important;
}

.woocommerce-column--billing-address,
.woocommerce-column--shipping-address,
.woocommerce-column--1,
.woocommerce-column--2 {
	flex: 1 1 300px !important;
	background: #ffffff !important;
	border: 1px solid #e2e8f0 !important;
	border-radius: 10px !important;
	padding: 24px !important;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.02) !important;
	box-sizing: border-box !important;
}

.woocommerce-column__title {
	font-size: 18px !important;
	font-weight: 800 !important;
	color: #1e293b !important;
	margin-bottom: 14px !important;
	letter-spacing: -0.2px !important;
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
}

address {
	font-style: normal !important;
	font-size: 13px !important;
	color: #475569 !important;
	line-height: 1.7 !important;
	margin: 0 !important;
}

address .woocommerce-customer-details--phone,
address .woocommerce-customer-details--email {
	display: flex !important;
	align-items: center !important;
	gap: 6px !important;
	margin-top: 6px !important;
	color: #1e293b !important;
	font-weight: 500 !important;
}

.ib-myaccount-main-card .woocommerce-info,
.woocommerce-message {
	flex-direction: row !important;
	align-items: center !important;
}

.ib-myaccount-main-card .woocommerce-info a.button.wc-forward {
	color: #ffffff !important;
}

.add-to-cart-checkout a.wc-block-cart__submit-button.contained,
.add-to-cart-coupon-section .wc-block-components-totals-coupon__form button,
.checkout-place-order-btn button,
.wc-block-components-order-summary-item__image .wc-block-components-order-summary-item__quantity {
	background-color: #f55f1e;
}

.add-to-cart-checkout a.wc-block-cart__submit-button.contained:focus,
.checkout-place-order-btn button:focus {
	box-shadow: unset;
	outline: unset;
}

.checkout-place-order-btn,
.cart-page-main-container .wc-block-components-sidebar-layout.wc-block-cart {
	margin-bottom: 0px;
}

.add-to-cart-checkout a.wc-block-cart__submit-button.contained:hover {
	color: #ffffff;
}

.add-to-cart-coupon-section .wc-block-components-totals-coupon__form #wc-block-components-totals-coupon__input-coupon {
	border-radius: 0px;
}

.add-to-cart-coupon-section .wc-block-components-totals-coupon__form #wc-block-components-totals-coupon__input-coupon:focus {
	box-shadow: unset;
}

.add-to-cart-coupon-section .wc-block-components-totals-coupon__form #wc-block-components-totals-coupon__input-coupon:focus-visible {
	outline: unset;
	outline-offset: 0px;
	box-shadow: unset;
}

.wp-block-woocommerce-cart-order-summary-block span.wc-block-formatted-money-amount,
.wc-block-cart-item__total span.wc-block-formatted-money-amount,
.wc-block-cart-item__product span.wc-block-formatted-money-amount,
body.woocommerce-checkout span.wc-block-formatted-money-amount {
	color: #f55f1e;
}

.wc-block-cart-item__product a.wc-block-components-product-name {
	color: #1a1a1a;
}

.wc-block-cart-item__product a.wc-block-components-product-name:hover {
	color: #f55f1e;
}

body.woocommerce-cart .entry-header .entry-title {
	font-size: 20px;
	font-weight: 600;
	color: #333333;
	margin-top: 15px;
	margin-bottom: 30px;
	letter-spacing: -0.01em;
}

body.woocommerce-checkout .wc-block-components-radio-control__option-checked input[type="radio"] {
	border: 1px solid #f55f1e;
}

body.woocommerce-checkout .wc-block-components-radio-control__option-checked input[type="radio"]::before {
	background: #f55f1e;
}

/* ==========================================================================
   InstantBullion Theme - Complete Cart Page Responsive Design
   ========================================================================== */

/* Cart Header & Container */
body.woocommerce-cart .entry-header .entry-title {
	font-size: var(--font-h3, 24px) !important;
	font-weight: 700 !important;
	color: var(--color-text-title, #0f172a) !important;
	margin-top: 10px !important;
	margin-bottom: 24px !important;
	letter-spacing: -0.01em !important;
}

/* Empty Cart Section Reset */
.wp-block-woocommerce-empty-cart-block,
.wc-block-cart__empty-cart,
.cart-empty {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	margin-bottom: 30px !important;
	text-align: center !important;
}

/* Empty Cart Message Header */
.wc-block-cart__empty-cart__title,
.wp-block-heading.with-empty-cart-icon {
	font-size: 20px !important;
	font-weight: 700 !important;
	color: var(--color-text-title, #0f172a) !important;
	margin: 20px 0 16px 0 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.02em !important;
}

/* Browse Store Button */
.wp-block-woocommerce-empty-cart-block p.has-text-align-center a,
.cart-empty a.button,
.wc-block-cart__empty-cart a {
	background-color: #F55F1E !important;
	color: #ffffff !important;
	padding: 12px 32px !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	border-radius: var(--radius-xs, 2px) !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-decoration: none !important;
	margin-top: 12px !important;
	transition: background-color var(--transition-fast, 150ms) !important;
}

.wp-block-woocommerce-empty-cart-block p.has-text-align-center a:hover,
.cart-empty a.button:hover,
.wc-block-cart__empty-cart a:hover {
	background-color: #d84b0e !important;
	color: #ffffff !important;
}

/* New In Store Heading */
.wp-block-woocommerce-cart .wp-block-heading,
.cart-page-main-container h2.wp-block-heading {
	font-size: 20px !important;
	font-weight: 700 !important;
	color: var(--color-text-title, #0f172a) !important;
	margin: 40px 0 24px 0 !important;
	border-bottom: 2px solid var(--color-border, #e2e8f0) !important;
	padding-bottom: 12px !important;
	text-transform: uppercase !important;
	letter-spacing: 0.03em !important;
	text-align: left !important;
	width: 100% !important;
	clear: both !important;
}

/* WooCommerce Block Product Grid ("New in store") */
.wc-block-grid__products {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 24px !important;
	list-style: none !important;
	padding: 0 !important;
	margin: 0 0 40px 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.wc-block-grid__product {
	flex: 0 0 calc(25% - 18px) !important;
	max-width: calc(25% - 18px) !important;
	width: calc(25% - 18px) !important;
	min-width: 0 !important;
	background: #ffffff !important;
	border: 1px solid #f2f2f2 !important;
	border-radius: var(--radius-xs, 2px) !important;
	padding: 16px !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: space-between !important;
	text-align: center !important;
	position: relative !important;
	transition: all var(--transition-fast, 150ms) !important;
	box-sizing: border-box !important;
	margin: 0 !important;
}

.wc-block-grid__product:hover {
	border-color: var(--color-border-hover, #cbd5e1) !important;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06) !important;
	transform: translateY(-2px) !important;
}

/* Product Onsale Badge */
.wc-block-grid__product-onsale {
	position: absolute !important;
	top: 12px !important;
	right: 12px !important;
	background-color: var(--color-danger, #F55F1E) !important;
	color: #ffffff !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	padding: 4px 8px !important;
	border-radius: var(--radius-xs, 2px) !important;
	z-index: 5 !important;
	line-height: 1 !important;
	margin: 0 !important;
}

/* Product Link & Image */
.wc-block-grid__product-link {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	width: 100% !important;
	text-decoration: none !important;
	color: inherit !important;
	margin-bottom: 12px !important;
}

.wc-block-grid__product-image {
	width: 100% !important;
	height: 180px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-bottom: 14px !important;
	overflow: hidden !important;
	border-radius: var(--radius-xs, 2px) !important;
	background: #ffffff !important;
	border: 1px solid #f2f2f2 !important;
	padding: 8px !important;
	box-sizing: border-box !important;
}

.wc-block-grid__product-image img {
	max-width: 100% !important;
	max-height: 100% !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	transition: transform var(--transition-fast, 150ms) !important;
}

.wc-block-grid__product:hover .wc-block-grid__product-image img {
	transform: scale(1.04) !important;
}

/* Product Title */
.wc-block-grid__product-title {
	font-size: 13.5px !important;
	font-weight: 500 !important;
	color: var(--color-text-title, #333333) !important;
	line-height: 1.45 !important;
	margin: 0 0 10px 0 !important;
	text-align: center !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	width: 100% !important;
	height: 40px !important;
	white-space: normal !important;
}

.wc-block-grid__product:hover .wc-block-grid__product-title {
	color: var(--color-danger, #F55F1E) !important;
}

/* Product Price */
.wc-block-grid__product-price,
.wc-block-grid__product-price.price {
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #E53935 !important;
	margin: 0 0 16px 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	flex-wrap: wrap !important;
	width: 100% !important;
}

.wc-block-grid__product-price del,
.wc-block-grid__product-price del .amount {
	color: var(--color-text-muted, #999999) !important;
	font-weight: 400 !important;
	font-size: 13px !important;
	text-decoration: line-through !important;
}

.wc-block-grid__product-price ins,
.wc-block-grid__product-price ins .amount {
	text-decoration: none !important;
	color: #E53935 !important;
	font-weight: 700 !important;
	font-size: 15px !important;
}

/* Add to Cart Button in Grid */
.wc-block-grid__product-add-to-cart {
	width: 100% !important;
	margin-top: auto !important;
}

.wc-block-grid__product-add-to-cart a.wp-block-button__link,
.wc-block-grid__product-add-to-cart a.add_to_cart_button {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 40px !important;
	background-color: #F55F1E !important;
	color: #ffffff !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	border-radius: 2px !important;
	text-decoration: none !important;
	border: none !important;
	transition: background-color 0.15s ease !important;
	box-sizing: border-box !important;
	white-space: nowrap !important;
	padding: 0 16px !important;
}

.wc-block-grid__product-add-to-cart a.wp-block-button__link:hover,
.wc-block-grid__product-add-to-cart a.add_to_cart_button:hover {
	background-color: #d84b0e !important;
	color: #ffffff !important;
}

/* ==========================================================================
   Custom Theme Full Cart Layout (ib-custom-cart-wrapper)
   ========================================================================== */
.ib-custom-cart-wrapper {
	width: 100% !important;
	margin-bottom: 40px !important;
}

.ib-custom-cart-grid {
	display: grid !important;
	grid-template-columns: 1fr 340px !important;
	gap: 30px !important;
	align-items: start !important;
}

/* Left Column: Cart Items */
.ib-custom-cart-header {
	background-color: #f8f8f8 !important;
	border: 1px solid #eeeeee !important;
	border-radius: 2px !important;
	padding: 12px 20px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	letter-spacing: 0.05em !important;
	color: #222222 !important;
	display: flex !important;
	justify-content: space-between !important;
	text-transform: uppercase !important;
	margin-bottom: -1px !important;
}

.ib-custom-cart-items {
	display: flex !important;
	flex-direction: column !important;
}

.ib-custom-cart-row {
	background-color: #ffffff !important;
	border: 1px solid #eeeeee !important;
	padding: 20px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 20px !important;
	margin-top: -1px !important;
}

.ib-custom-prod-info {
	display: flex !important;
	align-items: flex-start !important;
	gap: 16px !important;
	flex: 1 !important;
}

.ib-custom-thumb-wrap {
	position: relative !important;
	width: 70px !important;
	height: 70px !important;
	flex-shrink: 0 !important;
	border: 1px solid #eeeeee !important;
	border-radius: 2px !important;
	padding: 4px !important;
	background: #ffffff !important;
}

.ib-custom-thumb-wrap img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
}

.ib-custom-badge {
	position: absolute !important;
	top: -7px !important;
	left: -7px !important;
	background-color: #1a1a1a !important;
	color: #ffffff !important;
	width: 20px !important;
	height: 20px !important;
	border-radius: 50% !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.ib-custom-details-wrap {
	display: flex !important;
	flex-direction: column !important;
	gap: 4px !important;
}

.ib-custom-prod-title a {
	font-size: 15px !important;
	font-weight: 600 !important;
	color: #1a1a1a !important;
	text-decoration: none !important;
	transition: color 0.15s ease !important;
}

.ib-custom-prod-title a:hover {
	color: #F55F1E !important;
}

.ib-custom-prod-price {
	font-size: 14px !important;
	font-weight: 700 !important;
	color: #F55F1E !important;
}

.ib-custom-prod-desc {
	font-size: 12.5px !important;
	color: #666666 !important;
	line-height: 1.4 !important;
}

.ib-custom-actions-bar {
	display: flex !important;
	align-items: center !important;
	gap: 14px !important;
	margin-top: 8px !important;
}

.ib-custom-qty-box {
	display: inline-flex !important;
	align-items: center !important;
	border: 1px solid #dcdcdc !important;
	background: #ffffff !important;
	height: 36px !important;
	border-radius: 2px !important;
	overflow: hidden !important;
}

.ib-qty-dec,
.ib-qty-inc {
	width: 30px !important;
	height: 100% !important;
	background: transparent !important;
	border: none !important;
	font-size: 16px !important;
	color: #444444 !important;
	cursor: pointer !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: background-color 0.15s ease !important;
}

.ib-qty-dec:hover,
.ib-qty-inc:hover {
	background-color: #f0f0f0 !important;
}

.ib-qty-num {
	width: 44px !important;
	height: 100% !important;
	border: none !important;
	text-align: center !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #222222 !important;
	outline: none !important;
	appearance: textfield !important;
	-moz-appearance: textfield !important;
}

.ib-custom-remove-btn {
	color: #999999 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 4px !important;
	border-radius: 2px !important;
	transition: color 0.15s ease !important;
}

.ib-custom-remove-btn:hover {
	color: #e53e3e !important;
}

.ib-custom-total-val {
	font-size: 16px !important;
	font-weight: 700 !important;
	color: #1a1a1a !important;
	white-space: nowrap !important;
}

/* Right Column: Cart Totals Card */
.ib-custom-totals-card {
	background-color: #f8f8f8 !important;
	border: 1px solid #eeeeee !important;
	border-radius: 2px !important;
	padding: 20px !important;
}

.ib-totals-card-title {
	font-size: 14px !important;
	font-weight: 700 !important;
	letter-spacing: 0.05em !important;
	color: #1a1a1a !important;
	text-transform: uppercase !important;
	border-bottom: 1px solid #eeeeee !important;
	padding-bottom: 12px !important;
	margin-bottom: 16px !important;
}

.ib-custom-coupon-toggle {
	background: #ffffff !important;
	border: 1px solid #dcdcdc !important;
	border-radius: 2px !important;
	padding: 8px 12px !important;
	width: 100% !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: #333333 !important;
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
	cursor: pointer !important;
	margin-bottom: 16px !important;
}

.ib-custom-totals-rows {
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	border-bottom: 1px solid #eeeeee !important;
	padding-bottom: 16px !important;
	margin-bottom: 20px !important;
	font-size: 14px !important;
	color: #555555 !important;
}

.ib-row-subtotal,
.ib-row-coupon,
.ib-row-shipping,
.ib-row-grandtotal {
	display: flex !important;
	justify-content: space-between !important;
	align-items: center !important;
}

.ib-orange-price {
	font-weight: 700 !important;
	color: #F55F1E !important;
}

.ib-row-grandtotal {
	border-top: 1px solid #eeeeee !important;
	padding-top: 12px !important;
	margin-top: 4px !important;
}

.ib-grand-lbl {
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #1a1a1a !important;
}

.ib-grand-val {
	font-size: 18px !important;
	font-weight: 700 !important;
	color: #F55F1E !important;
}

.ib-custom-checkout-btn {
	width: 100% !important;
	height: 46px !important;
	background-color: #F55F1E !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	border-radius: 2px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-decoration: none !important;
	transition: background-color 0.15s ease !important;
	box-sizing: border-box !important;
}

.ib-custom-checkout-btn:hover {
	background-color: #d84b0e !important;
	color: #ffffff !important;
}

/* Responsive Breakpoints */
@media (max-width: 992px) {
	.ib-custom-cart-grid {
		grid-template-columns: 1fr !important;
	}

	li.wc-block-grid__product {
		flex: 0 0 calc(50% - 12px) !important;
		max-width: calc(50% - 12px) !important;
		width: calc(50% - 12px) !important;
	}
}

@media (max-width: 576px) {
	li.wc-block-grid__product {
		flex: 0 0 100% !important;
		max-width: 100% !important;
		width: 100% !important;
	}

	.ib-custom-cart-row {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 14px !important;
	}

	.ib-custom-total-val {
		align-self: flex-end !important;
	}

	.ib-custom-actions-bar {
		width: 100% !important;
		justify-content: space-between !important;
	}
}

.single-product-top-grid .single-product-gallery-col .onsale {
	position: absolute;
	top: var(--spacing-2xs);
	left: var(--spacing-2xs);
	z-index: 10;
	padding: 4px 8px;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	border-radius: var(--radius-xs);
	background-color: var(--color-danger);
	color: var(--color-background);
	line-height: 16px;
	min-height: auto;
	min-width: auto;
}

.woocommerce .variations_form.cart{
	flex-direction: column;
	gap: 0px;
}

.woocommerce div.product form.cart .reset_variations{
	color: #0f172a;
}

.woocommerce form.cart .variations select:focus,
.woocommerce form.cart .variations select:focus-visible{
	border-color: unset !important;
    box-shadow: unset !important;
	outline: none !important;
}

form.variations_form table.variations{
	margin-bottom: 0px;
}

.woocommerce div.product p.stock.out-of-stock{
	margin-bottom: 0px;
}

.variations #weight{
	max-width: 50%;
    min-width: 50%;
}

.qv-purchase-box .variations #weight{
	max-width: 75%;
    min-width: 75%;
}

.variations_form.cart .variations tr th.label{
	vertical-align: middle !important;
}

.variations_form.cart .variations th label{
	line-height: normal;
    margin-bottom: 0px;
}