/**
Theme Name: MapGear
Author: Forte Marketing
Author URI: https://fortemarketing.com.au/
Description: Custom child theme for MapGear
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mapgear
Template: astra
*/

[x-cloak] {
	display: none;
}

a, a:focus {
	outline : none;
}


::placeholder {
	color: var(--ast-form-field-color,#626262);
}

.sr-only {
	position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border-width: 0;
}

#breadcrumbs .breadcrumb_last {
	font-weight: 500;
}

.facetwp-facet {
	margin-bottom: 0 !important;
}

.page-id-974 .site-main a,
.page-id-951 .site-main a,
.page-id-23428 .site-main a,
.woocommerce-order-received p a{
	color: var(--ast-global-color-0) !important;
}
.page-id-974 .site-main a:where(:hover, :focus),
.page-id-951 .site-main a:where(:hover, :focus) {
	color: var(--e-global-color-primary) !important;
}

/* content area */
body.ast-page-builder-template.ast-no-sidebar:not(.home) div#primary,
.ast-plain-container.ast-no-sidebar #primary,
.ast-separate-container #primary{
	margin-top: 2em !important;
}

/* Product page */
.product-template-default .site-content .ast-container {
	padding-left: 30px;
	padding-right: 30px;
}



/* Cart */
i.astra-icon.ast-icon-shopping-cart {
	position: relative;
}
i.astra-icon.ast-icon-shopping-cart .ast-icon::after {
	content: '';
	position: absolute;
	inset: 0;
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 22px;
	background-color: white;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23656565' width='22' height='22' %3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M2.25 3h1.386c.51 0 .955.343 1.087.835l.383 1.437M7.5 14.25a3 3 0 0 0-3 3h15.75m-12.75-3h11.218c1.121-2.3 2.1-4.684 2.924-7.138a60.114 60.114 0 0 0-16.536-1.84M7.5 14.25 5.106 5.272M6 20.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0Zm12.75 0a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0Z' /%3E%3C/svg%3E%0A");
}
.ast-site-header-cart .ast-addon-cart-wrap i.astra-icon:after {
	display: flex; 
	align-items: center;
	justify-content: center;
	box-shadow: none !important;
	font-weight: 500 !important;
	padding-right: 1px;
}



.ast-site-header-cart .widget_shopping_cart, .woocommerce .ast-site-header-cart .widget_shopping_cart {
	width: 500px !important;
	border-radius: 8px;
}

@media (min-width: 768px) {
	.ast-site-header-cart .widget_shopping_cart .product_list_widget li,
	.woocommerce .ast-site-header-cart .widget_shopping_cart .product_list_widget li {
		padding: 1.2em 0 1.2em 5em;
	}
}

.ast-header-search:where(:hover, :focus) .ast-icon.icon-search svg,
.ast-header-account-wrap:where(:hover, :focus) .ast-header-account-type-icon .ahfb-svg-iconset svg path {
	fill: #e64529 !important;
	transition: all .1s ease-in !important;
} 

.astra-cart-drawer-close:focus {
		outline: none !important;
		box-shadow: none !important;
	}

/* cart icon form on mobile */
@media (max-width: 767px) {
	
	/* cart page width */
	body.woocommerce-cart.woocommerce-page .elementor-element-66889018,
	body.woocommerce-checkout.woocommerce-page .elementor-element-66889018{
		padding: 25px 10px !important;
	}
	
	.woocommerce-cart .elementor-column-gap-default > .elementor-column > .elementor-element-populated,
	.woocommerce-checkout .elementor-column-gap-default > .elementor-column > .elementor-element-populated {
		padding: 0 !important;
	}
	
	.woocommerce-checkout .woocommerce .ast-mobile-order-review-wrap {
		margin-left: 0;
		margin-right: 0;
	}
	
	.ast-site-header-cart .ast-addon-cart-wrap i.astra-icon:after {
/* 		display: none !important; */
	}
	.ast-header-woo-cart .ast-site-header-cart .ast-addon-cart-wrap {
		margin-top: 0px !important;
	}
	.ast-builder-layout-element.site-header-focus-item.ast-header-woo-cart {
		padding-right: 0 !important;
	}
	
	i.astra-icon.ast-icon-shopping-cart .ast-icon::after {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000000' width='22' height='22' %3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M2.25 3h1.386c.51 0 .955.343 1.087.835l.383 1.437M7.5 14.25a3 3 0 0 0-3 3h15.75m-12.75-3h11.218c1.121-2.3 2.1-4.684 2.924-7.138a60.114 60.114 0 0 0-16.536-1.84M7.5 14.25 5.106 5.272M6 20.25a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0Zm12.75 0a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0Z' /%3E%3C/svg%3E%0A");
	}
	
	#ast-mobile-site-navigation .menu-item button.ast-menu-toggle {
		background-color: white !important;
		box-shadow: none !important;
	}

	#ast-mobile-site-navigation .menu-item.current-menu-item button.ast-menu-toggle {
	background-color: whitesmoke !important;
}

	.ast-menu-toggle:focus {
		outline: none transparent;
	}

	[data-section="section-header-mobile-trigger"] .ast-button-wrap .ast-mobile-menu-trigger-minimal:focus {
		border-style: none !important;
	}

	
}


/* Cart */

/* Fix mobile/tablet cart icon clickability */
#ast-mobile-header .ast-site-header-cart-li a {
	pointer-events: auto !important;
}

.ast-site-header-cart .cart-container:focus-visible {
	display: inline !important;
}

.woocommerce-mini-cart__buttons.buttons {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between !important;
	align-items: center;
	gap: 11px;
	width: 100%;
}
.woocommerce-mini-cart__buttons.buttons a {
	flex: 1 1 calc(50% - 16px);
	text-align: center;
	padding: 10px;
}



/* cart buttons on mobile */
@media (max-width: 1024px) {
	.woocommerce-mini-cart__buttons.buttons a.button.checkout {
		margin-top: 0 !important;	
		margin-bottom: 5px !important;
	}

	.woocommerce-mini-cart__buttons.buttons a.button.wc-forward:not(.checkout) {
		background-color: transparent !important;
		border-style: solid !important;
		border-width: 1px !important;
		border-color: var(--ast-global-color-0) !important ;
		color: var(--ast-global-color-0) !important ;
	}

	
}
/* if cart empty, hide the continue shopping button */
.ast-mini-cart-empty .button.ast-continue-shopping {
	display: none !important;
}


/* Notice Success */
.woocommerce-notices-wrapper .woocommerce-message, .woocommerce-message {
	background-color: #63b75f33 !important;
	border-top: none !important;
	color: #050505 !important;
	border-radius: 8px;
    overflow: hidden;
	line-height: 36px;
}
/*  suppress the *focus-visible* ring  */
.woocommerce .woocommerce-message:focus-visible,
.woocommerce .woocommerce-info:focus-visible,
.woocommerce .woocommerce-error:focus-visible {
	outline: 0 !important;
	box-shadow: none !important;
}



.woocommerce-message::before, .woocommerce-info::before,
.woocommerce-notices-wrapper .woocommerce-message::before {
	color: #63B75F !important;
}
.woocommerce-notices-wrapper .woocommerce-message .button {
	padding: 10px 20px !important;
	background-color: #63B75F !important;
	border-radius: 8px !important;
	color: white !important;
}
/* Notice Success */

/* notice dashboard my account */
.woocommerce-Message.woocommerce-info {
	border-top: none !important;
	color: #050505 !important;
	border-radius: 8px;
	overflow: hidden;
	line-height: 36px;
}

.wpforms-error-container {
	background-color: #E6452933 !important;
	border-top: none !important;
	color: #050505 !important;
	border-radius: 8px !important;
    overflow: hidden;
	padding: 10px !important;
	margin: 10px 0 !important;
}

/* Notice Info */
.wc-empty-cart-message .woocommerce-info,
.woocommerce-form-coupon-toggle .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-order-pay .woocommerce > .woocommerce-info,
.woocommerce-MyAccount-content  .woocommerce-info{
	background-color: #11111133 !important;
	border-top: none !important;
	color: #050505 !important;
	border-radius: 8px;
    overflow: hidden;
}
.wc-empty-cart-message .woocommerce-info::before,
.woocommerce-form-coupon-toggle .woocommerce-info::before,
.woocommerce-notices-wrapper .woocommerce-info::before ,
.woocommerce-order-pay .woocommerce > .woocommerce-info::before,
.woocommerce-MyAccount-content  .woocommerce-info::before {
	color: #111111 !important;
}
.wc-empty-cart-message .woocommerce-info .button,
.woocommerce-form-coupon-toggle .woocommerce-info .button,
.woocommerce-notices-wrapper .woocommerce-info .button,
.woocommerce-order-pay .woocommerce > .woocommerce-info .button,
form.lost_reset_password .button,
.woocommerce-MyAccount-content  .woocommerce-info .button{
	padding: 10px 20px !important;
	background-color: #111111 !important;
	border-radius: 8px !important;
	color: white !important;
}
form.lost_reset_password .button {
	background-color: var(--ast-global-color-0)  !important;
}

.woocommerce-MyAccount-content .woocommerce-Message.woocommerce-info {
	background-color: #C7C7C7 !important
}
.woocommerce-page.woocommerce-downloads .woocommerce-info {
	line-height: 2.2rem;
	background-color: #C7C7C7 !important
}

.return-to-shop .button  {
	padding: 10px 20px !important;
	background-color: #111111 !important;
	border-radius: 8px !important;
	color: white !important;
}
.return-to-shop .button:where(:hover, :focus) {
	background-color: #e64529 !important;
}
/* Notice Info */

/* Notice Error */
.woocommerce-NoticeGroup  .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-error {
	background-color: #E6452933 !important;
	border-top: none !important;
	color: #050505 !important;
	border-radius: 8px;
    overflow: hidden;
}
.woocommerce-NoticeGroup  .woocommerce-error::before,
.woocommerce-notices-wrapper .woocommerce-error::before {
	color: #E64529 !important;
}
.woocommerce-NoticeGroup  .woocommerce-error .button,
.woocommerce-notices-wrapper .woocommerce-error .button {
	padding: 10px 20px !important;
	background-color: #E64529 !important;
	border-radius: 8px !important;
	color: white !important;
	margin-left: 20px;
}
/* Notice Error */

.woocommerce-error {
	font-size: 1rem !important;
}

/* Bundle Notice Error */
.bundle_wrap .bundle_error .woocommerce-info {
	background-color: #c7c7c7 !important;
	border-top: none !important;
	color: #050505 !important;
	border-radius: 8px;
    overflow: hidden;
	box-shadow: 0 1px 0 0 rgba(0,0,0,0.1) !important;
}
.bundle_wrap .bundle_error .woocommerce-info:before {
	color: black !important;
}
/* Bundle Notice Error */

/* Search Bar */

.ast-search--posttype-heading {
	display: none;
}

.ast-search-box.header-cover {
	background: #3d3c3c;
}
.ast-search-box.header-cover .search-field {
	font-size: 1.4em;
	padding-left: 10px;
}
.ast-search-box #search-field::placeholder {
	color: #9CA3AF;
	opacity: 1;
}

.ast-live-search-results {
	border-radius: 8px;
}
.ast-article-single .ast-stock-detail {
	display: none;
}
/* Search results */

@media (max-width: 544px) {
  body.search-results.ast-separate-container #content div.ast-container {
    padding-left: 20px;
    padding-right: 20px;
  }
}


.search-results .woocommerce-ordering {
	display: none !important;
}

/* Header Mega Menu */
.site-header {
	border-top: 10px solid #3d3c3c;
	border-bottom: 1px solid #d1d5db;
	background-color: white;
}
.desktop-navigation .main-header-menu {
	display: flex;
	flex-flow: row nowrap;
	column-gap: 1.8rem;
	list-style: none;
	padding: 0;
	margin: 0;
}

.desktop-navigation .main-header-menu > .menu-item {
	line-height: 50px;
	margin-top: 20px;
}

.desktop-navigation .menu-item-link {
	font-size: 1rem;
	font-weight: 400;
	color: #000000;
}
.desktop-navigation .menu-item.active .menu-item-link,
.desktop-navigation .menu-item-link:where(:hover, :active) {
	color: #E64529;
}

.desktop-navigation .menu-item-toggle-icon {
	vertical-align: middle;
}

.desktop-navigation .mg-mega-menu--container {
	background: #ffffff;
	box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
	margin-top: 3px;
/* 	border-top: 1px solid #3d3c3c !important; */
}

.desktop-navigation .mg-mega-menu--container .mg-mega-menu--wrap {
	width: 100%;
	max-width: 1200px; /* 1140px pre -width */
	margin: 2.5rem auto 2rem auto;
	display: flex;
	flex-flow: row nowrap;
	align-items: flex-start;
	column-gap: 1.5rem;
}

.desktop-navigation .mg-mega-menu--container .mg-mega-menu--wrap .mg-mega-menu--sections {
	display: flex;
	flex-flow: column nowrap;
	flex: 1 0 auto;
	min-width: 250px;
}

.desktop-navigation .mg-mega-menu--container .mg-mega-menu--wrap .mg-mega-menu--sections .mg-mega-menu--section-item {
	display: block;
	padding: 0.8rem 1rem;
	background: white;
	transition: background 0.3s ease;
	font-size: 1rem;
	font-weight: 400;
	color: inherit;
}
.desktop-navigation .mg-mega-menu--container .mg-mega-menu--wrap .mg-mega-menu--sections .mg-mega-menu--section-item[data-active] {
	background: #f5f5f5;
}

.desktop-navigation .mg-mega-menu--container .mg-mega-menu--wrap .mg-mega-menu--section-content {
	flex-grow: 4;
}

.desktop-navigation .mg-mega-menu--container .mg-mega-menu--wrap .mg-mega-menu--section-content  .mg-content .mg-content--heading {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	column-gap: 1.5rem;
	margin-bottom: 1rem;
}

.desktop-navigation .mg-mega-menu--container .mg-mega-menu--section-content .mg-content .mg-content--heading .mg-content--heading-title {
	font-size: 1.15rem;
	font-weight: 600;
}

.desktop-navigation .mg-mega-menu--container .mg-mega-menu--section-content .mg-content .mg-content--heading .mg-content--heading-link {
	font-size: 0.85rem;
	font-weight: 400;
	color: white;
	padding: 2px 12px;
	background-color: black;
	border-radius: 5px;
}

.desktop-navigation .mg-mega-menu--container .mg-mega-menu--section-content .mg-content .mg-content--items {
	display: flex;
	flex-flow: row wrap;
	gap: 10px;
}

.desktop-navigation .mg-mega-menu--container .mg-mega-menu--section-content .mg-content .mg-content--item {
	position: relative;
	flex: 1 0 calc(25% - 10px);
	max-width: calc(25% - 10px);
	background: #ffffff; /* #f5f5f5 */
	transition: background 0.3s ease;
	text-align: center;	
	border-radius: 8px;
	border: 1px solid #e9e9e9; /* f5f5f5 */
	box-shadow: 0px 1px 0px 0px rgba(0,0,0,.1);
}

.desktop-navigation .mg-mega-menu--container .mg-mega-menu--section-content .mg-content .mg-content--item:hover {
/* 	box-shadow: 0px 0px 5px 0px rgba(0,0,0,.1); */
}

.desktop-navigation .mg-mega-menu--container .mg-mega-menu--section-content .mg-content .mg-content--item .mg-content--item-thumbnail {
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
	overflow: hidden;
	border-radius: 8px 8px 0 0;
	background-color: white;
}
.desktop-navigation .mg-mega-menu--container .mg-mega-menu--section-content .mg-content .mg-content--item .mg-content--item-thumbnail .wp-post-image {
	width: 100%;
}

.desktop-navigation .mg-mega-menu--container .mg-mega-menu--section-content .mg-content .mg-content--item .mg-content--item-content {
	padding: 15px 15px 20px 15px;
}

.desktop-navigation .mg-mega-menu--container .mg-mega-menu--section-content .mg-content .mg-content--item .mg-content--item-title {
	font-size: 0.9rem;
	font-weight: 500;
	margin: 0 0 10px 0;
	color: #000000;
}

.desktop-navigation .mg-mega-menu--container .mg-mega-menu--section-content .mg-content .mg-content--item .mg-content--item-price {
	font-size: 0.85rem;
	font-weight: 400;
	color: #656565;
}

.desktop-navigation .mg-mega-menu--container .mg-mega-menu--section-content .mg-content .mg-content--item .mg-content--item-link {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.desktop-navigation .mg-mega-menu--container .mg-mega-menu--section-content .mg-content .mg-content--item .mg-content--item-link .mg-content--item-link-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border-width: 0;
}
/* Header Mega Menu */


/* MOBILE MENU */

#ast-mobile-site-navigation .main-navigation > ul {
	margin-left: 10px !important;
}

.ast-builder-menu-mobile .main-navigation .main-header-menu .menu-item:hover > .menu-link, 
.ast-builder-menu-mobile .main-navigation .inline-on-mobile .menu-item:hover > .ast-menu-toggle {
	background: white !important;
}

#ast-mobile-site-navigation .menu-item.current-menu-parent > button.ast-menu-toggle, 
#ast-mobile-site-navigation .menu-item.current-menu-parent .menu-item.current-menu-item.menu-item-has-children > .ast-menu-toggle{
	background-color: whitesmoke;
}

.ast-builder-menu-mobile .main-navigation .menu-item.current-menu-ancestor > .menu-link {
	background-color: white;
}

#ast-mobile-site-navigation .ast-nav-menu .sub-menu .menu-text {
    line-height: 1.5;
    display: inline-block;
}
.ast-hfb-header .ast-builder-menu-mobile .main-header-menu.ast-nav-menu .sub-menu .menu-item .menu-link {
	font-size: 1rem;
	line-height: 1.25;
	padding-top: 8px;
	padding-bottom: 8px;
}

.ast-header-break-point .main-navigation ul .menu-item .menu-link .icon-arrow:first-of-type,
.ast-header-break-point .main-navigation ul .sub-menu .menu-item:not(.menu-item-has-children) .menu-link .icon-arrow:first-of-type{
	display: none;
}
.ast-builder-menu-mobile .main-navigation .menu-item-has-children > .menu-link::after {
	margin-left: 10px !important;
}


/* Products */
table:where(.variations, .bundled_products), table:where(.variations, .bundled_products) :where(thead, tbody, tr, th, td) {
	border: none !important;
}

.bundle_form.bundle_sells_form .bundled_product {
	display: flex !important;
    align-items: top !important;
	border: 1px solid #ffffff !important;
    padding: 10px !important;
	margin-bottom: 15px !important;
	border-radius: 8px;
	background-color: white !important;  
	box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, .1);
}

div.bundled_product_summary:not(.thumbnail_hidden) .details {
	padding: 15px 30px 0 1.5rem !important;
}

.bundled_product_images figure {
	box-shadow: none !important;
}


@media (max-width: 767px) {
	
	div.bundled_product_summary:not(.thumbnail_hidden) .details {
		padding: 15px 10px 0 1.5rem !important;
	}
	
}


.bundle_form.bundle_sells_form .bundled_product .bundled_product_optional_checkbox span.price::after {
	content: '';
	position: absolute;
	inset: 0;
	cursor: pointer;
}
.bundle_sells_form .bundled_product_excerpt  {
	display: none !important;
}
.bundle_form.bundle_sells_form .bundled_product:has(input:checked) {
	border: 1px solid #d1d5db !important;
}
.bundled_product_title  {
	font-size: 1rem !important;
	margin-bottom: 8px !important;
}

.woocommerce-product-details__short-description a[href*="tag"] {
	display: flex;
	margin-top: 15px !important;
	margin-bottom: 20px !important;
}
.woocommerce-product-details__short-description a[href*="tag"] img,
.woocommerce-product-details__short-description img.brand-logo{
	box-shadow: none;
	background-color: white;
	border-radius: 8px;
	margin: 0 !important;
	width: 150px !important;
	height: auto !important;
}

.woocommerce-tabs #tab-description {
	background-color: white;
	padding: 30px;
	border-radius: 8px !important;
	box-shadow: 0 1px 0 0 rgba(0,0,0,0.1) !important;
}

div.blockUI.blockOverlay {
	display: none !important;
}	

.woocommerce-product-details__short-description,
.single_variation_wrap {
	font-size: 0.875rem;
}
.woocommerce-js div.product div.summary .woocommerce-product-details__short-description :last-child {
	margin-bottom: initial !important;
}
.woocommerce-product-details__short-description .content-column {
	margin-bottom: 1rem !important;
}

.woocommerce-product-details__short-description h3,
.bundle_sells_title h3,
.woocommerce-tabs.wc-tabs-wrapper h3 {
	font-size: 1.125rem;
    font-weight: 600;
	text-transform: uppercase;
	margin-block: 15px 20px !important;
}
.woocommerce-product-details__short-description h4,
.woocommerce-tabs.wc-tabs-wrapper h4,
.woocommerce-tabs.wc-tabs-wrapper h5 {
	font-size: 1rem;
    font-weight: 600;
	text-transform: uppercase;
}

.woocommerce-tabs.wc-tabs-wrapper h2 {
	font-size: 1.275rem;
}
.woocommerce-tabs.wc-tabs-wrapper :where(h1, h2, h3, h4, h5, h6) {
	font-weight: 600 !important;
	text-transform: uppercase; 
}
.woocommerce-tabs.wc-tabs-wrapper p {
	font-size: 0.875rem;
}

body.single-product .woocommerce-variation-add-to-cart {
	margin-top: 1rem !important;
}
body.single-product .bundle_form.bundle_sells_form {
	margin-bottom: 1rem !important;
}
.woocommerce-tabs.wc-tabs-wrapper table,
.woocommerce-tabs.wc-tabs-wrapper table :where(thead, tbody, tr, th, td) {
	border: none !important;
}
.woocommerce-tabs.wc-tabs-wrapper table,
.woocommerce-tabs.wc-tabs-wrapper img,
.woocommerce-tabs.wc-tabs-wrapper .wp-video {
	margin-block: 1.5rem !important;
}

.woocommerce-tabs.wc-tabs-wrapper .elementor-column-gap-default>.elementor-column>.elementor-element-populated {
	background-color: unset !important;
}


.cart_item .backorder_notification {
	display: none;
}

.cart_item .stock.available-on-backorder,
body.single-product .stock.available-on-backorder {
	position: relative;
	color: #050505 !important;
	background: #c7c7c7;
	line-height: 1rem !important;
	font-size: 1rem !important;
	border-radius: 8px;
	margin: 15px 0 15px 0 !important;
	padding: 10px 20px !important;
	display: inline-block;
	font-weight: 400;
}

body.single-product div.bundled_item_cart_details p.stock.available-on-backorder {
	margin: 0 !important;
}

.cart_item .stock.available-on-backorder {
	font-size: 0.75rem !important;
	padding: 5px 10px !important;
	border-radius: 6px !important;
	display: table;
	margin: 0 !important;
	max-width: fit-content;
}

body .mini_cart_item .stock.available-on-backorder {
	color: #050505 !important;
  	background: #c7c7c7;
	font-size: 0.75rem !important;
	padding: 5px 10px !important;
	border-radius: 6px !important;
	display: table;
	margin: 0;
	max-width: fit-content;
}
#order_review .stock.available-on-backorder{
	margin-left: 0px;
}

@media (max-width: 767px) {
	.cart_item .stock.available-on-backorder {
		display: inline-block !important;
	}
}


.cart_item .stock.available-on-backorder a,
body.single-product .stock.available-on-backorder a {
	color: #050505 !important;
	background: #c7c7c7;
	text-decoration: underline;
}
.cart_item .stock.available-on-backorder a::after,
body.single-product .stock.available-on-backorder a::after {
	content: '';
	position: absolute;
	inset: 0;
}
body.single-product .stock.available-on-backorder.custom-notice {
	margin-top: 15px !important;
	margin-bottom: 15px !important;
	background-color: #c7c7c7 !important;
	color: #050505 !important;
}

.bundled_product .stock.available-on-backorder.custom-notice,
.single_variation_wrap .stock.available-on-backorder.custom-notice {
	display: none !important;
}

.woocommerce-js div.product form.cart .single_variation_wrap p.stock.available-on-backorder {
	margin: 0;
}


.ast-shop-load-more {
	border: 1px solid var(--ast-border-color);
	border-radius: 8px;
}


.woocommerce-js ul.product_list_widget li.mini_cart_item > a {
	max-width: 90% !important;
}

 .ast-article-single .woocommerce-product-gallery figure {
	box-shadow: none !important;
}

.woocommerce-product-gallery__image.flex-active-slide,
.woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image,
.woocommerce-js div.product div.images.woocommerce-product-gallery > .flex-viewport,
.woocommerce-js div.product div.images div.ast-woocommerce-product-gallery__image img {
	border-radius: 8px;
	box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, .1)
}

.ast-woocommerce-product-gallery__image.flex-active-slide::after {
	border: 1px solid #d1d5db;
	border-radius: 8px;
}
.ast-woocommerce-product-gallery__image.flex-active-slide:focus{
	outline-style: none !important;
}

.woocommerce-page section.related.products ul.products {
	display: grid;
	column-gap: 20px;
	row-gap: 20px;
}


/* NEWS */

.news-slider h3 {
	min-height: 40px;
}

.news-col .uael-imgicon-wrap .uael-image-content .attachment-large {
	border-radius: 8px 8px 0 0 !important;
	aspect-ratio:  4 / 3 !important;
}

.news-col  .uael-infobox-title {
	display: inline-block;
}

.news-slider .swiper-slide {
	overflow: visible;
}

.ast-separate-container .ast-article-single:not(.ast-related-post) {
	background-color: transparent !important;
}


/* View all */

.view-all-box {
	transition: all .3s ease-in-out;
}
.view-all-box:where(:hover, :focus-within) {
	box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.1) !important;
}

@media (max-width: 1024px) {
	.view-all-box .elementor-widget-wrap.elementor-element-populated {
		background: none !important;
		min-height: auto !important;
	}
	.view-all-box:where(:hover, :focus-within) {
		box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0) !important;
	}
	.woocommerce.columns-3 ul li.product.ast-article-single:last-child {
		display: none !important;
	}
}

/* Variable products */
.woocommerce div.product form.cart .variations select {
	border-radius: 3px !important;
	font-size: 0.875rem !important;
}

.bundle_form table.variations td {
	display: table-cell !important;
	vertical-align: middle;
}
.woocommerce div.product form.cart .variations td.label {
	width: 50%;
}
.bundle_form .bundled_product.product {
	position: relative !important;
}
.bundle_form .bundled_product.product .bundled_product_title_link {
	position: relative !important;
	z-index: 10;
}
.bundle_form .bundled_product.product .bundled_product_optional_checkbox .price::after {
	content: none !important;
	position: absolute;
	inset: 0;
	z-index: 8;
	cursor: pointer;
	pointer-events: none;
}
.variations_form  {
	position: relative;
	z-index: 10;
}


.variations_form  .variations th {
	margin-bottom: 0 !important;
	margin-top: 10px;
}

.stock.out-of-stock {
	position: relative;
	background-color: #e64529;
	color: white !important;
	border-radius: 8px;
	padding: 3px 12px;
	display: inline-block;
}

.woocommerce-js div.product form.cart .button.single_add_to_cart_button,
#elex_prod_btn {
	height: 40px !important;
	min-width: 145px !important;
	border-radius: 8px !important;
}

@media (max-width: 767px) {
	.woocommerce-js div.product form.cart .button.single_add_to_cart_button,
	#elex_prod_btn {
		min-width: auto !important; 
	}
}


table.bundled_products td.bundled_item_qty_col .quantity, .single-product div.product form.cart table.bundled_products td.bundled_item_qty_col .quantity.quantity_hidden {
	opacity: 0.4 !important;
	pointer-events: none !important;
}
table.bundled_products td.bundled_item_qty_col .quantity, 
.single-product div.product form.cart table.bundled_products td.bundled_item_qty_col .quantity {
	position: relative;
	z-index: 10;
	display: flex !important;
	flex-direction: column;
	opacity: 1 !important;
	pointer-events: all !important;
}
/* products with quantity + and -  */
table.bundled_products tr.has_qty_input td.bundled_item_qty_col .quantity,
table.bundled_products tr.bundled_item_optional td.bundled_item_qty_col .quantity,
.single-product div.product form.cart table.bundled_products tr.has_qty_input td.bundled_item_qty_col .quantity {
	flex-direction: initial !important;
}

table.bundled_products tr.has_qty_input td.bundled_item_qty_col .quantity .qty,
table.bundled_products tr.bundled_item_optional td.bundled_item_qty_col .quantity .qty{
	width: 30px;
}
table.bundled_products tr.has_qty_input td.bundled_item_qty_col .quantity .minus, 
table.bundled_products tr.has_qty_input td.bundled_item_qty_col .quantity .plus,
table.bundled_products tr.bundled_item_optional td.bundled_item_qty_col .quantity .plus,
table.bundled_products tr.bundled_item_optional td.bundled_item_qty_col .quantity .minus{
	width: 30px;
}

/* hide quantity on bundle product stock details */
.bundled_product .details .bundled_item_wrap .stock.in-stock {
	display: none;
}

.quantity.buttons_added .minus {
	border-radius: 8px 0 0 8px !important;
}
.quantity.buttons_added .plus {
	border-radius: 0 8px 8px 0 !important;
}

.woocommerce-js div.product form.cart .variations label {
	font-weight: 600 !important;
}

/* Products */

/**
 * Product Cards
 */
/* Card */
.products  > .product {
	display: flex !important; 
	flex-flow: column nowrap !important;
	margin: 0 !important;
	padding: 15px 15px 30px 15px !important;
	background-color: white !important;
	border-radius: 8px !important;
	border-bottom: 1px solid var(--ast-border-color);
}
.products  > .product:where(:hover, :focus-within) {
/* 	background-color: #F0F0F1 !important; */
	box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.1) !important;
}

.upsells.products .products > li {
	margin-bottom: 20px !important;
}

/* Thumbnail */
.products  > .product .astra-shop-thumbnail-wrap {
	margin: 0 !important;
}
.products  > .product .astra-shop-thumbnail-wrap .onsale {
	display: inline-block !important;
    position: absolute !important;
    top: 0px !important;
    left: 0px !important;
    right: unset !important;
    bottom: unset !important;
    padding: 10px 20px !important;
    border-radius: 8px !important;
    font-size: 0.75rem !important;
	font-weight: bold !important;
    line-height: 0.875rem !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
    min-height: unset !important;
    margin: 0 !important;
}
.product > .onsale,
.product .woocommerce-product-gallery .onsale{
	display: inline-block !important;
    position: absolute !important;
    top: 10px !important;
    left: 10px !important;
    right: unset !important;
    bottom: unset !important;
    padding: 10px 20px !important;
    border-radius: 8px !important;
    font-size: 1rem !important;
    line-height: 1rem !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
    min-height: unset !important;
    margin: 0 !important;
}

body.single-product div.product:not(.sale) > .onsale,
body.single-product div.product:not(.sale) .woocommerce-product-gallery .onsale {
	display: none !important;
}

.products  > .product .astra-shop-thumbnail-wrap .ast-shop-product-out-of-stock {
	left: 0 !important;
	top: 0 !important;
	right: auto !important;
	bottom: unset !important;
	min-height: auto !important;
	height: auto !important;
	background-color: #e64529 !important;
	color: white !important;
	border-radius: 8px;
	padding: 10px 20px !important;
	font-size: 0.75rem !important;
	line-height: 0.875rem !important;
	z-index: 10;
}
/* on mobile reduce the padding left and right of the out of stock badge */
@media (max-width: 767px) {
	.products  > .product .astra-shop-thumbnail-wrap .ast-shop-product-out-of-stock {
		padding: 10px !important;
	}
}

.mg-content--item-thumbnail .ast-shop-product-out-of-stock,
.mg-content--item-thumbnail  .ast-shop-product-on-sale{
	position: absolute;
	display: inline-block;
	top: 5px;
	left: 5px;
	padding: 5px 15px;
	border-radius: 8px;
	font-size: 0.65rem;
	text-transform: uppercase;
	font-weight: bold;
	color: white;
	background-color: #e64529;
}

/* Content */
.products  > .product .astra-shop-summary-wrap {
	display: flex !important; 
	flex-flow: column nowrap !important;
	align-items: center !important;
	flex-grow: 1 !important;
	padding: 0 !important;
	text-align: center !important;
}
.products  > .product .astra-shop-summary-wrap .woocommerce-loop-product__title {
	font-size: 1rem;
	font-weight: 500;
	margin: 15px 0 15px 0 !important;
}

/* mobile grid */
@media (max-width: 767px) {
 	.products  > .product .astra-shop-summary-wrap h2.woocommerce-loop-product__title {
		font-size: 0.875rem;
	} 
	
	.products > .product.ast-grid-common-col {
		min-width: 0;
	}

}

.products  > .product .astra-shop-summary-wrap .price {
	margin-bottom: 15px !important;
}
.products  > .product .astra-shop-summary-wrap .price .from {
	font-size: 0.75rem !important;
	font-weight: 400 !important;
	line-height: 1rem !important;
	color: #656565 !important;
	margin: 0 !important;
}
.products  > .product .astra-shop-summary-wrap .price .amount {
	font-size: 0.95rem !important;
	font-weight: 400 !important;
	line-height: 1rem !important;
	color: #656565 !important;
}
/* Link Cover */
.products  > .product .astra-shop-summary-wrap .ast-loop-product__link::after {
	content: '';
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	z-index: 5;
} 

/* Product catalogue */
.ast-loader > div {
	width: 10px;
  	height: 10px;
}

.woocommerce-js .woocommerce-ordering select, .woocommerce-page .woocommerce-ordering select {

	padding: 0.5em 0.8em;
	line-height: 1.2rem;
	padding-right: 2em;
	appearance: none;
	background-position: 98% 50%;
	background-color: #fff;
	border: 1px solid var(--ast-border-color);
	border-radius: 3px;
	box-shadow: none;
	
}


/* Pagination */

.woocommerce-pagination {
	text-align: center;
}

.woocommerce-js nav.woocommerce-pagination ul li {
	border-radius: 3px;
}

/* 	Cart Button */
.products  > .product .astra-shop-summary-wrap .product_type_bundle_input_required,
.products  > .product .astra-shop-summary-wrap .button.product_type_simple,
.products  > .product .astra-shop-summary-wrap .button.add_to_cart_button {
	position: relative !important;
	z-index: 6 !important;
	display: inline-flex !important;
	align-items: center !important; 
	justify-content: center !important;
	font-size: 1rem !important;
	font-weight: 400 !important;
	line-height: 1rem !important;
	text-align: center !important;
	margin: auto 0 16px 0 !important;
	padding: 10px 20px 10px 20px !important;
	border-radius: 8px !important;
	height: 40px;
	min-width: 145px !important;
}

@media (max-width: 767px) {
	.products  > .product .astra-shop-summary-wrap .product_type_bundle_input_required,
	.products  > .product .astra-shop-summary-wrap .button.product_type_simple,
	.products  > .product .astra-shop-summary-wrap .button.add_to_cart_button {
		min-width: auto !important; 
	}
}


.products  > .product .astra-shop-summary-wrap .product_type_bundle_input_required:not(:hover, :focus),
.products  > .product .astra-shop-summary-wrap .button.product_type_simple:not(:hover, :focus),
.products  > .product .astra-shop-summary-wrap .button.add_to_cart_button:not(:hover, :focus) {
	background-color: black !important;
}
.products  > .product .astra-shop-summary-wrap .button.product_type_simple.added,
.products  > .product .astra-shop-summary-wrap .button.add_to_cart_button.added,
.products  > .product .astra-shop-summary-wrap .button.product_type_simple.loading,
.products  > .product .astra-shop-summary-wrap .button.add_to_cart_button.loading {
/* 	margin-bottom: 0 !important; */
}
.products  > .product .astra-shop-summary-wrap .button.product_type_simple.added::after,
.products  > .product .astra-shop-summary-wrap .button.add_to_cart_button::after {
	font-size: 0.75rem !important;
	margin-left: 0.75rem !important; 
}
.products  > .product .astra-shop-summary-wrap .added_to_cart {
	position: absolute !important;
	z-index: 6 !important;
	display: block !important;
	font-size: 0.85rem !important;
	font-weight: 400 !important;
	line-height: 1rem !important;
	color: #656565 !important;
	margin: 10px 0 0 0 !important;
	padding: 0 !important;
	bottom: 20px;
}
.product .stock.out-of-stock {
	position: relative !important;
	z-index: 6 !important;
	display: inline-flex !important;
	align-items: center !important; 
	justify-content: center !important;
	font-size: 1rem !important;
	font-weight: 400 !important;
	line-height: 1rem !important;
	text-align: center !important;
	margin: 15px 0 15px 0 !important;
	padding: 10px 20px 10px 20px !important;
	border-radius: 8px !important;
	min-width: 145px !important;
}

@media (max-width: 767px) {
	
	.product .stock.out-of-stock {
		position: relative !important;
		font-size: 1rem !important;
		padding: 10px 15px  !important;
		border-radius: 8px !important;
		min-width: auto !important;
	}
	
}
.bundled_product_summary .stock.out-of-stock {
	margin-top: 10px !important;
}
/**
 * Product Cards
 */

/* Bundle Form Table */
.product .bundle_form .bundled_products {
	border: none !important;
	border-radius: 8px !important;
	overflow: hidden !important;
	background-color: white !important;
	padding: 10px 20px 20px !important;
	margin-bottom: 2rem !important;
	box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, .1);
}

.product .bundle_form .bundled_products thead th {
	padding-block: 1rem !important;
	font-weight: 600 !important;
	border-bottom: 1px solid var(--ast-border-color) !important;
	text-align: left !important;
	padding-left: 0 !important;
}
.product .bundle_form .bundled_products thead th.bundled_item_images_head,
.product .bundle_form .bundled_products thead th.bundled_item_qty_head {
	text-align: center !important;
}
.product .bundle_form .bundled_products > tbody > tr > td {
	padding-block: 1.2rem !important;
	border-bottom: 1px solid var(--ast-border-color) !important;
	vertical-align: top;
}
.product .bundle_form .bundled_products > tbody > tr:last-child > td {
	border-bottom: none !important;
}
.product .bundle_form .bundled_products td .variations tr {
	display: flex !important;
	flex-flow: column nowrap !important;
	gap: 0;
}

/* Bundled products on mobile */
@media (max-width: 767px) {

	/* Remove internal borders */
	.product .bundle_form .bundled_products > tbody > tr > td {
		/* border-bottom: none !important; */
		padding-block: 1.2rem !important;
	}

	/*
	 * Draw one divider per bundled product.
	 * Attach to the last cell
	 */
	.product .bundle_form .bundled_products > tbody > tr > td:last-child {
		position: relative;
	}

	.product .bundle_form .bundled_products > tbody > tr > td:last-child::after {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		height: 1px;
		background-color: var(--ast-border-color);
		pointer-events: none;
	}

	/* Remove divider from the last bundled product row */
	.product .bundle_form .bundled_products > tbody > tr:last-child > td:last-child::after {
		display: none;
	}
}

@media (max-width: 767px) {

	/* Hide the plain-text qty when there are no +/- controls */
	.product .bundled_products .bundled_product:not(.has_qty_input) .bundled_item_col.bundled_item_qty_col {
		/* display: none !important; */
	}

	.product .bundle_form .bundled_products > tbody > tr > td:last-child::after {
		
		height: 0px !important;
	}

	/* Tighten title spacing a touch */
	.product .bundle_form .bundled_products .bundled_item_details_col h4.bundled_product_title {
		margin-bottom: 0.35rem !important;
	}
}

/* target smaller devices and remove lines from the bundle form table, and add spacing between bundled products */
@media (max-width: 439px) {
	.product .bundled_products .bundled_product:not(.has_qty_input) .bundled_item_col.bundled_item_qty_col .quantity {
		display: none !important;
	}
	.product .bundled_products .bundled_product:not(.has_qty_input) .bundled_item_col.bundled_item_qty_col {
		padding: 0 !important;
	}

	/* Remove internal borders */
	.product .bundle_form .bundled_products > tbody > tr > td {
		border-bottom: none !important;
	}

	.product .bundle_form .bundled_products > tbody > tr > td:last-child::after {	
		height: 1px !important;
	}
}




.product .woocommerce-variation-description :where(h1, h2, h3, h4, h5, h6) {
	font-size: 14px !important;	
	font-weight: 600 !important;
}
.product .woocommerce-variation-description br + br {
	display: inline !important;
}
.product .woocommerce-variation-description .content-column br + br  {
	display: initial !important;
}
.product .woocommerce-variation-description .content-column {
	width: 100% !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* Bundle Form Table */

/* Cart Page Table */
.woocommerce .woocommerce-cart-form .cart,
.woocommerce table.order_details,
.woocommerce-order-details table.shop_table{
	border: none !important;
	border-radius: 8px !important;
	overflow: hidden !important;
	background-color: white !important;
	padding: 15px 25px 30px !important;
	box-shadow: 0px 1px 0 0 rgba(0,0,0,0.1);
}

.woocommerce-order-details table.shop_table {
	padding: 0px 20px !important;
}
.woocommerce .woocommerce-cart-form .cart thead,
.woocommerce table.order_details thead,
.woocommerce-order-details table.shop_table thead{
	background-color: white !important;
}

/* Ensure order table headers remain visible if hidden by injected inline CSS */
.woocommerce-order-details .shop_table thead,
.woocommerce-order-pay .shop_table thead {
	display: table-header-group !important;
}

.woocommerce .woocommerce-cart-form .cart thead th,
.woocommerce table.order_details thead th,
.woocommerce-order-details table.shop_table thead th{
	font-weight: 600 !important;
	padding-top: 1em !important;
	padding-bottom: 1em !important;
}
.woocommerce .woocommerce-cart-form .cart tbody td,
.woocommerce table.order_details tbody td,
.woocommerce-order-details table.shop_table tbody td{
	border-color: #D8D8D8 !important;
	padding-top: 1.2em !important;
	padding-bottom: 1.2em !important;
	
}

.woocommerce-order-details table.shop_table tbody td {
	border: none !important;
}

/* Re-enable separators for regular order items, but keep bundle group rows unseparated */
.woocommerce-order-details table.shop_table.woocommerce-table--order-details tbody tr.order_item:not(.bundle_table_item):not(.bundled_table_item) > td {
	border-bottom: 1px solid #D8D8D8 !important;
}

.woocommerce .woocommerce-cart-form .cart tbody .coupon .input-text {
	border-radius: 8px !important;
	height: 38px !important;
	max-height: 38px !important;
	max-width: 160px !important;
}
.woocommerce .woocommerce-cart-form .cart tbody .coupon .button {
	padding: 10px 20px !important;
    background-color: #192124 !important;
    border-radius: 8px !important;
    color: white !important;
	height: 38px !important;
	max-height: 38px !important;
}
.woocommerce .woocommerce-cart-form .cart tbody .coupon .button:where(:hover, :focus) {
	background-color: #E64529 !important;
}


/* Thumbnail styling on the Order details page on my account */
.mg-order-item-thumb img {
    width: 70px;
    height: auto;
    margin-right: 0.5rem;
    vertical-align: middle;
}

/* Cart Page Table */

/* Cart table redesign for mobile/tablet */
@media (max-width: 1052px) {
	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item {
		display: grid !important;
		grid-template-columns: 72px minmax(0, 1fr) auto;
		grid-template-areas:
			"thumb product remove"
			"thumb price price"
			"thumb qty qty"
			"thumb subtotal subtotal";
		column-gap: 12px;
		row-gap: 8px;
		align-items: normal;
		padding: 14px 0 !important;
		width: 100%;
		box-sizing: border-box;
		/* border-bottom: 1px solid #d8d8d8 !important; */
	}

	

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item:not(.bundled_table_item),
	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.bundled_table_item:not(:has(+ tr.bundled_table_item))	{
		border-bottom: 1px solid #d8d8d8 !important;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item.bundle_table_item	{
		border-bottom: 0px solid transparent !important;
	}
	

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item td {
		display: block !important;
		padding: 0 !important;
		border: 0 !important;
		min-height: 2.5em !important;
		text-align: left !important;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item td::before {
		content: none !important;
		display: none !important;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item td.product-thumbnail {
		grid-area: thumb;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item td.product-thumbnail img {
		width: 72px !important;
		max-width: 72px !important;
		height: auto !important;
		margin: 0 !important;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item td.product-name {
		grid-area: product;
		font-weight: 600;
		line-height: 1.25;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item td.product-price {
		grid-area: price;
		color: #4b5563;
		font-size: 0.95rem;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item td.product-quantity {
		grid-area: qty;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item td.product-subtotal {
		grid-area: subtotal;
		text-align: left !important;
		font-weight: 600;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item td.product-remove {
		grid-area: remove;
		align-self: start;
		justify-self: end;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item td.product-remove a.remove {
		margin: 0 !important;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item td.product-quantity .quantity {
		margin: 0 !important;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item td.product-quantity .quantity input.qty {
		max-width: 64px;
	}

	/* Bundled cart rows: compact layout without redundant monetary columns */
	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item.bundled_table_item {
		row-gap: 4px;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item.bundled_table_item td:not(.product-thumbnail):not(.product-remove) {
		margin-left: 28px;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item.bundled_table_item td.product-price {
		display: none !important;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item.bundled_table_item td.product-price:has(.awdr_cart_strikeout_line) {
		display: block !important;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item.bundled_table_item td.product-price .awdr_cart_strikeout_line {
		line-height: 1.2;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item.bundled_table_item .bundled_table_item_indent {
		padding-left: 0 !important;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item.bundled_table_item td.product-name {
		min-height: 0 !important;
		margin-bottom: 0 !important;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item.bundled_table_item td.product-quantity {
		align-self: start;
	}

	body.woocommerce-cart table.shop_table_responsive.woocommerce-cart-form__contents tr.cart_item .stock.available-on-backorder {
		display: table !important;
    	margin-top: 5px !important;
	}
}

.mapgear-checkout-review-order-footer > td {
	padding: 0 !important;
}

.mapgear-checkout-review-order-footer table tr:not(:last-child) td,
.mapgear-checkout-review-order-footer table tr:not(:last-child) th {
	border-bottom: 1px solid var(--ast-border-color) !important;
}

@media (max-width: 1052px) {

.mapgear-checkout-review-order-footer table {
	border: none !important;
}

  

  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table {
	table-layout: fixed;
	width: 100%;
  }

  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tbody tr td.product-name {
	display: flex;
	flex-wrap: wrap !important;
	align-items: flex-start;
	column-gap: 8px;
	row-gap: 6px;
	min-width: 0;
  }

  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tbody tr td.product-name .ast-product-image {
	display: flex;
	flex: 1 1 0;
	min-width: 0;
	align-items: flex-start;
  }

  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tbody tr td.product-name .ast-product-thumbnail {
	flex: 0 0 48px;
	width: 48px;
	margin-right: 12px;
  }

  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tbody tr td.product-name .ast-product-name {
	flex: 1 1 0;
	min-width: 0;
  }

  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tbody tr td.product-name .product-quantity {
	flex: 0 0 auto;
	align-self: flex-start;
	margin-left: 8px;
	white-space: nowrap;
  }

  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tbody tr.ast-variable-product td.product-name .variation {
	flex: 0 0 100%;
	width: auto;
	margin: 0 0 0 60px;
  }

  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tbody tr.ast-variable-product .bundled-product-name.bundled_table_item_indent {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	column-gap: 12px;
	row-gap: 6px;
	align-items: start;
	width: 100%;
  }

  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tbody tr.ast-variable-product .bundled-product-name.bundled_table_item_indent .ast-product-image {
	grid-column: 1;
	grid-row: 1;
	display: grid;
	grid-template-columns: 48px minmax(0, 1fr);
	column-gap: 12px;
	align-items: start;
  }

  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tbody tr.ast-variable-product .bundled-product-name.bundled_table_item_indent .ast-product-thumbnail {
	margin-right: 0;
  }

  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tbody tr.ast-variable-product .bundled-product-name.bundled_table_item_indent .product-quantity {
	grid-column: 2;
	grid-row: 1;
	margin-left: 0;
	align-self: start;
  }

  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tbody tr.ast-variable-product .bundled-product-name.bundled_table_item_indent .variation {
	grid-column: 1 / -1;
	grid-row: 2;
	margin: 0 0 0 60px;
	width: auto;
  }

  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tbody tr td:last-child {
	width: 110px !important;
    max-width: 110px;
	white-space: nowrap;
  }

  .ast-modern-checkout .woocommerce #ast-order-review-content .mapgear-checkout-review-order-footer tbody tr td:last-child {
	width: 65% !important;
  	min-width: 65% !important;
  }

  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tbody tr td.product-total {
	vertical-align: top;
  }

  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tfoot th,
  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tfoot td,
  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tfoot label,
  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table .includes_tax {
	white-space: normal;
	word-break: break-word;
  }
  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tfoot th {
	font-weight: bold !important;
  }
  .ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table tfoot .includes_tax {
	 display: block !important; 
  }
}


/* Cart Page Totals */
.woocommerce .cart-collaterals .cart_totals {
	border: none !important;
	border-radius: 8px !important;
	overflow: hidden !important;
	background-color: white !important;
	padding: 15px 25px 30px !important;
	box-shadow: 0px 1px 0 0 rgba(0,0,0,0.1);
}
.woocommerce .cart-collaterals .cart_totals h2 {
	padding: 1rem !important;
	margin: 0 !important;
	border: none !important;
	background-color: white !important; 
}
.woocommerce .cart-collaterals .cart_totals .shop_table {
	border-color: #D8D8D8 !important;
}
.woocommerce .cart-collaterals .cart_totals .shop_table th {
	font-weight: 600 !important;
	padding-top: 1em !important;
	padding-bottom: 1em !important;
}
.woocommerce .cart-collaterals .cart_totals .shop_table td {
	padding-top: 1em !important;
	padding-bottom: 1em !important;
}

.woocommerce .cart-collaterals .cart_totals .shop_table .shipping-calculator-form label[for="calc_shipping_country"],
.woocommerce .cart-collaterals .cart_totals .shop_table .shipping-calculator-form label[for="calc_shipping_state"],
.woocommerce .cart-collaterals .cart_totals .shop_table .shipping-calculator-form label[for="calc_shipping_city"],
.woocommerce .cart-collaterals .cart_totals .shop_table .shipping-calculator-form label[for="calc_shipping_postcode"]{
	opacity: 1 !important;
}


.woocommerce .cart-collaterals .cart_totals .shop_table .shipping-calculator-form #calc_shipping_state{
	padding-top: 25px !important;
}

form .shipping-calculator-form input#calc_shipping_state,
form .shipping-calculator-form #calc_shipping_city_field:not(.mapgear-label-hidden) input#calc_shipping_city,
form .shipping-calculator-form #calc_shipping_postcode_field:not(.mapgear-label-hidden) input#calc_shipping_postcode{
	padding-top: 25px !important;
}

form .shipping-calculator-form #calc_shipping_city_field.mapgear-label-hidden input#calc_shipping_city,
form .shipping-calculator-form #calc_shipping_postcode_field.mapgear-label-hidden input#calc_shipping_postcode{
	padding-top: 0.9em !important;
}

.woocommerce .cart-collaterals .cart_totals .shop_table .shipping-calculator-button:not(:hover, :focus) {
	color: #e64529 !important;
}
.woocommerce .cart-collaterals .cart_totals .shop_table .shipping-calculator-form {
	margin-top: 1rem !important;
}
.woocommerce .cart-collaterals .cart_totals .shop_table .shipping-calculator-form .form-row {
	position: relative;
}
.woocommerce .cart-collaterals .cart_totals .shop_table .shipping-calculator-form .button {
	display: inline-block;
    padding: 10px 20px !important;
    border-radius: 8px !important;
	background-color: #192124 !important;
    color: white !important;
    max-height: 38px !important;
    font-size: 1rem !important;
    line-height: 1em !important;
}
.woocommerce .cart-collaterals .cart_totals .shop_table .shipping-calculator-form .button:where(:hover, :focus) {
	background-color: #E64529 !important;
}
.woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout {
	padding: 0 !important;
}
.woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .button  {
	display: inline-block;
    padding: 10px 20px !important;
    border-radius: 8px !important;
    color: white !important;
    max-height: 38px !important;
    font-size: 1rem !important;
    line-height: 1em !important;
	margin: 15px 0 10px 0 !important;
}
/* Cart Page Totals */


/* Cart collaterals */

.woocommerce .cart-collaterals .cross-sells, 
.woocommerce-page .cart-collaterals .cross-sells,
.woocommerce .cart-collaterals .cart_totals{
	width: 100%;
	float: none;
}

 
.woocommerce-cart .cart-collaterals .cross-sells {
	padding: 0;
	border-width: 0;
	border-style: none;
	border-color: transparent;
	border-radius: 0;
	margin-bottom: 2em;
}
.woocommerce-cart .cart-collaterals .cross-sells > h2 {
margin: 0;
	background-color: transparent;
	border-bottom: 0px solid var(--ast-border-color);
	padding: 1rem 0 !important;
}

.cross-sells .ast-article-single.product {
	margin-top: 20px !important;
}

/* Checkout */

.woocommerce-billing-fields h3 {
	display: none;
}

/* Checkout text inputs: show only placeholder while empty (no layout gap), show label after input. */
.woocommerce-checkout p.form-row.ast-animate-input:has(> .woocommerce-input-wrapper > input:is([type="text"], [type="email"], [type="tel"], [type="number"], [type="url"], [type="password"]):placeholder-shown) > label {
	display: none;
}

.woocommerce-checkout p.form-row.ast-animate-input:has(> .woocommerce-input-wrapper > input:is([type="text"], [type="email"], [type="tel"], [type="number"], [type="url"], [type="password"]):not(:placeholder-shown)) > label {
	display: block;
}

/* Remove Astra top-gap on empty text fields at initial load. */
.woocommerce-checkout p.form-row.ast-animate-input > .woocommerce-input-wrapper > input:is([type="text"], [type="email"], [type="tel"], [type="number"], [type="url"], [type="password"]):placeholder-shown {
	padding: .9em .8em !important;
}

/* PO BOX NOTICE Display message in place of hidden field */
.woocommerce .no-po-box-field::before {
	content: "We do not ship to P.O. boxes" !important;
	display: block !important;
	padding: 0 12px;
	margin-bottom: 0;
	color: #333;
	font-weight: normal;
	font-size: 80%;
}


#ast-order-review-wrapper .woocommerce-checkout-review-order-table {
	border: none !important;
	border-radius: 8px !important;
	overflow: hidden !important;
	background-color: white !important;
	padding: 15px 20px 15px !important;
	box-shadow: 0 1px 0 0 rgba(0,0,0,0.1) !important;
}
#ast-order-review-wrapper #order_review_heading {
	position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border-width: 0;
}
#ast-order-review-wrapper .woocommerce-checkout-review-order-table .product-name {
	flex-wrap: nowrap !important;
}

/* Variable products in checkout: keep image/name/qty inline, move attributes to a second row. */
#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product td.product-name {
	--mapgear-checkout-thumb-size: 48px;
	--mapgear-checkout-thumb-gap: 12px;
	flex-wrap: wrap !important;
	align-items: flex-start;
	column-gap: 8px;
	row-gap: 6px;
}

#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product td.product-name .ast-product-image {
	width: auto !important;
	display: inline-flex;
	flex: 0 1 auto;
	min-width: 0;
}

#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product td.product-name .ast-product-image .ast-product-name {
	width: auto;
	min-width: 0;
}

#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product td.product-name .ast-product-thumbnail {
	flex: 0 0 var(--mapgear-checkout-thumb-size);
	width: var(--mapgear-checkout-thumb-size);
	margin-right: var(--mapgear-checkout-thumb-gap);
}

#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product td.product-name .product-quantity {
	flex: 0 0 auto;
	align-self: center;
	margin-left: calc(var(--mapgear-checkout-thumb-size) );
	white-space: nowrap;
}

#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product td.product-name .variation {
	flex: 0 0 100%;
	width: calc(100% - (var(--mapgear-checkout-thumb-size) + var(--mapgear-checkout-thumb-gap)));
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: calc(var(--mapgear-checkout-thumb-size) + var(--mapgear-checkout-thumb-gap));
}
.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text {
	margin-top: 1rem !important;
}
.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper a:not(:hover, :focus) {
	color: var(--ast-global-color-0) !important;
}
.woocommerce-checkout-payment .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions-checkbox-text {
	font-weight: 600 !important;
}
.woocommerce-checkout-payment button#place_order,
.woocommerce-account .woocommerce-address-fields .button,
.woocommerce-account .woocommerce-EditAccountForm .button,
.woocommerce-account .woocommerce-order-details .button{
	display: inline-block !important;
    padding: 10px 35px !important;
    border-radius: 8px !important;
    color: white !important;
    max-height: 38px !important;
    font-size: 1rem !important;
    line-height: 1em !important;
	margin: 15px 0 10px 0 !important;
    width: auto !important;
    float: left !important;
}

.ast-modern-checkout .woocommerce #order_review .woocommerce-checkout-review-order-table thead tr th,
.ast-modern-checkout .woocommerce #order_review .woocommerce-checkout-review-order-table tr th {
	font-weight: 600;
}

/* checkout form on mobile/tablet */
@media (max-width: 1052px) {
	.ast-modern-checkout .woocommerce form.woocommerce-checkout p.form-row.ast-column-33 {
		width: 100% !important;
	}
	
	.woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .button {
		width:100%;
	}
	.ast-modern-checkout .woocommerce .ast-mobile-order-review-wrap #ast-order-review-toggle {
		padding: 1.5em 1.2em;
		background-color: white;
		border: none;
		border-radius: 8px;
		box-shadow: 0 1px 0 0 rgba(0,0,0,0.1) !important;
	}

	.ast-modern-checkout .woocommerce .ast-mobile-order-review-wrap #ast-order-review-toggle.active {
		border-radius: 8px 8px 0 0 ;
		box-shadow: 0 0px 0 0 rgba(0,0,0,0) !important;
	}

	.ast-mobile-order-review-wrap #ast-order-review-content {
		background-color: white;
		border-radius: 0 0 8px 8px;
		box-shadow: 0 1px 0 0 rgba(0,0,0,0.1) !important;
	}
	.ast-modern-checkout .woocommerce #ast-order-review-content .woocommerce-checkout-review-order-table {
		border-radius: 0 0 8px 8px;
		box-shadow: none !important;
	}

	table.woocommerce-cart-form__contents .actions .coupon {
		flex-direction: column;
		
	}
	table.woocommerce-cart-form__contents .actions .coupon #coupon_code {
		max-width: 100% !important;
		width: 100% !important;
		float: none;
		display: block !important;
		text-align: center;
		font-size: 1rem !important;
		margin: 0px 0 !important;
	}
	table.woocommerce-cart-form__contents .actions button {
		display: block !important;
		width: 100% !important;
		float: none !important;
		margin: 10px 0 !important;
	}
}

table.woocommerce-checkout-review-order-table .bundled-product-name.bundled_table_item_indent {
	display: flex;
	width: 100%;
	align-items: center;
	padding-right: 0;
}

table.woocommerce-checkout-review-order-table td.product-name .ast-product-image .ast-product-name {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

table.woocommerce-checkout-review-order-table td.product-name .ast-product-image .ast-product-name .stock.available-on-backorder {
	margin-top: 8px !important;
}



@media (min-width: 1053px) {
	#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product:not(.bundled_table_item) td.product-name {
		display: flex;
		flex-wrap: wrap !important;
		column-gap: 8px;
		row-gap: 6px;
		align-items: start;
	}

	#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product:not(.bundled_table_item) td.product-name .ast-product-image {
		display: grid;
		grid-template-columns: 48px minmax(0, 1fr);
		column-gap: 12px;
		align-items: start;
		flex: 1 1 calc(100% - 56px);
		max-width: calc(100% - 56px);
		min-width: 0;
	}

	#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product:not(.bundled_table_item) td.product-name .ast-product-thumbnail {
		margin-right: 0;
	}

	#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product:not(.bundled_table_item) td.product-name .ast-product-name {
		min-width: 0;
	}

	#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product:not(.bundled_table_item) td.product-name .product-quantity {
		flex: 0 0 auto;
		margin-left: auto;
		align-self: start;
		white-space: nowrap;
	}

	#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product:not(.bundled_table_item) td.product-name .variation {
		flex: 0 0 calc(100% - 60px);
		width: calc(100% - 60px);
		margin: 0 0 0 60px;
	}

	#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product .bundled-product-name.bundled_table_item_indent {
		display: grid;
		grid-template-columns: minmax(220px, 1fr) auto;
		column-gap: 16px;
		row-gap: 6px;
		align-items: start;
	}

	#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product .bundled-product-name.bundled_table_item_indent .ast-product-image {
		grid-column: 1;
		grid-row: 1;
		display: grid;
		grid-template-columns: 48px minmax(0, 1fr);
		column-gap: 12px;
		align-items: start;
		min-width: 0;
	}

	#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product .bundled-product-name.bundled_table_item_indent .ast-product-thumbnail {
		margin-right: 0;
	}

	#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product .bundled-product-name.bundled_table_item_indent .product-quantity {
		grid-column: 2;
		grid-row: 1;
		margin-left: 0;
		align-self: start;
	}

	#ast-order-review-wrapper .woocommerce-checkout-review-order-table tr.ast-variable-product .bundled-product-name.bundled_table_item_indent .variation {
		grid-column: 1 / -1;
		grid-row: 2;
		width: auto;
		margin: 0 0 0 60px;
	}

	table.woocommerce-checkout-review-order-table .order-total,
	table.woocommerce-checkout-review-order-table .order-total .includes_tax {
		position: relative;
	}
	table.woocommerce-checkout-review-order-table .includes_tax {
		
		position: absolute;
		/* bottom: -4px; */
		/* right: 18px; */
		font-size: 0.875rem;
	}
}
table.woocommerce-checkout-review-order-table .includes_tax {
		white-space: nowrap;
		font-size: 0.875rem;
}

body.cart input:focus, body.cart  input[type="text"]:focus {
	border: 1px solid var(--ast-border-color) !important;
}


#billing_state_field .select2-selection.select2-selection--single,
#shipping_state_field .select2-selection.select2-selection--single {
	padding: 1.14em .8em 0.4em !important;
}

.woocommerce-checkout input[type="text"], .woocommerce-account input[type="text"],
.woocommerce-checkout input[type="number"], .woocommerce-account input[type="number"],
.woocommerce-checkout input[type="email"], .woocommerce-account input[type="email"], 
.woocommerce-checkout input[type="url"], 
.woocommerce-checkout input[type="tel"],  .woocommerce-account input[type="tel"],
.woocommerce-account input[type="password"],
.woocommerce-checkout select, .woocommerce-account select,
.woocommerce-checkout textarea, .woocommerce-account textarea,
.woocommerce-checkout #select2-billing_state-container,
.woocommerce-shipping-calculator input[type="text"], 
.woocommerce-shipping-calculator input[type="number"], 
.woocommerce-shipping-calculator input[type="email"], 
.woocommerce-shipping-calculator input[type="url"], 
.woocommerce-shipping-calculator input[type="tel"], 
.woocommerce-shipping-calculator select,
.woocommerce-shipping-calculator textarea,
.woocommerce-shipping-calculator #select2-calc_shipping_country-container,
.woocommerce-shipping-calculator #select2-calc_shipping_state-container,
.woocommerce-shipping-calculator #select2-billing_country-container,
.woocommerce-shipping-calculator #select2-shipping_country-container{
	font-size: 14px ;
}
.woocommerce-js .select2-container--default .select2-selection--single .select2-selection__rendered {
	font-size: 14px !important;
	line-height: 1 !important;
}
.select2-selection.select2-selection--single {
	padding-top: 20px !important;
	padding-bottom: 4.9px !important;
}

#shipping_company_field label .optional,
#billing_company_field label .optional,
#order_comments_field .optional{
	display: none;
}

#order_comments_field.ast-animate-input label {
/* 	display: none; */
}

#billing_country_field > label, 
#billing_state_field > label,
#shipping_country_field > label,
#shipping_state_field > label{
	opacity: 1;
}

.woocommerce .woocommerce-shipping-fields .woocommerce-shipping-fields__field-wrapper .woocommerce-input-wrapper > .input-text:focus {
  border-style: dotted;
  border-color: var(--ast-global-color-0);
  border-width: thin;
  outline-color: var(--ast-global-color-0);
}
.woocommerce-shipping-calculator input:focus,
.woocommerce-shipping-calculator  .select2-selection.select2-selection--single:focus{
	border-style: dotted !important;
	border-color: var(--ast-global-color-0) !important;
	border-width: thin !important;
	outline-color: var(--ast-global-color-0) !important;
}
table.shop_table.woocommerce-checkout-review-order-table .bundled_table_item td {
	border-bottom: 1px solid var(--ast-border-color);
}

table.shop_table.woocommerce-checkout-review-order-table tr.bundled_table_item + tr.cart_item:not(.bundled_table_item) td,
table.shop_table.woocommerce-table--order-details tr.bundled_table_item + tr.order_item:not(.bundled_table_item) td{
	border-top: 1px solid var(--ast-border-color) !important;
}

table.shop_table.woocommerce-table--order-details tfoot .woocommerce-Price-amount.amount {
	font-weight: bold !important;
}


#customer_details h3:not(.elementor-widget-woocommerce-checkout-page h3, #ast-payment_options_heading) {
	margin: 0px !important;
	border-bottom: 0;
}

#ast-coupon-trigger {
	color: var(--ast-global-color-0) !important;
}
.woocommerce p#ast-coupon-trigger:focus {
	border-width: 0;
}

#ast-apply-coupon {
	border-radius: 8px;
	font-size: 1rem !important;
	max-height: 36px;
	margin: 2px auto;
}

#ast-coupon-code {
	border: 1px solid var(--ast-border-color);
	border-radius: 4px;
	padding: .9em .8em;
}

.ast-modern-checkout .woocommerce #payment ul.payment_methods {
	border-top: 0;
	border-right: 0;
	border-left: 0;
	border-bottom: 0px solid var(--ast-border-color) !important;
	border-radius: 8px;
	background-color: white;
	box-shadow: 0 1px 0 0 rgba(0,0,0,0.1) !important;
}
.ast-modern-checkout .woocommerce #payment ul.payment_methods div.payment_box {
	background-color: white;
	border-radius: 0 0 8px 8px;
}
#place_order {
	text-transform: lowercase;
}
#place_order::first-letter {
	text-transform: uppercase;
}
#place_order:focus {
	border: none !important;
}

.checkout-inline-error-message {
	display: none;
}

#billing_address_2_field span.optional,
#shipping_address_2_field span.optional{
	display:none;
}


.woocommerce-checkout textarea#order_comments {
	padding-top: 20px;
	box-sizing: border-box;
	overflow: hidden; /* avoids scrollbars while auto-growing */
	border: 1px solid var(--ast-border-color) !important;
}

/* Checkout */

/**
 * Archive Tiles
 */

.category-image .elementor-widget-wrap {
	background-image: url('/wp-content/uploads/2024/09/Map-Gear-Professional-Kits.jpg');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.facetwp-facet.facetwp-facet-categories.facetwp-type-dropdown .facetwp-dropdown {
	height: auto !important;
}
.facetwp-dropdown:focus {
	border-style: dotted;
	border-color: var(--ast-global-color-0);
	border-width: thin;
	outline-color: var(--ast-global-color-0);
}
.elementor-posts article.elementor-post.elementor-grid-item {
	position: relative;
    background-color: white;
    border-radius: 8px;
    padding: 0px 0px 25px 0px;
    box-shadow: 0px 1px 0px 0px rgba(0,0,0,.1);
    transition: all .3s ease-in-out;

}

.elementor-section.elementor-top-section.elementor-element.elementor-element-2c125e1.elementor-section-boxed.elementor-section-height-default {
	
    transition: all .3s ease-in-out;
}

.elementor-posts article.elementor-post.elementor-grid-item .elementor-post__text {
	padding: 5px 18px;
	text-align: center;
}

.elementor-posts article.elementor-post.elementor-grid-item:where(:hover, :focus),
.elementor-section.elementor-top-section.elementor-element.elementor-element-2c125e1.elementor-section-boxed.elementor-section-height-default:hover {
	background-color: #ffffff !important;
	box-shadow: 0 2px 10px 0 rgba(0,0,0,0.1);
}
.elementor-posts article.elementor-post.elementor-grid-item .elementor-post__thumbnail__link {
	margin-bottom: 15px !important;
}
.elementor-posts-container.elementor-has-item-ratio .elementor-post__thumbnail img {
	width: auto;
	height: 100%;
	min-width: 100%;
}
.elementor-posts article.elementor-post.elementor-grid-item .elementor-post__title a::after {
	content: '';
	position: absolute;
	inset: 0;
}

.e-load-more-message {
	border: 1px solid var(--ast-border-color);
	margin: 30px auto !important;
	border-radius: 8px;
	padding: 10px 20px;
	white-space: nowrap;
	width: 250px;
	max-width: 100%;
}

#related-articles .uael-infobox-title-wrap {
	padding: 5px 20px;
}
#related-articles .uael-image-content.elementor-animation- {
	aspect-ratio: 4 / 3;
	overflow: hidden;
	display: block;
	width: 100%;
}

#related-articles .elementor-22858 .elementor-element.elementor-element-6adec0e .uael-image .uael-image-content img {
	transition-duration: 0.3s;
	width: 100%;
	height: 100% !important;
	object-fit: cover;
	display: block;
}

#related-articles .elementor-section.elementor-top-section.elementor-element.elementor-element-2c125e1.elementor-section-boxed.elementor-section-height-default {
	box-shadow: 0 1px 0 0 rgba(0,0,0,0.1) !important;
}

/* 
 * Archive Tiles
 */


/**
 * Cart Shipping Modal
 */
#cart-delivery-times-button,
#cart-delivery-times-button-desktop,
#cart-delivery-times-button-mobile,
.cart-delivery-times-button {
	padding: 0 0 0 0 !important;
	margin: 10px 0 0 0 !important;
    background: unset !important;
	border: none !important;
	box-shadow: none !important;
	outline: none !important;
    color: #e64529 !important;
	font-size: 80% !important;
	font-weight: 400;
	display: inline-block;
}

#cart-delivery-times-button-mobile {
	text-align: right !important;
}

.woocommerce-cart .cart_totals .cart-delivery-times-wrap {
	margin-top: 0.5rem;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table .cart-delivery-times-wrap {
	margin-top: 0.5rem;
}

@media (min-width: 1053px) {
	.woocommerce-cart .cart_totals .cart-delivery-times-wrap--mobile {
		display: none !important;
	}
}

@media (min-width: 768px) {
	.woocommerce-checkout .woocommerce-checkout-review-order-table .cart-delivery-times-wrap--mobile {
		display: none !important;
	}
}

@media (max-width: 1052px) {
	.woocommerce-cart .cart_totals .cart-delivery-times-wrap--desktop {
		display: none !important;
	}
}

@media (max-width: 767px) {
	.woocommerce-checkout .woocommerce-checkout-review-order-table .cart-delivery-times-wrap--desktop {
		display: none !important;
	}

	.woocommerce-cart .cart_totals .cart-delivery-times-wrap--mobile,
	.woocommerce-checkout .woocommerce-checkout-review-order-table .cart-delivery-times-wrap--mobile {
		text-align: right;
	}

	.woocommerce-cart .cart_totals .cart-delivery-times-wrap--mobile .cart-delivery-times-button,
	.woocommerce-checkout .woocommerce-checkout-review-order-table .cart-delivery-times-wrap--mobile .cart-delivery-times-button {
		display: inline-block;
	}
}

body.shipping-times-modal-lock {
	overflow: hidden;
	overscroll-behavior: none;
}
.shipping-times-modal-wrap {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 99999;
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
}
.shipping-times-modal-backdrop {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.2);
}
.shipping-times-modal {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 100vh;
	width: 100vw;
	padding: 24px 20px;
	box-sizing: border-box;
}
.shipping-times-modal-content {
	position: relative;
	padding: 45px 30px 20px 30px;
	background-color: white;
	border-radius: 8px;
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
	max-height: calc(100dvh - 48px);
	max-width: 72rem;
	width: 100%;
}
.shipping-times-modal-close {
	position: absolute;
	top: 10px;
	right: 10px;
	background: unset !important;
	border: none !important;
	outline: none !important;
	padding: 0 !important;
	margin: 0;
}

@supports not (height: 100dvh) {
	.shipping-times-modal-content {
		max-height: calc(100vh - 48px);
	}
}
.woocommerce-page table.shop_table_responsive tr.woocommerce-shipping-totals.shipping td::before {
/* 	content: 'Shipping' !important; */
}

/* Newsletter form */

#newsletter_form .elementor-message.elementor-message-danger {
	text-align: center;
}


#newsletter_form .elementor-field-type-submit .elementor-button {
	min-width: 160px; /* adjust to taste */
}

#newsletter_form .elementor-form-spinner{
	display: none !important;
	visibility: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Mobile clean-up for newsletter form errors */
@media (max-width: 767px) {
	.elementor-field-group.elementor-column.elementor-field-type-submit.elementor-col-100.e-form__buttons {
		margin-top: 10px;
		margin-bottom: 30px;
	}
}


/* Newsletter form: reduce motion and remove submit button animation/icon */
#newsletter_form .elementor-button,
#newsletter_form .elementor-button * {
	transition: none !important;
	animation: none !important;
	transform: none !important;
}


/* Reserve space so errors don't push the layout */
#newsletter_form .elementor-field-group {
	position: relative;
	padding-bottom: 5px; 
}

/* Place the error text into the reserved space */
#newsletter_form .elementor-form-help-inline.elementor-message {
	position: absolute;
	left: 0;
	top: 100%;
	margin-top: 6px;
	width: 100%;
}

/* Optional: keep it tidy */
#newsletter_form .elementor-form-help-inline.elementor-message {
	font-size: 13px;
	line-height: 1.2;
}



/* Reserve space for the overall form message */
#newsletter_form {
	position: relative;
	padding-bottom: 28px; /* space for the message */
}

#newsletter_form > .elementor-message[role="alert"] {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0;
}


/* Newsletter form only: stop Elementor "waiting" visuals (spinner + opacity) */
#newsletter_form.elementor-form-waiting,
#newsletter_form.elementor-form-waiting * {
	animation: none !important;
	transition: none !important;
}

/* Remove spinner pseudo-elements Elementor adds on submit */
#newsletter_form.elementor-form-waiting .elementor-button::before,
#newsletter_form.elementor-form-waiting .elementor-button::after,
#newsletter_form.elementor-form-waiting .elementor-button-content-wrapper::before,
#newsletter_form.elementor-form-waiting .elementor-button-content-wrapper::after {
	content: none !important;
	display: none !important;
}

/* If the spinner is an icon element o */
#newsletter_form .eicon-spinner,
#newsletter_form i[class*="eicon-"][class*="spin"],
#newsletter_form .elementor-button i,
#newsletter_form .elementor-button svg {
	animation: none !important;
	display: none !important;
}




/* Newsletter form only: stop the submit row from stretching the button */
#newsletter_form .elementor-field-type-submit,
#newsletter_form .elementor-field-group.elementor-field-type-submit {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
}

/* Force the button to size to its content, never grow */
#newsletter_form .elementor-field-type-submit .elementor-button,
#newsletter_form .elementor-field-group.elementor-field-type-submit .elementor-button {
	flex: 0 0 auto !important;
	width: auto !important;
	max-width: 100% !important;
}

/* If Elementor is stretching the wrapper, clamp that too */
#newsletter_form .elementor-field-type-submit .elementor-button-content-wrapper {
	flex: 0 0 auto !important;
	width: auto !important;
}

/* Website displayed on small "desktop" screens Fix */
.mg-mega-menu--section-item {
	padding: clamp(0.4rem, 1vh, 0.8rem) 1rem !important;
}	
@media (min-width: 1052px) {
	.woocommerce-product-gallery__wrapper img {
		max-height: calc(100vh - 228px);
		width: 100%;
		object-fit: contain;
	}
}

/* Footer */

.website-copy p {
	margin-bottom:0px !important;
}
