/*
Theme Name:     Arterary
Theme URI:      https://nanostoreltd.com/
Template:       avanam
Author:         CoderPlace
Author URI:     #
Description:    Arterary Theme is child theme of Avanam. Please install Avanam Theme before activate this theme.
Version:        1.0.2
License:        GNU General Public License v3.0 (or later)
License URI:    https://www.gnu.org/licenses/gpl-3.0.html
*/
:root{
    --global-gray-400: var(--global-palette7);
    --global-gray-500: var(--global-palette7);
	--global-xs-spacing: 1em;
    --global-sm-spacing: 1.5rem;
    --global-md-spacing: 2rem;
    --global-lg-spacing: 2.5em;
    --global-xl-spacing: 2em;
    --global-xxl-spacing: 2rem;
    --global-edge-spacing: 1.5rem;
    --global-boxed-spacing: 2rem;
}
input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], 
input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], 
input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea{
	color: var(--global-palette3);
	font-weight: 400;
	font-size: 100%;
	padding: 9px 10px;
}
#cart-drawer.popup-drawer .drawer-inner p {
    padding: 0px 25px;
}
.content-area {
    margin-top: 50px;
    margin-bottom: 50px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered{
	color: var(--global-palette3);
	font-weight: 400;
	font-size: 100%;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
    background: #ff6868;
}
#cart-drawer.popup-drawer .drawer-content .woocommerce-mini-cart__total.total {
    padding: 16px 25px;
    border: none;
    background-color: var(--global-palette8);
}
.archiv .wp-block-group__inner-container.toggled-off ul,.woocommerce ul.products.grid-cols li.product:nth-child(4n+4)::after,
.home .side-mobile-toggle-open-container{display: none;}
.archiv .woocommerce ul.products.grid-cols li.product:nth-child(5n+5)::after, .side-mobile-toggle-open-container{display: block;}
#widget-drawer .header-widget2 a:not(.button){
	color: var(--global-palette3);
}
.drawer-inner .drawer-content {
	padding: 0px !important;
}
.select2-container--default .select2-selection--single{ border-radius: 3px;}
.entry-hero-container-inner .entry-header{ padding: 25px 0px; align-items: center;}
.entry-hero-container-inner .entry-header .archive-description p{ margin: 0px 0px;}
.header-navigation .header-menu-container ul ul li.menu-item > a {
    text-transform: capitalize;
}
li.menu-item.woosc-menu-item.menu-item-type-woosc {
    margin-right: 15px;
}
.site-header-upper-inner-wrap {
    border-bottom: 1px solid var(--global-palette7);
}
.header-search-bar form input.search-field{
    border-radius: 50px;
    padding: 8px 50px 9px 16px;
	background-color: var(--global-palette8);
	color: var(--global-palette3);
	font-weight: 500;
}
/* blog :hover */
.loop-entry .post-thumbnail-inner:hover img {
    transform: scale(1.05);
}
.loop-entry .post-thumbnail-inner img {
    transition: all .5s ease-in-out;
    -webkit-transition: all .5s ease-in-out;
}
.main-navigation .primary-menu-container > ul > li > a:hover, .main-navigation .primary-menu-container > ul > li.menu-item.current-menu-item > a {
    text-decoration: underline;
}
.main-navigation .primary-menu-container > ul > li.menu-item:hover > a {
    color: var(--global-palette1);
    text-decoration: underline;
}
ul#menu-nav_menu-1 {
    padding: 0 20px;
}
.site-header-item {
    margin-right: 17px;
}
.element-contact-inner-wrap {
    margin-top: 0;
    margin-left: 0;
}
.element-contact-inner-wrap .header-contact-item {
    margin-top: 0;
}
.site-container {
	padding: 0;
}
.site-top-header-wrap.site-header-row-container.site-header-focus-item.site-header-row-layout-contained {
    padding: 0;
}
.site-main-header-wrap.site-header-row-container.site-header-focus-item.site-header-row-layout-contained {
    padding: 0px 0px;
}
form.woocommerce-product-search .base-search-icon-wrap{ display: none; }
form.woocommerce-product-search button[type="submit"] {
    width: 55px;
    font-size: 0;
    mask-image: url(assets/images/search.svg);
    -webkit-mask-image: url(assets/images/search.svg);
    height: 40px;
    -webkit-mask-size: 20px;
    -webkit-mask-repeat: no-repeat;
    background-color: var(--global-palette3) !important;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    top: 3px;
    padding: 0 0;
}
.site-bottom-header-wrap.site-header-row-container.site-header-focus-item.site-header-row-layout-contained {
    padding: 0;
}
.site-header-top-section-right.site-header-section.site-header-section-right .site-header-item {
    margin-right: 0px;
}
.inner-link-style-normal a:not(.button), .widget-area.inner-link-style-normal a:not(.button) {
    text-decoration: none;
}
p:empty,.site-mobile-header-wrap .header-contact-wrap .header-contact-item:first-child  {
    display: none;
}
.site-header-item .widget-toggle-open-container #widget-toggle{
    display: flex;
    flex-direction: row-reverse;
    gap: 10px;
	padding: 15px 20px 15px 0;
}
.site-main-header-wrap .site-header-row-container-inner>.site-container {
    padding: 0px 0px 0px 0px;
}
svg.base-svg-icon.base-phone-alt-svg , svg.base-svg-icon.base-email-alt2-svg , svg.base-svg-icon.base-account-svg {
    height: 16px;
    width: 16px;
}
.header-cart-button .header-cart-total{
	position: absolute;
	height: 18px;
	width: 18px;
	right: auto;
	border-radius: 50%;
	background-color: var(--global-palette2) !important;
	color: var(--global-palette9);
	line-height: 17px;
	font-size: 14px;
	font-weight: 400;
	top: 3px;
 	left: 25px;
}
rs-module#rev_slider_1_1 {
    border-radius: 0;
}
.homepage-brand-slider img.swiper-slide-image {
    margin: 0 auto;
}
h3.wp-block-heading {
    color: var(--global-palette1);
}
.site-footer .widget-area ul{
    padding-left: 0px;
    list-style: none;
    margin-left: 0px;
}
.woo_categories_grid .grid-cols {
	column-gap: 3.75rem;
	row-gap: 1.7rem;
}
.elementor-widget-image .elementor-widget-container {
	overflow: hidden;
	border-radius: 0;
	position: relative;
	display: inline-block;
	width: auto;
}
.entry.loop-entry{ 	box-shadow: none; }
input[type=color], input[type=date], input[type=datetime-local], input[type=datetime], input[type=email], input[type=month], input[type=number], input[type=password], input[type=range], input[type=search], input[type=tel], input[type=text], input[type=time], input[type=url], input[type=week], textarea {
    border-radius: 0;
}
.primary-sidebar.widget-area .widget_media_image{
	border: none !important;
	padding: 0px !important;
}
.primary-sidebar.widget-area .widget_media_image img{ border-radius: 0; }
.primary-sidebar h2{
	padding-bottom: 0px;
	margin-bottom: 0px;
}
.header-navigation .header-menu-container ul ul.sub-menu, 
.header-navigation .header-menu-container ul ul.submenu{
	padding: 10px 10px;
	top: 100%;
	border: 1px solid var(--global-palette8);
	border-radius: 0;
}
rs-arrow.tp-rightarrow.tparrows.hesperiden {
    left: 99.5% !important;
}
#widget-drawer .header-widget2 .widget-title {
    background-color: var(--global-palette1);
	color: var(--global-palette9);
    padding: 15px 20px;
}
.popup-drawer .drawer-content {
    padding: 0px 25px 0px 25px;
	position: absolute;
    top: 0;
    left: 0;
    right: 0;
}
body .collapse-sub-navigation ul.menu .drawer-nav-drop-wrap .drawer-sub-toggle{
	border-left: 0px;
}
.e-con>.e-con-inner {
    gap: 5px;
}
/* Shop by category toggle menu  */
.grid-lg-col-5 {
    grid-template-columns: repeat(4,minmax(0,1fr));
}
ul.products.content-wrap.product-archive.grid-cols.grid-ss-col-2.grid-sm-col-3.grid-lg-col-4.woo-archive-action-visible.woo-archive-btn-button.woo-archive-loop.woo-archive-image-hover-fade {
    column-gap: 20px;
    row-gap: 65px;
}
.elementor-element.elementor-element-ea10232.elementor-widget.elementor-widget-heading {
    margin-bottom: 0px;
}
.elementor-element.elementor-element-a64c205.elementor-widget.elementor-widget-heading {
    margin-bottom: 0px;
}
.elementor-element.elementor-element-95ae071.elementor-widget.elementor-widget-heading {
    margin-bottom: 0;
}
.dropdown-toggle-nav{ margin: 0px; }
.base-product-toggle-container .base-toggle-shop-layout.toggle-active, .base-product-toggle-container .base-toggle-shop-layout:hover {
    background: var(--global-palette1);
}
.wpc-filters-main-wrap .wpc-filter-layout-labels.wpc-filter-has-swatches .wpc-filters-labels li.wpc-term-item label, li.wpc-chip-reset-all .wpc-filter-chip-name {
    color: var(--global-palette9);
}
.wpc-filter-chips-list a:hover .wpc-chip-remove-icon, .wpc-filter-search-wrapper button.wpc-search-clear:hover, .wpc-search-field-wrapper a.wpc-search-clear-icon:hover {
    color: var(--global-palette1) !important;
}
.woocommerce ul.products-list-view li.product .product-excerpt {
    display: block;
}
.woocommerce-page .woocommerce-pagination ul.page-numbers, .woocommerce .woocommerce-pagination ul.page-numbers { margin-top: 100px;}
.dropdown-toggle-nav .widget_product_categories{ position: relative; }
.dropdown-toggle-nav .widget_product_categories h2.widgettitle{
	font-size: 15px;
	font-weight: 500;
	padding: 13px 20px 13px 50px;    
	cursor: pointer;
	color: var(--global-palette2);
	background-color: var(--global-palette9);
	min-width: 280px;
	border-radius: 5px 5px 0px 0px;
	border-bottom: 1px solid var(--global-palette7);
}
.dropdown-toggle-nav .widget_product_categories h2.widgettitle::before{	
	content: '';	
	-webkit-mask-image: url(assets/images/menu-icon.svg);
	mask-image: url(assets/images/menu-icon.svg);	
    mask-size: 20px;
    -webkit-mask-size: 20px;
    height: 20px;
    width: 20px;
	left: 18px;
	top: 18px;
	position: absolute;	
	background-color: var(--global-palette2);
}
.dropdown-toggle-nav .widget_product_categories h2.widgettitle::after{
	border-style: solid;
    border-width: 2px 2px 0 0;
    content: '';
    display: inline-block;
    top: 50%;
    left: 90%;
    margin-left: -2px;
    margin-top: -4px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    width: 8px;
    height: 8px;
    position: absolute;
}
.dropdown-toggle-nav .widget_product_categories.toggled-on h2.widgettitle::after{
	-webkit-transform: rotate(315deg);
	transform: rotate(315deg);
	margin-top: -2px;
}
.dropdown-toggle-nav .widget_product_categories > ul,.product-action-wrap .woosc-btn, .product-action-wrap .woosq-btn, .product-action-wrap .woosw-btn{ display: none; }
.dropdown-toggle-nav .widget_product_categories.toggled-on > ul{
	display: block;
	position: absolute;
	background-color: var(--global-palette9);
	width: 280px;
	z-index: 9;
	box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.05);
	border-radius: 0px 0px 5px 5px;
	border-top: none;
	margin-bottom: 0px;
}
.dropdown-toggle-nav .widget_product_categories > ul li a,
.dropdown-toggle-nav .widget_product_categories > ul li a:hover{
	padding: 10.8px 0px;
	border-color: var(--global-palette7);
	color: var(--global-palette3);
	font-size: 14px;
	margin: 0 15px;
}
.dropdown-toggle-nav ul.product-categories > li:last-child > a,
.dropdown-toggle-nav ul.product-categories li ul > li:last-child > a{ border: 0px; }
.dropdown-toggle-nav .product-categories .cat-parent > .children,
.dropdown-toggle-nav .product-categories ul li ul li:hover > ul.children > ul.children {
	background: var(--global-palette9);	
	margin: 0;
	padding: 8px 15px;
	z-index: 9999;
	left: 100%;
	position: absolute;
	list-style: none;
	right: auto;
	top: 0px;
	width: 250px;
	padding: 0px;
	border: 1px solid var(--global-palette8);
	opacity: 0;
	-webkit-transform: scaleY( 0 );
	-moz-transform: scaleY( 0 );
	-ms-transform: scaleY( 0 );
	-o-transform: scaleY( 0 );
	transform: scaleY( 0 );
	-webkit-transition: -webkit-transform 0.3s ease, max-height 0.3s step-end, max-width 0.3s step-end, padding 0.3s step-end;
	-o-transition: -o-transform 0.3s ease, max-height 0.3s step-end, max-width 0.3s step-end, padding 0.3s step-end;
	transition: transform 0.3s ease, max-height 0.3s step-end, max-width 0.3s step-end, padding 0.3s step-end;
	-webkit-transform-origin: 0% 0%;
	-moz-transform-origin: 0% 0%;
	-ms-transform-origin: 0% 0%;
	-o-transform-origin: 0% 0%;
	transform-origin: 0% 0%;
}
.dropdown-toggle-nav .product-categories li:hover > .children,
.dropdown-toggle-nav .product-categories li ul li ul.children li:hover > ul.children {
	opacity: 1;
	-webkit-transform: scaleY( 1 );
	-moz-transform: scaleY( 1 );
	-ms-transform: scaleY( 1 );
	-o-transform: scaleY( 1 );
	transform: scaleY( 1 );
	-webkit-transition: -webkit-transform 0.3s ease, max-height 0s step-start, max-width 0s step-start, padding 0s step-start;
	-o-transition: -o-transform 0.3s ease, max-height 0s step-start, max-width 0s step-start, padding 0s step-start;
	transition: transform 0.3s ease, max-height 0s step-start, max-width 0s step-start, padding 0s step-start;
	border-radius: 0 0 5px 5px;
}
.dropdown-toggle-nav .product-categories li > ul li a { position: relative; }
.woocommerce.widget_product_categories > ul li.current-cat > a { font-weight: 500;}
.dropdown-toggle-nav .widget_product_categories > ul li .more-wrap {
	padding-top: 8px;
	cursor: pointer;
	font-weight: 500;
}
.dropdown-toggle-nav .product-categories li.cat-parent > a::after {
	border-style: solid;
    border-width: 1px 1px 0 0;
    content: '';
    display: inline-block;    
    top: 50%;
    left: 90%;
    margin-left: -2px;
    margin-top: -4px;
    -webkit-transform: rotate(40deg);
    transform: rotate(40deg);
	width: 6px;
	height: 6px;
	position: absolute;
	color: var(--global-palette3);
}
.footer-social-wrap {margin-top: 10px;}
.dropdown-toggle-nav .product-categories li.cat-parent > a:hover::after{color: var(--global-palette1);}
.dropdown-toggle-nav .widget_product_categories > ul li a:hover {color: var(--global-palette1);}
.woocommerce .star-rating span::before{color: #F1C50F;}
.dropdown-toggle-nav .widget_product_categories > ul li.cat-parent > ul{ display: block; }
.dropdown-toggle-nav .widget_product_categories > ul li.cat-parent .base-cat-toggle-sub,.base-hide-sidebar-btn,.side-mobile-toggle-open-container{ display: none; }
h2.widget-title {z-index: -1;}
.drawer-content {margin-top: 0;}
#widget-drawer .drawer-header .drawer-toggle, #widget-drawer .drawer-header .drawer-toggle:focus {color: var(--global-palette9)}
#widget-drawer .header-widget2 a:not(.button):hover {
    color: var(--global-palette1);
}

/* Home page Blog listing */
.comment-form{margin-bottom: 50px; border-radius: 0;}
.container-inner a.post-thumbnail {border-radius: 0;}
.grid-lg-col-3 {
    grid-template-columns: repeat(2,minmax(0,1fr));
}
.search-form .search-submit[type=submit]:hover~.base-search-icon-wrap {color: var(--global-palette1);}
.content-wrap a.post-thumbnail.base-thumbnail-ratio-inherit {border-radius: 0;}
.primary-sidebar.widget-area .sidebar-inner-wrap a:where(:not(.button):not(.wp-block-button__link):not(.wp-element-button)) {color: #000000;}
body.home .latest-blog{ margin: 0px 13px; }
body.home .latest-blog .entry-content-wrap{ padding: 15px 0px 0px 0px; }
h4.entry-title {
    font-size: 20px;
    line-height: 26px;    font-weight: 500;
    text-transform: none;
}
.entry-header {
    margin-bottom: 0em;
}
.loop-entry.type-post h2.entry-title {
    font-size: 20px;
    line-height: 28px;
    font-weight: 500;
}
/* owl-carsoual */
.owl-theme .owl-buttons div.owl-prev::after {color: var(--wp--preset--color--black) !important;}
.owl-theme .owl-buttons div.owl-next::after, .owl-theme .owl-buttons div.owl-prev::after {
    content: "";
    position: absolute;
    top: -15px;
    background-size: 23px;
    background-repeat: no-repeat;
    background-position: 8px 13px;
    height: 38px;
    width: 38px;
    margin: 0 auto;
    left: 0px;
    right: 0;
    box-shadow: 0 0 16px 0 rgba(0,0,0,.11);
    border-radius: 100%;
    background-color: #f7f7f7;
}
.footer-newsletter .newsletter-form .tnp-email::placeholder {
	color: #000;
	font-weight: 600;
	opacity: 50%;
}
.title-icon .swiper-slide-image {
    max-width: 100%;
    position: relative;
    margin: 0 auto;
    cursor: pointer;
    filter:invert(85%) sepia(8%) saturate(02%) hue-rotate(500deg) brightness(163%) contrast(92%);
    -webkit-filter: invert(85%) sepia(8%) saturate(02%) hue-rotate(500deg) brightness(163%) contrast(92%);
    -moz-filter: invert(85%) sepia(8%) saturate(02%) hue-rotate(500deg) brightness(163%) contrast(92%);
    -ms-filter: invert(85%) sepia(8%) saturate(02%) hue-rotate(500deg) brightness(163%) contrast(92%);
    -o-filter: invert(85%) sepia(8%) saturate(02%) hue-rotate(500deg) brightness(163%) contrast(92%);
}
.icon_hover svg {
    transition: 0.3s all;
}
.icon_hover:hover svg {
   transform: translateY(-6px);
}
.title-icon .swiper-slide-image:hover {
    opacity: 1;
    filter: none;
}
.owl-theme .owl-buttons div.owl-prev::after { background-image: url(assets/images/left-arrow.svg); }
.owl-theme .owl-buttons div.owl-next::after { background-image: url(assets/images/right-arrow.svg); }
.owl-theme:hover .owl-buttons div { opacity: 1; -khtml-opacity: 1; -webkit-opacity: 1; -moz-opacity: 1; }
.owl-theme .owl-buttons div {
	display: block;
	font-size: 0;
	height: 32px;
	width: 32px;
	position: absolute;
	text-align: center;
	top: 32%;
	bottom: auto;
	opacity: 0;
	-khtml-opacity: 0;
	-webkit-opacity: 0;
	-moz-opacity: 0;
	margin: auto !important;
	transition: all .3s ease 0s;
	-webkit-transition: all .3s ease 0s;
	-moz-transition: all .3s ease 0s;
	-ms-transition: all .3s ease 0s;
	margin: auto;
	z-index: 99;
	cursor: pointer;
}
.testimonial-carousel .elementor-widget-container::before {
    content: "";
    background: url(assets/images/quto.svg) no-repeat scroll center;
    height: 30px;
    width: 100%;
    position: relative;
    float: none;
    display: inline-block;
    vertical-align: top;
    margin-bottom: 20px;
}
.home .elementor-testimonial-details {
    margin-bottom: 15px;
}
.wp-site-blocks .post-thumbnail {
    padding-bottom: 63.983%;
}
.owl-theme .owl-buttons div.owl-next { right: 0px; left: auto; }
.owl-theme .owl-buttons div.owl-prev { left: 0px; right: auto; }
.owl-controls .owl-pagination, .woocommerce ul.products li.product .product-details .price { text-align: center; }
.owl-pagination .owl-page span {
	height: 12px;
	width: 12px;
	background-color: var(--global-palette7);
	display: block;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-khtml-border-radius: 50%;
	-moz-border-radius: 50%;
}
.owl-pagination .owl-page.active:hover span, .owl-pagination .owl-page.active span, .owl-pagination .owl-page:hover span { background-color: var(--global-palette1); }
.owl-theme .owl-page { display: inline-block; margin: 3px 3px; vertical-align: top; }

/* WooCommerce CSS */
.woo_categories_grid .cat-outer-block:hover .cat-inner-block .cat-img img {
    transform: scale(1.06);
    -webkit-transform: scale(1.06);
    -ms-transform: scale(1.06);
    -o-transform: scale(1.06);
    -moz-transform: scale(1.06);
}
.woo_categories_grid .cat-outer-block .cat-inner-block .cat-img img {
    transition: all 0.5s ease 0s;
    -webkit-transition: all 0.5s ease 0s;
    -moz-transition: all 0.5s ease 0s;
    -o-transition: all 0.5s ease 0s;
    -ms-transition: all 0.5s ease 0s;
}
ul.products li.product:hover .product_type_external:before, ul.products li.product:hover .product_type_grouped:before, ul.products li.product:hover .product_type_simple:before, ul.products li.product:hover .product_type_variable:before, ul.products li.product:hover .product_type_variation:before {
    background: var(--global-palette9);
}
.cat_description {text-align: center; margin-top: 15px; }
.cat-link {text-align: center;}
.woocommerce form.login, .woocommerce form.checkout_coupon, .woocommerce form.register{
	border-color: var(--global-palette7);
	padding: 30px;
}
body .woocommerce-store-notice a.woocommerce-store-notice__dismiss-link {float: none;}
.woocommerce-store-notice a.woocommerce-store-notice__dismiss-link, p.demo_store a.woocommerce-store-notice__dismiss-link {
    padding: 0 10px;
    margin-top: 0;
    margin-bottom: 0;
	text-decoration: underline;
    border: 0;
	text-transform: uppercase;
}
.cat-link a.cat_name{
	color: #6b7280;
	font-size: 15px;
	line-height: 20px;
	letter-spacing: -0.1;
	font-weight:400;
}
.wpc-filter-header {
    margin-bottom: 5px;
}
.primary-sidebar.widget-area .widget {
    margin-bottom: 35px;
    border: 1px solid var(--global-palette7);
    padding: 20px 20px;
}
.related.products .owl-theme .owl-buttons div.owl-prev ,.related.products .owl-theme .owl-buttons div.owl-next{
    top: 50%;
}
.search-form .base-search-icon-wrap {color: #000; width:50px;}
.woocommerce form.register .woocommerce-privacy-policy-text{ margin-bottom: 10px; }
.woo-products.woo-content.products_block.shop, .blog-posts-content{ margin: 0 0px; }
.woocommerce ul.products li.product{ overflow: unset; margin: 0px; }
.product-block-inner {
    border: 1px solid var(--global-palette7);
	padding: 20px;
}
.woocommerce ul.products li.product {
    display: grid;
    align-content: space-between;
    height: 100%;
}
.owl-carousel .owl-wrapper {
    display: flex !important;
    flex-wrap: wrap;
}
.product-block-inner:hover{
	border: 1px solid #ff5357;
}
.woocommerce ul.products.owl-carousel li.product{
	padding: 0px 15px;
	border-radius: 0;
}
.woocommerce ul.products.woo-archive-btn-button li:hover .product-action-wrap .button:not(.kb-button) {
	background-color: var(--global-palette2);
	color: var(--global-palette9);
}
.woocommerce ul.products.products-list-view li.product {
    padding: 0;
}
.woocommerce ul.products.grid-cols li.product::after, 
.woocommerce ul.products.owl-carousel li.product::after {
    content: "";
    width: 1px;
    height: 100%;
    background-color: #f2f2f2;
    display: block;
    position: absolute;
    left: auto;
    top: 0;
    right: 0px;
}
.post-title .entry-meta {
    font-weight: 400;
    font-size: 15px;
    color: #000000;
}
.elementor-widget-container .elementor-element .elementor-element-e71dc25 .elementor-widget .elementor-widget-testimonial::after{
	content: "";
	width: 1px;
	height: 130px;
	background-color: var(--global-palette7);
	display: block;
	position: absolute;
	left: auto;
	right: 0;
	top: 0;
}
.woocommerce ul.products.products-list-view li.product::after { display: none;}
.woocommerce.hot-product ul.products.owl-carousel li.product::after{ height: 215px; }
.woocommerce ul.products.grid-cols li.product::after{ right: -10px;}
.woocommerce ul.products.owl-carousel li.product::after{ right: 0px;}
.woocommerce ul.products.owl-carousel .last li.product::after{ background:none;}
.woocommerce ul.products li.product .entry-content-wrap{
	margin: 0px;
	padding-bottom: 0;
	text-align: center;
	padding: 20px 10px 0 10px !important;
}
.site-top-header-wrap .site-header-row-container-inner {
    padding: 0 20px;
}
.site-main-header-wrap .site-header-row-container-inner>.site-container {
    padding: 0px 0px;
}
.woocommerce ul.products li.product .product-details .price {
	text-align: center;
	margin-top: 4px;
    letter-spacing: -0.1px;
    font-size: 18px;
    font-weight: 500;
    line-height: 22px;
}
.woocommerce form .form-row .button,
button, .button, .wp-block-button__link, 
.wp-element-button, input[type="button"], 
input[type="reset"], input[type="submit"]{
	padding: 12px 46px;
	line-height: 21px;
	letter-spacing: -0.1px;	
	border-radius: 50;
}
.woocommerce .related.products h2 {
    color: var(--e-global-color-base5);
    font-family: "Karla", Sans-serif;
    font-size: 30px;
    font-weight: 700;
    text-transform: capitalize;
    line-height: 22px;
    letter-spacing: -1.6px;
}
.woocommerce ul.products.woo-archive-btn-button li.product .button.added, .woocommerce ul.products li.woo-archive-btn-button .button.added {display: block;}
.woocommerce .product-action-wrap a.added_to_cart{
	background: var(--global-palette1);
	font-size: 100%;
	font-weight: 400;
	text-transform: capitalize;
	padding: 9px 30px;
	border-radius: 3px;
}
ul.products li.product .added_to_cart:hover{
	color: var(--global-palette9);
    background: var(--global-palette2);
}
ul.products li.product .added_to_cart{
	color: var(--global-palette3);
	font-weight: 500;
    background: #f2f2f2;
    text-align: center;
    transition: color .2s ease,background .2s ease,border .2s ease;
    width: 100%;
    display: inline-block;
    vertical-align: top;
    text-decoration: none;
    font-size: 16px;
    padding: 10px 35px;
    width: auto;
    height: 45px;
    border-radius: 50px;
}
.woocommerce ul.products.woo-archive-btn-button .product-action-wrap .button:not(.kb-button), 
.woocommerce ul.products li.woo-archive-btn-button .button:not(.kb-button), 
.wc-block-grid__product.woo-archive-btn-button .product-details .wc-block-grid__product-add-to-cart .wp-block-button__link{
	background-color: var(--global-palette8);
	width: auto;
    display: inline-block;
	padding: 12px 35px ;
	border-radius: 50px;
	margin-left: 7px;
}
.woocommerce ul.products li.product .product-action-wrap {
    background-color: #fff;
    padding: 0px;
    border-radius: 0;
    margin: 0;
}
.woocommerce ul.products li.product .product-action-wrap{
	opacity: 1;
}
.woocommerce ul.products.woo-archive-btn-button li .product-action-wrap .button:not(.kb-button) {
    background: #f2f2f2;
    color: var(--global-palette3);
	margin: 10px 0px 0px;
    font-size: 16px;
    font-weight: 500;
    line-height: 21px;
	text-transform: capitalize;
}
.woocommerce ul.products li.product .price, 
.woocommerce ul.products li.product .price ins{
	font-size: 18px;
	color: var(--global-palette4);
	font-weight: 500;
	padding-right: 0px !important;
}
.woocommerce ul.products li.product .price del{
	color: #6b7280;
	opacity: 1;
	font-size: 18px;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title a{ color: var(--global-palette5); font-size: 16px; font-weight: 500; letter-spacing: -0.1px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title a:hover{ color: var(--global-palette1); }
.woo-products ul.products.content-wrap{
	float: left;
	width: 100%;
	margin: 0px;
}
.woo_categories_slider,
.testimonial-carousel .owl-carousel{ 
	margin: 0px -10px;
}
.elementor-testimonial-wrapper .elementor-testimonial-content{
	margin-bottom: 5px !important;
}
.elementor-35 .elementor-element.elementor-element-4269a0c .elementor-testimonial-wrapper .elementor-testimonial-meta-inner .elementor-testimonial-image{
	margin-bottom: 0;
}
.elementor-testimonial-image img{
	margin: 0 auto;
}
.testimonial-carousel .owl-carousel{ padding: 0px !important; }
.woo_categories_slider .cat-outer-block{
	margin: 0px 10px;
	padding: 0px 0px;
	text-align: center;
	border-radius: 5px;
}
.cat-img-block {
    background-color: var(--global-palette9);
    border-radius: 50%;
    overflow: hidden;
}
.woo_categories_slider .cat-outer-block .cat-inner-block{
	display: flex;
    flex-direction: column;
	align-items: center;
	gap: 15px;
}
.woo_categories_slider .cat-outer-block .cat-inner-block .cat-img img{
	transition: all 0.5s ease 0s;
    -webkit-transition: all 0.5s ease 0s;
    -moz-transition: all 0.5s ease 0s;
    -o-transition: all 0.5s ease 0s;
	-ms-transition: all 0.5s ease 0s;
	border-radius: 50%;
}
.woo_categories_slider .cat-outer-block:hover .cat-inner-block .cat-img img{
	transform: scale(1.06);
    -webkit-transform: scale(1.06);
    -ms-transform: scale(1.06);
    -o-transform: scale(1.06);
    -moz-transform: scale(1.06);
}	
.woo_categories_slider .cat-outer-block .cat-inner-block .cat_name{
	color: var(--global-palette1);
	font-weight: 500;
}
.woo_categories_slider .cat-all-category{
	text-align: center;
	margin-top: 30px;
	display: inline-block;
	width: 100%;
}
.woocommerce ul.products li.product .star-rating{
	float: none;
	margin: 8px 0px 0px 0px;
	font-size: 18px;	
	letter-spacing: -2px;
	display: inline-block;
}
.woocommerce .star-rating::before{
	content: "\e901\e901\e901\e901\e901";	
	color: #c7c7c7;
}
.woocommerce ul.products li.product .product-category{
	margin: 0px 0px 6px;
	color: var(--global-palette6);
	line-height: 15px;
	display: inline-block;
}
.elementor-widget-image {
    line-height: 0;
}
.cat_description a.cat_name {
	color: var(--global-aplette3);
	font-size: 16px;
	font-weight: 500;
	line-height: 20px;
	letter-spacing: -0.2;
}
.woocommerce ul.products li.product .product-action-wrap {
    margin: 0;
}
ul.products.content-wrap.product-archive.grid-cols.grid-ss-col-2.grid-sm-col-3.grid-lg-col-4.woo-archive-action-visible.woo-archive-btn-button.woo-archive-loop.woo-archive-image-hover-fade.products-grid-view {
    column-gap: 20px;
    row-gap: 95px;
}
ul.products.content-wrap.product-archive.grid-cols.grid-ss-col-2.grid-sm-col-3.grid-lg-col-4.woo-archive-action-visible.woo-archive-btn-button.woo-archive-loop.woo-archive-image-hover-fade.products-list-view {
    row-gap: 25px;
}
.woocommerce ul.products.products-list-view li.product{
	grid-template-columns:250px 2fr;
	align-items: flex-start;	
	border-bottom: 1px solid var(--global-palette8);
	border-radius: 0px;
	gap: 10px;
	padding-bottom: 25px;
}
.woocommerce ul.products.products-list-view li.product .entry-content-wrap{ padding: 0px 20px; text-align: left; }
.woocommerce ul.products.products-list-view li.product .woocommerce-loop-product__title{ font-size: 15px; text-align: left; }
.woocommerce ul.products.products-list-view li.product .star-rating~.price{ margin: 0px; text-align: left; }
.woocommerce ul.products.products-list-view li.product .product-action-wrap{ margin-bottom: 12px; text-align: left; }
.woocommerce ul.products.products-list-view li.product .product-details .price{text-align: left;}
.woocommerce ul.products.woo-archive-btn-button.products-list-view li .product-action-wrap .button:not(.kb-button){margin: 0px;}
.woocommerce ul.products.products-list-view li.product:not(:hover) .product-action-wrap{opacity: 1; visibility: visible; transform:none; }
.woocommerce nav.woocommerce-pagination ul li .page-numbers{ background-color: var(--global-palette8); font-weight: 500; }
.woocommerce nav.woocommerce-pagination ul li a:hover, 
.woocommerce nav.woocommerce-pagination ul li a:focus{ 
	background: var(--global-palette-btn-bg);
}
select.orderby {
    padding: 0px 12px;
    border: 1px solid var(--global-palette7);
    border-radius: 0px;
    font-weight: 400;
    font-size: 100%;
    height: 33px;
}
.base-product-toggle-container .base-toggle-shop-layout {
    border-radius: 0px;
    background: var(--global-palette8);
}
.woocommerce nav.woocommerce-pagination ul li .page-numbers {
    border-radius: 0;
}
.woocommerce span.onsale {
    background-color: #ff6868;
    font-size: 16px;
    font-weight: 500;
    padding: 5px 12px;
    line-height: 20px;
    letter-spacing: -0.2px;
    border-radius: 50px;
}
footer form.tnp-subscription {
    display: flex;
	margin: 14px 0px 0px 120px;
	justify-content: center;
}
.woocommerce ul.products li.product.entry:hover .onsale{
	display: none;
}
.header-navigation .header-menu-container ul ul li.menu-item > a:hover {
    color: var(--global-palette2);
    text-decoration: underline;
}
#cart-drawer.popup-drawer .drawer-header {
    background-color: var(--global-palette2);
    color: var(--global-palette9);
}
.woocommerce-page div.product .wrap-summary,
.woocommerce-page div.product #wrap-summary {
	display: flex;
	flex-wrap: wrap;
}
.woocommerce-page div.product div.images{  width: 43.75%; margin-bottom: 80px; }
.woocommerce-page div.product div.summary{ 
	width: 54%; 
	padding-left: 30px; 
	border-left: 1px solid var(--global-palette7); 
	margin-top: 0px;
	margin-bottom: 80px;
	margin-left: 0;
}
.woocommerce div.product div.images .flex-control-thumbs{
	margin: 0px;	
}
body.woocommerce div.product div.images .flex-control-thumbs {
    padding: 0 0px;
    text-align: center;
    margin-top: 20px;
    width: 70%;
}
body.woocommerce div.product div.images .flex-control-thumbs li{    
	margin: 0px 10px;
}
body.woocommerce div.product div.images .flex-control-thumbs li, 
body.woocommerce div.product div.images .flex-control-thumbs li:first-child{
	width: auto;
    height: auto;
    padding: 0;
}
.single-product .owl-theme .owl-buttons div.owl-prev{
	top: 58px;
	left: 6px;
    right: auto;
}
.single-product .owl-theme .owl-buttons div.owl-next{
	top: 58px;
	right: 12px;
    left: auto;
}
.woocommerce a.product-single-category{
	text-transform: capitalize;
	color: #6b7280;
	letter-spacing: 0.3px;
}
.woocommerce .star-rating{
	font-size: 18px;
	float: none;
	margin: 5px 0px;
}
.woocommerce div.product .summary .button.single_add_to_cart_button {
    padding: 22.5px 35px;
    line-height: normal;
}
.woocommerce div.product .product_meta>span{
	font-size: 100%;
	font-weight: 400;
	line-height: 24px;
	color: var(--global-palette3);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
	font-size: 20px;
	font-weight: 600;
	padding: 15px 15px;
	color: #6b7280;
}
.woocommerce nav.woocommerce-pagination ul li a:hover, .woocommerce nav.woocommerce-pagination ul li a:focus {
    color: var(--global-palette9);
}
.woocommerce table.shop_attributes{ border-top: none;}
.woocommerce.product-tab-style-center div.product .woocommerce-tabs ul.tabs li{ margin: 0px 18px;}
.woocommerce p.stars a{ font-size: 20px;}
.woocommerce #reviews .comment-reply-title,
.woocommerce #reviews #comments h2{ font-weight: 500; font-size: 20px; letter-spacing: -0.2px;}
.woocommerce .woocommerce-message, .woocommerce .woocommerce-error, .woocommerce .woocommerce-info{ background-color: var(--global-palette8);}
.base-woo-results-count,
.woocommerce div.product form.cart .reset_variations,
.woocommerce table.shop_table{ 
	font-size: 100%;	
}
.single-product .base-breadcrumbs,
.entry-header .base-breadcrumbs{
	font-size: 100%;
	color: #6b7280;
	margin: 0px;
}
#main-header .header-button2 {margin: 0;}
.woocommerce div.product form.cart .reset_variations{ margin-left: 10px; color: var(--global-palette3);}
.woocommerce table.shop_table input{ font-size: 100%; padding: 8px 10px;}
select{
	padding: 8px 10px;
	border-radius: 3px;
}
.woocommerce .single-product-payments legend,
.woocommerce .single-product-extras strong,
.woocommerce div.product form.cart .variations label{ font-weight: 500;}
.product-template-default.woocommerce div.product form.cart .button{
    padding: 0px 88px;
    height: 45px;
}
.woocommerce #reviews #comments ol.commentlist li .meta {
    color: #000000;
    font-size: .75em;
}
.woocommerce #reviews #comments ol.commentlist li .meta {
    color: #000000;
}
.quantity.spinners-added { border-radius: 0; background-color:var(--global-palette8);}
.woocommerce .single-product-payments { border-radius: 0;}
.woocommerce .quantity.spinners-added .qty{ height: 40px; }
.woocommerce div.product div.summary p{ margin: 10px 0px; color: var(--global-palette3);}
.woocommerce div.product form.cart{ 
	margin-top: 20px;	
}
.woocommerce div.product form.cart .woosc-btn,
.woocommerce div.product form.cart .woosw-btn { 
	padding: 11.5px 15px;
	font-size: 22px;
	margin-left: 10px;
}
.woocommerce div.product p.price{
	font-size: 20px;
	font-weight: 500;
	color: var(--global-palette4);

}
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active{
	border: 1px solid var(--global-palette1);
}
.woocommerce div.product div.images .flex-control-thumbs li img{
	opacity: 1;
	border: 1px solid var(--global-palette7);
}
.woocommerce .woocommerce-product-details__short-description{
	border-bottom: 1px solid var(--global-palette7);
	margin-bottom: 15px;
}
.base-woo-cart-form-wrap>form .cart-summary{ display: none;}
.base-woo-cart-form-wrap .cart-collaterals{
	border: 1px solid var(--global-palette7);
	padding: 20px;
	border-radius: 5px;
}
a.button.checkout.wc-forward {padding: 12px 25px;}
.comment-form .comment-input-wrap p label, .comment-form p.comment-form-float-label label {
	color: var(--global-palette3);
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table tfoot td, 
.woocommerce table.shop_table tfoot th, 
.woocommerce table.shop_table tbody th{ 
	font-weight: 500;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button, 
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button, 
#add_payment_method .wc-proceed-to-checkout a.checkout-button{
	padding: 12px 10px;
	background-color: #ff6868;
}
.woocommerce-cart table.cart .coupon .button:not(:hover),.woocommerce-cart table.cart td.actions .coupon .input-text,.woocommerce-cart table.cart td.actions .button:disabled{
	height: 45px;
}
a.shipping-calculator-button {
    border-bottom: 1px solid var(--global-palette3);
}
.woocommerce-cart table.cart .coupon .button:not(:hover), 
.woocommerce-checkout table.cart .coupon .button:not(:hover), 
#add_payment_method table.cart .coupon .button:not(:hover){
	background: var(--global-palette2);
    color: var(--global-palette9);
}
.woocommerce-cart table.cart td.actions .button:disabled, 
.woocommerce-checkout table.cart td.actions .button:disabled, 
#add_payment_method table.cart td.actions .button:disabled{
	background-color: var(--global-palette7);
    color: var(--global-palette3);
}
.woocommerce-cart table.cart .product-name a, 
.woocommerce-checkout table.cart .product-name a, 
#add_payment_method table.cart .product-name a{
	text-decoration: none;
	font-weight: 500;
}
form.checkout .col2-set{ 
	border: 1px solid var(--global-palette7);
	padding: 30px;
	border-radius: 0px;
}
.woocommerce form.checkout_coupon, .woocommerce form.login, .woocommerce form.register {
    border-radius: 0;
}
.woocommerce .woocommerce-customer-details address {
    border-radius: 0;
}
.woocommerce form .form-row label{ 
	font-size: 100%;
	font-weight: 500;
	color: var(--global-palette3);
}
.woocommerce .woocommerce-form-coupon-toggle .woocommerce-info{ 
	margin-bottom: 0px; 
	padding: 8px 0px; 
	color: var(--global-palette1);
	background: none;
	border: none;
	font-weight: 500;
}
.woocommerce form.checkout_coupon.woocommerce-form-coupon{
	padding: 5px 0px;
	border: none;
	display: flex;
    flex-direction: column;
}
a.showcoupon {
    border-bottom: 1px solid;
}
.woocommerce form.checkout_coupon.woocommerce-form-coupon p{ margin-bottom: 10px;}
form.checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment{
	background-color: var(--global-palette8);
	padding: 30px;
}
#payment ul.wc_payment_methods li.wc_payment_method>label:hover,
#payment ul.wc_payment_methods li.wc_payment_method input[type=radio]:first-child:checked+label,
#payment ul.wc_payment_methods li.wc_payment_method>label{
	background-color: var(--global-palette9);
	border: none;
	cursor: pointer;
}
#payment #place_order {
    padding: 12px 0px;
    background-color: #274c77 !important;
    color: #ffffff !important;
    border-radius: 4px !important;
}
#payment #place_order:hover {
    background-color: #1b365d !important;
}

/* Sideber Filters */
.sidebar-inner-wrap .wpc-filters-widget-wrapper .wpc-posts-found{ 	display: none; }
.primary-sidebar.widget-area .widget-title{
	font-size: 20px;
	text-transform: capitalize;
	margin-bottom: 15px;
}
.wpc-filters-main-wrap ul.wpc-filters-ul-list {
    padding: 0;
}
.wpc-filters-main-wrap ul.wpc-filters-ul-list {
    padding: 0 !important;
	margin-bottom: 25px;
}
.wpc-filter-hierarchy-reverse li.wpc-term-item.wpc-closed>.wpc-term-item-content-wrapper+ul.children, li.wpc-term-item ul.children, li.wpc-term-item>.wpc-term-item-content-wrapper+ul.children {
    margin-top: 8px !important;
}
.wpc-filter-chips-list a, body .wpc-filter-chips-list li.wpc-filter-chip a {
    border-radius: 50px !important;
}
.wpc-filter-chips-list a, body .wpc-filter-chips-list li.wpc-filter-chip a{ padding: 8px 20px !important; }
.sidebar-inner-wrap .wpc-filters-section{ margin-bottom: 25px; }
.sidebar-inner-wrap .wpc-term-swatch-wrapper{ border-radius: 50%; }
.sidebar-inner-wrap .wpc-filters-range-inputs .ui-slider-horizontal .ui-slider-handle{ 	box-shadow: none; background-color: var(--global-palette1); border-color: var(--global-palette1); }
body .wpc-filter-chips-list li.wpc-chip-reset-all a{
	border-color: var(--global-palette1) !important;
	background: var(--global-palette1);
	font-size: 15px;	
}
body .wpc-filter-chips-list li.wpc-filter-chip:not(.wpc-chip-reset-all) a{
	border-color: var(--global-palette8) !important;
	background: var(--global-palette8);
	font-size: 15px;	
}
.woocommerce-products-header .wpc-custom-selected-terms ul.wpc-filter-chips-list{ margin: 0px; display: flex;}
.woocommerce .woocommerce-form-login-toggle .woocommerce-info{
	margin-bottom: 0px;
}
.woocommerce-checkout .woocommerce form.login{
	padding: 20px 0px;
	border: none;
	display: flex;
	flex-direction: column;
	margin-bottom: 0px;
}
.woocommerce-checkout .woocommerce form.login p{ margin-bottom: 10px; }
.woocommerce-checkout .woocommerce .woocommerce-checkout{ margin-top: 20px;}
#widget-drawer .header-widget2 .widget_product_categories .widget-title{
	font-size: 20px;
	font-weight: 500;
}
#widget-drawer .header-widget2 .widget_product_categories .product-categories li a,
#widget-drawer .header-widget2 .widget_product_categories .product-categories li a:hover{
	padding: 5px 0px;
	color: var(--global-palette3);
	border-color: var(--global-palette7);	
}
.woocommerce.widget_product_categories>ul li.cat-parent>ul{
	list-style: none;
	margin-left: 8px;
}
.woocommerce.widget_product_categories>ul li .base-cat-toggle-sub:hover,
.woocommerce.widget_product_categories>ul li .base-cat-toggle-sub,
.woocommerce.widget_product_categories>ul li.cat-parent.sub-toggle-active>.base-cat-toggle-sub{
	color: var(--global-palette6);
	background-color: var(--global-palette9);
	border: none;
}
.woocommerce.widget_product_categories>ul li .base-cat-toggle-sub:before{ 
	width: 10px;
	height: 10px;
	top: 58%;	
	margin-left: 12px;
}
.woocommerce.widget_product_categories>ul li.cat-parent.sub-toggle-active>.base-cat-toggle-sub:before{ margin-left: 12px;}
.popup-drawer .drawer-header{ padding-right: 18px; height: 15px; z-index: 1;}
.header-navigation.header-navigation-dropdown-animation-fade-up ul ul.sub-menu, 
.header-navigation.header-navigation-dropdown-animation-fade-up ul ul.submenu{
	padding: 10px 0px;
}
#cart-drawer h2.side-cart-header{
	font-size: 20px;
	font-weight: 500;
	color: var(--global-palette9);
}
.woocommerce ul.cart_list li .quantity, .woocommerce ul.product_list_widget li .quantity{ font-size: 15px;}
.woocommerce.widget_shopping_cart .buttons a:not(.checkout), .woocommerce .widget_shopping_cart .buttons a:not(.checkout){
	background: var(--global-palette1);
	color: var(--global-palette9);
	padding: 12px 25px;
}
.woocommerce.widget_shopping_cart .buttons a:not(.checkout):hover, .woocommerce .widget_shopping_cart .buttons a:not(.checkout):hover{
	background: var(--global-palette1);
	color: var(--global-palette9);
}
.woocommerce ul.cart_list li a, .woocommerce ul.product_list_widget li a{
	font-weight: 500;
	font-size: 100%;
	color: var(--global-palette5);
}
.wpc-filters-range-inputs .ui-slider-horizontal .ui-slider-range {
    background-color: #000000 !important;
}
#cart-drawer.popup-drawer .drawer-inner{ color: var(--global-palette3); }
.woocommerce.widget_shopping_cart .cart_list li, .woocommerce .widget_shopping_cart .cart_list li{ padding-bottom: 10px; margin-bottom: 10px; margin-right: 10px;}
.woocommerce div.product .woocommerce-tabs .panel {
    margin-bottom: 80px;
}
.woocommerce li.product .product-thumbnail{ position: relative; overflow: hidden;}
.woocommerce li.product .product-thumbnail .archive-image-wrap .archive-extra-button-wrap{ 
	position: absolute;
	opacity: 0;
    z-index: 1;
    -khtml-opacity: 0;
    -webkit-opacity: 0;
    -moz-opacity: 0;
    width: auto;
    left: auto;
    right: 0;
    top: 8px;
    bottom: auto;
    text-align: center;
    padding: 3px;
    -moz-transition: all 500ms ease 0s;
    -o-transition: all 500ms ease 0s;
    transition: all 500ms ease 0s;
    -webkit-transform: translateY(50);
    -moz-transform: translateY(50);
    -o-transform: translateY(50);
	transform: translateY(50);
	display: flex;
    flex-direction: column;
 }
 .woocommerce li.product:hover .product-thumbnail .archive-image-wrap .archive-extra-button-wrap{ 
	 opacity: 1;
	-khtml-opacity: 1;
    -webkit-opacity: 1;
    -moz-opacity: 1;
    right: 15px;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
 }
 .woocommerce li.product .product-thumbnail .archive-image-wrap .archive-extra-button-wrap .woosw-btn-has-icon,
 .woocommerce li.product .product-thumbnail .archive-image-wrap .archive-extra-button-wrap .woosc-btn-has-icon,
 .woocommerce li.product .product-thumbnail .archive-image-wrap .archive-extra-button-wrap .woosq-btn-has-icon{
	font-size: 18px;
	padding: 10px;
	box-shadow: 0 0 10px 0 rgb(0 0 0 / 8%);
    border-radius: 50%;
    margin-top: 5px;
	background-color: #fff;
	color: var(--global-palette3);
 }
 .woocommerce li.product .product-thumbnail .archive-image-wrap .archive-extra-button-wrap .woosw-btn-has-icon:hover,
 .woocommerce li.product .product-thumbnail .archive-image-wrap .archive-extra-button-wrap .woosc-btn-has-icon:hover,
 .woocommerce li.product .product-thumbnail .archive-image-wrap .archive-extra-button-wrap .woosq-btn-has-icon:hover{
	 color: var(--global-palette1);
 } 
 .woocommerce .up-sells.products, 
 .woocommerce .related.products{
	float: left;
	width: 100%;
	padding-bottom: 20px;
 }
 .woocommerce .up-sells.products h2, 
 .woocommerce .related.products h2{
	border-bottom: 0px solid var(--global-palette7);
	padding-bottom: 0px;
	position: relative;
	margin-bottom: 30px;
 }
 .woocommerce section.products>h2 {
 	text-align: center;
 }
 h2.woocommerce-loop-product__title {
    padding: 0 !important;
}
.woocommerce #reviews #comments ol.commentlist {
    border-radius: 0;
}
 .woocommerce .related.products h2.woocommerce-loop-product__title,
 .woocommerce .up-sells.products h2.woocommerce-loop-product__title{ border: none; }
 .woocommerce .related.products h2.woocommerce-loop-product__title::after,
 .woocommerce .up-sells.products h2.woocommerce-loop-product__title::after{ display: none; }
 .woocommerce .up-sells.products h2::after, 
 .woocommerce .related.products h2::after{
	content: '';
    border-bottom: 0px solid var(--global-palette1);
    display: block;
    position: absolute;
    bottom: -1px;
    width: 200px;
	left: 43%;
 }
 .related.products ul.products{
	float: left;
	width: 100%;	
	margin: 0px -10px; 
	border-top: 1px solid var(--global-palette7);
	padding-top: 30px;
 }

/* Post Archive */
.loop-entry .entry-summary p, .loop-entry .entry-header .entry-meta {
    margin: 0;
    font-weight: 400;
    font-size: 15px;
    color: #6b7280;
	margin-top: 5px;
}
.post-description {
    font-weight: 400;
    margin-top: 10px;
}
.search-form input.search-field, .search-form input[type=search] {
    padding: 10px 40px 10px 10px;
    background-color: var(--global-palette8);
    border: none;
}
::placeholder{
	color: var(--global-palette3);
}
.search-form input.search-field::placeholder {
    color: var(--global-palette3);
}
.comment-reply-link:focus, .comment-reply-link:hover {
    color: var(--global-palette9);
}
.children {
    margin-left: 5em;
}
.loop-entry .entry-header .entry-meta .posted-by{ text-transform: capitalize;}
a.post-more-link{
	font-weight: 500;
	text-transform: capitalize;
	font-size: 100%;
	letter-spacing: 0.3px;
}
.entry-footer .entry-tags a.tag-link{
	font-size: 100%;
}

/* Line */
#cpcmsbanner4_block1 {
    background-color: var(--global-palette2);
    color: var(--global-palette3);
	text-align: center;
	font-family: 'DM sans';
    padding: 30px 0;
}
#cpcmsbanner4 .left-side.main-content .cms-block, #cpcmsbanner5 .left-side.main-content .cms-block {
    display: flex;
    flex-direction: row;
    gap: 20px;
    color: #fff;
    justify-content: center;
    align-items: center;
}
.elementor-column-gap-default>.elementor-column>.elementor-element-populated {
    padding: 0px;
}
#cpcmsbanner4 .marquee {
    margin: 0 auto;
    width: 100%;
    height: 30px;
    white-space: nowrap;
    box-sizing: border-box;
    position: relative;
}
#cpcmsbanner4 .marquee:before, #cpcmsbanner4 .marquee:after {
    position: absolute;
    top: 0;
    width: 50px;
    height: 30px;
    content: "";
    z-index: 1;
}
#cpcmsbanner4 .marquee .marquee_content:hover {
    -webkit-animation-play-state: paused;
    animation-play-state: paused;
}
a{
	color: var(--global-palette3);
}
#cpcmsbanner4 .left-side.main-content .cms-block .offer-text1, #cpcmsbanner5 .left-side.main-content .cms-block .offer-text1 {
    font-size: 19px;
    font-weight: 600;
}
#cpcmsbanner4 .marquee .marquee_content {
    width: 100%;
    display: flex;
    line-height: 30px;
    -webkit-animation: marquee 25s linear infinite forwards;
    animation: marquee 25s linear infinite forwards;
    gap: 30px;
}
@keyframes marquee{
	0% {
		transform: translateX(0);
	}
	
	100% {
		transform: translateX(-66.6%);
	}
}
#cpcmsbanner4 .marquee .marquee_content .list-inline {
    display: flex;
    justify-content: space-around;
	list-style: none;
	font-family: "karla";
    padding: 0;
    margin: 0;
    gap: 70px;
}
#cpcmsbanner4 .marquee .marquee_content .list-inline li {
    position: relative;
    padding-left: 100px;
    font-size: 20px;
    font-weight: 500;
    color: var(--global-palette9);
}
#cpcmsbanner4 .marquee .marquee_content .list-inline li::before {
    content: '';
    -webkit-mask-image: url(assets/images/offericon.svg);
    mask-image: url(assets/images/offericon.svg);
    mask-size: 20px;
    -webkit-mask-size: 39px;
    height: 22px;
    width: 39px;
    left: 0px;
    top: 5px;
    position: absolute;
    background-color: var(--global-palette9);
}
#cpcmsbanner4 .marquee .marquee_content .list-inline li .discount-code {
    font-weight: 500;
    font-size: 18px;
    border-radius: 50px;
    margin-left: 10px;
}
.pagination .page-numbers{ background-color: var(--global-palette8); border: none; line-height: 37px; font-weight: 500; min-width:2.5em; border-radius:0PX; }
.pagination a:hover, .pagination a:focus, .pagination a:active{ border: none }
.pagination .current { background-color: var(--global-palette1); }
.wp-block-latest-posts.wp-block-latest-posts__list{ margin-left: 0px; }
.wp-block-latest-posts.wp-block-latest-posts__list .wp-block-latest-posts__post-title { 
	height: 45px;
    display: block;
    overflow: hidden;
    font-weight: 500;
    line-height: 22px;
}
.wp-block-latest-posts__post-date{ font-size: 100%; color: #6b7280; }
.wp-block-tag-cloud.is-style-outline a{ border-color: var(--global-palette7); border-radius: 0px; padding: 5px 10px; }
.post-title .entry-meta{ margin: 5px 0px; }
.entry-tags a.tag-link{ font-size: 100%;border-radius: 0; }
body .post-navigation-sub small{ text-transform: none; font-weight: 500; font-size: 20px; }
.comment-navigation .nav-next a, .post-navigation .nav-next a,
.comment-navigation .nav-previous a, .post-navigation .nav-previous a{
	font-size: 18px;
	font-weight: 500;
	max-inline-size: 30ch;
}
.post-navigation-sub{ margin-bottom: 0px;}
.content-wrap .comment-navigation .nav-links, .content-wrap .post-navigation .nav-links{
	display: flex;
	justify-content: space-between;
}
body .comment-navigation .nav-previous:after, 
body .post-navigation .nav-previous:after{ width: 0px;}
body.single .entry-related .splide .splide__pagination{ display: none; }
.comment-navigation, .post-navigation{ 
	border-top: 1px solid var(--global-palette7);
	border-bottom: 1px solid var(--global-palette7);
	padding: 30px 0px;
}
body .comment-form .comment-notes, 
body .comment-form .comment-form-cookies-consent label:not(:placeholder-shown),
body .comment-author .says { font-size: 100%;}
body .comment-metadata{ font-size: 15px; color: var(--global-palette6); padding-bottom: 0px; }
body .comment-content{ margin-left: 70px; padding-top: 2px;}
body .comment-reply-link{
	font-size: 100%;
	font-weight: 500;
	background-color: var(--global-palette7);
	color: var(--global-palette3);
	padding: 8px 15px;
	border-radius: 50px;
	border: none;
}
.comment-metadata time {
    color: var(--global-palette3);
}
body .comment-reply-link:hover{ background-color: var(--global-palette1); border: none;}
body #cancel-comment-reply-link{ color: var(--global-palette4); text-decoration: underline;} 
.single-post input#author, .single-post input#email, .single-post input#url, .single-product .comment-form textarea, .single-product .comment-form input[type="text"], .single-product .comment-form input[type="email"] {
	background-color: var(--global-palette9);
}
body.comment-form input[type="text"], 
body.comment-form input[type="email"], 
body .comment-form input[type="url"], 
body .comment-form textarea{
	background-color: var(--global-palette9);
	border-radius: 0;
}
body .tnp-subscription-minimal input.tnp-email, body .tnp-subscription-minimal input.tnp-name {
    width: 70%;
    max-width: 300px;
    box-sizing: border-box;
    padding: 10px;
    display: inline-block;
    border: 1px solid #ddd;
    background-color: #f4f4f4;
    color: #444;
    font-size: 14px;
    line-height: 20px;
    border-radius: 0px;
    margin-right: 0px;
}
.footer-newsletter{
	display: flex;
	flex-direction: row;
	align-items: center;	
	gap: 15%;
	padding: 19px 0;
}
.footer-newsletter .newsletter-title::before{
	content: "";
	-webkit-mask-image: url(assets/images/email.svg);
	-webkit-mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-image: url(assets/images/email.svg);
	mask-position: center;
	mask-repeat: no-repeat;
	background-color: var(--global-palette1);
	width: 30px;
	height: 30px;	
  	display: inline-block;
  	position: absolute;
  	left: 0px;
  	height: 45px;
	width: 45px;
	mask-size: 45px;  	
  	-webkit-mask-size: 45px; 	
  	vertical-align: middle;
}
.footer-newsletter .newsletter-title{
	text-align: left;
    position: relative;
	padding-left: 60px;
	color: var(--global-palette1);
	font-size: 14px;
	font-weight: 400;              
}
.site-header-item .header-account-wrap .header-account-button{
	line-height: 0px !important;
}
.footer-newsletter .newsletter-title h2{color:var(--global-palette3); font-size: 30px; font-weight: 700; letter-spacing: -1.3px;}
.footer-newsletter .newsletter-form .tnp-email { min-width: 460px; padding: 13.5px 20px; line-height: 0; border: none; margin-right: 0px; border-radius: 50px 0px 0px 50px;  background-color:var(--global-palette9) }
.footer-newsletter .newsletter-form .tnp-email:focus{box-shadow:none;}
.footer-newsletter .newsletter-form .tnp-submit { width: auto; padding: 13px 33px; text-transform: capitalize; font-size: 16px; font-weight: 500; background-color: var(--global-palette1); border-radius: 0px 50px 50px 0px;}
.site-footer-middle-section-1{ border-right: 1px solid var(--global-palette7); }
.site-footer-middle-section-1 .footer-callus{ gap: 10px; }
.site-footer-middle-section-1 .footer-callus p{ margin: 0px; }
.site-footer-section ul li{ position: relative; padding-left: 0px;}
.site-footer-row.ft-ro-lstyle-plain a {
    position: unset;
}
.site-top-footer-inner-wrap {
    min-height: 110px;
    padding-top: 23.5px;
    padding-bottom: 23.5px;
    grid-column-gap: 30px;
    grid-row-gap: 30px;
}
body .site-footer-row .site-footer-section ul li a::after, body .site-footer-row .site-footer-section ul li a:hover::after {
    border-style: solid;
    border-width:0px 0px 0 0;
    content: '';
    display: inline-block;
    top: 10px;
    left: 0;
    -webkit-transform: rotate(40deg);
    transform: rotate(40deg);
    width: 5px;
    height: 5px;
    position: absolute;
    color: var(--global-palette6);
}
.header-cart-wrap .header-cart-button .header-cart-label {
	font-size: 14px;
	margin-left: 5px;
    text-transform: capitalize;
}
.site-footer-row.ft-ro-lstyle-plain a:hover:after {
    width: 0;
}
a:active, a:focus, a:hover {
    color: var(--global-palette1);
}
.site-footer-section ul li a:hover,
.site-footer-section ul li a:hover::after{ color:var(--global-palette1); text-decoration: none;}
.header-cart-button{ position: relative;}
.header-cart-button .base-svg-iconset{ padding: 15px; }
.header-cart-button .base-svg-iconset svg{ font-size: 0px; }
.header-navigation .woosc-menu-item.menu-item-type-woosc a,
.header-navigation .woosw-menu-item.menu-item-type-woosw a{ display: flex; align-items: center;}
.site-main-header-wrap .tertiary-menu-container #primary-menu{ display: none;}
.header-cart-button .base-svg-iconset::after,
.woosc-menu-item.menu-item-type-woosc .woosc-menu-item-inner::before,
.woosw-menu-item.menu-item-type-woosw .woosw-menu-item-inner::before{
	content: "";
	position: absolute;
	float: left;
	width: auto;
	line-height: 0;	
	-webkit-mask-position: center;
	-webkit-mask-repeat: no-repeat;	
	mask-position: center;
	mask-repeat: no-repeat;
	background-color: var(--global-palette3);	
	font-size: 0;
	top: 0px;
}
.header-cart-button .base-svg-iconset::after{
	-webkit-mask-image: url(assets/images/cart.svg);
	mask-image: url(assets/images/cart.svg);
	mask-size: 23px;
	-webkit-mask-size: 23px;
	height: 28px;
	width: 28px;
	left: 0px;
}
.woosc-menu-item.menu-item-type-woosc .woosc-menu-item-inner::before{
	-webkit-mask-image: url(assets/images/compare.svg);
	mask-image: url(assets/images/compare.svg);
	mask-size: 21px;
	-webkit-mask-size: 21px;
	height: 28px;
	width: 28px;
}
.woosw-menu-item.menu-item-type-woosw .woosw-menu-item-inner::before{
	-webkit-mask-image: url(assets/images/wishlist.svg);
	mask-image: url(assets/images/wishlist.svg);
	mask-size: 26px;
	-webkit-mask-size: 26px;
	height: 27px;
	width: 27px;
}
.woosc-menu-item .woosc-menu-item-inner:after,
.woosw-menu-item .woosw-menu-item-inner:after{
	content: attr(data-count);
    display: block;
    background-color: var(--global-palette2);
    color: var(--global-palette9);
    position: absolute;
    height: 18px;
    width: 18px;
    right: auto;
    border-radius: 50%;
    line-height: 17px;
    font-size: 14px;
    font-weight: 400;
    top: -12px;
    left: 23px;
}
.woosc-menu-item .woosc-menu-item-inner,
.woosw-menu-item .woosw-menu-item-inner{	
    font-size: 0px;
    width: 30px;
    height: 30px;    
    display: inline-block;
}

.woosc-area .woosc-inner .woosc-bar .woosc-bar-btn{
	color: var(--global-palette3);
	background-color: var(--global-palette1);
	text-transform: capitalize;
	font-weight: 500;
}
.woosc-area .woosc-inner .woosc-bar .woosc-bar-btn .woosc-bar-btn-icon-wrapper .woosc-bar-btn-icon-inner span{ background-color: var(--global-palette3); }
.woosw-list table.woosw-items .woosw-item .woosw-item--name a,
.woosc-area .woosc-inner .woosc-table .woosc-table-inner .woosc-table-items table thead tr th a{ color:  var(--global-palette3); text-transform: capitalize; font-weight: 500;}
.woosw-list table.woosw-items tr:hover td,
.woosw-list table.woosw-items tr:nth-child(2n) td{ background-color: transparent;}
.woosw-list table.woosw-items tr td{ border-bottom: 1px solid var(--global-palette7);}
.woosw-list .woosw-copy .woosw-copy-url{ margin: 0px 10px;}

.hot-product .product-block-inner {
    display: grid;
    align-items: flex-start;
    gap: 20px;
    grid-template-columns: auto 1fr;
}
.hot-product .product-block-inner .product-block-right .product-button{ overflow: hidden;}
.hot-product .product-block-inner .product-block-left .image-block {
    position: relative;
} 
.woocommerce.hot-product .product-block-inner .product-block-left .onsale {
    width: 50px;
    height: 50px;
    font-size: 16px;
    border-radius: 50%;
    line-height: 42px;
    padding: 4px;
    background-color: #ff5357;
	top: -10px;
	left: -10px;
}
.woocommerce ul.products li.product .onsale {
    top: 0px;
    right:auto;
    left: 0;
    margin: 0;
}
ul.products.woo-slider.owl-carousel.owl-theme {
    float: left;
    width: 100%;
	margin-bottom: 0px;
}
.woocommerce ul.products:not(.woo-archive-btn-button) li:where(:not(.woo-archive-btn-button) ) .button:not(.kb-button){
	background-color: var(--global-palette1);
	color: var(--global-palette9);
	font-weight: 500;
	font-size: 100%;
	text-transform: capitalize;
	padding: 12px 30px;
	float: left;
	letter-spacing: 0.3px;
	display: none;
}
.woocommerce ul.products:not(.woo-archive-btn-button) li:where(:not(.woo-archive-btn-button) ) .button:hover{
	background-color: var(--global-palette1);
	color: var(--global-palette9);
}
strong {
    font-weight: 500;
	color: var(--global-palette3);
}
.order-total strong {
    font-weight: 700;
}
.hot-product .product-block-inner .product-block-right .product-count-down .countbox{ 
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin-bottom: 0px;
}
.hot-product .product-block-inner .product-block-right .product-count-down .countbox .timebox{ 
	background-color: var(--global-palette8);
	columns: var(--global-palette3);
	padding: 5px;
	width: 50px;
	height: 50px;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	border-radius: 0px;
}
.hot-product .product-block-inner .product-block-right .product-count-down .countbox .timebox .timebox-inner{ line-height: 20px;  font-size: 14px;}
.hot-product .product-block-inner .product-block-right .product-count-down .countbox .timebox .time{ line-height: 20px; text-transform: capitalize; font-size: 12px;}


.wpcf7-form .contact-row.col-2{ 
	display: flex;
	align-items: flex-start;
	gap: 20px;	
}
.wpcf7-form .contact-row{ margin-bottom: 15px; }
.wpcf7-form .contact-row,
.wpcf7-form .contact-row .contact-col,
.wpcf7-form .contact-row .contact-col input{ 
	width: 100%;
	margin-top: 5px;		
}
.woocommerce-account .account-navigation-wrap{ width: 20%;}
.woocommerce-account .woocommerce-MyAccount-content{ width: 80% }

body .woocommerce-store-notice{
	/* background: url(assets/images/store-notice.jpg) center center no-repeat #171717 !important; */
	/* font-size: 0px; */
	min-height: 36px; 
	padding: 5px;
}
body .woocommerce-store-notice .woocommerce-store-notice__dismiss-link{font-size: 14px; color: #ffffff;}
.no-js #loader { display: none;  }
.js #loader { display: block; position: absolute; left: 100px; top: 0; }
.pageloader {
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 99999;
	background: url(assets/images/loader.gif) center no-repeat #fff;
}	
.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
	flex-basis: 0;
	flex-grow: 0;
}
.header-html-inner p a::after {
	content: "";
	background: var(--global-palette7);
	width: 1px;
	height: 12px;
	display: inline-block;
	vertical-align: middle;
	margin: 0 20px;
}
@media screen and (max-width:1420px) {
.site-main-header-wrap .site-header-row-container-inner > .site-container {
	padding: 0px 20px;
}
}
@media screen and (max-width:1400px) {
	.footer-newsletter {padding: 25px 20px;}
	.site-middle-footer-inner-wrap {padding: 50px 20px;}
	.site-bottom-footer-inner-wrap {padding: 10px 20px;}
	.content-container.site-container {padding: 0 20px;}
	.entry-hero-container-inner .entry-header {padding: 25px 20px;}
}
@media screen and (max-width: 1366px){
	.footer-newsletter .newsletter-form .tnp-email {
		min-width: 360px;
	}
	.single-product .owl-theme .owl-buttons div.owl-prev {
		top: 50px;
		left: 6px;
		right: auto;
	}
	.single-product .owl-theme .owl-buttons div.owl-next {
		top: 50px;
		right: 12px;
		left: auto;
	}
	footer form.tnp-subscription {
		display: flex;
		margin: 14px 0px 0px 0px;
		justify-content: center;
	}
	.site-top-header-wrap .site-header-row-container-inner {padding: 0 20px;}
	.site-header-item .widget-toggle-open-container #widget-toggle{margin-inline-end: 0;}
	body .header-search-bar form {width: 260px;}
	.elementor-35 .elementor-element.elementor-element-1090895 {width: 100%;}
	.dropdown-toggle-nav .widget_product_categories > ul li a, .dropdown-toggle-nav .widget_product_categories > ul li a:hover {
		padding: 6px 0px;
		border-color: var(--global-palette7);
		color: var(--global-palette3);
	}	
	.woocommerce.hot-product ul.products.owl-carousel li.product::after {height: 177px;}
	.elementor-35 .elementor-element.elementor-element-0c298a2 {margin-bottom: 20px;}
}
@media screen and (max-width: 1200px){
	.woocommerce ul.products.woo-archive-btn-button .product-action-wrap .button:not(.kb-button){
		padding:12px 20px !important;
	}
	.single-product .owl-theme .owl-buttons div.owl-prev {
		top: 45px;
		left: 6px;
		right: auto;
	}
	.single-product .owl-theme .owl-buttons div.owl-next {
		top: 45px;
		right: 12px;
		left: auto;
	}
	.woocommerce ul.products:not(.products-list-view):not(.splide__list), .wp-site-blocks .wc-block-grid:not(.has-2-columns):not(has-1-columns) .wc-block-grid__products {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		column-gap: 1.5rem;
		grid-row-gap: 1.5rem;
	}
	.product-template-default.woocommerce div.product form.cart .button {padding: 0px 75px;}
	.woo_categories_grid .grid-cols {
		column-gap: 3.75rem;
		row-gap: 1.7rem;
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}	
	.hot-product .product-block-inner {
		display: grid;
		align-items: flex-start;
		gap: 20px;
		grid-template-columns: 0.5fr 1fr;
	}
	body .header-search-bar form {width: 260px;}
	.dropdown-toggle-nav .widget_product_categories.toggled-on > ul{padding: 2px 15px;}
	.wp-block-group__inner-container.toggled-off ul,
	.home .side-mobile-toggle-open-container{display: none;}	
	.side-mobile-toggle-open-container{display: block;}	
	.dropdown-toggle-nav .widget_product_categories > ul li a, .dropdown-toggle-nav .widget_product_categories > ul li a:hover {
		padding: 2.8px 0px;
		border-color: var(--global-palette7);
		color: var(--global-palette3);
	}
	.wp-block-group__inner-container.toggled-off ul{display: block;}	
	.woocommerce ul.products li.product .price del {color: #6b7280; opacity: 1; font-size: 18px;}
	.footer-newsletter .newsletter-form .tnp-email{min-width: 370px;}
}
@media screen and (max-width: 1024px){
	/* .woocommerce ul.products.owl-carousel .last li.product::after{ background:#;} */
	footer form.tnp-subscription {
		display: flex;
		margin: 14px 0px 0px 0px;
		justify-content: center;
	}
	.single-product .owl-theme .owl-buttons div.owl-prev {
		top: 34px;
		left: 6px;
		right: auto;
	}
	.single-product .owl-theme .owl-buttons div.owl-next {
		top: 34px;
		right: 12px;
		left: auto;
	}
	ul#mobile-menu {margin-top: 40px;}
	.site-header-upper-inner-wrap {border-bottom: 1px solid var(--global-palette7);}
	.site-footer-middle-section-1 h5.wp-block-heading::before{display: none !important ;}
	.site-main-header-wrap .site-header-row-container-inner>.site-container {padding: 0px 0px;}
	.mobile-navigation ul.has-collapse-sub-nav .sub-menu.show-drawer {margin-left: 20px;}
	.newsletter-form{display: contents;}
	.woo_categories_grid .grid-cols {
		column-gap: 3.75rem;
		row-gap: 1.7rem;
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
	.base-woo-results-count {display: block !important;}
	.site-bottom-header-wrap .site-header-row-container-inner .site-container .site-header-bottom-section-center > .site-header-item.site-header-focus-item{width: 100%;}
	.header-mobile-search-bar.header-item-search-bar {width: 100%;}
	form.woocommerce-product-search {width: 100%;}
	.header-html-inner p a.blok::after {
		content: "";
		background: var(--global-palette7);
		width: 1px;
		height: 12px;
		display: inline-block;
		vertical-align: middle;
		margin: 0 20px;
	}
	.site-main-header-wrap .site-header-row-container-inner {border-bottom: 0px solid var(--global-palette7);}
	.home .site-bottom-header-inner-wrap.site-header-row.site-header-row-only-center-column.site-header-row-center-column {border-bottom: 0px solid  var(--global-palette7);}
	.element-contact-inner-wrap .header-contact-item {margin-top: 0;margin-left: 5px;}
	.product-template-default .side-mobile-toggle-open-container {display: none;}
	.page-template-default .side-mobile-toggle-open-container {display: none;}
	.elementor-35 .elementor-element.elementor-element-233c2f6 {margin: 0;}
	.woocommerce ul.products:not(.products-list-view):not(.splide__list), .wp-site-blocks .wc-block-grid:not(.has-2-columns):not(has-1-columns) .wc-block-grid__products {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		column-gap: 1.5rem;
		grid-row-gap: 4rem;
	}
	.woocommerce.hot-product ul.products.owl-carousel li.product::after {height: 200px;}
	.site-header-item a.button {
		padding: 15px 10px;
		background: transparent;
		box-shadow: none;
		color: var(--global-palette9);
	}
	form.woocommerce-product-search input[type="search"] {
    	border-radius: 50px;
		padding: 8px 10px;
		border-color: var(--global-palette8);
		background-color: var(--global-palette8);
	}
	form.woocommerce-product-search button[type="submit"] {
		border-radius: 0px 25px 25px 0px;
		width: 60px;
		font-size: 0;
		mask-image: url(assets/images/search.svg);
		-webkit-mask-image: url(assets/images/search.svg);
		 height: 35px;
		-webkit-mask-size: 20px;
		-webkit-mask-repeat: no-repeat;
		background-color: var(--global-palette3) !important;
		mask-repeat: no-repeat;
		-webkit-mask-position: center;
    	mask-position: center;
	}
	.wp-block-group__inner-container.toggled-off ul,
	.home .side-mobile-toggle-open-container{display: none;}
	.woocommerce ul.products.grid-cols li.product:nth-child(5n+5)::after, .side-mobile-toggle-open-container{display: block;}
	.newsletter-form,.wp-block-image .alignright {
		width: 100%;
	}
	.base-hide-sidebar-btn{
		display: inline-block;
    	vertical-align: top;
		width: 100%;
		text-align: right;
	}
	body .popup-drawer .drawer-inner{background:var(--global-palette9);}
	.primary-sidebar.widget-area .widget {border: none;padding: 0;}
	.footer-newsletter{
		flex-direction: column;
		gap: 15px;
	}
	body .popup-drawer .drawer-header .drawer-toggle{color: var(--global-palette9);}
	footer .wp-block-group .wp-block-heading::before {
		display: block;
		border-style: solid;
		border-width: 2px 2px 0 0;
		content: '';
		display: inline-block;
		height: 8px;
		top: 22px;
		right: 0;
		margin-left: 0;
		margin-top: -4px;
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
		width: 8px;
		position: absolute;
	}
	.site-footer-wrap .site-container .site-middle-footer-inner-wrap.site-footer-row {gap: 10px;}
	.site-footer-middle-section-1 {
    	border-right: 0;
	}
	.footer-widget-area .footer-html {
		text-align: center;
	}
	.elementor-section-boxed .wp-block-image img,.site-footer-bottom-section-2 .wp-block-image img {
    	margin: 0 auto;
	}
	 .elementor-section-boxed .elementor-container .three-cms-banner .elementor-widget-image, .elementor-section-boxed .elementor-column.three-cms-banner .elementor-widget-wrap>.elementor-element {
		width: auto;
	}
	.elementor-section-boxed .three-cms-banner .elementor-widget-wrap{justify-content: center;width: auto;}
	body.woocommerce div.product form.cart div.quantity {
		float: none;
		margin: 0 4px 10px 0;
		width: 90px;
	}
	.up-sells.products ul.products {overflow: hidden;}
	.owl-theme .owl-buttons div {opacity: 1;}
	.woocommerce div.product form.cart .button { margin-left: 0;}
	.has-sidebar.has-left-sidebar .content-container {
	    display: flex;
    	flex-direction: column-reverse;
	}
	.wp-block-heading {cursor: pointer;}
	.primary-sidebar {
		transform: translateX(-100%);
		width: 360px;
		right: auto;
		left: 0;
		top: 0;
		overflow: auto;
		bottom: 0;
		position: fixed;
		box-shadow: 0 0 2rem 0 rgba(0,0,0,.1);
		display: flex;
		flex-direction: column;
		transition: all .3s ease-in-out;
		z-index: 99999;
		padding-inline: 20px;
		padding-block: 0;
		background-color: var(--global-palette9);
	}
	.primary-sidebar.active {transform: translateX(0);}
	.side-mobile-toggle-open-container {
		position: fixed;
		border: 1px solid var(--global-palette9);
		padding: 0 5px;
		height: 44px;
		line-height: 30px;
		display: flex;
		cursor: pointer;
		top: 41%;
		left: 0;
		z-index: 999;
		background: var(--global-palette9);
		box-shadow: 0 0 5px 1px #ddd;
		align-items: center;
		border-radius: 0 50px 50px 0;
	}
	#side-mobile-toggle span.menu-toggle-icon {
		font-size: 10px;
		background: url(assets/images/menu-icon.svg);
		background-size: 20px;
		height: 20px;
		width: 20px;
		display: block;
		background-repeat: no-repeat;
		color: transparent;
	}
	.base-hide-sidebar-btn button#menu-toggle-icon span.menu-toggle-icon {
	   	font-size: 0;
		background: url(assets/images/close-line.svg);
		background-size: 25px;
		height: 25px;
		width: 25px;
		display: block;
		background-repeat: no-repeat;
	}
	.primary-sidebar.widget-area {position: fixed;padding-inline: 20px;}
	.base-hide-sidebar-btn button#menu-toggle-icon {padding: 5px;margin-bottom: 0; background: none;}
	button#side-mobile-toggle {background: none; padding: 5px; line-height:1.2;}
}
@media screen and (max-width: 979px){
	.woocommerce ul.products li.product a img {
		width: 100%;
		height: auto;
		display: block;
		margin: 0;
		-webkit-box-shadow: none;
		box-shadow: none;
	}
	.hot-product .product-block-inner {
		display: grid;
		grid-template-columns: 35% auto;
		align-items: flex-start;
		gap: 20px;
	}
	.woocommerce.hot-product ul.products.owl-carousel li.product::after {display: none;}
}
@media screen and (max-width: 880px){
	.woocommerce ul.products:not(.products-list-view):not(.splide__list), .wp-site-blocks .wc-block-grid:not(.has-2-columns):not(has-1-columns) .wc-block-grid__products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		column-gap: 0.6rem;
		grid-row-gap: 2rem;
	}
	.product-template-default.woocommerce div.product form.cart .button {
		padding: 0px 52px;
	}
	.hot-product .product-block-inner {
		display: grid;
		align-items: flex-start;
		gap: 20px;
		grid-template-columns: 30% auto;
	}
	.woocommerce ul.order_details li {
		float: none;
		margin-right: 0;
		text-transform: uppercase;
		font-size: .715em;
		line-height: 1;
		border-right: 0px dashed var(--global-gray-400);
		padding-right: 0;
		margin-left: 0;
		padding-left: 0;
		margin-bottom: 10px;
		list-style-type: none;
	}
	.wp-block-group__inner-container.toggled-off ul,.woocommerce ul.products.grid-cols li.product:nth-child(3n+3)::after,
	.home .side-mobile-toggle-open-container{display: none;}
	.woocommerce ul.products.grid-cols li.product:nth-child(4n+4)::after, .side-mobile-toggle-open-container{display: block;}
}
@media screen and (max-width: 840px){
	.site-header-top-section-left .header-html-inner {
		display: none;
	}
}
@media screen and (max-width: 767px){
	.header-html-inner p a::after {
		content: "";
		background: var(--global-palette7);
		width: 1px;
		height: 12px;
		display: inline-block;
		vertical-align: middle;
		margin: 0 20px;
	}
	.single-product .owl-theme .owl-buttons div.owl-prev {
		top: 66px;
		left: 6px;
		right: auto;
	}
	.single-product .owl-theme .owl-buttons div.owl-next {
		top: 66px;
		right: 12px;
		left: auto;
	}
	.hot-product .product-block-inner {
		display: grid;
		align-items: flex-start;
		gap: 20px;
		grid-template-columns:auto;
	}
	.footer-newsletter .newsletter-form .tnp-submit {padding: 15px 33px;}
	.woocommerce .related.products h2 {font-size: 22px;}
	.woocommerce div.product .woocommerce-tabs ul.tabs li a {font-size: 16px;}
	#cpcmsbanner4 .marquee .marquee_content {
		width: 100%;
		display: flex;
		line-height: 30px;
		-webkit-animation: marquee 8s linear infinite forwards;
		animation: marquee 8s linear infinite forwards;
		gap: 30px;
	}
	.woocommerce li.product .product-thumbnail .archive-image-wrap .archive-extra-button-wrap {top: 0px;}
	.woocommerce li.product .product-thumbnail .archive-image-wrap .archive-extra-button-wrap .woosw-btn-has-icon, .woocommerce li.product .product-thumbnail .archive-image-wrap .archive-extra-button-wrap .woosc-btn-has-icon, .woocommerce li.product .product-thumbnail .archive-image-wrap .archive-extra-button-wrap .woosq-btn-has-icon {margin-top: 0px;}
	.woocommerce li.product .product-thumbnail .archive-image-wrap .archive-extra-button-wrap .woosc-btn-has-icon, .woocommerce li.product .product-thumbnail .archive-image-wrap .archive-extra-button-wrap .woosq-btn-has-icon {display: none;}
	.woocommerce li.product .product-thumbnail .archive-image-wrap .archive-extra-button-wrap {
		opacity: 1;
		-khtml-opacity: 1;
		-webkit-opacity: 1;
		-moz-opacity: 1;
		right: 15px;
		transform: translateY(0);
		-webkit-transform: translateY(0);
		-moz-transform: translateY(0);
		-o-transform: translateY(0);
	}
	.woocommerce ul.products li.product .product-action-wrap {display: none;}
	.woo_categories_grid .grid-cols {
		column-gap: 2.99rem; row-gap: 1.7rem; grid-template-columns: repeat(3, minmax(0, 1fr));}
	.wpc-custom-selected-terms {display: block !important;}
	.site-footer-wrap .site-container .site-middle-footer-inner-wrap.site-footer-row {gap: 10px; padding: 50px 20px;}
	.site-top-header-wrap.site-header-focus-item.site-header-row-layout-contained.site-header-row-tablet-layout-default.site-header-row-mobile-layout-default {padding: 0;}
	.site-main-header-wrap.site-header-focus-item.site-header-row-layout-contained.site-header-row-tablet-layout-default.site-header-row-mobile-layout-default {padding: 0 20px 0 15px;}
	.woocommerce ul.products li.product .price del{display: inline-block;}
	.site-header-item .widget-toggle-open-container #widget-toggle{padding: 15px 5px;}
	.three-cms-banner.elementor-column,.three-cms-banner .elementor-column {justify-content: center;}
	.footer-newsletter .newsletter-form .tnp-submit{font-size: 13px; display: inline-block;}
	.footer-newsletter .newsletter-form .tnp-email {min-width: 120px;}
	.woocommerce div.product form.cart .woosc-btn, .woocommerce div.product form.cart .woosw-btn{padding: 10px 15px;}
	.woocommerce ul.products li.product .entry-content-wrap {max-height: 170px; margin-left: 0px;}
	.woocommerce ul.products.grid-cols li.product:nth-child(3n+3)::after{display: none;}
	.woocommerce ul.products.products-list-view li.product .entry-content-wrap {max-height: none;}
	.woocommerce-page div.product div.images {width: 100%;}
	.woocommerce-page div.product div.summary {
		width: 100%;
		padding-left: 0px;
		border-left: none;
		margin-top: 0px;
		margin-left: 10px;
	}
	.woocommerce-account .account-navigation-wrap{ width: 100%;}
	.woocommerce-account .woocommerce-MyAccount-content{ width: 100% }
}
@media screen and (max-width: 719px){
	.woocommerce-page div.product div.summary{padding-left: 0; border-left: 0;}
	.woocommerce-page table.shop_table_responsive tr:nth-child(2n) td, .woocommerce table.shop_table_responsive tr:nth-child(2n) td {background-color: var(--global-palette9);}
	.woocommerce div.product .woocommerce-tabs ul.tabs:before {border-bottom: 1px solid var(--global-gray-400);}
	.woocommerce.product-tab-style-center div.product .woocommerce-tabs ul.tabs li {flex-shrink: 1;}
	.tertiary-navigation .tertiary-menu-container > ul > li {display: none;}
}
@media screen and (max-width: 575px){
	.woocommerce div.product .woocommerce-tabs ul.tabs:before {border-bottom: 1px solid var(--global-gray-400);}
	.base-woo-toggle {display: none;}
	.woocommerce.product-tab-style-center div.product .woocommerce-tabs ul.tabs li {margin: 0px 10px;}
	.woocommerce ul.products.products-list-view li.product {padding-bottom: 60px;}
	.woocommerce ul.products:not(.products-list-view):not(.splide__list), .wp-site-blocks .wc-block-grid:not(.has-2-columns):not(has-1-columns) .wc-block-grid__products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 0.5rem;
		grid-row-gap: 1.5rem;
	}
	.base-woo-toggle {display: block;}
	.grid-lg-col-3 {grid-template-columns: repeat(1,minmax(0,1fr));}
	.hot-product .product-block-inner {
		display: grid;
		grid-template-columns: auto 1fr;
		align-items: flex-start;
		gap: 20px;
	}
	.elementor-35 .elementor-element.elementor-element-87fcd50 > .elementor-element-populated {
		margin: 10px 0px 0px 0px;
	}
	.woocommerce div.product form.cart .button {margin: 0;}
	.site-header-bottom-section-right.site-header-section.site-header-section-right ,.header-mobile-contact-wrap .element-contact-inner-wrap .header-contact-item:first-child{display: none;}
	.site-container .site-bottom-header-inner-wrap {grid-template-columns: auto;}
	.header-mobile-search-bar,.site-bottom-header-inner-wrap .site-header-item,.header-mobile-search-bar form,
	body.tax-woo-product.wpc_show_open_close_button .wpc-filters-widget-content.wpc-opened,.primary-sidebar{width: 100%;}
	.wp-block-group__inner-container.toggled-off ul,.woocommerce ul.products.grid-cols li.product:nth-child(2n+2)::after,
	.home .side-mobile-toggle-open-container{display: none;}
	.woocommerce ul.products.grid-cols li.product:nth-child(3n+3)::after, .side-mobile-toggle-open-container{display: block;}
	.elementor-35 .elementor-element.elementor-element-034b0a2 {
		width: 100% ;
	}
	.elementor-35 .elementor-element.elementor-element-87fcd50 {
		width: 100%;
	}
	.cms .elementor-column{
		width: 100% !important;
	} 
	.elementor-35 .elementor-element.elementor-element-2d5c159 > .elementor-element-populated {
		margin: 0px 0px 0px 0px;
	}
	.elementor-35 .elementor-element.elementor-element-d021af2 > .elementor-element-populated{
		margin: 20px 0px 0px 0px;

	}
	.service1 .elementor-column{
		width: 100% !important;
	}
}
@media screen and (max-width: 480px){
	.woo_categories_grid .grid-cols {
		column-gap: 1.75rem;
		row-gap: 1.7rem;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.header-html-inner p a::after {
    	content: "";
    	background: var(--global-palette7);
    	width: 1px;
    	height: 0px;
    	display: inline-block;
    	vertical-align: middle;
    	margin: 0 5px;
	}
	.header-html-inner p a.blok::after {
    	content: "";
    	background: var(--global-palette7);
    	width: 1px;
    	height: 12px;
    	display: inline-block;
    	vertical-align: middle;
    	margin: 0 5px;
	}
	.footer-newsletter .newsletter-form .tnp-email {min-width: 50px;}
	.site-header-item {margin-right: 10px;}
	.footer-newsletter .newsletter-form .tnp-submit {padding: 15px 22px;}
	.header-html-inner p a::after {
		content: "";
		background: var(--global-palette7);
		width: 1px;
		height: 12px;
		display: inline-block;
		vertical-align: middle;
		margin: 0 12px;
	}
	.single-product .owl-theme .owl-buttons div.owl-prev {
		top: 54px;
		left: 6px;
		right: auto;
	}
	.single-product .owl-theme .owl-buttons div.owl-next {
		top: 54px;
		right: 12px;
		left: auto;
	}
	.hot-product .product-block-inner {
		display: grid;
		grid-template-columns: 1fr;
		align-items: flex-start;
		gap: 20px;
	}
}
@media screen and (max-width: 352px){
	.footer-newsletter .newsletter-form .tnp-email {min-width: 0px;}
	.woocommerce ul.products:not(.products-list-view):not(.splide__list), .wp-site-blocks .wc-block-grid:not(.has-2-columns):not(has-1-columns) .wc-block-grid__products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 1rem;
		grid-row-gap: 2.5rem;
	}
	.header-html-inner p a::after {
		content: "";
		background: var(--global-palette7);
		width: 1px;
		height: 0px;
		display: inline-block;
		vertical-align: middle;
		margin: 0 5px;
	}
	.product-template-default.woocommerce div.product form.cart .button {
		padding: 0px 35px;
	}
	.site-header-item {margin-right: 5px;}
	.woocommerce.product-tab-style-center div.product .woocommerce-tabs ul.tabs li {margin: 0px 5px;}
	.woocommerce ul.products li.product .price del {display: block;}
	.woocommerce div.product form.cart .button {padding: 0px 16px;}
	.hot-product .product-block-inner {
		display: grid;
		grid-template-columns:1fr;
		align-items: flex-start;
		gap: 20px;
	}
	.product-block-inner { border: 1px solid var(--global-palette7); padding: 10px;}
}
/* header-widget2 定位 */
#widget-drawer .header-widget2 {
    position: relative !important;
}
#widget-drawer .header-widget2 .menu-item-has-children {
    position: relative !important;
    display: block !important;
    width: 100% !important;
}
/* 隐藏 "Other" / "Uncategorized" (未分类) 类别 */
#widget-drawer .header-widget2 .menu-item-16993,
.widget_nav_menu .menu-item-16993,
.widget_product_categories .cat-item-15,
.widget_product_categories a[href*="uncategorized"] {
    display: none !important;
}

/* 侧边栏 Drawer 二级子菜单：隐藏抽屉内部展刷，由 JS 渲染右侧 3 列 Mega Panel */
#widget-drawer .menu-item-has-children > .sub-menu,
#widget-drawer .menu-item-has-children > ul.toggle-show,
#widget-drawer .cat-item-has-children > .children,
#widget-drawer li > .sub-menu,
#widget-drawer li > .children {
    display: none !important;
}

/* 被 JS 移至 body 后的弹出面板样式（固定定位，单列侧边菜单） */
body > .sub-menu.zhc-megamenu-detached,
body > ul.toggle-show.zhc-megamenu-detached {
    position: fixed !important;
    background: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 8px !important;
    box-shadow: 0 10px 25px rgba(0,0,0,0.1) !important;
    padding: 8px 0 !important;
    list-style: none !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    width: 280px !important;
    display: block !important;
    max-height: 80vh !important;
    overflow-y: auto !important;
    z-index: 999999 !important;
}

body > .sub-menu.zhc-megamenu-detached li,
body > ul.toggle-show.zhc-megamenu-detached li {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body > .sub-menu.zhc-megamenu-detached li a,
body > ul.toggle-show.zhc-megamenu-detached li a {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: left !important;
    padding: 12px 20px !important;
    color: #334155 !important;
    background-color: #ffffff !important;
    border: none !important;
    border-bottom: 1px solid #f1f5f9 !important;
    border-radius: 0 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    text-decoration: none !important;
    transition: background 0.15s, color 0.15s !important;
    box-sizing: border-box !important;
    word-break: break-word !important;
}

body > .sub-menu.zhc-megamenu-detached li:last-child a,
body > ul.toggle-show.zhc-megamenu-detached li:last-child a {
    border-bottom: none !important;
}

body > .sub-menu.zhc-megamenu-detached li a:hover,
body > ul.toggle-show.zhc-megamenu-detached li a:hover {
    color: #274c77 !important;
    background-color: #f8fafc !important;
}

/* 激活的一级菜单高亮 */
#widget-drawer .header-widget2 .menu-item-has-children.menu-item--toggled-on > a,
#widget-drawer .header-widget2 .menu-item-has-children.zhc-megamenu-open > a {
    color: #274c77 !important;
    font-weight: 600 !important;
}

/* 展开/收起切换按钮定位 */
#widget-drawer .header-widget2 .dropdown-nav-special-toggle {
    opacity: 0;
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    cursor: pointer;
    z-index: 2;
}

/* 原生下拉箭头显示 */
#widget-drawer .header-widget2 .nav-drop-title-wrap .dropdown-nav-toggle {
    opacity: 1;
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    z-index: 1;
}

/* ===== Drawer 箭头方向旋转 ===== */
/* 默认状态：箭头朝右（旋转 -90deg） */
#widget-drawer .header-widget2 .dropdown-nav-toggle .base-svg-iconset {
    transform: rotate(-90deg) !important;
    transition: transform 0.2s ease !important;
}

/* 展开状态：箭头朝下（旋转 0deg） */
#widget-drawer .header-widget2 .menu-item--toggled-on > .nav-drop-title-wrap .dropdown-nav-toggle .base-svg-iconset {
    transform: rotate(0deg) !important;
}

/* ===== Arterary 树形商品分类样式 - 简化版 ===== */
.arterary-category-tree {
    font-family: inherit;
    line-height: 1.5;
}

/* 根列表 */
.arterary-category-tree .arterary-tree-root {
    list-style: none;
    margin: 0;
    padding: 0;
}

/* 树项 */
.arterary-category-tree .arterary-tree-item {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* 树项内容容器 */
.arterary-category-tree .arterary-tree-item-content {
    display: flex;
    align-items: center;
    padding: 6px 8px;
}

/* 子分类列表 */
.arterary-category-tree .arterary-tree-children {
    list-style: none;
    margin: 0;
    padding: 0 0 0 20px !important;
}

.arterary-category-tree .arterary-tree-children.collapsed {
    display: none;
}

/* 分类链接 */
.arterary-category-tree .arterary-tree-link {
    display: flex;
    align-items: center;
    color: #333;
    text-decoration: none;
    font-size: 14px;
    flex: 1;
    min-width: 0;
    overflow: hidden;
}

.arterary-category-tree .arterary-tree-item > .arterary-tree-link:hover {
    color: var(--global-palette1, #2DB3AC);
}

/* 当前分类样式 */
.arterary-category-tree .arterary-tree-item.current-cat > .arterary-tree-link,
.arterary-category-tree .arterary-tree-item > .arterary-tree-link.current {
    color: var(--global-palette1, #2DB3AC);
    font-weight: 500;
}

/* 展开/折叠按钮 */
.arterary-category-tree .arterary-tree-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    margin-right: 4px;
    cursor: pointer;
    user-select: none;
    flex-shrink: 0;
}

.arterary-category-tree .arterary-tree-toggle.tree-icon-plus::before {
    content: '▶';
    font-size: 8px;
    color: #666;
}

.arterary-category-tree .arterary-tree-toggle.tree-icon-minus::before {
    content: '▼';
    font-size: 8px;
    color: #666;
}

/* 分类名称 */
.arterary-category-tree .arterary-tree-name {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* 商品数量 */
.arterary-category-tree .arterary-tree-count {
    font-size: 12px;
    color: #6b7280;
    margin-left: 6px;
    flex-shrink: 0;
}

/* 祖先分类高亮 */
.arterary-category-tree .arterary-tree-item.current-cat-ancestor > .arterary-tree-link {
    font-weight: 500;
    color: var(--global-palette1, #2DB3AC);
}

/* 嵌套层级缩进 */
.arterary-category-tree .arterary-tree-children .arterary-tree-children {
    padding-left: 20px;
}

/* ==========================================
   Page Layout & Centering Constraints (Self-adaptive across PC, Tablet, Mobile)
   ========================================== */
@media screen and (min-width: 1200px) {
    .site-container,
    .elementor-section > .elementor-container,
    .e-con.e-con-boxed,
    .e-con-boxed > .e-con-inner,
    .site-header-row-container-inner > .site-container,
    .site-footer-row-container-inner > .site-container {
        max-width: var(--global-content-width, 1200px) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        width: 100% !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
        box-sizing: border-box !important;
    }
}

@media screen and (max-width: 1199px) {
    .site-container,
    .elementor-section > .elementor-container,
    .e-con.e-con-boxed,
    .e-con-boxed > .e-con-inner,
    .site-header-row-container-inner > .site-container,
    .site-footer-row-container-inner > .site-container {
        max-width: 100% !important;
        width: 100% !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
        box-sizing: border-box !important;
    }
}

/* ==========================================
   新闻订阅区域自适应优化 (PC, Tablet, Mobile)
   ========================================== */
.footer-newsletter {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 40px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* 移除原有的固定 min-width 限制，使其随容器自由缩放 */
.footer-newsletter .newsletter-form .tnp-email {
    min-width: 0 !important;
    width: 100% !important;
    flex: 1 !important;
    border-radius: 50px 0 0 50px !important;
    box-sizing: border-box !important;
}

/* 按钮不收缩，并保持圆角对接 */
.footer-newsletter .newsletter-form .tnp-submit {
    flex-shrink: 0 !important;
    width: auto !important;
    border-radius: 0 50px 50px 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* 强力清除数据库/旧样式中写死的边距偏差，防止错位与溢出 */
.tnp-submit {
    margin-right: 0 !important;
}
.tnp-field.tnp-field-button {
    margin-left: 0 !important;
}
.tnp-field-button {
    text-align: left !important;
}

/* 订阅表单容器强制横向 Flex 排列且宽度自适应 */
.footer-newsletter form.tnp-subscription {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 550px !important;
    gap: 0 !important;
}

/* 移动与平板端自适应样式调整 */
@media screen and (max-width: 1024px) {
    .footer-newsletter {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 20px !important;
        padding: 25px 20px !important;
    }
    
    .footer-newsletter .newsletter-title {
        padding-left: 0 !important;
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }
    
    /* 让图标居中，不使用绝对定位 */
    .footer-newsletter .newsletter-title::before {
        position: relative !important;
        display: block !important;
        margin: 0 auto 15px auto !important;
        left: auto !important;
    }
    
    .footer-newsletter form.tnp-subscription {
        max-width: 100% !important;
    }
}

/* ==========================================
   Header & Sidebar Account Dropdown Greeting style
   ========================================== */
.woocommerce-MyAccount-navigation-link--greeting {
    pointer-events: none !important;
    cursor: default !important;
}

.woocommerce-MyAccount-navigation-link--greeting a {
    font-weight: 700 !important;
    color: var(--global-palette3) !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid var(--global-palette7) !important;
    margin-bottom: 8px !important;
    display: block !important;
}

.woocommerce-MyAccount-navigation-link--greeting a:hover,
.woocommerce-MyAccount-navigation-link--greeting:hover a {
    background: transparent !important;
    border-left-color: transparent !important;
    color: var(--global-palette3) !important;
}

/* ==========================================
   Checkout Coupon Form Customization & Responsiveness (结账优惠券自适应优化)
   ========================================== */
form.checkout_coupon.woocommerce-form-coupon {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 500px !important;
    gap: 0 !important;
    border: none !important;
    padding: 0 !important;
    margin: 20px 0 !important;
    background: transparent !important;
}

form.checkout_coupon.woocommerce-form-coupon p.form-row {
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    width: auto !important;
}

form.checkout_coupon.woocommerce-form-coupon p.form-row-first {
    flex: 1 !important;
}

form.checkout_coupon.woocommerce-form-coupon p.form-row-last {
    flex-shrink: 0 !important;
}

form.checkout_coupon.woocommerce-form-coupon input[name="coupon_code"] {
    width: 100% !important;
    height: 48px !important;
    padding: 0 20px !important;
    border: 1px solid var(--global-palette7) !important;
    border-radius: 50px 0 0 50px !important;
    background-color: var(--global-palette9) !important;
    box-sizing: border-box !important;
    font-size: 14px !important;
}

form.checkout_coupon.woocommerce-form-coupon button[name="apply_coupon"] {
    height: 48px !important;
    padding: 0 30px !important;
    border: none !important;
    border-radius: 0 50px 50px 0 !important;
    background-color: var(--global-palette1) !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: background-color 0.2s !important;
    margin: 0 !important;
}

form.checkout_coupon.woocommerce-form-coupon button[name="apply_coupon"]:hover {
    background-color: var(--global-palette2) !important;
}

@media screen and (max-width: 480px) {
    form.checkout_coupon.woocommerce-form-coupon {
        max-width: 100% !important;
    }
}

/* ==========================================
   Request a Quote Sidebar Drawer (询价系统右侧抽屉效果)
   ========================================== */

/* 1. Align SweetAlert2 container to the right and make it full height */
.swal2-container.wpb-gqf-popup {
    display: flex !important;
    flex-direction: row !important;
    justify-content: flex-end !important;
    align-items: stretch !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* 2. Style the popup box as a sidebar panel */
.swal2-container.wpb-gqf-popup .swal2-popup {
    height: 100vh !important;
    max-height: 100vh !important;
    width: 460px !important;
    max-width: 100% !important;
    margin: 0 !important;
    border-radius: 0 !important;
    box-shadow: -5px 0 25px rgba(0,0,0,0.15) !important;
    background: #ffffff !important;
    padding: 40px 30px !important;
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
    align-self: flex-start !important;
    
    /* Slide in animation from the right */
    animation: swalDrawerSlideIn 0.35s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
}

/* Responsive adjustment for drawer width and padding on smaller devices */
@media screen and (max-width: 1023px) {
    .swal2-container.wpb-gqf-popup .swal2-popup {
        width: 400px !important;
        padding: 35px 25px !important;
    }
}

@media screen and (max-width: 767px) {
    .swal2-container.wpb-gqf-popup .swal2-popup {
        width: 100vw !important;
        max-width: 100vw !important;
        padding: 30px 20px !important;
    }
    
    .swal2-container.wpb-gqf-popup .swal2-close {
        top: 10px !important;
        right: 10px !important;
        font-size: 28px !important;
    }
}


@keyframes swalDrawerSlideIn {
    from {
        transform: translateX(100%);
    }
    to {
        transform: translateX(0);
    }
}

/* 3. Style the close button of the drawer */
.swal2-container.wpb-gqf-popup .swal2-close {
    position: absolute !important;
    top: 15px !important;
    right: 15px !important;
    z-index: 9999 !important;
    font-size: 32px !important;
    color: var(--global-palette4, #666) !important;
    background: transparent !important;
    border: none !important;
    width: 40px !important;
    height: 40px !important;
/* ==========================================================================
   Request a Quote 侧边抽屉表单完美修正 (Quote Drawer Non-Truncated Styling)
   ========================================================================== */

/* 1. 抽屉主容器 (520px 宽度、右侧抽屉固定, 清除超出剪裁与挤压) */
.swal2-container.wpb-gqf-popup .swal2-popup,
.swal2-popup.wpb-gqf-form-style-true,
.swal2-popup {
    width: 520px !important;
    max-width: 100vw !important;
    padding: 30px !important;
    box-sizing: border-box !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    text-align: left !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    box-shadow: -10px 0 30px rgba(0, 0, 0, 0.15) !important;
}

.swal2-popup .swal2-html-container,
.swal2-container .swal2-html-container {
    text-align: left !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

/* 2. 标题与描述信息 */
.swal2-popup h2.swal2-title,
.swal2-popup .swal2-title,
.swal2-popup h2,
.swal2-popup h3 {
    text-align: left !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin: 0 0 6px 0 !important;
    padding: 0 !important;
}

.swal2-popup .swal2-html-container > p:first-child,
.swal2-popup .swal2-html-container p.subtitle {
    font-size: 13px !important;
    color: #64748b !important;
    margin-bottom: 20px !important;
    line-height: 1.5 !important;
    border-bottom: 1px solid #f1f5f9 !important;
    padding-bottom: 14px !important;
}

/* 3. 表单容器重置 (清除 Flex gap 消除二次间距) */
.swal2-popup form,
.swal2-popup .wpcf7-form,
.swal2-popup .quote-form-compact {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    row-gap: 0 !important;
    box-sizing: border-box !important;
    text-align: left !important;
}

    outline: none !important;
    transition: all 0.2s ease !important;
    text-align: left !important;
    margin: 0 !important;
}

.swal2-popup textarea {
    width: 100% !important;
    max-width: 100% !important;
    height: 75px !important;
    padding: 8px 12px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    color: #0f172a !important;
    background-color: #ffffff !important;
    box-sizing: border-box !important;
    outline: none !important;
    transition: all 0.2s ease !important;
    resize: vertical !important;
    text-align: left !important;
    margin: 0 !important;
}

.swal2-popup input:focus,
.swal2-popup textarea:focus {
    border-color: #274c77 !important;
    box-shadow: 0 0 0 3px rgba(39, 76, 119, 0.15) !important;
}

.swal2-popup br {
    display: none !important;
}

/* 8. 提交按钮 Navy Blue (#274c77) */
.swal2-popup input[type="submit"],
.swal2-popup button[type="submit"],
.swal2-popup .submit-wrap input {
    width: 100% !important;
    height: 44px !important;
    background-color: #274c77 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    margin-top: 6px !important;
}

.swal2-popup input[type="submit"]:hover,
.swal2-popup button[type="submit"]:hover,
.swal2-popup .submit-wrap input:hover {
    background-color: #1b365d !important;
    box-shadow: 0 4px 14px rgba(39, 76, 119, 0.25) !important;
}

.swal2-container.wpb-gqf-popup input[type="submit"],
.swal2-container.wpb-gqf-popup button[type="submit"] {
    height: 44px !important;
    background-color: #274c77 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 4px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    margin-top: 10px !important;
}

.swal2-container.wpb-gqf-popup input[type="submit"]:hover,
.swal2-container.wpb-gqf-popup button[type="submit"]:hover {
    background-color: #1b365d !important;
    box-shadow: 0 4px 12px rgba(39, 76, 119, 0.20) !important;
}

/* ==========================================
   Single Product "Add to Quote" Button inline style (详情页询价按钮并排设计)
   ========================================== */
.woocommerce div.product form.cart:not(.variations_form):not(:has(table.variations)):not(:has(.variations)) {
    display: inline-flex !important;
    align-items: center !important;
    margin-bottom: 0 !important;
}

.woocommerce div.product form.cart.variations_form,
.woocommerce div.product form.cart:has(table.variations),
.woocommerce div.product form.cart:has(.variations) {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    margin-bottom: 0 !important;
    width: 100% !important;
}

/* Style the "Add to Quote" button */
.wpb-get-a-quote-button-btn.wpb-get-a-quote-button-btn-default {
    background-color: #0f172a !important; /* Premium dark blue / slate color */
    color: #ffffff !important;
    height: 48px !important;
    padding: 0 30px !important;
    border: none !important;
    border-radius: 50px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.2s ease-in-out !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    margin-left: 10px !important;
    margin-top: 0 !important;
    text-transform: none !important;
}

.wpb-get-a-quote-button-btn.wpb-get-a-quote-button-btn-default:hover {
    background-color: #1e293b !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
}

/* Position the button next to form.cart on single product page */
.woocommerce-single-product-summary .wpb-get-a-quote-button-btn-default {
    margin-top: 0 !important;
}

@media screen and (max-width: 767px) {
    .woocommerce div.product form.cart {
        display: flex !important;
        width: 100% !important;
        margin-bottom: 10px !important;
    }
    .woocommerce div.product .wpb-get-a-quote-button-btn.wpb-get-a-quote-button-btn-default {
        display: flex !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-top: 10px !important;
    }
}

/* ==========================================
   Global Mobile Overflow Fix & Top Header Wrap 
   ========================================== */
@media screen and (max-width: 1024px) {
    /* Prevent horizontal scrolling globally */
    html, body {
        overflow-x: hidden !important;
        max-width: 100vw !important;
    }
    
    /* Top Header Bar Mobile Wrap */
    .site-top-header-wrap .site-header-row-container-inner {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 10px 0 !important;
        height: auto !important;
        gap: 10px !important;
    }
    .site-top-header-wrap .site-header-section {
        width: 100% !important;
        text-align: center !important;
        justify-content: center !important;
    }
    .site-top-header-wrap .site-header-item {
        margin: 0 auto !important;
        text-align: center !important;
        justify-content: center !important;
    }
    
    /* Force Newsletter Form stacking and no overflow */
    .footer-newsletter {
        max-width: 100vw !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }
    .footer-newsletter form.tnp-subscription {
        display: flex !important;
        flex-direction: column !important;
        max-width: 100% !important;
        width: 100% !important;
        gap: 10px !important;
        padding: 0 !important;
    }
    .footer-newsletter .newsletter-form .tnp-email,
    .footer-newsletter .newsletter-form .tnp-submit {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        border-radius: 50px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
}

/* ==========================================
   Single-Column Checkout Layout
   Order: Order Summary → Contact → Delivery → Payment
   ========================================== */

form.checkout.custom-checkout-single-col {
    display: block !important;
    max-width: 760px !important;
    margin: 30px auto !important;
    padding: 0 15px !important;
    box-sizing: border-box !important;
    float: none !important;
}

/* Reset theme/WooCommerce floats and columns for single-column layout */
form.checkout.custom-checkout-single-col #customer_details,
form.checkout.custom-checkout-single-col #customer_details .col-1,
form.checkout.custom-checkout-single-col #customer_details .col-2,
form.checkout.custom-checkout-single-col #order_review,
form.checkout.custom-checkout-single-col #order_review_heading,
form.checkout.custom-checkout-single-col .col2-set {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    clear: both !important;
    display: block !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* Section card styling for all sections */
.custom-checkout-single-col .checkout-section,
.custom-checkout-single-col .checkout-contact-section,
.custom-checkout-single-col .checkout-delivery-section {
    background: #fff !important;
    border: 1px solid var(--global-palette7, #e5e7eb) !important;
    border-radius: 10px !important;
    padding: 28px !important;
    margin-bottom: 24px !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important;
    box-sizing: border-box !important;
}

/* Section titles */
.custom-checkout-single-col .checkout-section-title,
.custom-checkout-single-col .checkout-contact-title,
.custom-checkout-single-col .checkout-delivery-title {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--global-palette3, #1f2937) !important;
    margin: 0 0 20px 0 !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid var(--global-palette7, #e5e7eb) !important;
}


/* Payment section inside the single-col form */
.custom-checkout-single-col #payment {
    background-color: transparent !important;
    padding: 0 !important;
    border: none !important;
    border-radius: 0 !important;
}

.custom-checkout-single-col #payment ul.wc_payment_methods {
    padding: 0 !important;
    margin-bottom: 20px !important;
    border: 1px solid var(--global-palette7, #e5e7eb) !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}

.custom-checkout-single-col #payment ul.wc_payment_methods li.wc_payment_method {
    padding: 15px 20px !important;
    border-bottom: 1px solid var(--global-palette7, #e5e7eb) !important;
    margin: 0 !important;
    background-color: #fff !important;
}

.custom-checkout-single-col #payment ul.wc_payment_methods li.wc_payment_method:last-child {
    border-bottom: none !important;
}

.custom-checkout-single-col #payment ul.wc_payment_methods li.wc_payment_method > label {
    font-weight: 600 !important;
    color: var(--global-palette3, #374151) !important;
    font-size: 15px !important;
    background-color: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    display: inline-block !important;
    cursor: pointer !important;
}

.custom-checkout-single-col #payment ul.wc_payment_methods li.wc_payment_method input[type="radio"] {
    margin-right: 10px !important;
}

/* Stripe injects #wc-stripe-hidden-style-input purely to probe the theme's input
   styling; it is meant to be hidden but the theme's input-text rules rendered it
   as an empty gray bar under the payment tabs. Hide it. */
#wc-stripe-hidden-style-input {
    display: none !important;
}

.custom-checkout-single-col #payment ul.wc_payment_methods li.wc_payment_method .payment_box {
    margin-top: 10px !important;
    padding: 15px !important;
    background-color: var(--global-palette8, #f9fafb) !important;
    border-radius: 6px !important;
    font-size: 13px !important;
    color: #6b7280 !important;
    line-height: 1.5 !important;
}

.custom-checkout-single-col #payment .place-order {
    padding: 20px 0 0 0 !important;
    border-top: 1px solid var(--global-palette7, #e5e7eb) !important;
    margin-top: 20px !important;
    background: transparent !important;
}

.custom-checkout-single-col #payment #place_order {
    width: 100% !important;
    padding: 14px 20px !important;
    background-color: #ff6868 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 50px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.2s ease-in-out !important;
    box-sizing: border-box !important;
    display: block !important;
    text-align: center !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.custom-checkout-single-col #payment #place_order:hover {
    background-color: #e55c5c !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(255, 104, 104, 0.3) !important;
}

/* Tip Section */
.checkout-tip-section-wrapper {
    margin: 25px 0 !important;
    padding: 20px !important;
    background-color: var(--global-palette8, #fafafa) !important;
    border: 1px solid var(--global-palette7, #e5e7eb) !important;
    border-radius: 8px !important;
    box-sizing: border-box !important;
}

/* Billing fields inside single col: two-col form rows side-by-side */
.custom-checkout-single-col .woocommerce-billing-fields__field-wrapper::after {
    content: "";
    display: table;
    clear: both;
}


/* ==========================================
   Order Summary Products Display (Shopify Style)
   ========================================== */

/* Cart Table Overrides */
.checkout-order-summary-section table.woocommerce-checkout-review-order-table {
    width: 100% !important;
    border-collapse: collapse !important;
    border: none !important;
    background: transparent !important;
    margin: 0 !important;
}

.checkout-order-summary-section table.woocommerce-checkout-review-order-table th,
.checkout-order-summary-section table.woocommerce-checkout-review-order-table td {
    border: none !important;
    background: transparent !important;
    padding: 12px 0 !important;
}

.checkout-order-summary-section table.woocommerce-checkout-review-order-table thead {
    display: none !important; /* Hide header for cleaner design like Shopify */
}

.checkout-order-summary-section table.woocommerce-checkout-review-order-table tbody tr.cart_item {
    border-bottom: 1px solid var(--global-palette7, #e5e7eb) !important;
}

.checkout-order-summary-section table.woocommerce-checkout-review-order-table tbody tr.cart_item:last-child {
    border-bottom: none !important;
}

/* Flex Row for Product Items */
.checkout-product-item-wrap {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
}

.checkout-product-image-wrap {
    position: relative !important;
    width: 64px !important;
    height: 64px !important;
    background-color: #fff !important;
    border: 1px solid var(--global-palette7, #e5e7eb) !important;
    border-radius: 8px !important;
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.checkout-product-image-wrap img {
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    display: block !important;
}

/* Circular Quantity Badge */
.checkout-product-quantity-badge {
    position: absolute !important;
    top: -8px !important;
    right: -8px !important;
    background-color: #71717a !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    min-width: 20px !important;
    height: 20px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 4px !important;
    box-sizing: border-box !important;
    border: 1px solid #fff !important;
    line-height: 1 !important;
}

.checkout-product-info {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
}

.checkout-product-name {
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--global-palette3, #1f2937) !important;
    line-height: 1.3 !important;
}

.checkout-product-info dl.variation {
    margin: 2px 0 0 0 !important;
    font-size: 12px !important;
    color: #6b7280 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 5px !important;
}

.checkout-product-info dl.variation dt {
    font-weight: 500 !important;
    float: none !important;
    margin: 0 !important;
}

.checkout-product-info dl.variation dd {
    margin: 0 10px 0 0 !important;
    float: none !important;
}

.checkout-order-summary-section table.woocommerce-checkout-review-order-table td.product-total {
    text-align: right !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    color: var(--global-palette3, #1f2937) !important;
    vertical-align: middle !important;
}

/* Coupon Form styling inside cart table row */
.checkout-order-summary-section table.woocommerce-checkout-review-order-table tr.coupon-form td {
    padding: 20px 0 !important;
    border-top: 1px solid var(--global-palette7, #e5e7eb) !important;
    border-bottom: 1px solid var(--global-palette7, #e5e7eb) !important;
}

/* Totals styling */
.checkout-order-summary-section table.woocommerce-checkout-review-order-table tfoot {
    border-top: 1px solid var(--global-palette7, #e5e7eb) !important;
}

.checkout-order-summary-section table.woocommerce-checkout-review-order-table tfoot tr {
    border: none !important;
}

.checkout-order-summary-section table.woocommerce-checkout-review-order-table tfoot th {
    font-weight: 500 !important;
    font-size: 14px !important;
    color: #4b5563 !important;
    text-align: left !important;
}

.checkout-order-summary-section table.woocommerce-checkout-review-order-table tfoot td {
    text-align: right !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    color: var(--global-palette3, #1f2937) !important;
}

.checkout-order-summary-section table.woocommerce-checkout-review-order-table tfoot tr.order-total th {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: var(--global-palette3, #111827) !important;
    padding-top: 18px !important;
}

.checkout-order-summary-section table.woocommerce-checkout-review-order-table tfoot tr.order-total td {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--global-palette1, #111827) !important;
    padding-top: 18px !important;
}

/* Form submit button loading / submitting state styling */
.swal2-container.wpb-gqf-popup .wpcf7-form.is-submitting input[type="submit"],
.swal2-container.wpb-gqf-popup .wpcf7-form.is-submitting button[type="submit"] {
    opacity: 0.65 !important;
    pointer-events: none !important;
}

/* Shipping Methods list styling in sidebar */
.checkout-order-summary-section ul#shipping_method {
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
}

.checkout-order-summary-section ul#shipping_method li {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 5px 0 !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 13px !important;
    color: #4b5563 !important;
    text-align: right !important;
}

.checkout-order-summary-section ul#shipping_method li input[type="radio"] {
    margin: 0 !important;
    order: -1 !important;
}

.checkout-order-summary-section ul#shipping_method li label {
    font-weight: 500 !important;
    color: var(--global-palette3, #1f2937) !important;
    cursor: pointer !important;
    margin: 0 !important;
}

.checkout-order-summary-section .woocommerce-shipping-destination {
    font-size: 12px !important;
    color: #6b7280 !important;
    margin: 5px 0 0 0 !important;
    text-align: right !important;
}

/* ==========================================
   Discount Code Section Customization
   ========================================== */
.woocommerce-form-coupon-toggle {
    display: none !important;
}

.woocommerce-checkout-coupon-wrapper {
    margin: 20px 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid var(--global-palette7, #e5e7eb) !important;
    padding-bottom: 20px !important;
}

.woocommerce-checkout-coupon-wrapper .custom-coupon-title {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: var(--global-palette3, #374151) !important;
    margin-bottom: 8px !important;
    display: block !important;
    text-transform: capitalize !important;
}

form.checkout_coupon.woocommerce-form-coupon {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    width: 100% !important;
    gap: 10px !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
}

form.checkout_coupon.woocommerce-form-coupon p.form-row-first {
    flex: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
}

form.checkout_coupon.woocommerce-form-coupon p.form-row-last {
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

form.checkout_coupon.woocommerce-form-coupon input[name="coupon_code"] {
    width: 100% !important;
    height: 44px !important;
    padding: 0 15px !important;
    border: 1px solid var(--global-palette7, #ddd) !important;
    border-radius: 6px !important;
    background-color: #fff !important;
    box-sizing: border-box !important;
    font-size: 14px !important;
}

form.checkout_coupon.woocommerce-form-coupon button[name="apply_coupon"] {
    height: 44px !important;
    padding: 0 25px !important;
    border: 1px solid #ddd !important;
    border-radius: 6px !important;
    background-color: #f3f4f6 !important;
    color: #4b5563 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
    margin: 0 !important;
    line-height: 42px !important;
}

form.checkout_coupon.woocommerce-form-coupon button[name="apply_coupon"]:hover {
    background-color: #e5e7eb !important;
    color: #1f2937 !important;
}

/* ==========================================
   Contact & Delivery Layout Customization
   ========================================== */
.checkout-contact-section {
    margin-bottom: 25px !important;
}

.checkout-contact-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
    margin-bottom: 15px !important;
}

.checkout-contact-title,
.checkout-delivery-title {
    font-size: 20px !important;
    font-weight: 600 !important;
    color: var(--global-palette3, #111827) !important;
    margin: 0 !important;
    padding: 0 !important;
}

.checkout-login-link {
    font-size: 13px !important;
    color: var(--global-palette1, #2563eb) !important;
    text-decoration: underline !important;
}

.checkout-login-link:hover {
    color: var(--global-palette2, #1d4ed8) !important;
}

.checkout-contact-fields input[type="email"] {
    width: 100% !important;
    height: 44px !important;
    padding: 0 15px !important;
    border: 1px solid var(--global-palette7, #ddd) !important;
    border-radius: 6px !important;
    font-size: 14px !important;
    box-sizing: border-box !important;
}

.checkout-newsletter-optin {
    margin-top: 10px !important;
    margin-bottom: 0 !important;
}

.checkout-newsletter-optin label {
    font-size: 13px !important;
    color: #4b5563 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-weight: 400 !important;
}

.checkout-newsletter-optin input[type="checkbox"] {
    margin: 0 !important;
}

/* ==========================================
   Single Product Page Inline Buttons & Quantity Styling
   ========================================== */
/* Container layout to force quantity and buttons inline on the same row */
/* Container layout to force quantity and buttons inline on the same row */
.woocommerce div.product .summary form.cart .woocommerce-variation-add-to-cart,
.woocommerce div.product .summary form.cart .variations_button {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important; /* Force staying on the same line */
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    margin-top: 15px !important;
    margin-bottom: 15px !important;
}

/* Keep simple product cart form inline */
.woocommerce div.product .summary form.cart:not(.variations_form):not(:has(table.variations)):not(:has(.variations)) {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    margin-top: 15px !important;
    margin-bottom: 15px !important;
}

/* Stack variable product options and buttons vertically */
.woocommerce div.product .summary form.cart.variations_form,
.woocommerce div.product .summary form.cart:has(table.variations),
.woocommerce div.product .summary form.cart:has(.variations) {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 15px !important;
    width: 100% !important;
    margin-top: 15px !important;
    margin-bottom: 15px !important;
}

/* Force quantity selector to be a clean white block with a border */
.woocommerce div.product .summary form.cart .quantity,
body.woocommerce div.product form.cart div.quantity {
    display: inline-flex !important;
    align-items: center !important;
    border: 1px solid var(--global-palette7, #ddd) !important;
    border-radius: 4px !important;
    background-color: #ffffff !important;
    height: 40px !important;
    padding: 0 !important;
    margin: 0 !important;
    width: auto !important;
    overflow: hidden !important;
    float: none !important;
}

.woocommerce div.product .summary form.cart .quantity .qty,
.woocommerce div.product .summary form.cart .quantity.spinners-added .qty {
    width: 50px !important;
    height: 38px !important;
    border: none !important;
    background: transparent !important;
    text-align: center !important;
    font-size: 14px !important;
    color: var(--global-palette3, #333) !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
}

/* Style spinners +/- buttons next to input */
.woocommerce div.product .summary form.cart .quantity .minus,
.woocommerce div.product .summary form.cart .quantity .plus {
    width: 30px !important;
    height: 38px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    background: #ffffff !important;
    color: #666 !important;
    font-size: 16px !important;
    font-weight: normal !important;
    border: none !important;
    user-select: none !important;
}

.woocommerce div.product .summary form.cart .quantity .minus:hover,
.woocommerce div.product .summary form.cart .quantity .plus:hover {
    background-color: #f5f5f5 !important;
    color: #000 !important;
}

/* Style both Add to Cart and Add to Quote buttons identically */
.woocommerce div.product .summary form.cart .single_add_to_cart_button,
.woocommerce div.product .summary form.cart .wpb-get-a-quote-button-form-fire {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 40px !important; /* Matches quantity height */
    padding: 0 25px !important; /* Compact padding */
    line-height: 40px !important;
    background-color: var(--global-palette1, #102a43) !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    border: none !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    margin: 0 !important;
    text-transform: none !important; /* Case matches Title Case text */
    box-sizing: border-box !important;
    white-space: nowrap !important;
}

/* Hover state styling */
.woocommerce div.product .summary form.cart .single_add_to_cart_button:hover,
.woocommerce div.product .summary form.cart .wpb-get-a-quote-button-form-fire:hover {
    background-color: var(--global-palette2, #1862ab) !important;
    color: #ffffff !important;
}

/* ===== 购物车：隐藏 Update Cart 按钮，自动更新价格 ===== */
.woocommerce-cart .woocommerce-cart-form .actions button[name="update_cart"],
button[name="update_cart"] {
    display: none !important;
}

/* ==========================================
   Shopify-Style Payment Section
   ========================================== */

/* "All transactions are secure and encrypted." */
.shopify-style-payment .payment-secure-note {
    font-size: 13px !important;
    color: #6b7280 !important;
    margin: 0 0 16px 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
}

/* Payment method list */
.shopify-style-payment ul.wc_payment_methods {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 20px 0 !important;
    border: 1px solid #d1d5db !important;
    border-radius: 10px !important;
    overflow: hidden !important;
}

/* Each payment method row */
.shopify-style-payment ul.wc_payment_methods li.wc_payment_method {
    padding: 0 !important;
    margin: 0 !important;
    border-bottom: 1px solid #e5e7eb !important;
    background: #fff !important;
}

.shopify-style-payment ul.wc_payment_methods li.wc_payment_method:last-child {
    border-bottom: none !important;
}

/* Method label row */
.shopify-style-payment ul.wc_payment_methods li.wc_payment_method > label {
    display: flex !important;
    align-items: center !important;
    padding: 16px 18px !important;
    cursor: pointer !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    color: #111827 !important;
    background: transparent !important;
    margin: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Radio button */
.shopify-style-payment ul.wc_payment_methods li.wc_payment_method > label input[type="radio"] {
    width: 18px !important;
    height: 18px !important;
    margin-right: 12px !important;
    accent-color: #8b1a1a !important;
    flex-shrink: 0 !important;
}

/* Card icons container (img tags injected by Stripe) */
.shopify-style-payment ul.wc_payment_methods li.wc_payment_method > label img {
    height: 22px !important;
    width: auto !important;
    margin-left: auto !important;
    margin-right: 4px !important;
    border-radius: 3px !important;
    vertical-align: middle !important;
}

/* Selected method: highlighted background + dark red border on left */
.shopify-style-payment ul.wc_payment_methods li.wc_payment_method.wc_payment_method_selected > label,
.shopify-style-payment ul.wc_payment_methods li.wc_payment_method input[type="radio"]:checked ~ label {
    background-color: #fef5f5 !important;
}

/* Payment box (Stripe card fields, etc.) */
.shopify-style-payment ul.wc_payment_methods li.wc_payment_method .payment_box {
    margin: 0 !important;
    padding: 16px 18px 20px !important;
    background-color: #fafafa !important;
    border-top: 1px solid #e5e7eb !important;
}

/* Stripe card input fields */
.shopify-style-payment .wc-stripe-elements-field,
.shopify-style-payment .wc-stripe-iban-element-field,
.shopify-style-payment #stripe-card-element,
.shopify-style-payment #stripe-exp-element,
.shopify-style-payment #stripe-cvc-element {
    background: #fff !important;
    border: 1px solid #d1d5db !important;
    border-radius: 8px !important;
    padding: 12px 14px !important;
    margin-bottom: 10px !important;
    font-size: 15px !important;
}

/* Stripe's card-element wrapper columns for exp + cvc */
.shopify-style-payment .wc-stripe-card-exp-and-cvc {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
}

/* "Use shipping address as billing address" checkbox row */
.shopify-style-payment #wc-stripe-billing-address-container,
.shopify-style-payment .wc-stripe-billing-address-toggle {
    padding: 12px 18px !important;
    font-size: 14px !important;
    color: #374151 !important;
    border-top: 1px solid #e5e7eb !important;
    background: #fafafa !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

/* ==========================================
   Cart Bulk Get a Quote Button & Modal Styles
   ========================================== */

/* Force actions row and cell to span full width of the cart table on desktop */
@media (min-width: 769px) {
    .woocommerce-cart tr:has(> td.actions),
    .woocommerce-cart tr:has(> .actions),
    .woocommerce-cart tr:last-child {
        display: table-row !important;
        width: auto !important;
    }

    .woocommerce-cart td.actions,
    .woocommerce-cart .actions {
        display: table-cell !important;
        width: auto !important;
        padding: 24px 0 !important;
        border-top: 1px solid #e5e7eb !important;
        background: transparent !important;
        box-sizing: border-box !important;
        text-align: left !important;
    }
}

@media (max-width: 768px) {
    .woocommerce-cart tr:has(> td.actions),
    .woocommerce-cart tr:has(> .actions),
    .woocommerce-cart tr:last-child {
        display: block !important;
        width: 100% !important;
    }

    .woocommerce-cart td.actions,
    .woocommerce-cart .actions {
        display: block !important;
        width: 100% !important;
        padding: 16px 0 !important;
        box-sizing: border-box !important;
    }
}

/* Style for Coupon Input and Button alignment */
.woocommerce-cart td.actions .coupon,
.woocommerce-cart .actions .coupon {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 12px !important;
    margin-bottom: 16px !important;
    float: none !important;
}

.woocommerce-cart td.actions .coupon .input-text,
.woocommerce-cart .actions .coupon .input-text {
    height: 46px !important;
    padding: 0 18px !important;
    border: 1px solid #d1d5db !important;
    border-radius: 4px !important; /* Rectangular corners to match theme design */
    font-size: 14px !important;
    color: #374151 !important;
    background-color: #ffffff !important;
    box-shadow: none !important;
    width: 220px !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    transition: all 0.2s ease !important;
}

.woocommerce-cart td.actions .coupon .input-text:focus,
.woocommerce-cart .actions .coupon .input-text:focus {
    border-color: #274c77 !important;
    box-shadow: 0 0 0 3px rgba(39, 76, 119, 0.15) !important;
    outline: none !important;
}

.woocommerce-cart td.actions .coupon .button,
.woocommerce-cart .actions .coupon .button {
    height: 46px !important;
    padding: 0 24px !important;
    border-radius: 4px !important; /* Rectangular corners */
    font-size: 14px !important;
    font-weight: 600 !important;
    background-color: #274c77 !important;
    color: #ffffff !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    box-sizing: border-box !important;
}

.woocommerce-cart td.actions .coupon .button:hover,
.woocommerce-cart .actions .coupon .button:hover {
    background-color: #1b365d !important;
    box-shadow: 0 4px 12px rgba(39, 76, 119, 0.20) !important;
}

/* Button wrapper and button styling */
.zhc-cart-quote-btn-wrap {
    margin: 16px 0 0 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Align quote button inside the padded cart drawer panel */
#cart-drawer.popup-drawer .zhc-cart-quote-btn-wrap {
    padding: 0 25px !important;
    margin: 10px 0 15px 0 !important;
    box-sizing: border-box !important;
}

button.zhc-cart-quote-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    padding: 14px 20px !important;
    background-color: #274c77 !important; /* Premium navy blue tone */
    color: #ffffff !important;
    border: none !important;
    border-radius: 4px !important; /* Rectangular corners */
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    cursor: pointer !important;
    transition: all 0.25s ease-in-out !important;
    box-sizing: border-box !important;
}

button.zhc-cart-quote-btn:hover {
    background-color: #1b365d !important;
    box-shadow: 0 4px 12px rgba(39, 76, 119, 0.25) !important;
    transform: translateY(-1px) !important;
}

button.zhc-cart-quote-btn svg {
    flex-shrink: 0 !important;
    vertical-align: middle !important;
}

/* Modal Overlay */
.zhc-quote-modal-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(0, 0, 0, 0.6) !important;
    display: none !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 999999 !important;
}

/* Show when active */
.zhc-quote-modal-overlay.active {
    display: flex !important;
}

/* Modal Container */
.zhc-quote-modal {
    background: #ffffff !important;
    border-radius: 8px !important; /* Matches theme design language */
    width: 95% !important;
    max-width: 780px !important; /* Increased width to support 2-column fields */
    max-height: 90vh !important; /* Support larger height viewport */
    padding: 35px !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15) !important;
    position: relative !important;
    overflow-y: auto !important;
    box-sizing: border-box !important;
}

/* Close Button */
.zhc-quote-modal-close {
    position: absolute !important;
    top: 15px !important;
    right: 20px !important;
    background: none !important;
    border: none !important;
    font-size: 28px !important;
    font-weight: 300 !important;
    color: #64748b !important;
    cursor: pointer !important;
    line-height: 1 !important;
    transition: color 0.15s ease !important;
    z-index: 9999 !important; /* Forces the close button on top of all content */
    pointer-events: auto !important;
}

.zhc-quote-modal-close:hover {
    color: #111827 !important;
}

/* Modal Headers */
#zhc-quote-modal-title {
    font-size: 26px !important;
    font-weight: 500 !important;
    color: #4b5563 !important;
    margin: 0 0 8px 0 !important;
}

.zhc-quote-modal-subtitle {
    font-size: 15px !important;
    color: #111827 !important;
    line-height: 1.5 !important;
    margin: 0 0 20px 0 !important;
    border-bottom: 1px solid #e5e7eb !important;
    padding-bottom: 16px !important;
}

/* Cart Items inside Modal */
.zhc-quote-cart-items {
    border: 1px solid #e5e7eb !important;
    border-radius: 10px !important;
    background-color: #f9fafb !important;
    max-height: 180px !important;
    overflow-y: auto !important;
    padding: 15px !important;
    margin-bottom: 24px !important;
}

.zhc-quote-items-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.zhc-quote-item-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 15px !important;
    padding: 10px 0 !important;
    border-bottom: 1px dashed #e5e7eb !important;
}

.zhc-quote-item-row:last-child {
    border-bottom: none !important;
}

.zhc-quote-item-info {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    flex: 1 !important;
}

.zhc-quote-item-name {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1f2937 !important;
    line-height: 1.3 !important;
}

.zhc-quote-item-meta {
    font-size: 12px !important;
    color: #6b7280 !important;
}

.zhc-quote-item-qty-price {
    text-align: right !important;
    flex-shrink: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
}

.zhc-quote-item-qty {
    font-size: 12px !important;
    color: #4b5563 !important;
}

.zhc-quote-item-price {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #111827 !important;
}

/* Spinner and Loader */
.zhc-quote-loading {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 20px 0 !important;
    font-size: 14px !important;
    color: #6b7280 !important;
}

.zhc-spinner {
    width: 20px !important;
    height: 20px !important;
    border: 2px solid #e5e7eb !important;
    border-top: 2px solid #274c77 !important;
    border-radius: 50% !important;
    animation: spin 0.8s linear infinite !important;
    display: inline-block !important;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Form Styles */
@media (min-width: 601px) {
    .zhc-quote-form {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 16px 24px !important;
    }
    
    /* Make Details textarea span full width */
    .zhc-quote-field:has(textarea),
    .zhc-quote-field:nth-of-type(7),
    .zhc-quote-form-actions,
    .zhc-quote-response {
        grid-column: 1 / -1 !important;
    }
}

@media (max-width: 600px) {
    .zhc-quote-form {
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
    }
}

.zhc-quote-field {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    box-sizing: border-box !important;
}

.zhc-quote-field label {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #111827 !important;
    margin: 0 !important;
}

.zhc-quote-field label .required {
    color: #dc2626 !important;
}

.zhc-quote-field input[type="text"],
.zhc-quote-field input[type="email"],
.zhc-quote-field input[type="tel"],
.zhc-quote-field textarea {
    padding: 10px 14px !important;
    border: 1px solid #cccccc !important;
    border-radius: 4px !important;
    font-size: 14px !important;
    color: #111827 !important;
    background: #ffffff !important;
    width: 100% !important;
    box-sizing: border-box !important;
    outline: none !important;
    transition: border-color 0.15s ease !important;
}

.zhc-quote-field input:focus,
.zhc-quote-field textarea:focus {
    border-color: #4b5563 !important;
    box-shadow: 0 0 0 2px rgba(75, 85, 99, 0.1) !important;
}

/* Actions and alerts */
.zhc-quote-form-actions {
    margin-top: 10px !important;
}

button.zhc-quote-submit-btn {
    width: 100% !important;
    padding: 14px 20px !important;
    background-color: #274c77 !important; /* Premium navy blue to match other buttons */
    color: #ffffff !important;
    border: none !important;
    border-radius: 4px !important; /* Rectangular corners */
    font-size: 14px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

button.zhc-quote-submit-btn:hover {
    background-color: #1b365d !important;
    box-shadow: 0 4px 12px rgba(39, 76, 119, 0.2) !important;
}

button.zhc-quote-submit-btn:disabled {
    background-color: #9ca3af !important;
    cursor: not-allowed !important;
    box-shadow: none !important;
}

.zhc-quote-alert {
    padding: 12px 16px !important;
    border-radius: 6px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    margin: 10px 0 !important;
}

.zhc-quote-alert-success {
    background-color: #f0fdf4 !important;
    border: 1px solid #bbf7d0 !important;
    color: #166534 !important;
}

.zhc-quote-alert-error {
    background-color: #fef2f2 !important;
    border: 1px solid #fecaca !important;
    color: #991b1b !important;
}

.zhc-quote-alert-warning {
    background-color: #fffbeb !important;
    border: 1px solid #fef3c7 !important;
    color: #92400e !important;
}

/* ==========================================
   Checkout Form Aesthetics & Layout Cleanups
   ========================================== */
.custom-checkout-single-col input[type="text"],
.custom-checkout-single-col input[type="email"],
.custom-checkout-single-col input[type="tel"],
.custom-checkout-single-col select,
.custom-checkout-single-col textarea {
    padding: 10px 14px !important;
    border: 1px solid #cccccc !important;
    border-radius: 4px !important;
    font-size: 14px !important;
    color: #111827 !important;
    background: #ffffff !important;
    height: 42px !important;
    box-sizing: border-box !important;
    outline: none !important;
    transition: border-color 0.15s ease !important;
}

.custom-checkout-single-col textarea {
    height: auto !important;
}

.custom-checkout-single-col input:focus,
.custom-checkout-single-col textarea:focus,
.custom-checkout-single-col select:focus {
    border-color: #4b5563 !important;
    box-shadow: 0 0 0 2px rgba(75, 85, 99, 0.1) !important;
}

/* Checkout Coupon styling override */
form.checkout_coupon.woocommerce-form-coupon input[name="coupon_code"] {
    border-radius: 4px !important;
    border: 1px solid #cccccc !important;
}

form.checkout_coupon.woocommerce-form-coupon button[name="apply_coupon"] {
    border-radius: 4px !important;
    border: 1px solid #cccccc !important;
    background-color: #f3f4f6 !important;
    line-height: 1 !important;
    font-weight: 600 !important;
}

/* Style Billing Field Labels */
.custom-checkout-single-col .woocommerce-billing-fields label {
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #111827 !important;
    margin-bottom: 6px !important;
    display: inline-block !important;
}

/* Add Tip form styling overrides */
div#wooot_order_tip_form button.woo_order_tip.active {
    background: #274c77 !important; /* Navy blue instead of red */
    border-color: #274c77 !important;
}

div#wooot_order_tip_form button.woo_order_tip_apply {
    display: none !important; /* Hide Update Tip button */
}

/* Checkout Submit button color override to blue */
.custom-checkout-single-col #payment #place_order {
    background-color: #274c77 !important; /* Navy blue instead of coral red */
    color: #ffffff !important;
}

.custom-checkout-single-col #payment #place_order:hover {
    background-color: #1b365d !important;
}

/* ===== Header "MORE" Dropdown Menu Aesthetics ===== */
.hiden_menu {
    position: relative !important;
}

.hiden_menu ul.sub-menu,
.hiden_menu .sub-menu {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    right: 0 !important; /* Align to the right edge of the More tab */
    left: auto !important;
    width: 250px !important; /* Force a robust width to match native dropdowns */
    min-width: 250px !important;
    max-width: 300px !important;
    background-color: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 4px !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08) !important;
    padding: 8px 0 !important;
    margin: 0 !important;
    list-style: none !important;
    z-index: 99999 !important;
    box-sizing: border-box !important;
    height: auto !important;
}

/* Hover to show dropdown */
.hiden_menu:hover ul.sub-menu,
.hiden_menu:hover .sub-menu {
    display: block !important;
}

/* Sub-menu items reset */
.hiden_menu ul.sub-menu li,
.hiden_menu .sub-menu li {
    float: none !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    clear: both !important;
    height: auto !important;
}

/* Style the links inside MORE dropdown to match standard theme submenus */
.hiden_menu ul.sub-menu li a,
.hiden_menu .sub-menu li a {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important; /* Pushes the nested arrow '>' to the far right */
    padding: 12px 20px !important;
    color: #1f2937 !important; /* Dark color matching standard dropdown text */
    font-size: 14px !important;
    font-weight: 600 !important; /* Semi-bold to match 2D Materials dropdown */
    line-height: 1.4 !important;
    text-transform: capitalize !important;
    text-decoration: none !important;
    background: transparent !important;
    transition: all 0.15s ease !important;
    width: 100% !important;
    box-sizing: border-box !important;
    height: auto !important;
}

.hiden_menu ul.sub-menu li a:hover,
.hiden_menu .sub-menu li a:hover {
    color: #274c77 !important; /* Premium Navy Blue */
    background-color: #f3f4f6 !important; /* Light grey highlight */
    text-decoration: none !important;
}

/* Adjust More link alignment */
.hiden_menu > a.level-0 {
    display: inline-flex !important;
    align-items: center !important;
    text-transform: uppercase !important;
    font-weight: 600 !important;
    color: #374151 !important;
}

.hiden_menu > a.level-0::after {
    content: "" !important;
    display: inline-block !important;
    margin-left: 6px !important;
    width: 0 !important;
    height: 0 !important;
    border-left: 4px solid transparent !important;
    border-right: 4px solid transparent !important;
    border-top: 4px solid currentColor !important; /* Downward caret arrow */
    vertical-align: middle !important;
}

.hiden_menu:hover > a.level-0 {
    color: #274c77 !important;
}

/* ==========================================================================
   侧边抽屉购物车 (Mini Cart Drawer) 自由加减数量与删除按钮精美排版
   ========================================================================== */
.woocommerce ul.cart_list li.mini_cart_item,
.woocommerce-mini-cart-item {
    position: relative !important;
    padding: 12px 0 14px 75px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    margin-bottom: 12px !important;
}

.woocommerce ul.cart_list li.mini_cart_item img,
.woocommerce-mini-cart-item img {
    position: absolute !important;
    left: 0 !important;
    top: 12px !important;
    width: 60px !important;
    height: 60px !important;
    object-fit: cover !important;
    border-radius: 6px !important;
    border: 1px solid #e2e8f0 !important;
}

.zhc-mini-cart-item-title-link {
    font-size: 13.5px !important;
    font-weight: 600 !important;
    color: #0f172a !important;
    line-height: 1.35 !important;
    display: block !important;
    margin-bottom: 6px !important;
    padding-right: 20px !important;
}

.zhc-mini-cart-item-controls {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin-top: 8px !important;
    flex-wrap: wrap !important;
}

.zhc-mini-cart-qty-wrapper {
    display: inline-flex !important;
    align-items: center !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    background: #f8fafc !important;
    height: 28px !important;
}

.zhc-cart-qty-btn {
    width: 26px !important;
    height: 28px !important;
    background: transparent !important;
    border: none !important;
    color: #334155 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: background 0.2s ease !important;
    padding: 0 !important;
    line-height: 1 !important;
}

.zhc-cart-qty-btn:hover {
    background: #e2e8f0 !important;
    color: #274c77 !important;
}

.zhc-cart-qty-input {
    width: 32px !important;
    height: 28px !important;
    border: none !important;
    border-left: 1px solid #e2e8f0 !important;
    border-right: 1px solid #e2e8f0 !important;
    background: #ffffff !important;
    text-align: center !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #0f172a !important;
    padding: 0 !important;
    margin: 0 !important;
    -moz-appearance: textfield !important;
}

.zhc-cart-qty-input::-webkit-outer-spin-button,
.zhc-cart-qty-input::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

.zhc-mini-cart-price-unit {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #274c77 !important;
}

.zhc-mini-cart-trash-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    font-size: 12px !important;
    color: #64748b !important;
    text-decoration: none !important;
    margin-left: auto !important;
    padding: 2px 6px !important;
    border-radius: 4px !important;
    transition: all 0.2s ease !important;
}

.zhc-mini-cart-trash-btn:hover {
    color: #ef4444 !important;
    background: #fee2e2 !important;
}

.zhc-mini-cart-trash-btn svg {
    stroke: currentColor !important;
}

:root {
    --global-palette1: #274c77 !important;
    --global-palette2: #274c77 !important;
    --global-palette3: #274c77 !important;
    --global-palette-highlight: #274c77 !important;
    --wc-primary: #274c77 !important;
    --wc-primary-hover: #1b365d !important;
}

/* 1. 统一侧边购物车 (Shopping Cart Drawer) 头部与所有按钮颜色 */
#cart-drawer.popup-drawer .drawer-header,
.popup-drawer .drawer-header,
#cart-drawer h2.side-cart-header,
#cart-drawer.popup-drawer .drawer-header h2,
#cart-drawer.popup-drawer .drawer-header span,
.woocommerce.widget_shopping_cart .buttons a,
.woocommerce .widget_shopping_cart .buttons a,
#cart-drawer .widget_shopping_cart .buttons a,
#cart-drawer a.button,
#cart-drawer .button,
.woocommerce a.button.checkout,
.woocommerce a.button.wc-forward,
#cart-drawer .buttons a.button.wc-forward,
#cart-drawer .buttons a.button.checkout,
#cart-drawer .buttons a,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button,
#add_payment_method .wc-proceed-to-checkout a.checkout-button,
a.checkout-button,
.checkout-button,
.woocommerce-cart td.actions .coupon .button,
.woocommerce-cart .actions .coupon .button,
.woocommerce-cart .coupon .button,
button[name="apply_coupon"],
button.zhc-cart-quote-btn,
.zhc-cart-quote-btn,
.woocommerce-checkout #payment #place_order,
#payment #place_order,
div#wooot_order_tip_form button.woo_order_tip.active {
    background-color: #274c77 !important;
    background: #274c77 !important;
    color: #ffffff !important;
    border-color: #274c77 !important;
    border-radius: 4px !important;
    transition: all 0.25s ease !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button:hover,
#add_payment_method .wc-proceed-to-checkout a.checkout-button:hover,
a.checkout-button:hover,
.checkout-button:hover,
.woocommerce-cart td.actions .coupon .button:hover,
.woocommerce-cart .actions .coupon .button:hover,
.woocommerce-cart .coupon .button:hover,
button[name="apply_coupon"]:hover,
button.zhc-cart-quote-btn:hover,
.zhc-cart-quote-btn:hover,
.woocommerce-checkout #payment #place_order:hover,
#payment #place_order:hover,
div#wooot_order_tip_form button.woo_order_tip:hover,
#cart-drawer .widget_shopping_cart .buttons a:hover,
#cart-drawer a.button:hover,
.woocommerce a.button.checkout:hover,
.woocommerce a.button.wc-forward:hover,
#cart-drawer .buttons a:hover {
    background-color: #1b365d !important;
    background: #1b365d !important;
    color: #ffffff !important;
    border-color: #1b365d !important;
    box-shadow: 0 4px 12px rgba(39, 76, 119, 0.20) !important;
}

/* 2. 统一购物车、结算页及全站所有价格文字颜色 */
.woocommerce-cart .amount,
.woocommerce-checkout .amount,
.woocommerce-mini-cart .amount,
.cart-subtotal .amount,
.order-total .amount,
.woocommerce-Price-amount,
.price .amount,
.product-subtotal .amount,
.cart_totals .amount,
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
    color: #274c77 !important;
}

/* 3. 统一链接、提示框与侧边条颜色 */
a.shipping-calculator-button,
a.showcoupon,
.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a,
.woocommerce-cart table.cart .product-name a:hover,
.woocommerce-checkout table.cart .product-name a:hover {
    color: #274c77 !important;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
    border-top-color: #274c77 !important;
    border-left-color: #274c77 !important;
}


/* Fix WooCommerce Register Form Layout */
.woocommerce form.register,
.woocommerce form.woocommerce-form-register {
    display: block !important;
    width: 100% !important;
}

.woocommerce form.register .woocommerce-form-row,
.woocommerce form.register p,
.woocommerce form.register .woocommerce-privacy-policy-text {
    display: block !important;
    width: 100% !important;
    margin-bottom: 15px !important;
}

.woocommerce form.register input.input-text {
    width: 100% !important;
    display: block !important;
}

.woocommerce form.register .woocommerce-Button {
    display: inline-block !important;
    width: auto !important;
    padding: 10px 24px !important;
    border-radius: 30px !important;
    min-width: 140px !important;
    height: auto !important;
}

/* Force button text visibility */
.woocommerce form.register .woocommerce-Button {
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
    text-align: center !important;
}

/* ==========================================================================
   Nanostore storefront experience contract
   ========================================================================== */

/* Preserve email casing exactly as written in the footer source. */
#block-14,
#block-14 a,
.site-footer a[href^="mailto:sales@nanostoreltd.com"] {
    text-transform: none !important;
}

/* Header utilities share one 44px optical center and an 8px parent gap. */
.site-header-main-section-right {
    align-items: center !important;
    column-gap: 8px !important;
}

.site-header-main-section-right > .site-header-item {
    margin: 0 !important;
}

.site-header-item .header-cart-wrap,
.site-header-item .header-account-wrap,
.site-header-item .header-account-in-wrap {
    align-items: center !important;
    box-sizing: border-box !important;
    display: flex !important;
    height: 44px !important;
    justify-content: center !important;
    margin: 0 !important;
}

.site-header-item .header-cart-button,
.site-header-item .header-account-wrap .header-account-button {
    align-items: center !important;
    background: transparent !important;
    border: 0 !important;
    box-sizing: border-box !important;
    box-shadow: none !important;
    color: #274c77 !important;
    display: inline-flex !important;
    height: 44px !important;
    justify-content: center !important;
    line-height: 1 !important;
    margin: 0 !important;
    min-height: 44px !important;
    min-width: 44px !important;
    padding: 0 !important;
    width: 44px !important;
}

.site-header-item .header-cart-button:hover,
.site-header-item .header-cart-button:focus-visible {
    background: transparent !important;
    box-shadow: none !important;
}

.site-header-item .header-cart-wrap,
.site-header-item .header-cart-inner-wrap {
    height: 44px !important;
    width: 44px !important;
}

.site-header-item .header-cart-button .base-svg-iconset,
.site-header-item .header-account-wrap .header-account-button .base-svg-iconset {
    align-items: center !important;
    display: inline-flex !important;
    height: 24px !important;
    justify-content: center !important;
    padding: 0 !important;
    width: 24px !important;
}

.site-header-item .header-cart-button .base-svg-iconset::after {
    content: none !important;
}

.site-header-item .header-cart-button svg,
.site-header-item .header-account-button svg {
    display: block !important;
    height: 24px !important;
    width: 24px !important;
}

.site-header-item .header-cart-content {
    display: none !important;
}

.site-header-item .header-cart-total:not(.header-cart-is-empty-true) {
    align-items: center !important;
    background: #315a91 !important;
    border: 2px solid #ffffff !important;
    box-sizing: border-box !important;
    color: #ffffff !important;
    display: flex !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    height: 18px !important;
    justify-content: center !important;
    left: auto !important;
    line-height: 14px !important;
    min-width: 18px !important;
    padding: 0 3px !important;
    right: -3px !important;
    top: -3px !important;
    width: auto !important;
}

.site-header-item .header-cart-total.header-cart-is-empty-true {
    display: none !important;
}

.site-header-item .header-account-in-wrap,
.site-header-item .header-account-in-wrap .account-navigation,
.site-header-item .header-account-in-wrap .account-menu-container,
.site-header-item .header-account-in-wrap #account-menu,
.site-header-item .header-account-in-wrap .menu-account-item,
.site-header-item .header-account-in-wrap .header-account-button {
    box-sizing: border-box !important;
    height: 44px !important;
    margin: 0 !important;
    width: 60px !important;
}

.site-header-item .header-account-in-wrap #account-menu,
.site-header-item .header-account-in-wrap .menu-account-item {
    align-items: center !important;
    display: flex !important;
    padding: 0 !important;
}

.site-header-item .header-account-in-wrap .header-account-button {
    align-items: center !important;
    display: flex !important;
    justify-content: center !important;
    line-height: 1 !important;
    min-height: 44px !important;
    min-width: 60px !important;
    padding: 0 !important;
}

.site-header-item .header-account-in-wrap .nav-drop-title-wrap {
    align-items: center !important;
    display: grid !important;
    gap: 8px !important;
    grid-template-columns: 24px 14px !important;
    height: 44px !important;
}

.site-header-item .header-account-in-wrap .base-svg-iconset:not(.svg-baseline) {
    align-items: center !important;
    display: flex !important;
    height: 24px !important;
    justify-content: center !important;
    width: 24px !important;
}

.site-header-item .header-account-in-wrap .dropdown-nav-toggle,
.site-header-item .header-account-in-wrap .dropdown-nav-toggle .base-svg-iconset,
.site-header-item .header-account-in-wrap .dropdown-nav-toggle svg {
    align-items: center !important;
    display: flex !important;
    height: 14px !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 14px !important;
}

.site-header-item .header-account-wrap,
.site-header-item .header-account-wrap .header-account-button {
    min-width: 60px !important;
    width: 60px !important;
}

.site-header-item .header-mobile-cart-wrap,
.site-header-item .header-mobile-cart-wrap .header-cart-inner-wrap,
.site-header-item .header-mobile-account-in-wrap,
.site-header-item .header-mobile-account-in-wrap .header-account-button {
    align-items: center !important;
    box-sizing: border-box !important;
    display: flex !important;
    height: 44px !important;
    justify-content: center !important;
    margin: 0 !important;
    min-height: 44px !important;
    min-width: 44px !important;
    padding: 0 !important;
    width: 44px !important;
}

.site-header-item .header-mobile-account-in-wrap .header-account-button {
    color: #274c77 !important;
    line-height: 1 !important;
}

/* The detached mega panel lives under body, so only the drawer itself scrolls. */
#widget-drawer .drawer-inner {
    box-sizing: border-box !important;
    max-height: 100vh !important;
    max-height: 100dvh !important;
    overscroll-behavior: contain;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    scrollbar-gutter: stable;
}

#widget-drawer .drawer-content,
#widget-drawer .drawer-content-inner,
#widget-drawer .header-widget2,
#widget-drawer .widget,
#widget-drawer .widget_nav_menu,
#widget-drawer .widget_product_categories {
    overflow: visible;
}

#widget-drawer .header-widget2 ul.menu {
    margin-bottom: 16px !important;
}

/* Product-loop quote actions remain compact and readable on one line. */
.woocommerce ul.products li.product a.button.zhc-loop-quote-button {
    font-size: 13px !important;
    padding-inline: 18px !important;
    white-space: nowrap !important;
}

.zhc-variable-quote-prompt:empty,
.zhc-mixed-quote-price:empty {
    display: none !important;
}

/* Two-column scientific checkout. */
.woocommerce-checkout .content-container.site-container {
    max-width: 1440px !important;
}

form.checkout.zhc-checkout {
    box-sizing: border-box !important;
    float: none !important;
    margin: 34px auto 72px !important;
    max-width: 1320px !important;
    padding: 0 22px !important;
    width: 100% !important;
}

.zhc-checkout-layout {
    align-items: start !important;
    display: grid !important;
    gap: 48px !important;
    grid-template-columns: minmax(0, 1.08fr) minmax(390px, 0.92fr) !important;
}

.zhc-checkout .checkout-main-panel,
.zhc-checkout .checkout-summary-panel {
    min-width: 0 !important;
}

.zhc-checkout #customer_details,
.zhc-checkout #customer_details .col-1,
.zhc-checkout .col2-set {
    background: transparent !important;
    border: 0 !important;
    clear: both !important;
    display: block !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

.zhc-checkout .checkout-contact-section,
.zhc-checkout .checkout-delivery-section,
.zhc-checkout .checkout-payment-section,
.zhc-checkout .checkout-summary-panel {
    background: #ffffff !important;
    border: 1px solid #dce7f0 !important;
    border-radius: 12px !important;
    box-shadow: 0 12px 32px rgba(27, 54, 93, 0.055) !important;
    box-sizing: border-box !important;
    padding: 30px !important;
}

.zhc-checkout .checkout-contact-section {
    border-bottom: 0 !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    margin: 0 !important;
    padding-bottom: 22px !important;
}

.zhc-checkout .checkout-delivery-section {
    border-top: 0 !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    margin: 0 0 24px !important;
    padding-top: 8px !important;
}

.zhc-checkout .checkout-payment-section {
    margin: 0 !important;
}

.zhc-checkout .checkout-payment-section #wc-stripe-express-checkout-element {
    margin: 0 0 18px !important;
}

.zhc-checkout .checkout-payment-section #wc-stripe-express-checkout-button-separator {
    margin: 16px 0 20px !important;
}

.zhc-checkout .checkout-section-title,
.zhc-checkout .checkout-contact-title,
.zhc-checkout .checkout-delivery-title {
    border-bottom: 1px solid #e6eef5 !important;
    color: #1b365d !important;
    font-size: 19px !important;
    font-weight: 650 !important;
    letter-spacing: -0.01em !important;
    line-height: 1.35 !important;
    margin: 0 0 22px !important;
    padding: 0 0 14px !important;
}

.zhc-checkout .checkout-contact-header {
    align-items: baseline !important;
    display: flex !important;
    justify-content: space-between !important;
    margin: 0 !important;
}

.zhc-checkout .checkout-login-link {
    color: #274c77 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}

.zhc-checkout input[type="text"],
.zhc-checkout input[type="email"],
.zhc-checkout input[type="tel"],
.zhc-checkout input[type="password"],
.zhc-checkout select:not(.select2-hidden-accessible),
.zhc-checkout textarea,
.zhc-checkout .select2-container .select2-selection--single {
    background: #ffffff !important;
    border: 1px solid #cbd8e3 !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    color: #1f2937 !important;
    font-size: 14px !important;
    min-height: 48px !important;
    padding: 10px 13px !important;
    width: 100% !important;
}

.zhc-checkout input:focus,
.zhc-checkout select:not(.select2-hidden-accessible):focus,
.zhc-checkout textarea:focus,
.zhc-checkout .select2-container--focus .select2-selection--single {
    border-color: #5f84ad !important;
    box-shadow: 0 0 0 3px rgba(39, 76, 119, 0.10) !important;
    outline: 0 !important;
}

.zhc-checkout .form-row label {
    color: #3e4d5c !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    margin-bottom: 7px !important;
}

.zhc-checkout .form-row {
    margin-bottom: 16px !important;
}

.zhc-checkout #payment {
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
}

.zhc-checkout .payment-secure-note {
    color: #5c6b79 !important;
    font-size: 13px !important;
    margin: -5px 0 16px !important;
}

.zhc-checkout #payment ul.wc_payment_methods {
    border: 1px solid #d8e3ec !important;
    border-radius: 8px !important;
    margin: 0 0 20px !important;
    overflow: hidden !important;
    padding: 0 !important;
}

.zhc-checkout #payment ul.wc_payment_methods li.wc_payment_method {
    background: #ffffff !important;
    border-bottom: 1px solid #e6eef5 !important;
    margin: 0 !important;
    padding: 17px 18px !important;
}

.zhc-checkout #payment ul.wc_payment_methods li.wc_payment_method:last-child {
    border-bottom: 0 !important;
}

.zhc-checkout #payment ul.wc_payment_methods li.wc_payment_method > label {
    color: #25384b !important;
    cursor: pointer !important;
    font-size: 14px !important;
    font-weight: 650 !important;
}

.zhc-checkout #payment .payment_box {
    background: #f4f8fb !important;
    border-radius: 6px !important;
    color: #526272 !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
    margin: 13px 0 0 !important;
    padding: 14px !important;
}

/* WooCommerce wraps the "Save payment information" row in its own <fieldset>.
   When the gateway hides that row (guest checkout, or a method that cannot be
   tokenised) the fieldset stays behind as an empty bordered bar inside the
   payment box. Collapse it only while it holds nothing, so the checkbox still
   renders for customers who can actually save a method. */
.zhc-checkout #payment .payment_box fieldset:has(> p.woocommerce-SavedPaymentMethods-saveNew[style*="display: none"]:only-child) {
    display: none !important;
}

.zhc-checkout #payment .place-order {
    background: transparent !important;
    border-top: 1px solid #e6eef5 !important;
    margin: 22px 0 0 !important;
    padding: 22px 0 0 !important;
}

.zhc-checkout #payment #place_order {
    background: #274c77 !important;
    border: 1px solid #274c77 !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 650 !important;
    letter-spacing: 0.01em !important;
    min-height: 50px !important;
    text-transform: none !important;
    width: 100% !important;
}

.zhc-checkout #payment #place_order:hover,
.zhc-checkout #payment #place_order:focus-visible {
    background: #1b365d !important;
    border-color: #1b365d !important;
}

.zhc-checkout .woocommerce-privacy-policy-text {
    color: #667085 !important;
    font-size: 12px !important;
    line-height: 1.55 !important;
    margin: 14px 0 !important;
}

.zhc-checkout .woocommerce-privacy-policy-text a {
    color: #274c77 !important;
    font-weight: 600 !important;
}

.zhc-checkout .checkout-tip-section-wrapper {
    background: #f7fafc !important;
    border: 1px solid #dce7f0 !important;
    border-radius: 8px !important;
    margin: 20px 0 !important;
    padding: 16px !important;
}

.zhc-checkout #tip-enabled {
    accent-color: #274c77 !important;
}

.zhc-checkout .tip-checkbox-label {
    color: #33485d !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}

.zhc-checkout .checkout-summary-panel table.woocommerce-checkout-review-order-table {
    background: transparent !important;
    border: 0 !important;
    border-collapse: collapse !important;
    margin: 0 !important;
    width: 100% !important;
}

.zhc-checkout .checkout-summary-panel table thead {
    display: none !important;
}

.zhc-checkout .checkout-summary-panel table th,
.zhc-checkout .checkout-summary-panel table td {
    background: transparent !important;
    border: 0 !important;
    padding: 13px 0 !important;
}

.zhc-checkout .checkout-summary-panel tbody tr.cart_item {
    border-bottom: 1px solid #e6eef5 !important;
}

.zhc-checkout .checkout-summary-panel .checkout-product-item-wrap {
    align-items: center !important;
    display: flex !important;
    gap: 14px !important;
}

.zhc-checkout .checkout-summary-panel .checkout-product-image-wrap {
    align-items: center !important;
    background: #ffffff !important;
    border: 1px solid #dce7f0 !important;
    border-radius: 8px !important;
    display: flex !important;
    flex: 0 0 62px !important;
    height: 62px !important;
    justify-content: center !important;
    position: relative !important;
    width: 62px !important;
}

.zhc-checkout .checkout-summary-panel .checkout-product-image-wrap img {
    border-radius: 7px !important;
    height: 100% !important;
    object-fit: contain !important;
    width: 100% !important;
}

.zhc-checkout .checkout-summary-panel .checkout-product-quantity-badge {
    align-items: center !important;
    background: #274c77 !important;
    border: 2px solid #ffffff !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    display: flex !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    height: 22px !important;
    justify-content: center !important;
    min-width: 22px !important;
    padding: 0 5px !important;
    position: absolute !important;
    right: -8px !important;
    top: -8px !important;
}

.zhc-checkout .checkout-summary-panel .checkout-product-name {
    color: #26384a !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}

.zhc-checkout .checkout-summary-panel .product-total {
    color: #274c77 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-align: right !important;
}

.zhc-checkout .checkout-summary-panel tfoot {
    border-top: 1px solid #dce7f0 !important;
}

.zhc-checkout .checkout-summary-panel tfoot th {
    color: #556575 !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-align: left !important;
}

.zhc-checkout .checkout-summary-panel tfoot td {
    color: #26384a !important;
    font-size: 13px !important;
    font-weight: 650 !important;
    text-align: right !important;
}

.zhc-checkout .checkout-summary-panel tfoot .order-total th,
.zhc-checkout .checkout-summary-panel tfoot .order-total td {
    color: #1b365d !important;
    font-size: 17px !important;
    font-weight: 750 !important;
    padding-top: 18px !important;
}

.zhc-checkout .woocommerce-checkout-coupon-wrapper {
    border-bottom: 1px solid #dce7f0 !important;
    margin: 14px 0 !important;
    padding: 0 0 18px !important;
}

.zhc-checkout form.checkout_coupon.woocommerce-form-coupon {
    display: grid !important;
    gap: 9px !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    margin: 0 !important;
    max-width: none !important;
}

.zhc-checkout form.checkout_coupon input[name="coupon_code"],
.zhc-checkout form.checkout_coupon button[name="apply_coupon"] {
    border-radius: 6px !important;
    height: 44px !important;
    min-height: 44px !important;
}

/* Complete account center with visible profile and password controls. */
.woocommerce-account .content-container.site-container {
    max-width: 1320px !important;
}

.woocommerce-account.logged-in .woocommerce {
    align-items: start !important;
    display: grid !important;
    gap: 32px !important;
    grid-template-columns: 250px minmax(0, 1fr) !important;
    margin: 42px auto 72px !important;
}

.woocommerce-account .woocommerce > .woocommerce-notices-wrapper {
    grid-column: 1 / -1 !important;
}

.woocommerce-account .woocommerce > .account-navigation-wrap {
    float: none !important;
    grid-column: 1 !important;
    margin: 0 !important;
    width: 100% !important;
}

.woocommerce-account .woocommerce > .woocommerce-MyAccount-content {
    grid-column: 2 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
    background: #ffffff !important;
    border: 1px solid #dce7f0 !important;
    border-radius: 10px !important;
    box-shadow: 0 10px 28px rgba(27, 54, 93, 0.05) !important;
    float: none !important;
    overflow: hidden !important;
    width: 100% !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 8px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li {
    border: 0 !important;
    margin: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
    border-radius: 6px !important;
    color: #4f6274 !important;
    display: block !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 12px 14px !important;
    text-decoration: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation li a:focus-visible {
    background: #eef6fc !important;
    color: #1b365d !important;
}

.woocommerce-account .woocommerce-MyAccount-content {
    background: #ffffff !important;
    border: 1px solid #dce7f0 !important;
    border-radius: 10px !important;
    box-shadow: 0 10px 28px rgba(27, 54, 93, 0.05) !important;
    box-sizing: border-box !important;
    float: none !important;
    min-height: 420px !important;
    padding: 34px !important;
    width: 100% !important;
}

.woocommerce-account .woocommerce-MyAccount-content:has(> .woocommerce-info) {
    min-height: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .woocommerce-Button {
    background: #274c77 !important;
    border-color: #274c77 !important;
    color: #ffffff !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .woocommerce-Button:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .woocommerce-Button:focus-visible {
    background: #1b365d !important;
    border-color: #1b365d !important;
    color: #ffffff !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table .woocommerce-button {
    color: #ffffff !important;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table .woocommerce-button:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table .woocommerce-button:focus-visible {
    color: #ffffff !important;
}

.zhc-account-overview__header {
    border-bottom: 1px solid #e5edf4 !important;
    margin-bottom: 26px !important;
    padding-bottom: 24px !important;
}

.zhc-account-overview__eyebrow {
    color: #5f84ad !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.12em !important;
    margin: 0 0 8px !important;
    text-transform: uppercase !important;
}

.zhc-account-overview__header h2 {
    color: #1b365d !important;
    font-size: clamp(25px, 3vw, 34px) !important;
    letter-spacing: -0.025em !important;
    line-height: 1.2 !important;
    margin: 0 0 10px !important;
}

.zhc-account-overview__header p:last-child {
    color: #637383 !important;
    margin: 0 !important;
}

.zhc-account-actions {
    display: grid !important;
    gap: 14px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.zhc-account-action {
    border: 1px solid #dce7f0 !important;
    border-radius: 8px !important;
    color: #667585 !important;
    display: flex !important;
    flex-direction: column !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    min-height: 126px !important;
    padding: 20px !important;
    text-decoration: none !important;
}

.zhc-account-action:hover,
.zhc-account-action:focus-visible {
    border-color: #9eb8cf !important;
    color: #4f6274 !important;
}

.zhc-account-action__label {
    color: #274c77 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    margin-bottom: 8px !important;
}

.woocommerce-account .woocommerce-MyAccount-content fieldset {
    border: 1px solid #dce7f0 !important;
    border-radius: 8px !important;
    margin: 28px 0 0 !important;
    padding: 20px !important;
}

.woocommerce-account .woocommerce-MyAccount-content fieldset legend {
    color: #274c77 !important;
    font-weight: 700 !important;
    padding: 0 8px !important;
}

.woocommerce-account form.woocommerce-EditAccountForm {
    align-items: start !important;
    display: grid !important;
    gap: 20px 24px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.woocommerce-account form.woocommerce-EditAccountForm > .form-row {
    float: none !important;
    margin: 0 !important;
    width: 100% !important;
}

.woocommerce-account form.woocommerce-EditAccountForm > .form-row-wide,
.woocommerce-account form.woocommerce-EditAccountForm > fieldset,
.woocommerce-account form.woocommerce-EditAccountForm > p:last-child {
    grid-column: 1 / -1 !important;
}

.woocommerce-account form.woocommerce-EditAccountForm > .clear {
    display: none !important;
}

.woocommerce-account form.woocommerce-EditAccountForm label {
    color: #334c66 !important;
    display: block !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.45 !important;
    margin-bottom: 8px !important;
}

.woocommerce-account form.woocommerce-EditAccountForm input[type="text"],
.woocommerce-account form.woocommerce-EditAccountForm input[type="email"],
.woocommerce-account form.woocommerce-EditAccountForm input[type="password"] {
    background: #ffffff !important;
    border: 1px solid #cbd9e5 !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    color: #1f3348 !important;
    font-size: 15px !important;
    min-height: 48px !important;
    padding: 11px 13px !important;
    width: 100% !important;
}

.woocommerce-account form.woocommerce-EditAccountForm input:focus {
    border-color: #5f84ad !important;
    box-shadow: 0 0 0 3px rgba(95, 132, 173, 0.16) !important;
    outline: none !important;
}

.woocommerce-account form.woocommerce-EditAccountForm fieldset {
    display: grid !important;
    gap: 18px !important;
}

.woocommerce-account form.woocommerce-EditAccountForm fieldset .form-row {
    float: none !important;
    margin: 0 !important;
    width: 100% !important;
}

.woocommerce-account form.woocommerce-EditAccountForm .password-input {
    display: block !important;
    position: relative !important;
    width: 100% !important;
}

.woocommerce-account form.woocommerce-EditAccountForm .show-password-input {
    align-items: center !important;
    display: flex !important;
    height: 46px !important;
    justify-content: center !important;
    margin: 0 !important;
    right: 1px !important;
    top: 1px !important;
    width: 46px !important;
}

.woocommerce-account form.woocommerce-EditAccountForm button[name="save_account_details"] {
    align-items: center !important;
    background: #274c77 !important;
    border: 1px solid #274c77 !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    color: #ffffff !important;
    display: inline-flex !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    justify-content: center !important;
    line-height: 1 !important;
    min-height: 48px !important;
    padding: 0 24px !important;
    width: auto !important;
}

.woocommerce-account form.woocommerce-EditAccountForm button[name="save_account_details"]:hover,
.woocommerce-account form.woocommerce-EditAccountForm button[name="save_account_details"]:focus-visible {
    background: #1b365d !important;
    border-color: #1b365d !important;
}

@media (min-width: 981px) {
    .zhc-checkout .checkout-main-panel,
    .zhc-checkout .checkout-summary-panel {
        /* Natural height + no internal scroll so hovering the summary scrolls the
           page (was height:100vh + overflow-y:auto + overscroll:contain, which
           trapped the wheel over the Order Summary). Still sticky-follows scroll. */
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        overscroll-behavior: auto !important;
        position: sticky !important;
        top: 24px !important;
    }
}

@media (max-width: 980px) {
    .zhc-checkout-layout {
        gap: 24px !important;
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .zhc-checkout .checkout-main-panel,
    .zhc-checkout .checkout-summary-panel {
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        overscroll-behavior: auto !important;
        position: static !important;
        scrollbar-gutter: auto !important;
        top: auto !important;
    }

    .woocommerce-account .woocommerce {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .woocommerce-account .woocommerce > .account-navigation-wrap,
    .woocommerce-account .woocommerce > .woocommerce-MyAccount-content {
        grid-column: 1 !important;
    }

    .woocommerce-account .woocommerce-MyAccount-navigation ul {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .woocommerce-account form.woocommerce-EditAccountForm {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .woocommerce-account form.woocommerce-EditAccountForm > .form-row {
        grid-column: 1 !important;
    }
}

@media (max-width: 620px) {
    body.page-id-14.woocommerce-checkout .content-container.site-container {
        padding-inline: 20px !important;
    }

    body.page-id-14.woocommerce-checkout .elementor-section > .elementor-container,
    body.page-id-14.woocommerce-checkout .e-con.e-con-boxed,
    body.page-id-14.woocommerce-checkout .e-con-boxed > .e-con-inner {
        padding-inline: 0 !important;
    }

    body.page-id-14.woocommerce-checkout form.checkout.zhc-checkout {
        margin-top: 20px !important;
        padding-inline: 0 !important;
    }

    .zhc-checkout .checkout-contact-section,
    .zhc-checkout .checkout-delivery-section,
    .zhc-checkout .checkout-payment-section,
    .zhc-checkout .checkout-summary-panel,
    .woocommerce-account .woocommerce-MyAccount-content {
        border-radius: 8px !important;
        padding: 20px !important;
    }

    .zhc-checkout form.checkout_coupon.woocommerce-form-coupon,
    .zhc-account-actions {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .woocommerce-account .woocommerce {
        gap: 18px !important;
        margin-top: 24px !important;
    }

    .woocommerce-account .woocommerce-MyAccount-content > .woocommerce-info {
        align-items: flex-start !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 14px !important;
    }

    .woocommerce-account .woocommerce-MyAccount-content > .woocommerce-info .woocommerce-Button {
        float: none !important;
        margin: 0 !important;
        order: 1 !important;
    }
}

@media (max-width: 767px) {
    .site-mobile-header-wrap .widget-toggle-open-container .widget-toggle-open {
        justify-content: center !important;
        min-width: 44px !important;
        padding-inline: 10px !important;
        width: 44px !important;
    }

    .site-mobile-header-wrap .mobile-toggle-open-container,
    #mobile-drawer {
        display: none !important;
    }

    body.woocommerce-account #bt-scroll-up,
    body.woocommerce-checkout #bt-scroll-up {
        display: none !important;
    }

    .site-footer-middle-section-1 #block-13 .wp-block-columns {
        display: block !important;
        margin-inline: auto !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    .site-footer-middle-section-1 #block-13 .wp-block-column {
        box-sizing: border-box !important;
        flex-basis: auto !important;
        margin-inline: auto !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    .site-footer-middle-section-1 #block-13 .wp-block-image {
        margin-inline: auto !important;
        text-align: center !important;
        width: 100% !important;
    }

    .site-footer-middle-section-1 #block-13 .wp-block-image img {
        display: block !important;
        height: auto !important;
        margin-inline: auto !important;
        max-width: 100% !important;
    }
}


/* Logged-out account page: login and registration.
   The dashboard grid above is scoped to .logged-in, because it was also
   matching guests and squeezing both forms into the 250px sidebar column. */
.woocommerce-account:not(.logged-in) .woocommerce {
    display: block !important;
    margin: 42px auto 78px !important;
    max-width: 1040px !important;
}
.woocommerce-account:not(.logged-in) .u-columns.col2-set {
    align-items: stretch !important;
    display: grid !important;
    gap: 32px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin: 0 !important;
    width: 100% !important;
}
/* WooCommerce ships a clearfix ::before/::after on .col2-set. Inside a grid
   container those pseudo-elements become grid items and steal the first cell,
   which pushed Login into column 2 and Register onto a second row. */
.woocommerce-account:not(.logged-in) .u-columns.col2-set::before,
.woocommerce-account:not(.logged-in) .u-columns.col2-set::after {
    content: none !important;
    display: none !important;
}
/* The card frame lives on .u-column*, so the form itself must stay flat. */
.woocommerce-account:not(.logged-in) .col2-set form.login,
.woocommerce-account:not(.logged-in) .col2-set form.register {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
}
.woocommerce-account:not(.logged-in) .col2-set > .u-column1,
.woocommerce-account:not(.logged-in) .col2-set > .u-column2 {
    background: #ffffff !important;
    border: 1px solid #dce7f0 !important;
    border-radius: 10px !important;
    box-shadow: 0 10px 28px rgba(27, 54, 93, 0.05) !important;
    display: flex !important;
    flex-direction: column !important;
    float: none !important;
    margin: 0 !important;
    padding: 34px !important;
    width: 100% !important;
}
.woocommerce-account:not(.logged-in) .col2-set > div > h2 {
    border-bottom: 1px solid #dce7f0 !important;
    font-size: 22px !important;
    line-height: 1.3 !important;
    margin: 0 0 26px !important;
    padding: 0 0 16px !important;
}
.woocommerce-account:not(.logged-in) .col2-set form {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    margin: 0 !important;
}
.woocommerce-account:not(.logged-in) .col2-set .form-row {
    margin: 0 0 18px !important;
    padding: 0 !important;
}
.woocommerce-account:not(.logged-in) .col2-set .form-row > label:not(.woocommerce-form__label-for-checkbox) {
    color: #1b365d !important;
    display: block !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    margin: 0 0 8px !important;
}
.woocommerce-account:not(.logged-in) .col2-set .form-row .required {
    color: #c0392b !important;
    text-decoration: none !important;
}
.woocommerce-account:not(.logged-in) .col2-set input[type="text"],
.woocommerce-account:not(.logged-in) .col2-set input[type="email"],
.woocommerce-account:not(.logged-in) .col2-set input[type="password"] {
    background: #ffffff !important;
    border: 1px solid #dce7f0 !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    color: #1b365d !important;
    display: block !important;
    font-size: 15px !important;
    height: 46px !important;
    margin: 0 !important;
    padding: 10px 14px !important;
    width: 100% !important;
}
.woocommerce-account:not(.logged-in) .col2-set input[type="text"]:focus,
.woocommerce-account:not(.logged-in) .col2-set input[type="email"]:focus,
.woocommerce-account:not(.logged-in) .col2-set input[type="password"]:focus {
    border-color: #274c77 !important;
    box-shadow: 0 0 0 3px rgba(39, 76, 119, 0.12) !important;
    outline: none !important;
}
.woocommerce-account:not(.logged-in) .col2-set p.form-row:not(.woocommerce-form-row) {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    margin: 6px 0 0 !important;
    margin-top: auto !important;
    padding-top: 6px !important;
}
.woocommerce-account:not(.logged-in) .woocommerce-form__label-for-checkbox {
    align-items: center !important;
    color: #41536b !important;
    display: flex !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    gap: 9px !important;
    margin: 0 !important;
}
.woocommerce-account:not(.logged-in) .woocommerce-form__label-for-checkbox input[type="checkbox"] {
    height: 16px !important;
    margin: 0 !important;
    width: 16px !important;
}
.woocommerce-account:not(.logged-in) .col2-set button[type="submit"] {
    background: #274c77 !important;
    border: 0 !important;
    border-radius: 50px !important;
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    margin: 0 !important;
    min-height: 48px !important;
    padding: 12px 28px !important;
    transition: background 0.18s ease !important;
    width: 100% !important;
}
.woocommerce-account:not(.logged-in) .col2-set button[type="submit"]:hover {
    background: #1b365d !important;
}
.woocommerce-account:not(.logged-in) .woocommerce-LostPassword {
    margin: 20px 0 0 !important;
    text-align: center !important;
}
.woocommerce-account:not(.logged-in) .woocommerce-LostPassword a {
    color: #274c77 !important;
    font-size: 14px !important;
}
.woocommerce-account:not(.logged-in) .woocommerce-privacy-policy-text p,
.woocommerce-account:not(.logged-in) .woocommerce-form-register > p:not(.form-row) {
    color: #5b7089 !important;
    font-size: 13px !important;
    line-height: 1.65 !important;
    margin: 0 0 18px !important;
}
@media (max-width: 860px) {
    .woocommerce-account:not(.logged-in) .u-columns.col2-set {
        gap: 20px !important;
        grid-template-columns: minmax(0, 1fr) !important;
    }
    .woocommerce-account:not(.logged-in) .col2-set > .u-column1,
    .woocommerce-account:not(.logged-in) .col2-set > .u-column2 {
        padding: 24px !important;
    }
}

/* Lost-password shares the guest card treatment. Its submit button inherits
   the theme palette, where button text and button background are both #274c77,
   so the label rendered navy-on-navy and was invisible until hover. */
.woocommerce-lost-password .woocommerce-ResetPassword {
    background: #ffffff !important;
    border: 1px solid #dce7f0 !important;
    border-radius: 10px !important;
    box-shadow: 0 10px 28px rgba(27, 54, 93, 0.05) !important;
    margin: 0 auto !important;
    max-width: 520px !important;
    padding: 34px !important;
}
.woocommerce-lost-password .woocommerce-ResetPassword > p:first-child {
    color: #41536b !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
    margin: 0 0 24px !important;
}
.woocommerce-lost-password .woocommerce-ResetPassword .form-row {
    float: none !important;
    margin: 0 0 18px !important;
    padding: 0 !important;
    width: 100% !important;
}
.woocommerce-lost-password .woocommerce-ResetPassword .form-row > label {
    color: #1b365d !important;
    display: block !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    margin: 0 0 8px !important;
}
.woocommerce-lost-password .woocommerce-ResetPassword .required {
    color: #c0392b !important;
    text-decoration: none !important;
}
.woocommerce-lost-password .woocommerce-ResetPassword input[type="text"],
.woocommerce-lost-password .woocommerce-ResetPassword input[type="email"] {
    background: #ffffff !important;
    border: 1px solid #dce7f0 !important;
    border-radius: 6px !important;
    color: #1b365d !important;
    font-size: 15px !important;
    height: 46px !important;
    margin: 0 !important;
    padding: 10px 14px !important;
    width: 100% !important;
}
.woocommerce-lost-password .woocommerce-ResetPassword input[type="text"]:focus,
.woocommerce-lost-password .woocommerce-ResetPassword input[type="email"]:focus {
    border-color: #274c77 !important;
    box-shadow: 0 0 0 3px rgba(39, 76, 119, 0.12) !important;
    outline: none !important;
}
.woocommerce-lost-password .woocommerce-ResetPassword button[type="submit"] {
    background: #274c77 !important;
    border: 0 !important;
    border-radius: 50px !important;
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    margin: 6px 0 0 !important;
    min-height: 48px !important;
    padding: 12px 28px !important;
    transition: background 0.18s ease !important;
    width: 100% !important;
}
.woocommerce-lost-password .woocommerce-ResetPassword button[type="submit"]:hover {
    background: #1b365d !important;
    color: #ffffff !important;
}
@media (max-width: 860px) {
    .woocommerce-lost-password .woocommerce-ResetPassword {
        padding: 24px !important;
    }
}

/* The restored 1200px breakpoint reveals the side-menu drawer toggle, but the
   styling that makes it usable - fixed position and a transparent fill - only
   begins at 1024px. Between 1025px and 1200px it therefore rendered as a bare
   navy pill whose "Open" label is invisible, because the label inherits the
   palette button text colour and that equals the button background. The
   category sidebar is still on screen at those widths, so the toggle is
   redundant there and belongs to the 1024px layout it was written for. */
@media screen and (min-width: 1025px) {
    .side-mobile-toggle-open-container {
        display: none !important;
    }
}

/* The lost-password and reset-password screens carry no account sidebar, in
   either the signed-in or the signed-out state, yet body.woocommerce-account
   is present on both. Without this the dashboard grid above drops their single
   form into the 250px sidebar column, which is what a customer arriving from a
   reset email actually saw. */
body.woocommerce-account.woocommerce-lost-password .woocommerce {
    display: block !important;
    margin: 42px auto 78px !important;
    max-width: 1040px !important;
}


/* ==========================================================================
   Contact Form 7: the empty response box
   ==========================================================================
   CF7 always prints .wpcf7-response-output under the submit button and marks
   it aria-hidden="true" until there is something to say. The box carries a
   2px top border, so the quote sidebar ended with a stray 4px-tall rule under
   the button. Hide it only in that state - CF7 flips the attribute to "false"
   when it shows a success or validation message, and those must still appear. */
.wpcf7-response-output[aria-hidden="true"] {
    display: none !important;
}

/* ==========================================================================
   Header account flyout
   ==========================================================================
   The header dropdown reuses WooCommerce's class name: its <ul> carries both
   .woocommerce-MyAccount-navigation and .submenu, while the account page's own
   sidebar carries the class on a <nav>. Every ".woocommerce-account
   .woocommerce-MyAccount-navigation" rule above therefore also styled the
   flyout - including overflow:hidden and width:100% - which is why it was
   clipped only while the customer was inside their account. Give the flyout
   back its own sizing; ul.a.b outranks the two-class sidebar selectors. */
ul.woocommerce-MyAccount-navigation.submenu {
    height: auto !important;
    max-width: min(320px, calc(100vw - 32px)) !important;
    min-width: 220px !important;
    overflow: visible !important;
    width: max-content !important;
}

ul.woocommerce-MyAccount-navigation.submenu li a {
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
}

/* ==========================================================================
   Account area: shared typography
   ========================================================================== */
.woocommerce-account .woocommerce-MyAccount-content .zhc-account-heading {
    color: #1b365d;
    font-size: 24px;
    font-weight: 700;
    letter-spacing: -0.01em;
    line-height: 1.25;
    margin: 0 0 6px;
}

.woocommerce-account .woocommerce-MyAccount-content .zhc-account-subheading {
    color: #1b365d;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.04em;
    margin: 32px 0 12px;
    text-transform: uppercase;
}

.woocommerce-account .woocommerce-MyAccount-content .zhc-account-lede {
    color: #4f6274;
    font-size: 14px;
    line-height: 1.6;
    margin: 0 0 24px;
    max-width: 62ch;
}

.woocommerce-account .woocommerce-MyAccount-content .zhc-account-back {
    align-items: center;
    color: #274c77;
    display: inline-flex;
    font-size: 14px;
    font-weight: 600;
    gap: 6px;
    margin-bottom: 14px;
    text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-content .zhc-account-back:hover,
.woocommerce-account .woocommerce-MyAccount-content .zhc-account-back:focus-visible {
    text-decoration: underline;
}

/* ==========================================================================
   Account area: quote status pill
   ========================================================================== */
.zhc-quote-status {
    border-radius: 999px;
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.02em;
    line-height: 1.4;
    padding: 5px 12px;
    white-space: nowrap;
}

.zhc-quote-status--received {
    background: #eef6fc;
    color: #1b365d;
}

.zhc-quote-status--progress {
    background: #fdf3e0;
    color: #8a5a00;
}

.zhc-quote-status--quoted {
    background: #e6f4ed;
    color: #0f6b45;
}

.zhc-quote-status--closed {
    background: #eef1f5;
    color: #4f6274;
}

/* ==========================================================================
   Account area: quotes list
   ========================================================================== */
.woocommerce-account .zhc-quotes-table {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
}

.woocommerce-account .zhc-quotes-table th {
    color: #4f6274;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.woocommerce-account .zhc-quotes-table td {
    vertical-align: middle;
}

.woocommerce-account .zhc-quotes-table__actions {
    text-align: right;
}

/* ==========================================================================
   Account area: one quote
   ========================================================================== */
.zhc-quote-detail__summary {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 10px 0 8px;
}

.zhc-quote-detail__date {
    color: #4f6274;
    font-size: 14px;
}

.zhc-quote-detail__note {
    color: #4f6274;
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
    max-width: 62ch;
}

.woocommerce-account .zhc-quote-items {
    width: 100%;
}

.zhc-quote-items__options {
    color: #4f6274;
    display: block;
    font-size: 13px;
    margin-top: 3px;
}

.zhc-quote-facts {
    display: grid;
    gap: 0;
    grid-template-columns: minmax(140px, 200px) minmax(0, 1fr);
    margin: 0;
}

.zhc-quote-facts dt {
    border-top: 1px solid #dce7f0;
    color: #4f6274;
    font-size: 13px;
    font-weight: 650;
    padding: 12px 16px 12px 0;
}

.zhc-quote-facts dd {
    border-top: 1px solid #dce7f0;
    color: #1b365d;
    font-size: 14px;
    margin: 0;
    padding: 12px 0;
    word-break: break-word;
}

.zhc-quote-message {
    background: #f7fafd;
    border-left: 3px solid #dce7f0;
    border-radius: 0 8px 8px 0;
    color: #1b365d;
    font-size: 14px;
    line-height: 1.7;
    margin: 0;
    padding: 16px 20px;
}

/* ==========================================================================
   Account area: coupons
   ========================================================================== */
.zhc-coupon-list {
    display: grid;
    gap: 16px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.zhc-coupon {
    align-items: center;
    background: #ffffff;
    border: 1px solid #dce7f0;
    border-left: 5px solid #1b365d;
    border-radius: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: space-between;
    margin: 0;
    padding: 20px 22px;
}

.zhc-coupon--used,
.zhc-coupon--expired {
    background: #f7fafd;
    border-left-color: #b9c8d6;
}

.zhc-coupon__main {
    min-width: 220px;
}

.zhc-coupon__value {
    color: #1b365d;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: -0.01em;
    line-height: 1.2;
    margin: 0 0 8px;
}

.zhc-coupon--used .zhc-coupon__value,
.zhc-coupon--expired .zhc-coupon__value {
    color: #4f6274;
}

.zhc-coupon__code {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 6px;
}

.zhc-coupon__code-label {
    color: #4f6274;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.zhc-coupon__code code {
    background: #eef6fc;
    border-radius: 5px;
    color: #1b365d;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.06em;
    padding: 5px 10px;
}

.zhc-coupon__terms {
    color: #4f6274;
    font-size: 13px;
    line-height: 1.5;
    margin: 0;
}

.zhc-coupon__side {
    align-items: flex-end;
    display: flex;
    flex-direction: column;
    gap: 6px;
    text-align: right;
}

.zhc-coupon__state {
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    padding: 5px 12px;
    white-space: nowrap;
}

.zhc-coupon__state--available {
    background: #e6f4ed;
    color: #0f6b45;
}

.zhc-coupon__state--used,
.zhc-coupon__state--expired {
    background: #eef1f5;
    color: #4f6274;
}

.zhc-coupon__expiry {
    color: #4f6274;
    font-size: 13px;
}

@media screen and (max-width: 600px) {
    .zhc-quote-facts {
        grid-template-columns: minmax(0, 1fr);
    }

    .zhc-quote-facts dt {
        padding-bottom: 0;
    }

    .zhc-quote-facts dd {
        border-top: 0;
        padding-top: 4px;
    }

    .zhc-coupon__side {
        align-items: flex-start;
        text-align: left;
    }

    .woocommerce-account .zhc-quotes-table__actions {
        text-align: left;
    }
}


/* ==========================================================================
   Controls the palette paints in one colour
   ==========================================================================
   The site palette sets --global-palette-btn (button TEXT) and
   --global-palette-btn-bg (button BACKGROUND) to the same #274c77, so any
   control the theme paints from the palette gets a label the same colour as
   its own background. Two places show it, both measured on the live checkout:

   1. selectWoo's highlighted country row takes its background from
      --global-palette-btn-bg and its colour from --global-palette-btn.
      Measured: background rgb(39, 76, 119), colour rgb(39, 76, 119).
   2. The tip buttons keep a #f5f5f5 background on hover, because the vendor
      plugin's front.css declares it !important, while the theme's button:hover
      rule turns the label --global-palette-btn-hover, which is #ffffff.
      Measured on hover: background rgb(245, 245, 245), colour rgb(255, 255, 255).

   selectWoo appends its dropdown to <body>, so neither rule can be scoped to
   the checkout; both have to win on specificity and !important instead. */

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
    background-color: #274c77 !important;
    color: #ffffff !important;
}

/* The merely-selected row keeps its light grey plate, so it needs dark text. */
.select2-container--default .select2-results__option[aria-selected="true"]:not(.select2-results__option--highlighted),
.select2-container--default .select2-results__option[data-selected="true"]:not(.select2-results__option--highlighted) {
    color: #1b365d !important;
}

/* Hovering a tip button now reads like its own active state: navy plate,
   white label.

   The leading `body` is load-bearing. The vendor's front.css declares
   `div#wooot_order_tip_form button.woo_order_tip:hover { background-color:
   #f5f5f5 !important }` at the same (1,3,1) specificity, and it is enqueued
   after this stylesheet, so an equally specific !important rule here loses on
   source order - which is exactly how the label ended up white on #f5f5f5.
   (1,3,2) wins regardless of who is enqueued last. */
body div#wooot_order_tip_form button.woo_order_tip:hover,
body div#wooot_order_tip_form button.woo_order_tip:focus,
body div#wooot_order_tip_form button.woo_order_tip:focus-visible {
    background: #274c77 !important;
    background-color: #274c77 !important;
    color: #ffffff !important;
}

/* The quantity steppers sit on their own grey plate and are not .woo_order_tip,
   so the same button:hover rule would whiten their label too. */
body div#wooot_order_tip_form button.tip-decrement:hover,
body div#wooot_order_tip_form button.tip-increment:hover,
body div#wooot_order_tip_form button.tip-decrement:focus,
body div#wooot_order_tip_form button.tip-increment:focus {
    background: #274c77 !important;
    background-color: #274c77 !important;
    color: #ffffff !important;
}

/* ==========================================================================
   Checkout: point the customer at coupons they can actually use
   ========================================================================== */
.zhc-coupon-hint {
    align-items: baseline;
    background: #eef6fc;
    border-radius: 8px;
    color: #1b365d;
    display: flex;
    flex-wrap: wrap;
    font-size: 13px;
    gap: 4px 8px;
    line-height: 1.5;
    margin: 10px 0 0;
    padding: 10px 14px;
}

.zhc-coupon-hint a {
    color: #274c77;
    font-weight: 700;
    text-decoration: underline;
}

.zhc-coupon-apply {
    margin-top: 10px;
}

.woocommerce-account .woocommerce-MyAccount-content .zhc-coupon-apply .button {
    background: #274c77 !important;
    background-color: #274c77 !important;
    border-color: #274c77 !important;
    border-radius: 6px !important;
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 650 !important;
    padding: 9px 18px !important;
}

.woocommerce-account .woocommerce-MyAccount-content .zhc-coupon-apply .button:hover,
.woocommerce-account .woocommerce-MyAccount-content .zhc-coupon-apply .button:focus-visible {
    background: #1b365d !important;
    background-color: #1b365d !important;
    border-color: #1b365d !important;
    color: #ffffff !important;
}


/* ==========================================================================
   Palette collisions found by a site-wide contrast sweep
   ==========================================================================
   Every text node on ten page types was measured against the background
   actually painted behind it. What follows is the list that came back under
   the WCAG AA threshold, each with the measured pair. The recurring cause is
   the palette: --global-palette-btn (button TEXT) and --global-palette-btn-bg
   (button PLATE) are both #274c77, so any control the theme paints from the
   palette has a label the colour of its own plate. */

/* Cart, empty state. Measured rgb(242, 242, 242) on rgb(255, 255, 255) at
   34px bold - a contrast of 1.12. WooCommerce strips this notice's plate on
   the cart page but leaves the light-on-plate text colour behind. */
body .woocommerce .cart-empty.woocommerce-info,
body .woocommerce .wc-empty-cart-message {
    color: #1b365d !important;
}

/* "Return to shop". Measured rgb(39, 76, 119) on rgb(39, 76, 119): a navy
   label on a navy plate, contrast 1.00 - the button read as a blank pill. */
body .woocommerce a.button.wc-backward,
body a.button.wc-backward,
body .woocommerce .return-to-shop a.button {
    color: #ffffff !important;
}

/* Contact page. Measured rgb(153, 153, 153) on white - contrast 2.85. This
   #999999 is one of the values the CSS regression test bans, but it lives in
   the page's own Elementor data rather than in a stylesheet, so it has to be
   overridden here. */
body .elementor-widget-icon-box .elementor-icon-box-description {
    color: #4f6274 !important;
}

/* ==========================================================================
   The product-search widget's submit button
   ==========================================================================
   Measured 55x40, background #274c77, font-size 0, colour transparent, no
   icon, no background image and no pseudo-element content: a blank navy
   rectangle. Give it the magnifier it was always meant to have. */
.woocommerce-product-search button[type="submit"],
.woocommerce-product-search button {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-4.35-4.35'/%3E%3C/svg%3E") !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: 18px 18px !important;
}

/* ==========================================================================
   Account tables: Orders and Quotes now look like each other
   ==========================================================================
   The quotes list used its own pill. Measured in the real table it came out
   rgb(255, 255, 255) on rgb(238, 246, 252) - contrast 1.09 - because a later
   stylesheet whitened the label at a higher specificity than the rule that
   set it. The orders list, whose button is WooCommerce's own, measured 8.80.
   So the quotes list now uses that same button, and the two Actions columns
   are aligned the same way instead of one left and one right. */
/* Superseded by the centred rule further down. Both the status pill and the
   View button are inline-blocks with their own padding, so their text starts
   inside them; a header aligned to the cell edge can never line up with that.
   Centring makes the header and the control share a centre line, which does
   not depend on either one's width or padding. */

/* ==========================================================================
   Footer: the block under the logo sits on the logo's own left edge
   ==========================================================================
   The logo image carries margin-left: -56px, so it starts at 56 while the
   address block below it started at 80 - a 20px stray margin on the widget
   plus the logo's own pull. Dropping that margin lands the text within a
   couple of pixels of where the logo artwork begins. */
.site-footer .footer-widget-area-inner > section.widget_block,
.site-footer .site-info-inner > section.widget_block,
.site-footer .footer-social-wrap {
    margin-left: 0 !important;
}

/* The logo sits in the second of two columns. The first column is empty - no
   content, zero height - and exists only as a flex-basis: 12% spacer, so its
   width tracks the footer. The logo carried margin-left: -56px to cancel it,
   which is a constant, so the artwork drifted right of the text under it as
   the viewport widened. Collapse the spacer instead, and take out the PNG's
   own transparent left padding with a transform: percentages there resolve
   against the image's own box, so it holds at whatever size the logo renders. */
.site-footer .wp-block-columns.footer-callus > .wp-block-column:empty {
    display: none !important;
}

/* Collapsing the spacer widened this column, which scaled the logo from 201px
   to 302px. Only the alignment was asked for, so hold the column at the width
   it had before and leave the artwork the size it was. */
.site-footer .wp-block-columns.footer-callus > .wp-block-column {
    flex-basis: auto !important;
    max-width: 66.66% !important;
}

.site-footer .wp-block-columns.footer-callus figure.wp-block-image,
.site-footer .wp-block-columns.footer-callus figure.wp-block-image img {
    margin-left: 0 !important;
}

.site-footer .wp-block-columns.footer-callus figure.wp-block-image img {
    transform: translateX(-2%);
}

/* ==========================================================================
   Account tables: the header sits over what is under it
   ==========================================================================
   Measured on the live account page, right-aligned: the header label and the
   button ended at exactly the same x (1489.5), yet their centres were 9.9px
   apart, because the button is wider than the word above it. That gap is what
   reads as "not aligned". Centring removes it by construction. The same is
   true of the Status column, where the pill's own 12px of padding pushes its
   text inside the cell while the header text starts at the cell edge. */
.woocommerce-account .woocommerce-orders-table thead th:last-child,
.woocommerce-account .woocommerce-orders-table tbody td:last-child,
.woocommerce-account .woocommerce-orders-table th.woocommerce-orders-table__header-order-actions,
.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions,
.woocommerce-account .woocommerce-orders-table th.woocommerce-orders-table__header-order-status,
.woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-status,
.woocommerce-account .woocommerce-orders-table th.zhc-quotes-table__status,
.woocommerce-account .woocommerce-orders-table td.zhc-quotes-table__status,
.woocommerce-account .woocommerce-orders-table th.zhc-quotes-table__actions,
.woocommerce-account .woocommerce-orders-table td.zhc-quotes-table__actions {
    text-align: center !important;
    white-space: nowrap !important;
}

/* Stacked rows put the column name on the left and the value on the right, so
   centring would fight the layout rather than help it. */
@media screen and (max-width: 600px) {
    .woocommerce-account .woocommerce-orders-table thead th:last-child,
    .woocommerce-account .woocommerce-orders-table tbody td:last-child,
    .woocommerce-account .woocommerce-orders-table th.woocommerce-orders-table__header-order-actions,
    .woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-actions,
    .woocommerce-account .woocommerce-orders-table th.woocommerce-orders-table__header-order-status,
    .woocommerce-account .woocommerce-orders-table td.woocommerce-orders-table__cell-order-status,
    .woocommerce-account .woocommerce-orders-table th.zhc-quotes-table__status,
    .woocommerce-account .woocommerce-orders-table td.zhc-quotes-table__status,
    .woocommerce-account .woocommerce-orders-table th.zhc-quotes-table__actions,
    .woocommerce-account .woocommerce-orders-table td.zhc-quotes-table__actions {
        text-align: right !important;
    }
}

/* ==========================================================================
   Orders now reads like Quotes
   ==========================================================================
   The quotes list was the better of the two, so the orders list adopts it:
   the same small-caps column headings, the same row rhythm, the same status
   pill and the same compact action button. The pill and the heading above the
   table come from PHP; everything else is here. */
.woocommerce-account .woocommerce-orders-table {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    width: 100% !important;
}

.woocommerce-account .woocommerce-orders-table thead th {
    color: #4f6274 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
}

.woocommerce-account .woocommerce-orders-table tbody td {
    vertical-align: middle !important;
}

/* Order lifecycle, in the same vocabulary as the quote statuses. */
.zhc-order-status--pending,
.zhc-order-status--checkout-draft {
    background: #eef6fc;
    color: #1b365d;
}

.zhc-order-status--on-hold {
    background: #fdf3e0;
    color: #8a5a00;
}

.zhc-order-status--processing {
    background: #e7f0fa;
    color: #1b365d;
}

.zhc-order-status--completed {
    background: #e6f4ed;
    color: #0f6b45;
}

.zhc-order-status--cancelled,
.zhc-order-status--refunded,
.zhc-order-status--failed {
    background: #eef1f5;
    color: #4f6274;
}

/* The right edges already lined up; the problem was proportion. This button
   inherits the storefront's call-to-action padding - 12px 46px at 16px - so a
   four-letter word rendered 126x45 and stretched far left of the small
   "Actions" label above it. A table action wants to be compact. */
.woocommerce-account .woocommerce-orders-table td a.button,
.woocommerce-account .woocommerce-orders-table td a.woocommerce-button {
    font-size: 14px !important;
    line-height: 1.3 !important;
    min-width: 0 !important;
    padding: 9px 22px !important;
    width: auto !important;
}

/* ==========================================================================
   Account menu: the customer's name leads the panel
   ========================================================================== */
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--greeting a {
    color: #1b365d !important;
    cursor: default;
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: -0.005em;
    pointer-events: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--greeting,
ul.woocommerce-MyAccount-navigation.submenu li.woocommerce-MyAccount-navigation-link--greeting {
    border-bottom: 1px solid #dce7f0 !important;
    margin-bottom: 6px !important;
    padding-bottom: 4px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--greeting a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--greeting a:focus-visible {
    background: transparent !important;
    color: #1b365d !important;
}
