/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/

/* ==========================================================================
   Brand tokens
   ========================================================================== */
:root {
  --om-navy:        #030D4E;
  --om-navy-deep:   #1E419B;
  --om-blue:        #0369A1;
  --om-blue-hover:  #024F7A;
  --om-teal:        #2EBFB0;
  --om-yellow:      #F8A01C;
  --om-yellow-dot:  #FBC02D;
  --om-surface:     #FFFFFF;
  --om-surface-2:   #F9F9F9;
  --om-bg:          #F4F5FF;
  --om-line:        #E3DBD8;
  --om-font-sans:   "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

/* ==========================================================================
   Wordmark
   ========================================================================== */
.om-wordmark {
  font-family: var(--om-font-sans);
  font-weight: 800;
  letter-spacing: -0.01em;
  line-height: 1;
  white-space: nowrap;
}
.om-wordmark .om-wm-1 { color: var(--om-navy); }
.om-wordmark .om-wm-2 { color: var(--om-teal); }
.om-wordmark .om-wm-3 { color: var(--om-yellow-dot); }

.om-wordmark.is-reversed .om-wm-1 { color: #fff; }

/* ==========================================================================
   Header logo lockup — mark + typeset wordmark
   ========================================================================== */
.om-logo-lockup .wd-logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}

.om-logo-lockup .om-logo-mark {
  display: block;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
}

.om-logo-lockup .om-wordmark {
  font-size: 24px;
}

/* Elementor header lockup link — targets OM_HEADER_LOGO_WIDGET_ID ('5faa46ea').
   Several !important declarations are required because Elementor's widget CSS
   sets inline-level image width (→300px) and container display at high specificity. */
.elementor-element-5faa46ea {
  width: auto !important;
  max-width: none !important;
}
.elementor-widget-image .elementor-widget-container .om-logo-lockup-link {
  display: inline-flex !important; /* Elementor sets block on image containers */
  flex-direction: row;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  white-space: nowrap;
  width: fit-content !important;   /* prevent stretching to full column width */
  max-width: fit-content !important;
}
.elementor-widget-image .elementor-widget-container .om-logo-lockup-link .om-logo-mark {
  width: 40px !important;          /* Elementor overrides img width to ~300px */
  max-width: 40px !important;
  height: 40px;
  flex-shrink: 0;
}
.om-logo-lockup-link .om-wordmark {
  font-size: 20px;
}

/* Footer logo */
.om-footer-logo {
  display: inline-flex !important;
  margin-bottom: 14px;
}
.om-footer-logo .om-logo-mark {
  width: 36px;
  height: 36px;
}
.om-footer-logo .om-wordmark {
  font-size: 20px;
}

/* Fix: footer sections hidden by Elementor entrance animation not firing */
.footer-container .elementor-element-9ef724c {
	display: none !important;
}
.footer-container .elementor-element-b2f612c {
	display: flex !important;
}

.position-relative {
	position: relative !important;
}

.elementor-template-full-width .row>[data-elementor-type] {
	margin-bottom: 0px !important;
}

.list-unstyled {
	list-style: none;
}

.woocommerce-breadcrumb a,
.yoast-breadcrumb a,
span.breadcrumb-last,
.woocommerce-breadcrumb>* {
	color: #fff !important;
	font-weight: 500;
}

@media (max-width: 767px) {
	.home-page-category [class*="wd-grid"] {
		--wd-col-sm: 1 !important;
	}
}

/* Legacy spacing rule (space-around) removed; Strategy A block later defines current layout. */
.wd-carousel-item {
	height: unset !important;
}

.wd-product {
	height: 100%;
}

.order-uploaded-files>p {
	display: inline-block;
}

.order-uploaded-files p>strong {
	font-weight: bold;
}

.order-uploaded-files>* {
	margin: 10px 20px 0px 0px;
}

/* header */
.whb-header {
	margin-bottom: 0px !important;
}

/* Fix Elementor header: remove outer padding that causes side gaps and top gap */
.elementor-17702 .elementor-element.elementor-element-5c036585 {
	--padding-top: 0px !important;
	--padding-bottom: 0px !important;
	--padding-left: 0px !important;
	--padding-right: 0px !important;
}

/* Make header sticky */
.elementor-location-header {
	position: sticky !important;
	top: 0 !important;
	z-index: 9999 !important;
	width: 100% !important;
}

.whb-flex-row.whb-general-header-inner,
.whb-flex-row.whb-header-bottom-inner {
	padding: 0px 50px;
}

@media (max-width:992px) {

	.whb-flex-row.whb-general-header-inner,
	.whb-flex-row.whb-header-bottom-inner {
		padding: 0px 0px !important;
	}

	.shop-loop-head {
		display: none;
	}

	.woocommerce-breadcrumb,
	.wd-breadcrumbs,
	.yoast-breadcrumb {
		display: block !important;
	}
}

header form.searchform.wd-style-with-bg.wd-cat-style-bordered.woodmart-ajax-search {
	display: flex !important;
	align-items: center;
	justify-content: end;
	gap: 15px;
}

header [class*="wd-header-search-form"] input[type='text'] {
	width: 316px;
	min-width: 316px !important;
	border-radius: 50px;
	height: 40px;
	/* 		border:3px solid #1e419b */
	padding-right: 0px !important;
}

.home-search form.searchform .searchsubmit,
.searchform .searchsubmit {
	position: relative !important;
	width: fit-content !important;
	padding: 5px 25px !important;
	border-radius: 50px !important;
	min-height: 40px !important;

}

.searchform .searchsubmit:after {
	display: none;
}

select::placeholder,
input::placeholder,
textarea::placeholder,
iti__arrow {
	color: #ccc !important;
}

input[type='email'],
input[type='date'],
input[type='search'],
input[type='number'],
input[type='text'],
input[type='tel'],
input[type='url'],
input[type='password'],
textarea,
select,
.iti__selected-dial-code {
	/* 	font-size:18px; */
	font-size: 13px;
	font-weight: 400;
	line-height: 18px;
}

.iti__flag-container {
	max-height: 40px;
}

.iti__selected-flag,
.iti__selected-country {
	border-radius: 35px 0px 0px 35px;
}

.searchform .searchsubmit span {
	font-family: "Plus Jakarta Sans", Sans-serif;
	font-size: 15px !important;
	font-weight: 400;
	line-height: 15px;
	text-align: center;

}

.searchform.wd-style-4 input[type="text"] {
	font-size: 18px;
}

.whb-ql531g6cbzsudxjxjkyu.wd-search-form.wd-header-search-form .searchform {
	font-family: "Plus Jakarta Sans", Sans-serif !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 28px !important;
	text-align: left !important;
	color: #958B8B !important;

}

.wd-nav[class*="wd-style-"]>li>a {
	font-family: "Plus Jakarta Sans", Sans-serif;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 20px;
	text-transform: uppercase;
	text-align: left;
	color: #000 !important;

}

.icons-design-simple.color-scheme-light .wd-social-icon,
.color-scheme-light .icons-design-simple .wd-social-icon .wd-icon {
	background-color: #F0FDF4 !important;
	color: #000 !important;
	font-weight: bold;
}

.wd-add-btn-replace .add-to-cart-loop:hover span {
	/* Remove hover effects */
	transform: none !important;
}

@media (max-width:1024px) {
	.whb-mobile-center {
		display: none;
	}
}

@media (max-width:767px) {

	.whb-iijmqfpozmtgzzo9yqhm,
	.whb-xvv1uzj6h96f9q4inbmm {
		display: none !important;
	}

	.whb-4dumkg4dqf7fl9dox37j {
		display: none !important;
	}

	.whb-column.whb-col-mobile.whb-hidden-lg {
		justify-content: space-between;
	}

	.whb-empty-column+.whb-mobile-right {
		flex: 1 1 0% !important;
	}

	.cat-design-mask-subcat .wd-cat-content {
		padding: 9px 0px 9px 0px;
	}
}

@media (min-width:767px) {
	.wd-header-search.wd-tools-element.wd-header-search-mobile.wd-display-full-screen.wd-style-icon.wd-design-7 {
		display: none !important;

	}
}

.wd-header-search.wd-tools-element.wd-header-search-mobile.wd-display-full-screen.wd-style-icon.wd-design-7 {
	position: absolute;
	right: 50px;
}

/* Fix: keep Elementor header nav on a single line (prevent "Shop by Condition" from wrapping/overflowing) */
@media (min-width:1025px) {
	.elementor-location-header .elementor-nav-menu--main .elementor-nav-menu {
		flex-wrap: nowrap !important;
		justify-content: flex-end;
	}
	.elementor-location-header .elementor-nav-menu > li > a.elementor-item {
		white-space: nowrap;
		font-size: 13px !important;
		padding-left: 10px !important;
		padding-right: 10px !important;
		letter-spacing: 0 !important;
	}
	.elementor-location-header .elementor-nav-menu > li > a.elementor-item .sub-arrow {
		margin-left: 3px;
	}
	/* Let the nav column consume remaining space instead of being capped */
	.elementor-location-header .elementor-element-32019e4e {
		flex-grow: 1 !important;
		min-width: 0 !important;
	}
}

/* Tighter packing on narrow desktops where overflow is most likely */
@media (min-width:1025px) and (max-width:1366px) {
	.elementor-location-header .elementor-nav-menu > li > a.elementor-item {
		font-size: 12px !important;
		padding-left: 7px !important;
		padding-right: 7px !important;
	}
}

/*  end header */

/* home page */
@media (max-width:767px) {

	form.cart {
		flex-wrap: nowrap !important;
		display: inline-block !important;
	}
}

.wd-products-nav a {
	color: #fff !important;
}

.wd-product.wd-hover-standard .wd-add-btn {
	width: 100%;
}

.wd-product.wd-hover-buttons-on-hover .wd-action-buttons {
	display: none;
}

.wd-product.wd-hover-buttons-on-hover .wd-add-btn>a,
.wd-product.wd-hover-standard .wd-add-btn>a {
	background-color: #fff !important;
	color: #030D4E !important;
	border: 1px solid #0369A1;
	width: 100%;
	font-weight: 400;
	line-height: 15px;
	border-radius: 12px !important;
	font-family: "Plus Jakarta Sans", Sans-serif;
	font-size: 15px !important;
	transition: background-color 200ms ease-out, color 200ms ease-out !important;
	cursor: pointer;
}

/* Fix #1: hover states restored on WooCommerce product buttons */
.wd-product.wd-hover-buttons-on-hover .wd-add-btn>a:hover,
.wd-product.wd-hover-standard .wd-add-btn>a:hover {
	background-color: #030D4E !important;
	color: #fff !important;
	border-color: #030D4E !important;
}

/* Fix #6: AJAX add-to-cart loading and added states */
.wd-product .wd-add-btn>a.loading,
.add_to_cart_button.loading {
	opacity: 0.6;
	pointer-events: none;
	cursor: not-allowed !important;
	position: relative;
}
.wd-product .wd-add-btn>a.loading::after,
.add_to_cart_button.loading::after {
	content: '';
	display: inline-block;
	width: 12px;
	height: 12px;
	margin-left: 8px;
	border: 2px solid currentColor;
	border-top-color: transparent;
	border-radius: 50%;
	animation: wc-btn-spin 0.6s linear infinite;
	vertical-align: middle;
}
@keyframes wc-btn-spin {
	to { transform: rotate(360deg); }
}
.wd-product .wd-add-btn>a.added,
.add_to_cart_button.added {
	background-color: #15803D !important;
	color: #fff !important;
	border-color: #15803D !important;
	pointer-events: none;
}

.categories-container .wd-cat-thumb {
	display: none !important;
}

.categories-container .wd-cat-content {
	position: relative !important;
}

.categories-container a.wd-fill {
	position: absolute;
	top: 0;
	left: 0;
}


.categories-container .cat-design-mask-subcat .wd-cat-content {
	flex-direction: row !important;
	width: 100%;
	justify-content: space-between;
	background: #fff;
	align-items: center;
	padding: 20px;
	border: 1px solid #E3DBD8;
	border-radius: 20px;
}

.categories-container .wd-cat-content.wd-scroll.wd-fill:after {
	content: "";
	width: 30px;
	height: 30px;
	background: url(https://www.website4test.com/online-meds/wp-content/uploads/2024/10/Group-5-1-1.png) no-repeat center;
	background-size: contain;
}



.product-slider .wd-product :where(.product-wrapper, .product-element-bottom) {
	align-items: flex-start;
	justify-content: center;
	gap: var(--wd-prod-gap);
	background: #fff;
	padding: 20px !important;
}

.product-grid-item .price ins .amount {
	font-size: 16px;
	color: #030D4E !important;
	font-weight: 500;
}

.product-slider .product-labels .product-label.onsale {
	background-color: #030D4E;
	color: #fff;
}

.wd-entities-title a {
	color: var(--e-global-color-e8359ab);
	font-family: Plus Jakarta Sans;
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;

	text-align: left;

}

.product-slider .wd-arrow-inner {
	width: 30px !important;
	height: 30px !important;
	padding: 20px;
	background: transparent !important;
	border: 1px solid #fff !important;
	color: #fff !important;
}

.product-slider .wd-btn-arrow {
	background: transparent !important;
	border-radius: 50px !important;
}

.product-slider .wd-btn-arrow.wd-disabled {
	background: #15803D !important;
}

.product-slider .wd-arrow-inner:hover {
	background: #15803D !important;
	border: 1px solid #15803D !important;
}

@media (min-width:767px) {
	.product-slider .wd-product .product-image-link {
		height: 300px !important;
		object-fit: cover;
	}

	.product-slider .wd-product .product-image-link img.attachment-full.size-full {
		height: 100% !important;
	}
}

@media (max-width:767px) {
	.product-slider .wd-product .product-image-link {
		height: 200px !important;
		object-fit: cover;
	}

	.product-slider .wd-product .product-image-link img.attachment-full.size-full {
		height: 100% !important;
	}
}


.testmonial-container .tss-wrapper .tss-even .tss-grid-item {
	margin-bottom: 60px !important;
}

.testmonial-container .single-item-wrapper {
	display: flex !important;
	flex-direction: column-reverse !important;
}

.testmonial-container .tss-wrapper .tss-carousel1 .tss-meta-info.tss-left {
	flex: 2;
	display: flex;
	padding-left: 100px;
	min-height: 100px;
	flex-direction: column;
	align-items: baseline;
	justify-content: center;
	gap: 0;
}

@media (max-width:767px) {
	.testmonial-container .tss-wrapper .tss-carousel1 .tss-meta-info.tss-left {
		padding-left: 75px !important;

	}
}

.testmonial-container .profile-img-wrapper {
	position: absolute !important;
	left: 0;
}

.testmonial-container .tss-wrapper .tss-carousel1 .tss-meta-info.tss-left .profile-img-wrapper img {
	height: 70px;
	width: 70px;
}

.testmonial-container .tss-wrapper .tss-layout1 .single-item-wrapper,
.tss-wrapper .tss-carousel1 .single-item-wrapper {
	flex-direction: column-reverse !important;
	gap: 20px;
}

.testmonial-container .tss-wrapper .tss-carousel1 .item-content-wrapper:before {
	background: url(https://www.website4test.com/online-meds/wp-content/uploads/2024/10/Group-1.png) no-repeat center;
	width: 40px;
	height: 40px;
	background-size: contain;
	font-size: 0px !important;
}

.testmonial-container .tss-wrapper .tss-carousel1 .item-content-wrapper {
	background: #fff !important;
	padding: 50px 0px 0px 0px !important;
}

.testmonial-container .tss-wrapper .tss-carousel1 .item-content-wrapper:after {
	display: none;
}

.testmonial-container .tss-carousel .swiper-button-prev {
	left: 83% !important;
}

@media (max-width:767px) {
	.testmonial-container .tss-carousel .swiper-button-prev {
		left: 70% !important;
	}

	.testmonial-container .tss-wrapper .tss-carousel1 .item-content-wrapper {
		background: #fff !important;
		padding: 20px 0px 0px 0px !important;
	}
}

.testmonial-container .swiper-button-next {
	right: 5% !important;
}

.testmonial-container .swiper-button-next,
.testmonial-container .swiper-button-prev {
	position: absolute;
	top: 100% !important;
	border-radius: 50px;
	height: fit-content;
	text-align: center;
}

@media (max-width:767px) {
	.testmonial-container .tss-wrapper .tss-carousel1 .item-content-wrapper:before {

		left: 0px !important;
		right: auto !important;
		top: -16px !important;
		width: 30px !important;
		height: 30px !important;
		background-position: center;
		background-size: contain;
	}
}

/* subscribe-form */
.subscribe-form .elementor-form-fields-wrapper {
	flex-wrap: nowrap;
	border-radius: 50px;
	border: var(--wd-form-brd-width) solid var(--wd-form-brd-color);
	background: #000;
}

.subscribe-form .elementor-form-fields-wrapper .elementor-field-type-submit {
	width: 50px;
}

.accordian-container .eael-adv-accordion .eael-accordion-list {
	margin-bottom: 10px;
	border: 1px solid #E3DBD8;
	border-radius: 20px;
}

/*  .subscribe-form p {
    display: flex !important;
    height: fit-content;  
}
 .subscribe-form input{
	border-radius:50px 0px 0px 50px !important;
	 background:#000 ;
	 border-right: 0px;
	 outline:none;
}
 .subscribe-form .sendbtn {
    font-weight: 300 !important;
    color: rgba(255, 255, 255, 1) !important;
    font-family: "Plus Jakarta Sans", Sans-serif !important;
   background:#000 !important;
    border-left: 0px !important;
    font-size: 15px;
    padding: 0px !important;
    border-radius: 0px 50px 50px 0px;
    transition: all .3s;
      height: fit-content !important;
    border: var(--wd-form-brd-width) solid var(--wd-form-brd-color);
}
.subscribe-form .sendbtn i{
	background: #0369A1;
    padding: 12.5px;
    border-radius: 50px;
}
#wpcf7-f1795-o1 input.wpcf7-form-control.wpcf7-email.wpcf7-validates-as-required.wpcf7-text.wpcf7-validates-as-email{
	border-radius: 50px 0px 0px 50px !important;
    border-right: 0px;
    background: #000 !important;
}
.subscribe-form .wpcf7-form-control-wrap{
	width:100%;
} */
/* end subscribe form */

.wd-cat-thumb img {
	height: 250px;
	object-fit: cover;
}

/* end home page  */

.dokan-vendor-info-wrap {
	display: none;
}

.product_meta .posted_in {
	font-size: 14px;
	font-weight: 600;
	color: #000;
	text-transform: uppercase;
}

.product_meta .posted_in a:hover {
	color: var(--e-global-color-e8359ab);
}

.product_meta .posted_in .meta-label {
	display: none;
}

/* @media(min-width:1024px){
.sticky-top-desktop{
	position:sticky;
	position: -webkit-sticky;
	top:120px !important;
}
} */

.sticky-top-desktop {
	position: sticky;
	position: -webkit-sticky;
	top: 60px;
	z-index: 1;
	/*         height: 100vh;
        overflow: auto;
        scrollbar-color: #1e419b #ffff;
        scrollbar-width: thin; */
}

@media (min-width: 992px) {
	#popup-670fa38296912 {
		width: 75%;
	}
}

@media(max-width:400px) {
	.single_add_to_cart_button {
		flex-basis: 100% !important;
	}
}

.woocommerce-product-gallery img {
	height: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

.similar-products td {
	padding: 6px 10px;
}

@media(min-width:1024px) {
	.woocommerce-product-gallery__wrapper .wd-carousel-wrap .wd-carousel-item figure img {
		aspect-ratio: 1 / 1;
		object-fit: contain;
		max-height: 500px;
	}
}

@media(max-width:1023px) {
	.woocommerce-product-gallery__wrapper .wd-carousel-wrap .wd-carousel-item figure img {
		aspect-ratio: 1 / 1;
		object-fit: contain;
		max-height: 300px;
	}

	.woocommerce-product-gallery img {
		max-height: 100px;
	}

}

.wd-nav-product-cat {
	flex-direction: column;
	gap: 0;
}

.wd-nav-product-cat .category-nav-link {
	padding: 0 !important;
}

.shop-content-area {
	margin: 0;
}



.wd-product.wd-hover-standard .wd-add-btn .add-to-cart-loop span {
	min-height: unset !important;
	font-size: 14px !important;
	font-family: "Plus Jakarta Sans", Sans-serif;
	font-weight: 600;
	padding: 0px !important;

}

.products .product-wrapper {
	height: 100%;
}

.home-categories .wd-cat-sub-menu {
	display: none;

}

.home-categories .cat-design-zoom-out .wd-cat-content {
	text-align: left !important;
	justify-content: space-between !important;
	border: 1px solid #E3DBD8;
	border-radius: 20px;
	background: #fff;
}

.home-categories .cat-design-zoom-out .wd-cat-content:hover {
	background: #15803D;
}

.wd-cat .wd-entities-title {
	background: transparent;
}

.home-categories .wd-cat-content::after {
	content: '';
	background: url(https://www.website4test.com/online-meds/wp-content/uploads/2024/10/Group-5-1-1.png) no-repeat;
	font-size: 20px;
	height: 40px;
	width: 40px;
	background-size: contain;

}

.home-search form.searchform {
	display: flex;
	gap: 10px;
	justify-content: center;
}

.home-search form.searchform .s {
	width: 50% !important;
}

home-search form.searchform .searchsubmit span {
	color: #fff !important;
}

.searchform .searchsubmit span {
	color: #fff;
}

@media(max-width:767px) {
	.home-search form.searchform .s {
		padding-inline: 10px;
		min-width: unset !important;
		width: 100% !important;
	}

	/* Fix #7: stack search vertically, remove overlapping absolute button */
	.home-search form.searchform {
		flex-direction: column;
	}

	.home-search form.searchform .searchsubmit {
		position: static !important;
		border-radius: 15px !important;
		border: 0 !important;
		width: 100% !important;
		inset-inline-start: unset;
	}
}

@media(max-width:767px) {
	.products {
		--wd-gap-lg: 5px !important;
	}

}

.children.wd-design-default.wd-sub-menu.wd-dropdown.wd-dropdown-menu {
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: unset !important;
	transform: unset !important;
	background: #f0f8ff00 !important;
	box-shadow: none;
	padding: 0px 10px !important;
	position: static;

}

.shop-category-filter .cat-item.has-children .category-nav-link {
	display: inline-flex;
	align-items: center;
	position: relative;
}

.shop-category-filter .wd-nav-product-cat {
	width: 100%;
}

.shop-category-filter .wd-event-hover.has-children {
	position: relative;
}

.shop-category-filter .wd-event-hover.has-children:after {
	font-weight: 500;
	font-size: 14px;
	transition: transform .25s ease;
	content: "\f129";
	font-family: "woodmart-font";
	color: #000;
	transform: rotate(-90deg);
	position: absolute;
	top: 4px;
	right: 0;
	cursor: pointer;
}

.shop-category-filter .wd-event-hover.has-children .children {
	display: none;
}

.shop-category-filter .wd-event-hover.has-children.toggled:after {
	transform: rotate(0deg);

}

@media(min-width:992px) {
	.sticky-top {
		position: sticky;
		top: 100px;
	}
}


/* molecules page */
.shop-loop-head {
	background: var(--e-global-color-e8359ab);
	width: 100%;
	padding: 20px;
	margin-top: 0px !important;
}

@media (min-width: 0px) and (max-width: 1024px) {
	.offcanvas-sidebar-tablet .shop-content-area:not(.col-lg-12) .wd-shop-tools:not(:last-child) {
		padding-bottom: 0px !important;
	}
}

@media (min-width: 0px) and (max-width: 1024px) {
	.offcanvas-sidebar-tablet .shop-content-area:not(.col-lg-12).wd-builder-off .woocommerce-result-count {
		display: none !important;
	}
}

.tax-manufacturer .shop-loop-head .wd-shop-tools:nth-of-type(1),
.tax-brand .main-page-wrapper .shop-loop-head .wd-shop-tools:nth-of-type(1) {
	flex-direction: column;
	align-items: start;
}

.tax-brand .main-page-wrapper .shop-loop-head .wd-shop-tools:nth-of-type(2) {
	display: none;
}

.tax-molecule .main-page-wrapper .sidebar-container,
.tax-manufacturer .sidebar-container,
.tax-brand .main-page-wrapper .sidebar-container {
	display: none;
}

/* @media (min-width:1025px){
	.tax-molecule .main-page-wrapper{
		padding:40px 80px !important;
	}
} */
/* 
.tax-molecule .main-page-wrapper    .wd-product.wd-hover-buttons-on-hover .wd-product-footer , .tax-manufacturer .main-page-wrapper    .wd-product.wd-hover-buttons-on-hover .wd-product-footer{
	opacity:1 !important;
}
.tax-molecule .main-page-wrapper .wd-product.wd-hover-buttons-on-hover .product-element-bottom , .tax-manufacturer .main-page-wrapper .wd-product.wd-hover-buttons-on-hover .product-element-bottom{
	margin-bottom:0px !important;
	padding:15px 10px !important;
}
.tax-molecule .main-page-wrapper .wd-product.wd-hover-buttons-on-hover .product-wrapper:hover , .tax-manufacturer .main-page-wrapper .wd-product.wd-hover-buttons-on-hover .product-wrapper:hover{
	transform:unset !important;
}
.tax-molecule .main-page-wrapper .wd-product.wd-hover-buttons-on-hover , .tax-manufacturer .main-page-wrapper .wd-product.wd-hover-buttons-on-hover{
	--wd-trans-h: unset !important;
}
.tax-molecule .main-page-wrapper  .wd-product :is(.product-image-link,.hover-img) img {
    width: 100%;
    aspect-ratio: 1 / 1;
}
.tax-molecule .main-page-wrapper  .wd-product.wd-hover-buttons-on-hover .wd-add-btn>a , .tax-manufacturer .main-page-wrapper  .wd-product.wd-hover-buttons-on-hover .wd-add-btn>a{
	background-color: #fff !important;
    color: #030D4E ;
    border: 1px solid #0369A1;
    width: 100%;
    border-radius: 12px !important;
    font-family: "Plus Jakarta Sans", Sans-serif;
    font-size: 15px !important;
	font-weight:400 ;
	line-height:15px;
} */
.tax-molecule .main-page-wrapper .wd-product.wd-hover-buttons-on-hover .wd-add-btn>a:hover,
.tax-manufacturer .main-page-wrapper .wd-product.wd-hover-buttons-on-hover .wd-add-btn>a:hover {
	/* Remove hover effects - keep same styling */
	background-color: #fff !important;
	color: #030D4E !important;
	border: 1px solid #0369A1 !important;
}

.tax-molecule .main-page-wrapper .wd-product.wd-hover-buttons-on-hover .wd-add-btn a>span,
.tax-manufacturer .main-page-wrapper .wd-product.wd-hover-buttons-on-hover .wd-add-btn a>span {
	font-size: 15px !important;
	/* Standardize to 15px */
	font-family: "Plus Jakarta Sans", Sans-serif;
	font-weight: 600;

}

.tax-molecule .main-page-wrapper .product-wrapper,
.tax-manufacturer .main-page-wrapper .product-wrapper,
.tax-brand .main-page-wrapper .product-wrapper {
	border: 1px solid var(--brdcolor-gray-300);
	padding: 15px;
	background: #fff !important;
}

.tax-molecule .main-page-wrapper .wd-product.wd-hover-buttons-on-hover .wd-action-buttons,
.tax-manufacturer .main-page-wrapper .wd-product.wd-hover-buttons-on-hover .wd-action-buttons {
	position: absolute;
	right: 20px;
	top: 10px;
	opacity: 0;
	transform: translateX(100px) !important;
	padding: 10px;
	border-radius: calc(var(--wd-brd-radius) / 1.2);
	background: var(--bgcolor-white);
	box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
	transition: 0.3s ease-in-out;
	gap: var(--wd-prod-gap);
}



.wd-tools-element:is(.wd-design-6, .wd-design-7):not(.wd-with-wrap) .wd-tools-icon {
	height: 30px;
	width: 30px !important;
}

.whitespace-nowrap {
	white-space: nowrap;
}

.btn.btn-style-bordered {
	border: 1px solid;
}

:is(.btn, .button, button, [type="submit"], [type="button"]) {
	/* 	height:35px !important; */
	min-height: unset;
}

.wd-tools-element.wd-design-6>a>:is(.wd-tools-inner, .wd-tools-icon) {
	padding: 15px !important;
	border: 1px solid #333 !important;
}

#wd-6717a71eef71a a {
	height: 35px !important;
}


/* single-page */
.single-page-category .cat-design-zoom-out .wd-cat-content {
	text-align: left !important;
	justify-content: flex-start !important;
	padding: 5px 0px 0px 0px !important;
}

.single-page-category .wd-fill {
	position: relative !important
}

.single-page-category .wd-cat-thumb {
	display: none;
}

.single-page-category h3.wd-entities-title {
	color: var(--e-global-color-e8359ab);
}

html .wd-buy-now-btn {
	color: rgb(255, 255, 255);
	background: #0369A1;
}

html .wd-buy-now-btn:hover {
	color: rgb(255, 255, 255);
	background: #024f7a;
}

.single_add_to_cart_button {
	color: rgb(255, 255, 255);
	background: #030D4E;
}

div.quantity :is(input[type="number"], input[type="text"], input[type="button"]) {
	height: 35px;
	border-color: #1E419B !important;
	color: #1E419B;
}

div.quantity .minus {
	border-right: none !important;
	border-radius: 50px 0px 0px 50px !important;
}

div.quantity .plus {
	border-left: none !important;
	border-radius: 0px 50px 50px 0px !important;
}

.elementor-element.elementor-element-7a1f493.e-con-full.e-flex.e-con.e-child .eael-product-list-wrapper .eael-product-list-notice p i {
	color: #0369A1 !important;
}


.product-grid-item .wd-product-cats {
	/* Element hidden, remove unused clamping properties */
	display: none;
}

.wd-product-cats a {
	color: #1e419b !important;
}


.shop-content-area .wd-product.wd-hover-buttons-on-hover :is(.wd-product-header) {
	flex-direction: column;
	align-items: start !important;
}

@media (max-width:1024px) {
	.elementor-element.elementor-element-7a1f493.e-con-full.e-flex.e-con.e-child .eael-post-appender {
		display: flex !important;
		flex-wrap: wrap;
		gap: 15px;
	}

	.elementor-element.elementor-element-7a1f493.e-con-full.e-flex.e-con.e-child .eael-post-appender .product-type-simple {
		width: 48%;
		margin: 0px !important;
	}
}

@media (max-width: 767px) {
	.elementor-element.elementor-element-7a1f493.e-con-full.e-flex.e-con.e-child .eael-post-appender .product-type-simple {
		width: 100% !important;
		margin: 0px !important;
	}
}

/* White background and black text for product description */
.product-content-sections,
.elementor-element-81bf46d>.elementor-widget-container,
body.single-product .product-tabs-wrapper,
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel {
	background-color: #ffffff !important;
	border-radius: 10px 10px 10px 10px;
	padding: 20px;
	color: #000000 !important;
}

/* Force black color on text elements inside description */
.product-content-sections :is(p, li, h1, h2, h3, h4, h5, h6),
.elementor-element-81bf46d>.elementor-widget-container :is(p, li, h1, h2, h3, h4, h5, h6),
body.single-product .product-tabs-wrapper :is(p, li, h1, h2, h3, h4, h5, h6),
body.single-product .woocommerce-tabs .woocommerce-Tabs-panel :is(p, li, h1, h2, h3, h4, h5, h6) {
	color: #000000 !important;
}

@media (min-width:767px) {
	.product-element-top.wd-quick-shop .product-image-link img {
		height: 300px !important;
		object-fit: cover;
	}
}

@media(max-width:767px) {
	.product-element-top.wd-quick-shop {
		object-fit: contain;
		width: 100%;
	}

	.product-element-top.wd-quick-shop .product-image-link img {
		height: 130px !important;
		object-fit: contain;
		border-radius: 20px;
	}

	.products-page .product-element-top.wd-quick-shop {
		object-fit: contain;
		width: 100%;
		height: 130px !important;
	}

	.products-page .product-element-top.wd-quick-shop a.product-image-link {
		height: 100%;

	}

	.products-page .product-element-top.wd-quick-shop .product-image-link img {
		object-fit: cover;
		height: 100%;
	}

	.latest-products-grid .product-element-top.wd-quick-shop .product-image-link img {
		height: 200px !important;
		object-fit: contain;
	}
}

.faq-accordion {
	overflow: hidden;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.faq-question {
	color: var(--e-global-color-e8359ab);
	padding: 10px;
	background-color: #cccccc61;
	cursor: pointer;
	font-weight: bold;
	display: flex;
	justify-content: space-between;
	align-items: center;
	transition: background-color 0.3s ease;
	text-transform: capitalize;
}

.faq-question:hover {
	background-color: #e0e0e0;
}

.faq-icon {
	font-weight: bold;
	font-size: 25px;
	transition: transform 0.25s ease;
	display: inline-block;
}

.faq-answer {
	padding: 15px;
	background-color: #fff;
	display: none;
}

details.faq-item[open] .faq-answer {
	display: block;
}

details.faq-item[open] .faq-icon {
	transform: rotate(45deg);
}

/* end single page */

@media (min-width:767px) and (max-width:992px) {
	.product-slider .wd-carousel-item {
		--wd-col: 2 !important;
	}
}

.wd-product {
	text-align: start;
}

.wd-product :is(.product-image-link, .hover-img) img {
	object-fit: contain;
}

.page-title {
	padding-left: var(--wd-title-sp);
	padding-right: var(--wd-title-sp);

}

:is(.woocommerce-cart-form__contents, .group_table) td.product-quantity input[type="number"],
.wd-checkout-prod-cont .quantity :is(input[type="button"], input[type="number"], input[type="text"]) {
	height: 35px;
}

.latest-products-grid .product-wrapper {
	display: flex;
	flex-direction: column;
}

.latest-products-grid .product-element-bottom {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
}

.shop-content-area {
	padding: 0 65px;
}

.store-page-wrap .product-element-top.wd-quick-shop .product-image-link img {
	object-fit: cover;
}

@media (max-width:992px) {
	header .wd-header-my-account.wd-design-6 {
		display: none;
	}

	@media (max-width: 767px) {
		.wd-grid-g.wd-cats.products.woocommerce.columns-3 .product-category.product:nth-of-type(n+5) {
			display: none;
		}
	}

	.shop-content-area {
		padding: 0 20px !important;
	}
}

.read-more-section a {
	text-align: center;
	font-family: "Plus Jakarta Sans", Sans-serif;
	/*     font-size: 15px; */
	font-weight: 500;
	line-height: 15px;
}

.blog-design-masonry .post-title {
	font-size: 22px;
}

.btn.btn-color-primary:hover {
	color: #fff;
	box-shadow: unset !important;
}


#wpcf7-f511-p17-o1 input.wpcf7-form-control.wpcf7-email.wpcf7-validates-as-required.wpcf7-text.wpcf7-validates-as-email,
#popup-674705518a4bd input.wpcf7-form-control.wpcf7-email.wpcf7-validates-as-required.wpcf7-text.wpcf7-validates-as-email {
	border: var(--wd-form-brd-width) solid var(--wd-form-brd-color) !important;
	border-radius: var(--wd-form-brd-radius);
	background-color: var(--wd-form-bg) !important;
}

.wd-switch-to-register {
	color: var(--btn-default-color) !important
}

:is(.register, .login) .button {
	color: #fff !important;
	background: var(--btn-default-bgcolor) !important;
}

/* filed filter */
.from-filter .wd-dropdown,
.from-filter .wd-event-click.wd-opened>.wd-dropdown,
.wd-dropdown.wd-opened {
	visibility: visible !important;
	opacity: 1 !important;
	box-shadow: unset !important;
}

.from-filter .wd-pf-dropdown .wd-scroll {
	border-radius: 0px;
}

.from-filter .wd-pf-dropdown a:hover {
	background: transparent !important;
	color: var(--nav-color-hover) !important;
}

.from-filter .wd-pf-dropdown a {
	padding: 5px 0px;
	font-size: 14px;
	line-height: 17px;
	font-weight: 600;
	text-transform: capitalize;
	text-align: left;
	color: #333;
}

.from-filter .wd-dropdown {
	position: unset !important;
	transform: none !important;
}

.from-filter .wd-pf-title {
	display: none;
}

.from-filter .wd-pf-btn.wd-col {
	display: none;

}

.woocommerce-column__title {
	font-size: 25px !important;
	margin: 0px !important;
}

/* tax-manufacture */

.tax-manufacturer .shop-content-area,
.tax-brand .shop-content-area {
	flex: 100% !important;
	max-width: 100% !important;
	display: flex;
	flex-direction: column;
	padding: 0px !important;
}

.tax-manufacturer .shop-content-area .wd-products-element,
.tax-brand .shop-content-area .wd-products-element {
	order: 1
}

.tax-manufacturer .shop-content-area .wd-products-element,
.tax-manufacturer .shop-content-area .term-description-tabs,
.tax-brand .shop-content-area .wd-products-element,
.molecule-title-wrapper {
	padding: 0px 65px;
	margin-bottom: 20px;
}

.tax-manufacturer .shop-content-area .term-description,
.tax-brand .shop-content-area .term-description {
	display: none;
}

.tax-manufacturer .main-page-wrapper .shop-loop-head .wd-shop-tools:nth-of-type(2) {
	display: none;
}

@media(max-width:992px) {

	.tax-manufacturer .shop-content-area .wd-products-element,
	.tax-manufacturer .shop-content-area .term-description-tabs,
	.tax-brand .shop-content-area .wd-products-element,
	.molecule-title-wrapper {
		padding: 20px 20px;
	}
}

@media (min-width:1024px) {

	.tax-manufacturer .main-page-wrapper .shop-loop-head,
	.tax-brand .main-page-wrapper .shop-loop-head {
		padding: 20px 65px;
	}
}

/*  testimonial*/
.testimonial-content {
	display: flex;
	flex-direction: column;
}

.testimonial-content .testimonial-rating {
	order: 3;
	padding-left: 100px;
	text-align: left;
}

.testimonial-content p {
	order: 1;
	color: var(--e-global-color-e8359ab);
	font-family: "Plus Jakarta Sans", Sans-serif;
	font-size: 19px;
	font-weight: 400;
	line-height: 1.4em;
	text-align: left;
}

.testimonial-content footer {
	color: var(--e-global-color-e8359ab);
	order: 2;
	font-family: "Plus Jakarta Sans", Sans-serif;
	font-size: 19px;
	font-weight: 700;
	line-height: 1.3em;
	text-align: left;
	padding-left: 100px;
	margin: 50px 0px 0px 0px !important;
}

.testimonial-avatar {
	position: absolute;
	left: 0;
	margin: 0px !important;
	width: 100px;
	bottom: 0;
}

.testimonial-avatar img {
	min-width: 60px;
	max-width: 100px;
	width: 80px;
	border-radius: 50%;
}

.wd-nav-arrows.wd-pos-together:not(:where(.wd-custom-style)) {
	--wd-arrow-gap: 20px;
	--wd-arrow-size: 34px;
	--wd-arrow-icon-size: 15px;
}

.wd-arrow-inner {
	color: #fff;
	background: rgb(3, 13, 78);
}

.wd-arrow-inner:hover {
	background: #fff;
	color: rgb(3 13 78);
	border: 1px solid rgb(3 13 78);
}

.wd-disabled .wd-arrow-inner {
	border: 1px solid rgb(3 13 78) !important;
}

.author_publishdate .post-meta {
	display: flex;
	justify-content: space-between;
	padding: 0px 15px;
	color: rgb(3 13 78);
	text-transform: capitalize;
	font-weight: 500;
}

.iti.iti--allow-dropdown {
	width: 100%;
}

#wpcf7-f511-p17-o1 .m-0 {
	margin: 0px;
}

.iti__selected-flag {
	border-radius: 50px 0px 0px 50px;
}

@media (min-width: 1025px) {
	.archive.category .main-page-wrapper>.container {
		padding: 40px 60px !important;
		margin-top: 0px;
	}
}

.archive.category .main-page-wrapper>.container {
	padding-top: 40px !important;
	padding-bottom: 0px !important;
}

@media (min-width: 993px) {
	.archive.category .main-page-wrapper>.container .content-layout-wrapper {
		padding: 0px 20px;
	}
}

#recent-comments-3 {
	display: none;
}

.sidebar-container {
	height: 100%;
	box-shadow: 0px 4px 8px 0px rgb(0, 0, 0, 0.1);
	background: #fff;
	border-radius: 0.375rem;
	padding: 15px;
}

.sidebar-widget {
	border: 0px;
}

.woodmart-archive-blog .main-page-wrapper {
	background: #fff
}

.article-inner {
	box-shadow: 0px 0px 3px rgb(0, 0, 0, 0.1);
}

.woocommerce-breadcrumbs-container {
	background: #030d4e;
	padding: 20px 65px;
}

@media (max-width: 992px) {
	.woocommerce-breadcrumbs-container {
		padding: 20px 20px;
	}
}

.wd-register-tabs .col-register {
	display: block !important;
}

.col-12.col-md-6.col-register-text {
	display: none;
}

.mfp-close-btn-in .mfp-close {
	color: #fff;
}

.woodmart-add-btn>a {
	padding: 10px 14px;
	background-color: #fff;
	color: #030D4E;
	border: 1px solid #0369A1;
	width: 100%;
	font-weight: 600;
	line-height: 15px;
	border-radius: 12px !important;
	font-family: "Plus Jakarta Sans", Sans-serif;
	font-size: 15px !important;
	/* Standardize to 15px to match other CTAs */
	text-align: center !important;
	/* Add missing text-align */
	box-sizing: border-box !important;
	/* Add missing box-sizing */
	display: inline-block !important;
	/* Add missing display */
	text-decoration: none !important;
	/* Add missing text-decoration */
	cursor: pointer !important;
	/* Add missing cursor */
	transition: none !important;
	/* Remove hover transitions */
}

.woodmart-add-btn>a:hover,
.wd-add-btn.wd-add-btn-replace>a:hover {
	/* Remove hover effects */
	background-color: #fff !important;
	color: #030D4E !important;
	border: 1px solid #0369A1 !important;
}

.wd-add-btn.wd-add-btn-replace a p {
	font-size: 15px !important;
	/* Standardize to 15px */
	font-family: "Plus Jakarta Sans", Sans-serif;
	font-weight: 600;
	margin: 0px;
}

.wd-add-btn.wd-add-btn-replace>a {
	padding: 10px 14px;
	background-color: #fff !important;
	color: #030D4E !important;
	border: 1px solid #0369A1;
	width: 100%;
	font-weight: 600;
	line-height: 15px;
	border-radius: 12px !important;
	font-family: "Plus Jakarta Sans", Sans-serif;
	font-size: 15px !important;
	/* Fix: Standardize to 15px */
	text-align: center !important;
	/* Add missing text-align */
	box-sizing: border-box !important;
	/* Add missing box-sizing */
	display: inline-block !important;
	/* Add missing display */
	text-decoration: none !important;
	/* Add missing text-decoration */
	cursor: pointer !important;
	/* Add missing cursor */
	transition: none !important;
	/* Remove hover transitions */
}

.similar-product-pricebtn {
	padding: 10px 14px !important;
	/* Standardize to match other CTAs */
	min-height: unset;
	width: 100% !important;
	/* Standardize to match other CTAs */
	background-color: #fff !important;
	color: #030D4E !important;
	border: 1px solid #0369A1;
	font-size: 15px !important;
	/* Standardize to 15px */
	font-weight: 600 !important;
	/* Match other CTAs */
	line-height: 15px !important;
	/* Add missing line-height */
	border-radius: 12px !important;
	/* Add missing border-radius */
	font-family: "Plus Jakarta Sans", Sans-serif !important;
	/* Add missing font-family */
	text-align: center !important;
	/* Add missing text-align */
	box-sizing: border-box !important;
	/* Add missing box-sizing */
	display: inline-block !important;
	/* Add missing display */
	text-decoration: none !important;
	/* Add missing text-decoration */
	cursor: pointer !important;
	/* Add missing cursor */
	transition: none !important;
	/* Remove hover transitions */
}

.similar-product-pricebtn p {
	margin: 0px;
}

.similar-product-pricebtn:hover {
	/* Remove hover effects - keep same styling */
	background-color: #fff !important;
	color: #030D4E !important;
	border: 1px solid #0369A1 !important;
}

.custom-terms-checkbox {
	display: flex;
	align-items: start;
}

.custom-terms-checkbox input {
	margin-top: 10px;
}

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
	display: none;
}

.manufacture-name,
.woocommerce-breadcrumb>* {
	text-transform: capitalize;
}

.product-table-list a {
	color: #1E419B !important;

}

.product-wrapper .variations {
	display: none !important;
}

.product-author-box,
.product-reviewer-box {
	padding: 15px;
	border-radius: 0px;
	height: 100%;
}

.product-author-box .author-bio,
.reviewer-bio {
	display: -webkit-box;
	/* enables line clamp in WebKit */
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	/* WebKit implementation */
	line-clamp: 3;
	/* Standard property */
	overflow: hidden;
}

@media (min-width:992px) {

	.product-author-box,
	.product-reviewer-box {
		box-shadow: 0px -2px 5px 1px rgb(0, 0, 0, 0.1);
	}
}

.author-details p,
.reviewer-details p {
	margin: 0px;
	font-size: 13px;
}

.author-info,
.reviewer-info {
	display: flex;
	gap: 10px;
	flex-direction: column;
}

.author-image,
.reviewer-image {
	width: 30%;
}

.author-image img,
.reviewer-image img {
	width: 100px;
	border-radius: 50%;
	object-fit: cover;
}

@media(max-width:992px) {

	.author-image,
	.reviewer-image {
		display: none;
	}
}

.author-details p a,
.reviewer-details p a {
	text-transform: capitalize;
}

.product_type_variable:hover span {
	transform: translateY(0%) translateZ(0) !important;
}

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

.disclaimer p {
	margin-bottom: 10px;
}

/* author list page */
.author-card {
	box-shadow: 0px 0px 2px 5px #f9f9f9c9;
	padding: 20px;
	border-radius: 10px;
}

.author-card a {
	text-transform: capitalize;
}

.author-card p {
	font-size: 15px;
	text-transform: capitalize;
}

.author-card img {
	border-radius: 50%;
	width: 100px;
	margin-bottom: 15px;
}

.author-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1rem;
}

.author-card h4,
.author-card p {
	margin-bottom: 5px;
}

@media (max-width:992px) {
	.author-grid {
		grid-template-columns: 1fr 1fr 1fr;
	}
}

@media (max-width: 767px) {
	.author-grid {
		display: flex;
		flex-direction: column;
	}
}

/* end author list page */

/* term-description menu css */
.term-description-tabs .tabs-menu,
.single-page-table-overview .elementor-toc__list-wrapper {
	display: flex;
	margin: 0;
	gap: 10px;
	overflow-x: auto;
	flex-wrap: nowrap;
	white-space: nowrap;
	padding: 0px 0px 10px 0px;
	scroll-behavior: smooth;
	/* Optional: for smoother native behavior */
}

@media (max-width:992px) {
	.elementor-toc__list-item:has(.elementor-item-active) {
		background-color: var(--item-text-active-color) !important;
		color: white;
	}

	.elementor-toc__list-item:has(.elementor-item-active) a {
		color: var(--btn-accented-color) !important;
	}
}

.tabs-menu-outer {
	border: 1px solid var(--brdcolor-gray-300);
	border-radius: 10px;
	background: var(--e-global-color-50928c6);
	padding: 10px;
}

.term-description-tabs .tabs-menu::-webkit-scrollbar,
.single-page-table-overview .elementor-toc__list-wrapper::-webkit-scrollbar {
	height: 5px;
	margin-top: 10px;
}

/* Handle */
.term-description-tabs .tabs-menu::-webkit-scrollbar-thumb,
.single-page-table-overview .elementor-toc__list-wrapper::-webkit-scrollbar-thumb {
	background: var(--e-global-color-e8359ab);
	border-radius: 10px;
}


/* Handle on hover */

.term-description-tabs .tabs-menu li,
.single-page-table-overview .elementor-toc__list-item {
	padding: 7px 10px;
	background: #eee;
	text-decoration: none;
	cursor: pointer;
	margin: 0px;
	border-radius: 5px;
}

.term-description-tabs .tabs-menu li a {
	color: var(--e-global-color-e8359ab);
}

.term-description-tabs .tabs-menu li a:hover {
	color: var(--e-global-color-3cbbabc);
}

.term-description-tabs .tabs-menu li a.active {
	color: var(--e-global-color-3cbbabc);
}

.term-description-tabs .tab-pane {
	display: none;
	padding: 15px 0;
}

.term-description-tabs .tab-pane.active {
	display: block;
}

.sticky-tabs-menu {
	position: sticky;
	top: 60px;
	width: 100%;
	z-index: 1;
	left: 0;
}

.single-page-table-overview .elementor-toc__header {
	display: none;
}

/* term description menu css end */


/* blog css post-layout new */
.post-layout .elementor-post__text {
	order: 1;
}

.post-layout .elementor-post__meta-data {
	width: fit-content;
	padding: 0px 30px !important;
}

.post-layout .elementor-post__badge {
	width: fit-content;
	align-self: end;
	transform: translate(0px, 25px);
	position: relative;
	padding: 0px 30px !important;
}

.post-layout a.elementor-post__thumbnail__link {
	margin-bottom: 0px !important;
}

/* blog css post layout end */
.extra-color {
	color: red !important;
}

.elementor-widget-table-of-contents:has(.elementor-toc__list-wrapper:empty) {
	display: none !important;
}

.payment_method_stripe_credit_debit_card label,
.payment_method_bacs label {
	background: #030d4e;
	padding: 10px 20px;
	border-radius: 10px;
	color: #ffffff !important;
	font-weight: 500;
}

.wc_payment_methods li {
	margin-bottom: 25px !important;
}

/* ── My Account — spacing overrides ──────────────────────────── */

/* Page-level breathing room */
.woocommerce-account .site-content {
	padding-top: 48px;
	padding-bottom: 64px;
}

/* Nav sidebar */
.woocommerce-MyAccount-navigation {
	margin-bottom: 0;
}
.woocommerce-MyAccount-navigation ul {
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	overflow: hidden;
}
.woocommerce-MyAccount-navigation ul li a {
	padding: 13px 18px !important;
	border-bottom: 1px solid #f3f4f6;
	font-size: 14px !important;
}
.woocommerce-MyAccount-navigation ul li:last-child a {
	border-bottom: none;
}

/* Content area */
.woocommerce-MyAccount-content {
	padding: 0 0 0 48px !important;
}
.woocommerce-MyAccount-content > h2,
.woocommerce-MyAccount-content > h3 {
	margin-top: 0;
	margin-bottom: 20px;
}
.woocommerce-MyAccount-content p {
	margin-bottom: 16px;
}

/* Tables inside account */
.woocommerce-orders-table,
.woocommerce-MyAccount-content table {
	margin-top: 16px;
	width: 100%;
}
.woocommerce-orders-table th,
.woocommerce-orders-table td {
	padding: 12px 14px;
}

/* Login / Register page (logged-out /my-account/) */
.woocommerce-account .woocommerce {
	padding-top: 0;
}
.woocommerce-account .col2-set .col-1,
.woocommerce-account .col2-set .col-2 {
	padding: 32px;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
}

/* Mobile: stack nav above content */
@media (max-width: 768px) {
	.woocommerce-account .site-content {
		padding-top: 32px;
		padding-bottom: 40px;
	}
	.woocommerce-MyAccount-content {
		padding: 24px 0 0 !important;
	}
	.woocommerce-account .col2-set .col-1,
	.woocommerce-account .col2-set .col-2 {
		padding: 20px;
		margin-bottom: 16px;
	}
}

/* ── My Account — form layout ─────────────────────────────────── */

.woocommerce-MyAccount-content form {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: space-between;
}

.woocommerce-MyAccount-content .uploaded-prescription-img {
	flex: 25%;
}

@media(max-width:992px) {
	.woocommerce-MyAccount-content .uploaded-prescription-img {
		flex: 32%;
	}
}

@media(max-width:767px) {
	.woocommerce-MyAccount-content .uploaded-prescription-img {
		flex: 48%;
	}
}

.woocommerce-MyAccount-content .uploaded-prescription-img a img {
	border: 1px solid #000;
	height: 80px;
	width: 80px;
	object-fit: contain
}

.yellow {
	color: #F8A01C;
	font-weight: 600;
}

span.wd-attr-name-label:after {
	content: ':';
}

.prescription-upload-section {
	margin-top: 15px;
}

.prescription-upload-section p {
	margin: 10px;
}

.presc-wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.presc-wrap label {
	display: flex;
}

.upload-presc label,
.upload-date label {
	margin-bottom: 15px;
}

.molecule-title-wrapper .molecule-title {
	text-transform: capitalize;
	color: var(--e-global-color-e8359ab);

}


.publish-and-updatedate>* {
	font-weight: 600;
}

.clamp-text {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	/* Add standard property for compatibility */
	overflow: hidden;
	margin-bottom: 6px;
}

.term-description h2,
.product-content-single-page h2 {
	margin-top: 40px;
}

/* author single page  css */
.author article {
	position: relative;
}

.author .site-content.container {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 1rem;
	padding: 30px 65px;
}

.author .article-inner img.attachment-large.size-large {
	aspect-ratio: 2 / 1.2;
	border-radius: 0.375rem;
}

.author .article-inner {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	gap: 1rem;
	height: 100%;
	box-shadow: unset;
}

.author .article-body-container {
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: space-between;
}

@media(max-width:992px) {
	.author .site-content.container {
		grid-template-columns: 1fr 1fr;
		padding: 20px 20px;
	}
}

@media(max-width:767px) {
	.author .site-content.container {
		grid-template-columns: 1fr;
	}
}



.author-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1rem;
}

@media (max-width:992px) {
	.author-grid {
		grid-template-columns: 1fr 1fr 1fr;
	}
}

@media (max-width: 767px) {
	.author-grid {
		display: flex;
		flex-direction: column;
	}
}

/* end author single page css */

/* Dual CTA Buttons for Simple Products */
.wd-dual-cta-wrapper {
	display: flex;
	gap: 5px;
	width: 100%;
	max-width: 100%;
	flex-wrap: nowrap;
	box-sizing: border-box;
}

.wd-dual-btn {
	flex: 1;
	min-width: 0;
	/* Allow flex children to shrink inside container */
}

/* Unified CTA styling (Add to Cart, More Details, Ask For Price) */
.wd-dual-btn .button,
.button.wd-more-details-btn,
.button.ask-price-btn {
	padding: 10px 14px !important;
	/* Consistent across all screens */
	min-height: unset !important;
	width: 100% !important;
	background-color: #fff !important;
	color: #030D4E !important;
	border: 1px solid #0369A1 !important;
	font-size: 15px !important;
	/* Unified font size */
	font-weight: 600 !important;
	line-height: 15px !important;
	border-radius: 12px !important;
	font-family: "Plus Jakarta Sans", Sans-serif !important;
	text-align: center;
	box-sizing: border-box;
	display: inline-block !important;
	text-decoration: none !important;
	cursor: pointer !important;
	transition: none !important;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.wd-dual-btn .button span {
	margin: 0px;
	font-size: 15px !important;
	/* Match other CTAs */
	font-weight: 600 !important;
	/* Match the bold text formatting */
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Base hover reset — specific left/right rules below take precedence */
.wd-dual-btn .button:hover,
.wd-dual-btn .button:focus,
.wd-dual-btn .button:active {
	transform: none !important;
	box-shadow: none !important;
	opacity: 1 !important;
}

/* Remove legacy side margins (gap handles spacing) */
.wd-dual-btn-left,
.wd-dual-btn-right {
	margin: 0 !important;
}

/* Primary CTA (left/Start Order): solid fill */
.wd-dual-btn-left .button {
	background-color: #0369A1 !important;
	color: #fff !important;
	border: 1px solid #0369A1 !important;
}

.wd-dual-btn-left .button:hover,
.wd-dual-btn-left .button:focus,
.wd-dual-btn-left .button:active {
	background-color: #030d4e !important;
	color: #fff !important;
	border: 1px solid #030d4e !important;
}

/* Secondary CTA (right/More Details): outline only */
.wd-dual-btn-right .button {
	background-color: #fff !important;
	color: #0369A1 !important;
	border: 1px solid #0369A1 !important;
}

.wd-dual-btn-right .button:hover,
.wd-dual-btn-right .button:focus,
.wd-dual-btn-right .button:active {
	background-color: #F0FDF4 !important;
	color: #0369A1 !important;
	border: 1px solid #0369A1 !important;
}

/* Responsive adjustments */
/* Tablet and below: stack buttons vertically */
@media (max-width: 767px) {
	.wd-dual-cta-wrapper {
		flex-direction: column;
		gap: 8px;
	}

	.wd-dual-btn-left,
	.wd-dual-btn-right {
		margin: 0;
	}

	.wd-dual-btn .button,
	.button.wd-more-details-btn,
	.button.ask-price-btn {
		white-space: normal;
	}
}

/* Safety: prevent any horizontal overflow due to borders/padding rounding */
ul.products li.product .wd-dual-cta-wrapper,
.products .product .wd-dual-cta-wrapper {
	overflow: hidden;
}

/* Ensure buttons can't exceed parent width even with long translations */
.wd-dual-btn .button span {
	display: inline-block;
	max-width: 100%;
}

/* Ensure standalone Ask For Price button keeps consistent sizing */
/* Ensure Ask For Price already inherits unified styling; keep full width */
ul.products li.product .ask-price-btn.button,
.products .product .ask-price-btn.button {
	width: 100%;
	box-sizing: border-box;
}

/* Optional: focus visibility for keyboard users */
.wd-dual-btn .button:focus-visible,
.ask-price-btn:focus-visible,
.wd-more-details-btn:focus-visible {
	outline: 2px solid #0369A1 !important;
	outline-offset: 2px;
}

/* Ensure the buttons container fits within product cards */
.wd-product .wd-dual-cta-wrapper {
	margin: 0;
}

/* End Dual CTA Buttons */
/* Related products carousel: align layout with archive product cards (Strategy A) */
.related-products-carousel .product-grid-item.product {
	/* structural flex handled here; visual frame applied later line ~1860 */
	display: flex;
	flex-direction: column;
	box-sizing: border-box;
	height: 100%;
}

/* Inner column stack & spacing (gap unified at 8px like archive) */
.related-products-carousel .product-grid-item .product-details {
	display: flex;
	flex-direction: column;
	gap: 8px;
	flex: 1;
}

.related-products-carousel .product-grid-item .wd-entities-title a {
	text-decoration: none;
}

.related-products-carousel .product-grid-item .product-taxonomies.product-meta-lines {
	display: flex;
	flex-direction: column;
	gap: 4px;
	font-size: 13px;
}

.related-products-carousel .product-grid-item .product-taxonomies.product-meta-lines .prod-meta-line strong {
	font-weight: 600;
}

.related-products-carousel .product-grid-item .wd-dual-cta-wrapper {
	margin-top: auto;
}

.related-products-carousel .product-grid-item .wd-dual-cta-wrapper .button {
	width: 100%;
}

@media (max-width:560px) {
	.related-products-carousel .product-grid-item .wd-dual-cta-wrapper {
		flex-direction: column;
		gap: 8px;
	}
}

/* Override parent theme styles for add-to-cart icons */
.wd-add-btn-replace .add-to-cart-loop:before {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	font-size: 20px;
	transition: opacity .15s ease, transform .25s ease;
	transform: translateY(100%);
	/* Disable icon content - keep styling only */
	/* content: "\f123"; */
	font-family: "woodmart-font";
}

/* (Removed obsolete unification override block; Strategy A below provides the canonical layout rules) */
/* Related products card styling (active) */
.related-products-carousel .product-grid-item.product {
	padding: 20px !important;
	border: 1px solid #E6E6E6 !important;
	background: #fff !important;
	border-radius: 12px;
}

@media (max-width:560px) {
	.related-products-carousel .product-grid-item .wd-dual-cta-wrapper {
		flex-direction: column;
		gap: 8px;
	}
}

/* === Strategy A: Top-stack content with bottom-pinned CTAs (override prior space-around/center) === */
/* Reset distribution to flex-start */
.wd-product :where(.product-wrapper, .product-element-bottom),
.product-slider .wd-product :where(.product-wrapper, .product-element-bottom),
.latest-products-grid .product-element-bottom,
.related-products-carousel .product-grid-item .product-details {
	justify-content: flex-start !important;
	align-items: stretch;
	gap: 8px;
	/* consistent breathing space */
}

/* Allow inner columns to size naturally */
.latest-products-grid .product-element-bottom {
	height: auto !important;
}

/* Establish column stacking if not already */
.wd-product .product-wrapper,
.wd-product .product-element-bottom,
.related-products-carousel .product-grid-item .product-details {
	display: flex;
	flex-direction: column;
}

/* Pin CTA groups to bottom without space-around tricks */
.wd-product .product-element-bottom :is(.wd-dual-cta-wrapper, .wd-add-btn, .woodmart-add-btn),
.related-products-carousel .product-grid-item :is(.wd-dual-cta-wrapper, .wd-add-btn, .woodmart-add-btn) {
	margin-top: auto;
}

/* Undo earlier overrides that stripped related card styling if we want consistent padding (optional comment out if not desired) */
/* Restored border/padding/background for related product cards above; old reset rule removed */
/* Remove previous override that forced margin-top:0 */
.related-products-carousel .product-grid-item .wd-dual-cta-wrapper {
	margin-top: auto !important;
}

/* Ensure CTA buttons fill width uniformly */
.wd-product .wd-dual-cta-wrapper .button,
.related-products-carousel .wd-dual-cta-wrapper .button {
	width: 100%;
}

/* Mobile stacking remains but uses unified gap already */
@media (max-width:560px) {

	.wd-product .wd-dual-cta-wrapper,
	.related-products-carousel .wd-dual-cta-wrapper {
		flex-direction: column;
	}
}

/* === End Strategy A overrides === */

/* Product page redesign */
.product-hero {
	background: linear-gradient(135deg, rgba(2, 40, 68, .95), rgba(2, 97, 148, .92));
	padding: 40px;
	border-radius: 24px;
	margin-bottom: 36px;
	color: #fff;
}

.product-hero__inner {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
	gap: 32px;
	align-items: stretch;
}

.product-hero__media .product-images {
	border-radius: 24px;
	overflow: hidden;
	box-shadow: 0 25px 45px rgba(2, 40, 68, .45);
}

.product-hero__content {
	background: rgba(255, 255, 255, .05);
	border-radius: 24px;
	padding: 30px;
	box-shadow: inset 0 0 10px rgba(255, 255, 255, .25);
}

.product-hero__content .summary-inner {
	padding-bottom: 0;
}

.product-hero__content .product-summary-inner .price {
	color: #fff;
}

.product-highlight-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 18px;
	margin: 30px 0;
}

.highlight-card {
	background: #fff;
	border-radius: 20px;
	padding: 18px;
	border: 1px solid #e8ecf1;
	box-shadow: 0 15px 25px rgba(6, 24, 45, .08);
}

.highlight-card h4 {
	font-size: 18px;
	margin-bottom: 8px;
	color: #031f59;
}

.highlight-card p {
	margin: 0;
	color: #575b64;
	font-size: 14px;
	line-height: 1.6;
}

.product-details-layer {
	background: #f8fbff;
	border-radius: 28px;
	padding: 30px;
	margin-bottom: 24px;
	box-shadow: 0 25px 60px rgba(3, 17, 52, .08);
}

.product-details-layer .product-tabs-wrapper {
	background: transparent;
	padding: 0;
	margin: 0;
}

.product-details-layer .shop_table {
	background: #fff;
	padding: 20px;
	border-radius: 16px;
	box-shadow: 0 20px 35px rgba(3, 17, 52, .08);
}

.related-and-upsells {
	margin-top: 20px;
}

.product-highlight-grid+.product-details-layer {
	margin-top: 20px;
}

/* Additional Information Table */
.product-additional-info {
	display: block;
	margin-bottom: 40px;
	padding: 0 15px;
}

.product-additional-info h3 {
	color: #030D4E;
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 20px;
	font-family: "Plus Jakarta Sans", Sans-serif;
}

.product-additional-info {
	margin: 20px 0 40px 0;
	padding: 0;
	max-width: 600px;
	clear: both;
}

.product-additional-info h3 {
	font-size: 22px;
	margin-bottom: 15px;
	color: #030D4E;
}

.additional-info-table {
	width: 100%;
	max-width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
}

.additional-info-table tr {
	border-bottom: 1px solid #E3DBD8;
}

.additional-info-table th,
.additional-info-table td {
	padding: 12px 0;
	font-family: "Plus Jakarta Sans", Sans-serif;
	font-size: 15px;
	line-height: 22px;
	vertical-align: top;
}

.additional-info-table th {
	text-align: left;
	color: #030D4E;
	font-weight: 400;
	width: 150px;
}

.additional-info-table td {
	text-align: right;
	color: #030D4E;
	font-weight: 600;
}

@media (max-width: 767px) {
	.product-additional-info h3 {
		font-size: 20px;
	}

	.additional-info-table th,
	.additional-info-table td {
		font-size: 14px;
		padding: 10px 0;
	}
}

/* --- FDA Fair Balance: Sticky Safety Rail --- */
.isi-sticky-rail {
	position: sticky;
	top: 100px;
	height: fit-content;
	max-height: calc(100vh - 120px);
	overflow-y: auto;
	background: #f9f9f9;
	border-left: 4px solid #0369A1;
	padding: 20px;
	margin-bottom: 20px;
	box-shadow: -2px 0 10px rgba(0, 0, 0, 0.05);
}

.isi-sticky-rail h3 {
	font-size: 18px;
	color: #0369A1;
	margin-bottom: 15px;
	text-transform: uppercase;
	border-bottom: 1px solid #ddd;
	padding-bottom: 10px;
}

.isi-content {
	font-size: 13px;
	line-height: 1.6;
	color: #444;
}

.isi-content strong {
	color: #000;
}

/* --- Trust Architecture: Badges --- */
.product-highlight-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 20px;
	margin: 40px 0;
	padding: 30px;
	background: #F0FDF4;
	border-radius: 12px;
}

.highlight-card {
	text-align: center;
	padding: 15px;
}

.highlight-card h4 {
	color: #0369A1;
	margin-bottom: 10px;
	font-size: 16px;
}

.highlight-card p {
	font-size: 12px;
	margin: 0;
}

/* --- GEO: Q&A Body Styling --- */
.product-qa-section {
	margin-top: 40px;
}

.qa-item {
	margin-bottom: 25px;
}

.qa-item h3 {
	font-size: 20px;
	color: #1a1a1a;
	margin-bottom: 10px;
}

.qa-item div {
	font-size: 16px;
	line-height: 1.7;
}

/* ISI accordion: desktop — summary hidden, content always visible */
.isi-accordion {
	display: block;
}
.isi-toggle {
	display: none;
}
.isi-accordion .isi-content {
	display: block;
}

@media (max-width: 991px) {
	.isi-sticky-rail {
		position: relative;
		top: 0;
		border-left: none;
		border-top: 4px solid #0369A1;
		margin-top: 30px;
		max-height: none;
	}
	/* Mobile: show toggle, collapse content by default */
	.isi-toggle {
		display: flex;
		align-items: center;
		justify-content: space-between;
		font-size: 16px;
		font-weight: 700;
		color: #0369A1;
		cursor: pointer;
		list-style: none;
		padding: 4px 0;
	}
	.isi-toggle::-webkit-details-marker { display: none; }
	.isi-toggle::after {
		content: '+';
		font-size: 20px;
		line-height: 1;
	}
	.isi-accordion[open] .isi-toggle::after {
		content: '−';
	}
	.isi-accordion:not([open]) .isi-content {
		display: none;
	}
}

/* Fix #1: visually hidden labels for screen readers */
.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* Fix #3: Sticky buy bar */
.wd-sticky-buy-bar {
	position: fixed;
	bottom: -80px;
	left: 0;
	right: 0;
	z-index: 999;
	background: #fff;
	border-top: 2px solid #0369A1;
	box-shadow: 0 -4px 16px rgba(0,0,0,0.10);
	transition: bottom 0.25s ease-out;
	padding: 10px 0;
}
.wd-sticky-buy-bar--visible {
	bottom: 0;
}
.wd-sticky-buy-bar__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}
.wd-sticky-buy-bar__info {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}
.wd-sticky-buy-bar__name {
	font-size: 15px;
	font-weight: 600;
	color: #030d4e;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.wd-sticky-buy-bar__price {
	font-size: 14px;
	color: #0369A1;
	font-weight: 600;
}
.wd-sticky-buy-bar__cta {
	background: #0369A1 !important;
	color: #fff !important;
	border: none !important;
	border-radius: 8px !important;
	padding: 10px 24px !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	white-space: nowrap;
	flex-shrink: 0;
	transition: background 200ms ease-out !important;
}
.wd-sticky-buy-bar__cta:hover {
	background: #030d4e !important;
}
@media (max-width: 480px) {
	.wd-sticky-buy-bar__name { display: none; }
}
@media (prefers-reduced-motion: reduce) {
	.wd-sticky-buy-bar { transition: none; }
}

/* Fix #9: "Be the first to review" link */
.woocommerce-review-link--empty {
	font-size: 13px;
	color: #0369A1;
	text-decoration: underline;
}

/* Fix #11: trust badge strip */
.trust-strip {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 24px;
	margin: 20px 0 0;
}
.trust-item {
	display: flex;
	align-items: center;
	gap: 7px;
	font-size: 14px;
	font-weight: 600;
	color: #030D4E;
}
.trust-item svg { flex-shrink: 0; }

/* Fix #5: respect prefers-reduced-motion system setting */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
	}
}

/* Fix #10: Healthcare typography — Lexend headings, Source Sans 3 body */
.banrtext h1,
.head h2,
#featuredcatry .head h2,
.blogsect h3,
.nesd h2,
.fotrhed h1,
.footrlink h1,
.wd-text-block.text-center h2,
.liner-continer h2 {
	font-family: "Lexend", sans-serif;
}

/* Fix #11: Blog and Customer Reviews section headings — match other homepage section headings */
.wd-text-block.text-center h2,
.liner-continer h2.woodmart-title-container {
	font-size: 40px !important;
	font-weight: 700;
	line-height: 1.2;
}

@media (max-width: 1024px) {
	.wd-text-block.text-center h2,
	.liner-continer h2.woodmart-title-container {
		font-size: 32px !important;
	}
}

@media (max-width: 767px) {
	.wd-text-block.text-center h2,
	.liner-continer h2.woodmart-title-container {
		font-size: 26px !important;
	}
}

/* Fix #12: Customer Reviews — dark navy strip with white floating cards (matches Featured Products) */
.elementor-element-6b68e451 {
	background-color: #030D4E !important;
	padding: 60px 0 !important;
	/* Break out of the .container max-width to span full viewport */
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	margin-bottom: 0 !important;
	--margin-bottom: 0px !important;
	box-sizing: border-box !important;
}

.elementor-element-6b68e451 .liner-continer h2 {
	color: #ffffff !important;
}

.elementor-element-6b68e451 .wd-testimon {
	background: #ffffff !important;
	border-radius: 16px !important;
	padding: 32px 28px !important;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18) !important;
	margin: 8px !important;
}

.elementor-element-6b68e451 .wd-testimon-name {
	color: #030D4E !important;
}

.elementor-element-6b68e451 .wd-testimon-text p,
.elementor-element-6b68e451 .testimonial-content p {
	color: #333333 !important;
}

.elementor-element-6b68e451 .wd-btn-arrow .wd-arrow-inner {
	background: #ffffff !important;
	color: #030D4E !important;
}

.elementor-element-6b68e451 .wd-nav-pagin-item {
	background: rgba(255, 255, 255, 0.4) !important;
}

.elementor-element-6b68e451 .wd-nav-pagin-item.wd-active {
	background: #ffffff !important;
}

/* Fix #5: Accessibility — keyboard focus states */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
	outline: 3px solid #030D4E;
	outline-offset: 2px;
}

/* =============================================================================
   BLOG POST — AUTHOR BOX
   ============================================================================= */

.om-author-box {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	margin-top: 56px;
	padding: 28px 30px;
	border-top: 3px solid #030D4E;
	background: #f7f8fc;
	border-radius: 12px;
}

.om-author-box__avatar {
	flex-shrink: 0;
}

.om-author-box__img {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	object-fit: cover;
	border: 3px solid #fff;
	box-shadow: 0 2px 10px rgba(3,13,78,0.12);
	background: #dde1f0;
	display: block;
}

/* Show a grey circle when src is empty */
.om-author-box__img[src=""] {
	background: linear-gradient(135deg, #c8cee8 0%, #dde1f0 100%);
}

.om-author-box__info {
	flex: 1;
}

.om-author-box__label {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #999;
	margin: 0 0 4px;
}

.om-author-box__name {
	font-size: 18px;
	font-weight: 700;
	color: #030D4E;
	margin: 0 0 2px;
}

.om-author-box__credentials {
	font-size: 13px;
	color: #666;
	font-style: italic;
	margin: 0 0 10px;
}

.om-author-box__bio {
	font-size: 14px;
	color: #555;
	line-height: 1.6;
	margin: 0;
}

/* Placeholder state — shown when name/bio are comments */
.om-author-box__name:empty,
.om-author-box__bio:empty {
	display: none;
}

@media (max-width: 560px) {
	.om-author-box {
		flex-direction: column;
		align-items: center;
		text-align: center;
		padding: 24px 20px;
	}
	.om-author-box__label {
		display: block;
	}
}

/* Blog post disclaimer */
.om-disclaimer {
	font-size: 13px;
	color: #888;
	border-left: 3px solid #e0e0e0;
	padding-left: 12px;
	margin-top: 32px;
	font-style: italic;
}

/* =============================================================================
   BLOGS CATEGORY HUB  [blogs_category_hub]
   ============================================================================= */

/* Page wrapper */
.om-blog-hub {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px 60px;
}

/* ── Filter tab bar ── */
.om-blog-hub__filter-bar {
	display: flex;
	flex-wrap: nowrap;
	gap: 8px;
	overflow-x: auto;
	padding: 20px 0 24px;
	scrollbar-width: none;
	-ms-overflow-style: none;
	position: sticky;
	top: 0;
	background: #fff;
	z-index: 10;
	border-bottom: 1px solid #eee;
	margin-bottom: 48px;
}
.om-blog-hub__filter-bar::-webkit-scrollbar { display: none; }

.om-filter-tab {
	flex-shrink: 0;
	padding: 8px 18px;
	border: 1.5px solid #ddd;
	border-radius: 50px;
	background: #fff;
	color: #444;
	font-size: 13px;
	font-weight: 500;
	cursor: pointer;
	transition: background 0.2s, color 0.2s, border-color 0.2s;
	white-space: nowrap;
}
.om-filter-tab:hover {
	border-color: #030D4E;
	color: #030D4E;
}
.om-filter-tab--active {
	background: #030D4E;
	border-color: #030D4E;
	color: #fff;
}

/* ── Section header ── */
.om-blog-hub__section {
	margin-bottom: 64px;
}
.om-blog-hub__section-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	margin-bottom: 24px;
	border-left: 4px solid #030D4E;
	padding-left: 14px;
}
.om-blog-hub__cat-title {
	font-size: 22px;
	font-weight: 700;
	color: #030D4E;
	margin: 0;
}
.om-blog-hub__view-all {
	font-size: 13px;
	font-weight: 600;
	color: #030D4E;
	text-decoration: none;
	white-space: nowrap;
	transition: opacity 0.2s;
}
.om-blog-hub__view-all:hover { opacity: 0.7; }

/* ── Grid layouts ── */
.om-blog-hub__grid--featured-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-template-rows: auto auto;
	gap: 24px;
}
/* Featured card spans 2 rows in a 4-col layout */
.om-blog-hub__grid--featured-grid .om-blog-card--featured {
	grid-column: 1;
	grid-row: 1 / span 2;
}

.om-blog-hub__grid--equal-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
}

/* ── Blog card ── */
.om-blog-card {
	background: #fff;
	border: 1px solid #eee;
	border-radius: 12px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	transition: box-shadow 0.2s, transform 0.2s;
}
.om-blog-card:hover {
	box-shadow: 0 8px 28px rgba(3,13,78,0.10);
	transform: translateY(-2px);
}

/* Image wrapper */
.om-blog-card__img-wrap {
	display: block;
	overflow: hidden;
	background: #f4f6fb;
}
.om-blog-card__img {
	width: 100%;
	height: 200px;
	object-fit: cover;
	display: block;
	transition: transform 0.3s;
}
.om-blog-card--featured .om-blog-card__img {
	height: 100%;
	min-height: 260px;
}
.om-blog-card:hover .om-blog-card__img { transform: scale(1.04); }

.om-blog-card__img-placeholder {
	width: 100%;
	height: 200px;
	background: linear-gradient(135deg, #e8ecf8 0%, #f4f6fb 100%);
}

/* Card body */
.om-blog-card__body {
	padding: 18px 20px 20px;
	display: flex;
	flex-direction: column;
	flex: 1;
}

/* Category pill */
.om-blog-card__cat {
	display: inline-block;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #030D4E;
	background: #eef0f8;
	border-radius: 4px;
	padding: 3px 8px;
	margin-bottom: 10px;
	text-decoration: none;
	align-self: flex-start;
	transition: background 0.2s;
}
.om-blog-card__cat:hover { background: #d6daf0; }

/* Title */
.om-blog-card__title {
	font-size: 16px;
	font-weight: 700;
	color: #111;
	line-height: 1.4;
	margin: 0 0 10px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.om-blog-card--featured .om-blog-card__title {
	font-size: 20px;
	-webkit-line-clamp: 3;
}
.om-blog-card__title a {
	color: inherit;
	text-decoration: none;
}
.om-blog-card__title a:hover { color: #030D4E; }

/* Excerpt */
.om-blog-card__excerpt {
	font-size: 14px;
	color: #666;
	line-height: 1.6;
	margin: 0 0 14px;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	flex: 1;
}

/* Meta row */
.om-blog-card__meta {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	color: #999;
	margin-top: auto;
}
.om-blog-card__meta time { color: #777; }
.om-blog-card__meta-sep { color: #ccc; }

/* ── Empty states ── */
.om-blog-hub__empty,
.om-blog-hub__empty-cat {
	padding: 24px;
	background: #f9f9fb;
	border-radius: 8px;
	color: #888;
	font-size: 14px;
}

/* ── Responsive ── */
@media (max-width: 1024px) {
	.om-blog-hub__grid--featured-grid,
	.om-blog-hub__grid--equal-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.om-blog-hub__grid--featured-grid .om-blog-card--featured {
		grid-column: 1 / span 2;
		grid-row: auto;
	}
	.om-blog-hub__grid--featured-grid .om-blog-card--featured .om-blog-card__img {
		height: 240px;
		min-height: unset;
	}
}

@media (max-width: 640px) {
	.om-blog-hub__grid--featured-grid,
	.om-blog-hub__grid--equal-grid {
		grid-template-columns: 1fr;
	}
	.om-blog-hub__grid--featured-grid .om-blog-card--featured {
		grid-column: 1;
	}
	.om-blog-hub__section-head {
		flex-wrap: wrap;
		gap: 8px;
	}
	.om-blog-hub__cat-title { font-size: 18px; }
}

/* =============================================================================
   Phase 2: Cart shipping message strip
   ============================================================================= */
.onlinemeds-shipping-strip {
    background: #f0f8f0;
    border: 1px solid #c8e6c9;
    border-radius: 4px;
    padding: 10px 16px;
    margin-bottom: 20px;
    font-size: 14px;
    line-height: 1.5;
}
.onlinemeds-shipping-strip a {
    color: #2e7d32;
    text-decoration: underline;
}

/* =============================================================================
   Phase 2: Cart payment icons strip
   ============================================================================= */
.onlinemeds-payment-strip td {
    padding-top: 12px !important;
    border-top: 1px solid #eee;
}
.payment-strip-label {
    font-size: 12px;
    color: #777;
    margin-bottom: 6px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.payment-strip-icons {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}
.payment-icon {
    display: inline-block;
    padding: 3px 8px;
    border: 1px solid #ddd;
    border-radius: 3px;
    font-size: 12px;
    font-weight: 600;
    background: #fff;
}
.payment-visa { color: #1a1f71; }
.payment-mastercard { color: #eb001b; }
.payment-amex { color: #007bc1; }
.payment-bank { color: #444; }
.payment-secure {
    font-size: 12px;
    color: #2e7d32;
    margin-left: 4px;
}

/* Fix #13: The OnlineMeds Promise — homepage trust section below reviews */
.om-promise {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 72px 20px;
	background: linear-gradient(180deg, #030D4E 0%, #030D4E 40%, #F7F7FB 100%);
	box-sizing: border-box;
}

.om-promise__inner {
	max-width: 1200px;
	margin: 0 auto;
}

.om-promise h2.om-promise__title {
	font-family: "Lexend", sans-serif !important;
	font-size: 40px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	color: #ffffff !important;
	text-align: center;
	margin: 0;
}

.om-promise__subtitle {
	font-family: "Source Sans 3", sans-serif;
	font-size: 16px;
	font-weight: 400;
	color: rgba(255, 255, 255, 0.82);
	text-align: center;
	margin: 8px 0 40px;
}

.om-promise__grid {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
}

@media (max-width: 1024px) {
	.om-promise { padding: 48px 20px; }
	.om-promise h2.om-promise__title { font-size: 32px !important; }
	.om-promise__subtitle { margin-bottom: 32px; }
	.om-promise__grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }
}

@media (max-width: 767px) {
	.om-promise { padding: 40px 16px; }
	.om-promise h2.om-promise__title { font-size: 26px !important; }
	.om-promise__subtitle { margin-bottom: 24px; }
	.om-promise__grid { grid-template-columns: 1fr; gap: 16px; }
}

.om-promise__card {
	background: #ffffff;
	border-radius: 16px;
	box-shadow: 0 8px 24px rgba(3, 13, 78, 0.12);
	padding: 32px 24px;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.om-promise__icon {
	width: 56px;
	height: 56px;
	border-radius: 12px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.om-promise__icon svg {
	width: 28px;
	height: 28px;
	display: block;
}

.om-promise__icon--support { background: #E6F0FF; color: #0369A1; }
.om-promise__icon--shipping { background: #E6F7EE; color: #0B8A4A; }
.om-promise__icon--delivery { background: #FFF4E0; color: #D97706; }
.om-promise__icon--price { background: #EEE8FF; color: #6B46C1; }

.om-promise h3.om-promise__card-title {
	font-family: "Lexend", sans-serif !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	color: #030D4E !important;
	margin: 16px 0 0;
}

.om-promise__card-desc {
	font-family: "Source Sans 3", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	color: #4B5563;
	margin: 6px 0 0;
}

/* ──────────────────────────────────────────────────────────────
   Homepage tuning — Apr 2026 (items 5, 6, 7)
   ────────────────────────────────────────────────────────────── */

/* Item 5: Top bar — boost phone/email contrast against dark navy */
.elementor-location-header .elementor-element-5ad4024 .elementor-icon-list-text {
	color: #ffffff !important;
	font-weight: 500 !important;
}
.elementor-location-header .elementor-element-5ad4024 .elementor-icon-list-icon svg,
.elementor-location-header .elementor-element-5ad4024 .elementor-icon-list-icon {
	fill: #ffffff !important;
	color: #ffffff !important;
}

/* Item 6: Login / Register — ghost style, de-emphasized vs hero CTA */
.elementor-location-header .elementor-element-3cf88e55 .elementor-button {
	background: #E8753A !important;
	background-color: #E8753A !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 6px !important;
	padding: 9px 22px !important;
	font-weight: 700 !important;
	font-size: 13px !important;
	transition: background 200ms ease-out !important;
}
.elementor-location-header .elementor-element-3cf88e55 .elementor-button:hover {
	background: #d4652e !important;
	background-color: #d4652e !important;
	color: #ffffff !important;
}
.elementor-location-header .elementor-element-3cf88e55 .elementor-button-text {
	color: #ffffff !important;
}

/* Item 6b: Browse Medicines — white outline ghost button (on dark header) */
.elementor-location-header .elementor-element-a8caa47 .elementor-button {
	background: transparent !important;
	background-color: transparent !important;
	color: #ffffff !important;
	border: 2px solid rgba(255,255,255,0.75) !important;
	border-radius: 6px !important;
	padding: 7px 18px !important;
	font-weight: 600 !important;
	font-size: 13px !important;
	transition: background 200ms ease-out, border-color 200ms ease-out !important;
}
.elementor-location-header .elementor-element-a8caa47 .elementor-button:hover {
	background: rgba(255,255,255,0.15) !important;
	background-color: rgba(255,255,255,0.15) !important;
	border-color: #ffffff !important;
	color: #ffffff !important;
}
.elementor-location-header .elementor-element-a8caa47 .elementor-button-text {
	color: #ffffff !important;
}
/* Hide Browse Medicines on mobile — hamburger nav covers it */
@media (max-width: 767px) {
	.elementor-location-header .elementor-element-a8caa47 {
		display: none !important;
	}
}

/* Item 7: Section heading rhythm — tighter h2, more prominent eyebrow */
#ourcatgry .head h2,
#categrysection .head h2,
#featuredcatry .head h2,
#blogsection .head h2 {
	font-size: 36px !important;
	line-height: 1.2 !important;
	letter-spacing: -0.01em;
}
#ourcatgry .head p,
#categrysection .head p,
#featuredcatry .head p,
#blogsection .head p {
	font-size: 13px !important;
	font-weight: 600 !important;
	letter-spacing: 3px !important;
	color: #15803D !important;
}
#featuredcatry .head p {
	color: #86efac !important;
}
@media (max-width: 767px) {
	#ourcatgry .head h2,
	#categrysection .head h2,
	#featuredcatry .head h2,
	#blogsection .head h2 {
		font-size: 26px !important;
	}
}

/* ==========================================================================
   Responsive polish (Apr 2026) — targeted fixes for 320 / 425 / 768 viewports.
   Base layout is already responsive (Woodmart + Elementor); these rules address
   issues found in live audit: cramped hero, sub-44px tap targets, TOC widget
   horizontal scroll, top-bar contact-strip wrapping.
   ========================================================================== */

/* Hero — fluid headline on mobile only; desktop size is controlled by Elementor. */
@media (max-width: 767px) {
	.banrtext h1 {
		font-size: clamp(22px, 7vw, 32px);
		line-height: 1.2;
	}
}

/* Hero search form — tighten on mobile only; keep desktop layout unchanged. */
@media (max-width: 767px) {
	.formserch form {
		gap: 8px;
	}
	.formserch .form-control,
	.formserch .btn {
		width: 100%;
		min-height: 44px;
	}
}

/* Hero CTA buttons — equal width and stacked on small mobile. */
@media (max-width: 480px) {
	.hero-ctas {
		display: flex;
		flex-direction: column;
		gap: 10px;
	}
	.hero-ctas .btn,
	.hero-ctas a.btn {
		width: 100%;
	}
}

/* Trust strip in hero — wrap nicely on small viewports. */
@media (max-width: 480px) {
	.trust-strip {
		gap: 8px 14px;
	}
	.trust-item {
		font-size: 12.5px;
	}
}

/* Header top contact row (phone / email / login) — allow wrap and center
   on small viewports so items don't overflow horizontally. */
@media (max-width: 767px) {
	.elementor-location-header .elementor-element-7889f1c9 {
		flex-wrap: wrap;
		justify-content: center;
		row-gap: 4px;
		column-gap: 12px;
	}
	.elementor-location-header .elementor-element-7889f1c9 .elementor-icon-list-text,
	.elementor-location-header .elementor-element-7889f1c9 .elementor-button-text {
		font-size: 12px;
	}
}

/* Tap-target compliance (WCAG 2.5.5) — ensure interactive elements are
   at least 44px tall on touch viewports. Scoped to .btn and .elementor-button
   only; .button and .wc-backward are theme/plugin-owned and apply site-wide. */
@media (max-width: 767px) {
	.btn,
	.elementor-button,
	.cookies-accept-btn {
		min-height: 44px !important;
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}
	.elementor-button.elementor-size-sm {
		min-width: 44px !important;
	}
	/* cookies-close-btn size is owned by the inline <style> in functions.php */
}

/* Elementor Table-of-Contents widget on product pages — its default
   horizontal scroll forces an internal scrollbar at 320/425. Wrap items
   instead. */
@media (max-width: 767px) {
	.elementor-toc__list-wrapper {
		overflow-x: visible !important;
		white-space: normal !important;
		flex-wrap: wrap;
	}
	.elementor-toc__list-item,
	.elementor-toc__list-item a {
		white-space: normal !important;
	}
}

/* Product page tab strip (Highlights / Composition / etc.) — wrap pills
   instead of horizontal scroll on small viewports. */
@media (max-width: 767px) {
	.term-description-tabs .tabs-menu,
	.product-tabs-wrapper .tabs-menu,
	.tabs-menu-outer {
		flex-wrap: wrap;
		overflow-x: visible;
	}
	.term-description-tabs .tabs-menu li a {
		padding: 8px 12px;
		font-size: 12.5px;
	}
}

/* ==========================================================================
   OM Design System — missing tokens
   ========================================================================== */
:root {
  --om-ink:         #000000;
  --om-ink-2:       #333333;
  --om-ink-3:       #727586;
  --om-ink-mute:    #958B8B;
  --om-line-2:      #cccccc;
  --om-success:     #15803D;
  --om-success-bg:  #F0FDF4;
  --om-danger:      #DC2626;
  --om-warning:     #F8A01C;

  /* Type scale */
  --om-fs-12: 12px;
  --om-fs-13: 13px;
  --om-fs-14: 14px;
  --om-fs-15: 15px;
  --om-fs-16: 16px;
  --om-fs-18: 18px;
  --om-fs-20: 20px;
  --om-fs-22: 22px;
  --om-fs-32: 32px;
  --om-fw-regular: 400;
  --om-fw-medium:  500;
  --om-fw-semi:    600;
  --om-fw-bold:    700;
  --om-fw-x:       800;
  --om-lh-tight:   1.15;
  --om-lh-snug:    1.3;
  --om-lh-base:    1.5;
  --om-lh-loose:   1.7;

  /* Radii */
  --om-r-sm:     5px;
  --om-r-md:     10px;
  --om-r-lg:     12px;
  --om-r-xl:     20px;
  --om-r-pill:   50px;
  --om-r-circle: 9999px;

  /* Spacing */
  --om-sp-1:  4px;
  --om-sp-2:  8px;
  --om-sp-3:  10px;
  --om-sp-4:  12px;
  --om-sp-5:  15px;
  --om-sp-6:  20px;
  --om-sp-7:  25px;
  --om-sp-8:  32px;
  --om-sp-10: 40px;
  --om-sp-12: 50px;
  --om-sp-16: 65px;

  /* Shadows */
  --om-shadow-1: 0 1px 1px rgba(0,0,0,.10);
  --om-shadow-2: 0 0 3px rgba(0,0,0,.10);
  --om-shadow-4: 0 4px 8px rgba(0,0,0,.10);
  --om-focus:    0 0 0 2px #fff, 0 0 0 4px var(--om-blue);
}

/* ==========================================================================
   Hide legacy Woodmart / Elementor header templates
   Our custom header is <header class="om-hdr"> — these are the old ones
   that still render via wp_body_open hooks.
   ========================================================================== */
.whb-header,
.elementor-location-header { display: none !important; }

/* ==========================================================================
   Promo bar
   ========================================================================== */
.om-promo {
  background: var(--om-navy);
  color: #fff;
  font-size: 13px;
  text-align: center;
  padding: 8px 16px;
  letter-spacing: .02em;
  font-family: var(--om-font-sans);
}
.om-promo b { color: var(--om-yellow); font-weight: 700; }

/* ==========================================================================
   Site header (sticky)
   ========================================================================== */
.om-hdr {
  position: sticky;
  top: 0;
  z-index: 9999;
  background: #fff;
  border-bottom: 1px solid var(--om-line);
  font-family: var(--om-font-sans);
}

/* Utility row */
.om-hdr-row {
  max-width: 1320px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 12px 50px;
}

/* Brand lockup */
.om-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  flex-shrink: 0;
  color: var(--om-navy);
}
.om-brand img {
  width: 36px;
  height: 36px;
  display: block;
  flex-shrink: 0;
}
.om-brand .om-wordmark { font-size: 22px; }

/* Search pill */
.om-search {
  flex: 1;
  max-width: 560px;
}
.om-search form {
  display: flex;
  align-items: center;
  border: 1px solid var(--om-line);
  border-radius: 50px;
  overflow: hidden;
  background: #fff;
}
.om-search form input[type="search"] {
  flex: 1;
  border: none;
  height: 42px;
  padding: 0 18px;
  font-size: 13px;
  outline: none;
  color: var(--om-ink);
  background: transparent;
  font-family: var(--om-font-sans);
  -webkit-appearance: none;
  appearance: none;
}
.om-search form input[type="search"]::placeholder { color: #bbb; }
.om-search form input[type="hidden"] { display: none; }
.om-search form button {
  background: var(--om-blue);
  color: #fff;
  border: none;
  height: 42px;
  padding: 0 26px;
  border-radius: 50px;
  font-weight: 600;
  font-size: 14px;
  cursor: pointer;
  font-family: var(--om-font-sans);
  white-space: nowrap;
  flex-shrink: 0;
}
.om-search form button:hover { background: var(--om-blue-hover); }

/* Header tools (Account, Cart) */
.om-hdr-tools {
  display: flex;
  align-items: center;
  gap: 18px;
  flex-shrink: 0;
}
.om-tool {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 10px;
  border-radius: 8px;
  cursor: pointer;
  font-size: 13px;
  font-weight: 600;
  color: var(--om-navy);
  text-decoration: none;
  transition: background .2s;
  font-family: var(--om-font-sans);
}
.om-tool:hover { background: var(--om-success-bg); color: var(--om-navy); }
.om-cart-pill {
  background: var(--om-navy);
  color: #fff;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
}

/* Primary nav */
.om-nav {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 50px;
}
.om-nav .om-nav-list {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 0;
}
.om-nav .om-nav-list > li { display: block; }
.om-nav .om-nav-list > li > a {
  display: block;
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  padding: 14px 14px;
  color: var(--om-navy);
  border-bottom: 2px solid transparent;
  cursor: pointer;
  transition: color .2s, border-color .2s;
  text-decoration: none;
  font-family: var(--om-font-sans);
  white-space: nowrap;
}
.om-nav .om-nav-list > li > a:hover,
.om-nav .om-nav-list > li.current-menu-item > a,
.om-nav .om-nav-list > li.current-menu-ancestor > a,
.om-nav .om-nav-list > li.current_page_item > a {
  border-bottom-color: var(--om-blue);
  color: var(--om-blue);
}

/* Nav dropdowns */
.om-nav .om-nav-list > li { position: relative; }
.om-nav .om-nav-list > li > ul {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 200px;
  background: #fff;
  border: 1px solid var(--om-line);
  border-top: 2px solid var(--om-blue);
  border-radius: 0 0 8px 8px;
  padding: 8px 0;
  z-index: 10000;
  box-shadow: 0 4px 12px rgba(0,0,0,.1);
  list-style: none;
  margin: 0;
}
.om-nav .om-nav-list > li:hover > ul { display: block; }
.om-nav .om-nav-list > li > ul > li > a {
  display: block;
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 500;
  color: var(--om-navy);
  text-transform: none;
  border-bottom: none;
  white-space: nowrap;
  transition: color .2s, background .2s;
}
.om-nav .om-nav-list > li > ul > li > a:hover {
  color: var(--om-blue);
  background: var(--om-success-bg);
}

/* ==========================================================================
   Site footer
   ========================================================================== */
.om-ft {
  background: var(--om-navy);
  color: #fff;
  padding: 56px 50px 28px;
  font-family: var(--om-font-sans);
}
.om-ft-inner {
  max-width: 1320px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap: 36px;
}

/* Footer brand block */
.om-ft-brand .om-footer-logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  margin-bottom: 0;
}
.om-ft-brand .om-footer-logo img {
  width: 36px;
  height: 36px;
  background: #fff;
  padding: 4px;
  border-radius: 10px;
  flex-shrink: 0;
}
.om-ft-brand .om-wordmark { font-size: 22px; color: #fff; }
.om-ft-brand .om-wordmark.is-reversed { color: #fff; }
.om-ft-brand p {
  color: rgba(255,255,255,.7);
  font-size: 14px;
  line-height: 1.6;
  margin: 12px 0 18px;
  max-width: 320px;
}

/* Subscribe input */
.om-subscribe form {
  display: flex;
  align-items: center;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 50px;
  padding: 4px 4px 4px 16px;
  max-width: 320px;
  background: rgba(255,255,255,.05);
}
.om-subscribe form input[type="email"] {
  flex: 1;
  background: transparent;
  border: none;
  color: #fff;
  height: 38px;
  font-size: 13px;
  outline: none;
  font-family: var(--om-font-sans);
  min-width: 0;
}
.om-subscribe form input[type="email"]::placeholder { color: rgba(255,255,255,.5); }
.om-subscribe form button {
  background: var(--om-blue);
  color: #fff;
  border: none;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  font-size: 16px;
  cursor: pointer;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.om-subscribe form button:hover { background: var(--om-blue-hover); }

/* Footer link columns */
.om-ft-col h4 {
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: .08em;
  margin: 0 0 14px;
  color: #fff;
  font-weight: 700;
}
.om-ft-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.om-ft-col a {
  color: rgba(255,255,255,.75);
  font-size: 14px;
  text-decoration: none;
  transition: color .2s;
}
.om-ft-col a:hover { color: var(--om-yellow); }

/* Legal bar */
.om-legal {
  max-width: 1320px;
  margin: 30px auto 0;
  padding-top: 22px;
  border-top: 1px solid rgba(255,255,255,.12);
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 12px;
  color: rgba(255,255,255,.55);
  gap: 24px;
}
.om-legal small { font-style: italic; }

/* ==========================================================================
   Responsive — ≤ 992px
   ========================================================================== */
@media (max-width: 992px) {
  .om-hdr-row,
  .om-nav,
  .om-ft { padding-left: 20px; padding-right: 20px; }
  .om-ft-inner { grid-template-columns: 1fr 1fr; }
  .om-legal { flex-direction: column; align-items: flex-start; }
}

/* ==========================================================================
   Responsive — ≤ 767px (mobile)
   ========================================================================== */

/* Hamburger hidden on desktop */
.om-hdr-burger { display: none; }

@media (max-width: 767px) {
  /* Compact header row: logo + tools + burger only */
  .om-hdr-row { padding: 10px 16px; gap: 8px; }

  /* Hide desktop search pill */
  .om-search { display: none; }

  /* Make tool labels invisible on narrow screens to save space */
  .om-tool-label { display: none; }
  .om-tool { gap: 0; padding: 8px; font-size: 20px; }

  /* Hamburger button */
  .om-hdr-burger {
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: 1px solid var(--om-line);
    border-radius: 8px;
    cursor: pointer;
    padding: 6px 10px;
    color: var(--om-navy);
    font-size: 22px;
    flex-shrink: 0;
    margin-left: auto;
    transition: background .2s;
  }
  .om-hdr-burger:hover { background: var(--om-success-bg); }

  /* Mobile nav: hidden until burger toggled */
  .om-nav {
    display: none;
    border-top: 1px solid var(--om-line);
    background: #fff;
    padding: 0 16px 8px;
  }
  .om-nav.is-open { display: block; }
  .om-nav .om-nav-list {
    flex-direction: column;
    gap: 0;
    padding: 0;
  }
  .om-nav .om-nav-list > li > a {
    padding: 13px 0;
    border-bottom: 1px solid var(--om-line);
    white-space: normal;
    font-size: 14px;
  }
  .om-nav .om-nav-list > li:last-child > a { border-bottom: none; }

  /* Hide dropdowns on mobile — explicit specificity beats the :hover rule */
  .om-nav .om-nav-list > li > ul,
  .om-nav .om-nav-list > li:hover > ul { display: none; }

  /* Footer: single column */
  .om-ft { padding: 36px 16px 24px; }
  .om-ft-inner { grid-template-columns: 1fr; gap: 28px; }
  .om-ft-brand p { max-width: 100%; }
  .om-subscribe form { max-width: 100%; }
  .om-legal { flex-direction: column; align-items: flex-start; gap: 6px; }
}


/* ==========================================================================
   Category Page V1 — Component Styles
   ========================================================================== */

/* ── Shared container ─────────────────────────────────────────────────────── */
.om-cat-wrap {
  max-width: 1320px;
  margin: 0 auto;
  padding-left: var(--om-sp-12);
  padding-right: var(--om-sp-12);
}

/* ── Category intro band ──────────────────────────────────────────────────── */
.om-cat-intro {
  background: var(--om-bg);
  border-bottom: 1px solid var(--om-line);
  padding: var(--om-sp-7) 0 var(--om-sp-6);
}
.om-cat-intro-inner {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: var(--om-sp-8);
  align-items: center;
}
.om-cat-intro h1 {
  font-family: var(--om-font-sans);
  font-size: var(--om-fs-32);
  font-weight: var(--om-fw-x);
  color: var(--om-navy);
  letter-spacing: -0.01em;
  line-height: 1.1;
  margin: 0 0 var(--om-sp-2) 0;
}
.om-cat-intro-desc {
  font-size: var(--om-fs-14);
  color: var(--om-ink-2);
  line-height: 1.6;
  max-width: 60ch;
  margin: 0;
}
.om-cat-kpi {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--om-sp-4);
}
.om-cat-kpi-card {
  background: var(--om-surface);
  border: 1px solid var(--om-line);
  border-radius: var(--om-r-lg);
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  gap: var(--om-sp-1);
}
.om-cat-kpi-value {
  font-family: var(--om-font-sans);
  font-size: var(--om-fs-20);
  font-weight: var(--om-fw-x);
  color: var(--om-navy);
  line-height: 1.2;
}
.om-cat-kpi-label {
  font-size: var(--om-fs-12);
  color: var(--om-ink-3);
  line-height: var(--om-lh-base);
}

/* ── Two-column layout ────────────────────────────────────────────────────── */
.om-cat-layout-wrap {
  padding-top: var(--om-sp-7);
  padding-bottom: var(--om-sp-16);
}
.om-cat-layout {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 28px;
  align-items: start;
}

/* ── Filter sidebar ───────────────────────────────────────────────────────── */
.om-cat-sidebar {
  position: sticky;
  top: 16px;
}
.om-cat-sidebar-card {
  background: var(--om-surface);
  border: 1px solid var(--om-line);
  border-radius: var(--om-r-xl);
  padding: 18px 18px 10px;
}
.om-cat-sidebar-title {
  font-family: var(--om-font-sans);
  font-size: var(--om-fs-12);
  font-weight: var(--om-fw-bold);
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--om-ink-3);
  margin: 0 0 var(--om-sp-4) 0;
}

/* Active chips row */
.om-cat-active-chips {
  display: flex;
  flex-wrap: wrap;
  gap: var(--om-sp-2);
  align-items: center;
  margin-bottom: var(--om-sp-5);
}
.om-cat-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: var(--om-bg);
  border: 1px solid var(--om-line);
  border-radius: var(--om-r-pill);
  padding: 4px 8px 4px 12px;
  font-family: var(--om-font-sans);
  font-size: var(--om-fs-12);
  font-weight: var(--om-fw-semi);
  color: var(--om-navy);
  text-decoration: none;
  white-space: nowrap;
}
.om-cat-chip-x {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border-radius: var(--om-r-circle);
  background: var(--om-line);
  font-size: 10px;
  color: var(--om-ink-3);
  cursor: pointer;
  text-decoration: none;
  line-height: 1;
}
.om-cat-chip-x:hover { background: var(--om-navy); color: #fff; }
.om-cat-clear-all {
  font-size: var(--om-fs-12);
  font-weight: var(--om-fw-semi);
  color: var(--om-blue);
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
  text-decoration: none;
}
.om-cat-clear-all:hover { text-decoration: underline; }

/* Facet groups */
.om-cat-facet {
  border-top: 1px solid var(--om-line);
  padding: 14px 0 12px;
}
.om-cat-facet:first-child { border-top: none; }
/* ── Blanket Woodmart button reset inside the sidebar card ───────────────── */
/* Woodmart sets border, border-radius, background, padding on all buttons.
   Reset every button inside our sidebar card first, then re-style individually. */
.om-cat-sidebar-card button,
.om-cat-sidebar-card button:hover,
.om-cat-sidebar-card button:focus,
.om-cat-sidebar-card button:active {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  padding: 0 !important;
  margin: 0 !important;
  color: inherit !important;
  font-size: inherit !important;
  font-family: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  min-height: 0 !important;
  min-width: 0 !important;
}

/* Facet toggle button */
.om-cat-facet-hdr {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  cursor: pointer !important;
  user-select: none !important;
  width: 100% !important;
  text-align: left !important;
}
.om-cat-facet-hdr-left {
  display: flex;
  align-items: center;
  gap: 6px;
}
.om-cat-facet-title {
  font-family: var(--om-font-sans);
  font-size: 14px;
  font-weight: 700;
  color: var(--om-navy);
  letter-spacing: 0;
  text-transform: none;
}
.om-cat-facet-count {
  font-size: 13px;
  font-weight: 400;
  color: var(--om-ink-3);
}
.om-cat-facet-caret {
  width: 16px;
  height: 16px;
  color: var(--om-ink-3);
  transition: transform .2s;
  flex-shrink: 0;
}
.om-cat-facet.is-collapsed .om-cat-facet-caret { transform: rotate(-90deg); }
.om-cat-facet-body {
  margin-top: 12px;
  display: flex;
  flex-direction: column;
  gap: 0;
}
.om-cat-facet.is-collapsed .om-cat-facet-body { display: none; }

/* Checkbox option rows — custom styled to match design */
.om-cat-opt {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  padding: 5px 0;
  position: relative;
}
/* Hide native checkbox — use ::before on .om-cat-opt-label as the visual box */
.om-cat-sidebar-card .om-cat-opt input[type="checkbox"],
.om-cat-opt input[type="checkbox"] {
  position: absolute !important;
  opacity: 0 !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  pointer-events: none !important;
  margin: 0 !important;
}
/* Custom checkbox box */
.om-cat-opt-label {
  font-size: 14px;
  color: #4B5563;
  flex: 1;
  line-height: 1.4;
  display: flex;
  align-items: center;
  gap: 10px;
}
.om-cat-opt-label::before {
  content: '';
  display: inline-block;
  width: 18px;
  height: 18px;
  min-width: 18px;
  border: 1.5px solid #D1D5DB;
  border-radius: 4px;
  background: #fff;
  transition: background .15s, border-color .15s;
  box-sizing: border-box;
}
/* Checked state: fill with navy, white tick */
.om-cat-opt input:checked ~ .om-cat-opt-label::before {
  background: var(--om-navy);
  border-color: var(--om-navy);
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 8l3.5 3.5L13 4.5' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-size: 12px;
  background-repeat: no-repeat;
  background-position: center;
}
.om-cat-opt input:checked ~ .om-cat-opt-label {
  font-weight: 600;
  color: var(--om-navy);
}
.om-cat-opt-count {
  font-size: 13px;
  color: #9CA3AF;
  margin-left: auto;
  flex-shrink: 0;
}

/* Show more / show less link */
.om-cat-sidebar-card button.om-cat-show-more,
.om-cat-show-more {
  display: inline-block !important;
  margin-top: 8px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--om-blue) !important;
  cursor: pointer !important;
  text-decoration: none !important;
}
.om-cat-sidebar-card button.om-cat-show-more:hover,
.om-cat-show-more:hover { text-decoration: underline !important; }

/* Dosage chips (multi-select pill group) */
.om-cat-dose-group {
  display: flex;
  flex-wrap: wrap;
  gap: var(--om-sp-2);
  margin-top: var(--om-sp-4);
}
.om-cat-dose-chip {
  font-family: var(--om-font-sans);
  font-size: var(--om-fs-12);
  font-weight: var(--om-fw-semi);
  padding: 6px 12px;
  border: 1px solid var(--om-line);
  border-radius: var(--om-r-lg);
  background: var(--om-surface);
  color: var(--om-ink-2);
  cursor: pointer;
  transition: background .2s, color .2s, border-color .2s;
  text-decoration: none;
  white-space: nowrap;
}
.om-cat-dose-chip.is-active,
.om-cat-dose-chip:hover {
  background: var(--om-navy);
  color: #fff;
  border-color: var(--om-navy);
}

/* Price range slider */
.om-cat-range {
  margin-top: var(--om-sp-4);
}
.om-cat-range-track {
  position: relative;
  height: 4px;
  background: var(--om-line);
  border-radius: var(--om-r-pill);
  margin: 18px 0 8px;
}
.om-cat-range-fill {
  position: absolute;
  height: 100%;
  background: var(--om-blue);
  border-radius: var(--om-r-pill);
  pointer-events: none;
}
.om-cat-range input[type="range"] {
  position: absolute;
  top: -7px;
  width: 100%;
  appearance: none;
  -webkit-appearance: none;
  background: transparent;
  pointer-events: none;
  margin: 0;
}
.om-cat-range input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 18px;
  height: 18px;
  border-radius: var(--om-r-circle);
  background: var(--om-surface);
  border: 2px solid var(--om-blue);
  box-shadow: 0 1px 3px rgba(0,0,0,.15);
  cursor: grab;
  pointer-events: all;
}
.om-cat-range input[type="range"]::-moz-range-thumb {
  width: 18px;
  height: 18px;
  border-radius: var(--om-r-circle);
  background: var(--om-surface);
  border: 2px solid var(--om-blue);
  box-shadow: 0 1px 3px rgba(0,0,0,.15);
  cursor: grab;
  pointer-events: all;
}
.om-cat-range-vals {
  display: flex;
  justify-content: space-between;
  font-size: var(--om-fs-12);
  font-weight: var(--om-fw-semi);
  color: var(--om-ink-2);
  margin-top: var(--om-sp-2);
}
.om-cat-range-form { display: flex; justify-content: flex-end; margin-top: 8px; }
.om-cat-sidebar-card button.om-cat-range-apply,
.om-cat-range-apply {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--om-blue) !important;
  cursor: pointer !important;
  padding: 2px 4px !important;
  text-decoration: none !important;
}
.om-cat-sidebar-card button.om-cat-range-apply:hover,
.om-cat-range-apply:hover { text-decoration: underline !important; }

/* Availability toggles */
.om-cat-toggle-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 0;
}
.om-cat-toggle-label {
  font-size: var(--om-fs-13);
  color: var(--om-ink-2);
}
.om-cat-toggle {
  position: relative;
  width: 36px;
  height: 20px;
  flex-shrink: 0;
}
.om-cat-toggle input {
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
}
.om-cat-toggle-track {
  position: absolute;
  inset: 0;
  background: var(--om-line);
  border-radius: var(--om-r-pill);
  transition: background .2s;
  cursor: pointer;
}
.om-cat-toggle-thumb {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 16px;
  height: 16px;
  border-radius: var(--om-r-circle);
  background: #fff;
  transition: transform .2s;
  pointer-events: none;
  box-shadow: var(--om-shadow-1);
}
.om-cat-toggle input:checked ~ .om-cat-toggle-track { background: var(--om-success); }
.om-cat-toggle input:checked ~ .om-cat-toggle-thumb { transform: translateX(16px); }

/* ── Right column toolbar ─────────────────────────────────────────────────── */
.om-cat-main { min-width: 0; }
.om-cat-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: var(--om-surface);
  border: 1px solid var(--om-line);
  border-radius: var(--om-r-pill);
  padding: 8px 8px 8px 18px;
  margin-bottom: var(--om-sp-5);
}
.om-cat-toolbar-count {
  font-size: var(--om-fs-13);
  color: var(--om-ink-3);
}
.om-cat-toolbar-count strong { color: var(--om-navy); font-weight: var(--om-fw-bold); }
.om-cat-toolbar-right {
  display: flex;
  align-items: center;
  gap: var(--om-sp-2);
}
.om-cat-sort-wrap {
  position: relative;
}
.om-cat-sort-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: var(--om-bg);
  border: 1px solid var(--om-line);
  border-radius: var(--om-r-pill);
  padding: 6px 10px 6px 14px;
  font-family: var(--om-font-sans);
  font-size: var(--om-fs-13);
  font-weight: var(--om-fw-semi);
  color: var(--om-navy);
  cursor: pointer;
  transition: border-color .2s;
  white-space: nowrap;
}
.om-cat-sort-pill:hover { border-color: var(--om-blue); }
.om-cat-sort-select {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
  width: 100%;
}
/* WooCommerce ordering form — overlay the visual sort pill */
.om-cat-sort-wrap .woocommerce-ordering {
  position: absolute;
  inset: 0;
  margin: 0;
  padding: 0;
  pointer-events: none;
}
.om-cat-sort-wrap .woocommerce-ordering select.orderby {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
  border: none;
  background: transparent;
  pointer-events: all;
}

/* ── Product grid (inherits WooCommerce loop; style overrides) ────────────── */
.om-cat-main .products.columns-3 {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 16px !important;
}
.om-cat-main .products.columns-3 li.product {
  width: 100% !important;
  margin: 0 !important;
}

/* Product card design overrides */
.om-cat-main li.product .product-inner,
.om-cat-main li.product .wd-product-inner {
  border: 1px solid var(--om-line) !important;
  border-radius: var(--om-r-xl) !important;
  padding: 16px !important;
  background: var(--om-surface) !important;
  box-shadow: none !important;
  display: flex;
  flex-direction: column;
}

/* Molecule eyebrow on product card */
.om-mol-eyebrow {
  display: block;
  font-family: var(--om-font-sans);
  font-size: 11px;
  font-weight: var(--om-fw-semi);
  text-transform: uppercase;
  letter-spacing: .06em;
  color: var(--om-blue);
  margin: var(--om-sp-4) 0 4px;
}

/* Add to cart button style on category pages */
.om-cat-main .button.add_to_cart_button,
.om-cat-main .button.product_type_variable {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  background: var(--om-surface) !important;
  color: var(--om-navy) !important;
  border: 1px solid var(--om-blue) !important;
  border-radius: var(--om-r-lg) !important;
  font-family: var(--om-font-sans) !important;
  font-size: var(--om-fs-14) !important;
  font-weight: var(--om-fw-semi) !important;
  padding: 10px 16px !important;
  height: 40px !important;
  line-height: 1 !important;
  transition: background .2s, color .2s !important;
  margin-top: auto !important;
}
.om-cat-main .button.add_to_cart_button:hover,
.om-cat-main .button.product_type_variable:hover {
  background: var(--om-navy) !important;
  color: #fff !important;
  border-color: var(--om-navy) !important;
}

/* ── Pagination ───────────────────────────────────────────────────────────── */
.om-cat-main .woocommerce-pagination {
  margin-top: var(--om-sp-2);
  display: flex;
  justify-content: center;
}
.om-cat-main .woocommerce-pagination ul {
  display: flex;
  gap: 6px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.om-cat-main .woocommerce-pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 38px;
  padding: 0 14px;
  border: 1px solid var(--om-line);
  border-radius: var(--om-r-md);
  font-family: var(--om-font-sans);
  font-size: var(--om-fs-13);
  font-weight: var(--om-fw-semi);
  color: var(--om-navy);
  background: var(--om-surface);
  text-decoration: none;
  transition: border-color .2s, color .2s;
}
.om-cat-main .woocommerce-pagination .page-numbers:hover {
  border-color: var(--om-blue);
  color: var(--om-blue);
}
.om-cat-main .woocommerce-pagination .page-numbers.current {
  background: var(--om-navy);
  color: #fff;
  border-color: var(--om-navy);
}

/* ── Browse by molecule tiles ─────────────────────────────────────────────── */
.om-cat-molecules {
  padding: var(--om-sp-2) 0 var(--om-sp-12);
  border-top: 1px solid var(--om-line);
  margin-top: var(--om-sp-6);
}
.om-cat-molecules-inner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 var(--om-sp-12);
}
.om-cat-molecules h2 {
  font-family: var(--om-font-sans);
  font-size: var(--om-fs-20);
  font-weight: var(--om-fw-bold);
  color: var(--om-navy);
  margin: var(--om-sp-7) 0 var(--om-sp-4);
}
.om-cat-mol-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: var(--om-sp-4);
}
.om-cat-mol-tile {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: var(--om-surface);
  border: 1px solid var(--om-line);
  border-radius: var(--om-r-xl);
  padding: 14px 18px;
  text-decoration: none;
  transition: background .2s, color .2s, border-color .2s;
}
.om-cat-mol-tile:hover {
  background: var(--om-success);
  border-color: var(--om-success);
}
.om-cat-mol-tile-info { min-width: 0; }
.om-cat-mol-tile-name {
  display: block;
  font-family: var(--om-font-sans);
  font-size: var(--om-fs-14);
  font-weight: var(--om-fw-bold);
  color: var(--om-navy);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color .2s;
}
.om-cat-mol-tile:hover .om-cat-mol-tile-name { color: #fff; }
.om-cat-mol-tile-sub {
  display: block;
  font-size: 11px;
  font-weight: var(--om-fw-medium);
  color: var(--om-ink-3);
  margin-top: 2px;
  transition: color .2s;
}
.om-cat-mol-tile:hover .om-cat-mol-tile-sub { color: rgba(255,255,255,.75); }
.om-cat-mol-tile-chevron {
  color: var(--om-blue);
  flex-shrink: 0;
  margin-left: 8px;
  transition: color .2s, transform .2s;
}
.om-cat-mol-tile:hover .om-cat-mol-tile-chevron {
  color: #fff;
  transform: translateX(2px);
}

/* ── Empty state ──────────────────────────────────────────────────────────── */
.om-cat-empty {
  text-align: center;
  padding: var(--om-sp-12) var(--om-sp-6);
}
.om-cat-empty p {
  font-size: var(--om-fs-16);
  color: var(--om-ink-3);
  margin-bottom: var(--om-sp-5);
}
.om-cat-empty a {
  color: var(--om-blue);
  font-weight: var(--om-fw-semi);
}

/* ── Category page — responsive ───────────────────────────────────────────── */
@media (max-width: 992px) {
  .om-cat-wrap { padding-left: 20px; padding-right: 20px; }
  .om-cat-intro-inner { grid-template-columns: 1fr; }
  .om-cat-kpi { grid-template-columns: repeat(3, 1fr); }

  /* Sidebar becomes a collapsible drawer trigger */
  .om-cat-layout { grid-template-columns: 1fr; }
  .om-cat-sidebar { position: static; }
  .om-cat-sidebar-card { border-radius: var(--om-r-lg); }

  /* Filters toggle btn */
  .om-cat-filter-toggle-btn {
    display: flex !important;
    align-items: center;
    gap: 8px;
    background: var(--om-surface);
    border: 1px solid var(--om-line);
    border-radius: var(--om-r-pill);
    padding: 8px 16px;
    font-family: var(--om-font-sans);
    font-size: var(--om-fs-13);
    font-weight: var(--om-fw-semi);
    color: var(--om-navy);
    cursor: pointer;
    margin-bottom: var(--om-sp-4);
  }
  .om-cat-sidebar-card { display: none; }
  .om-cat-sidebar.is-open .om-cat-sidebar-card { display: block; }

  .om-cat-main .products.columns-3 {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  .om-cat-mol-grid { grid-template-columns: repeat(3, 1fr); }
  .om-cat-molecules-inner { padding: 0 20px; }
}

@media (max-width: 767px) {
  .om-cat-kpi { grid-template-columns: 1fr; gap: var(--om-sp-2); }
  .om-cat-main .products.columns-3 {
    grid-template-columns: 1fr !important;
  }
  .om-cat-mol-grid { grid-template-columns: repeat(2, 1fr); }
  .om-cat-toolbar { border-radius: var(--om-r-lg); padding: 8px 12px; }
  .om-cat-wrap { padding-left: 16px; padding-right: 16px; }
}

/* ── Product loop card — GENERIC/Rx badge + brand name ───────── */
.om-loop-card-meta {
  display: flex; align-items: center; gap: 6px;
  margin: 2px 0 4px;
}
.om-loop-badge {
  display: inline-block; font-size: 10px; font-weight: 700;
  letter-spacing: .06em; text-transform: uppercase;
  padding: 2px 7px; border-radius: 4px; line-height: 1.4;
  white-space: nowrap; flex-shrink: 0;
}
.om-loop-badge--generic { background: #e8f5e9; color: #2e7d32; }
.om-loop-badge--rx      { background: #e3f0ff; color: #0047ab; }
.om-loop-brand {
  font-size: 12px; color: #6b7280; white-space: nowrap;
  overflow: hidden; text-overflow: ellipsis;
}

/* ── Ask For Price button — prevent text truncation ──────────── */
.wd-add-btn-replace .ask-price-btn,
ul.products .ask-price-btn,
.products .ask-price-btn {
  white-space: nowrap;
  font-size: 12px !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
}

/* ── Free Consultation CTA strip ─────────────────────────────── */
.free-consult { padding: 24px 50px 0; background: #fff; }
.free-consult__inner {
  max-width: 1320px; margin: 0 auto;
  border-top: 1px solid var(--om-line);
  border-bottom: 1px solid var(--om-line);
  padding: 28px 4px;
  display: grid; grid-template-columns: auto 1fr auto;
  gap: 40px; align-items: center;
}
.free-consult__mark {
  width: 64px; height: 64px; border-radius: 18px; flex: none;
  background: linear-gradient(135deg, #F4F5FF, #E7E9F7);
  color: var(--om-navy); font-size: 28px;
  display: flex; align-items: center; justify-content: center;
  position: relative;
}
.free-consult__mark::after {
  content: ""; position: absolute; right: -4px; top: -4px;
  width: 14px; height: 14px; border-radius: 50%;
  background: var(--om-yellow); box-shadow: 0 0 0 4px #fff;
}
.free-consult__copy h2 {
  font-size: 24px; font-weight: 700; color: var(--om-navy);
  letter-spacing: -.005em; line-height: 1.25; margin: 0 0 4px;
}
.free-consult__copy h2 mark { background: none; color: var(--om-blue); }
.free-consult__copy p {
  font-size: 14px; line-height: 1.5; color: var(--om-ink-3); margin: 0;
}
.free-consult__actions { display: flex; align-items: center; gap: 18px; }
.free-consult__badge {
  font-size: 11px; font-weight: 700; letter-spacing: .14em;
  text-transform: uppercase; color: var(--om-success);
  background: var(--om-success-bg); padding: 6px 12px;
  border-radius: var(--om-r-pill);
}
.free-consult__cta {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 16px 28px; border-radius: var(--om-r-pill);
  border: 1px solid var(--om-navy); color: var(--om-navy);
  font-weight: 600; font-size: 14px; letter-spacing: .02em;
  background: transparent; white-space: nowrap;
  transition: background .2s ease-out, color .2s ease-out;
}
.free-consult__cta:hover { background: var(--om-navy); color: #fff; }
.free-consult__cta b { font-weight: 800; letter-spacing: .04em; }
@media (max-width: 900px) {
  .free-consult { padding: 20px 20px 0; }
  .free-consult__inner {
    grid-template-columns: 1fr; gap: 16px; padding: 24px 4px;
  }
  .free-consult__copy h2 { font-size: 20px; }
}


