/* AlphaLabs catalog and product-category redesign. */
body.woocommerce-shop,
body.tax-product_cat,
body.tax-product_tag,
body.tax-product_brand {
	background: #f8f5f6;
}

.alpx-catalog-hero,
.alpx-category-rail,
.alpx-catalog-page,
.alpx-category-information,
.alpx-filter-drawer,
.alpx-filter-backdrop {
	font-family: Inter, Arial, sans-serif;
}

.alpx-catalog-hero *,
.alpx-category-rail *,
.alpx-catalog-page *,
.alpx-category-information *,
.alpx-filter-drawer * { box-sizing: border-box; }

.alpx-catalog-hero {
	position: relative;
	overflow: hidden;
	background:
		radial-gradient(circle at 88% 25%, rgba(20, 141, 147, .17), transparent 28%),
		radial-gradient(circle at 74% 82%, rgba(239, 125, 33, .13), transparent 28%),
		linear-gradient(125deg, #fff 0%, #fff9f3 48%, #edf9f7 100%);
	border-bottom: 1px solid rgba(8, 45, 56, .08);
}

.alpx-catalog-hero::before,
.alpx-catalog-hero::after {
	content: "";
	position: absolute;
	border-radius: 50%;
	border: 1px solid rgba(20, 141, 147, .15);
	pointer-events: none;
}
.alpx-catalog-hero::before { width: 82px; height: 82px; right: 4%; top: 16%; box-shadow: -55px 48px 0 -22px rgba(239, 125, 33, .08); }
.alpx-catalog-hero::after { width: 22px; height: 22px; left: 5%; bottom: 14%; background: rgba(20, 141, 147, .08); }

.alpx-catalog-hero__inner {
	min-height: 440px;
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(380px, .95fr);
	align-items: center;
	gap: clamp(35px, 6vw, 90px);
	padding-block: clamp(66px, 7vw, 108px);
}

.alpx-catalog-hero__content { position: relative; z-index: 3; max-width: 690px; }
.alpx-catalog-hero h1 {
	margin: 0;
	color: var(--alpx-ink);
	font-size: clamp(42px, 5.5vw, 76px);
	font-weight: 880;
	letter-spacing: -.055em;
	line-height: .98;
}
.alpx-catalog-hero__description { max-width: 650px; margin-top: 20px; color: #526c70; font-size: 17px; line-height: 1.7; }
.alpx-catalog-hero__description p { margin: 0; color: #526c70 !important; font-size: 17px !important; line-height: 1.7 !important; }
.alpx-catalog-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.alpx-catalog-hero__count { margin: 20px 0 0; color: var(--alpx-muted); font-size: 13px; }
.alpx-catalog-hero__count strong { color: var(--alpx-teal-dark); font-size: 18px; }

.alpx-catalog-hero__visual { position: relative; min-height: 310px; align-self: stretch; }
.alpx-catalog-hero__halo {
	position: absolute;
	inset: 8% 2% 0 8%;
	border-radius: 48% 52% 47% 53%;
	background: linear-gradient(145deg, rgba(255,255,255,.78), rgba(223,246,242,.82));
	box-shadow: inset 0 0 0 1px rgba(20,141,147,.12), 0 35px 80px rgba(6,45,56,.12);
	transform: rotate(-4deg);
}
.alpx-catalog-hero__visual img { position: absolute; z-index: 2; object-fit: contain; filter: drop-shadow(0 24px 28px rgba(6,45,56,.2)); }
.alpx-catalog-hero__vial { width: 46%; left: 23%; bottom: 2%; animation: alpxCatalogFloat 9s ease-in-out infinite; }
.alpx-catalog-hero__spray { width: 32%; right: 4%; bottom: 6%; animation: alpxCatalogFloat 11s ease-in-out -3s infinite; }
.alpx-catalog-hero__capsules { width: 27%; left: 4%; bottom: 9%; animation: alpxCatalogFloat 12s ease-in-out -6s infinite; }

@keyframes alpxCatalogFloat { 0%,100% { transform: translate3d(0,0,0) rotate(-1deg); } 50% { transform: translate3d(0,-9px,0) rotate(1deg); } }

.alpx-category-rail { background: #fff; border-bottom: 1px solid rgba(8,45,56,.08); padding: 22px 0; }
.alpx-category-rail__track { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.alpx-category-rail__card {
	min-width: 0;
	display: grid;
	grid-template-columns: 50px minmax(0, 1fr) 22px;
	align-items: center;
	gap: 10px;
	min-height: 84px;
	padding: 10px 12px;
	border: 1px solid #e4ecea;
	border-radius: 16px;
	background: #fff;
	color: var(--alpx-ink) !important;
	text-decoration: none !important;
	box-shadow: 0 8px 24px rgba(6,45,56,.04);
	transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.alpx-category-rail__card:hover { transform: translateY(-3px); border-color: rgba(20,141,147,.4); box-shadow: 0 14px 30px rgba(6,45,56,.09); }
.alpx-category-rail__visual { width: 50px; height: 58px; display: grid; place-items: center; overflow: hidden; border-radius: 12px; background: linear-gradient(145deg, #edf9f7, #fff6ed); }
.alpx-category-rail__visual img { width: 92%; height: 92%; object-fit: contain; }
.alpx-category-rail__text { min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.alpx-category-rail__text strong { font-size: 13px; font-weight: 800; line-height: 1.2; }
.alpx-category-rail__text small { color: var(--alpx-muted); font-size: 10px; line-height: 1.2; }
.alpx-category-rail__arrow { color: var(--alpx-orange); font-size: 18px; }

.alpx-catalog-page { padding: clamp(48px, 6vw, 86px) 0 90px; background: #f8f5f6; }
.alpx-catalog-page__inner { position: relative; }
.alpx-catalog-content > .woocommerce,
.alpx-catalog-content .woocommerce { width: 100%; }

/* Toolbar wraps existing WooCommerce controls. */
.alpx-catalog-toolbar {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 66px;
	margin-bottom: 26px;
	padding: 10px 12px;
	border: 1px solid #e3ebe9;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 12px 36px rgba(6,45,56,.06);
}
.alpx-filter-toggle {
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 10px 17px;
	border: 0;
	border-radius: 999px;
	background: var(--alpx-deep);
	color: #fff;
	font: 800 13px/1 Inter, Arial, sans-serif;
	cursor: pointer;
}
.alpx-filter-toggle span { width: 16px; height: 12px; position: relative; border-top: 2px solid currentColor; border-bottom: 2px solid currentColor; }
.alpx-filter-toggle span::after { content: ""; position: absolute; left: 3px; right: 3px; top: 4px; border-top: 2px solid currentColor; }
.alpx-catalog-toolbar .woocommerce-result-count { margin: 0 auto 0 0 !important; color: var(--alpx-muted) !important; font-size: 13px !important; float: none !important; }
.alpx-catalog-toolbar .woocommerce-ordering { display: block !important; margin: 0 !important; float: none !important; }
.alpx-catalog-toolbar .woocommerce-ordering select,
.alpx-catalog-content .woocommerce-ordering select {
	display: block !important;
	min-width: 210px;
	height: 44px;
	padding: 0 40px 0 15px;
	border: 1px solid #dce7e5;
	border-radius: 999px;
	background: #f8fbfa;
	color: var(--alpx-ink);
	font: 700 13px/1 Inter, Arial, sans-serif;
}
.alpx-catalog-toolbar .alg-wc-products-per-page-form,
.alpx-catalog-content .alg-wc-products-per-page-form { margin: 0 !important; color: var(--alpx-muted); font-size: 12px; }
.alpx-catalog-toolbar .alg-wc-products-per-page-form select,
.alpx-catalog-content .alg-wc-products-per-page-form select { min-height: 38px; margin-left: 5px; border: 1px solid #dce7e5; border-radius: 10px; background: #fff; }
.alpx-catalog-content > .woocommerce > .woocommerce-result-count,
.alpx-catalog-content > .woocommerce > .woocommerce-ordering { display: none !important; }
.alpx-catalog-content .term-description { display: none; }
.alpx-catalog-content > .woocommerce-notices-wrapper,
.alpx-catalog-page__inner > .woocommerce-notices-wrapper { margin-bottom: 18px; }
.alpx-catalog-page .woocommerce-message,
.alpx-catalog-page .woocommerce-info,
.alpx-catalog-page .woocommerce-error {
	margin: 0 0 18px !important;
	padding: 15px 18px 15px 48px !important;
	border: 1px solid #dce9e6 !important;
	border-top: 0 !important;
	border-radius: 14px;
	background: #fff !important;
	color: var(--alpx-ink) !important;
	box-shadow: 0 10px 28px rgba(6,45,56,.06);
}

/* Product grid. */
.alpx-catalog-content ul.products,
.alpx-related-products ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 22px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
body.woocommerce ul.products li.product.alpx-product-card,
.alpx-related-products ul.products li.product.alpx-product-card {
	width: auto !important;
	margin: 0 !important;
	float: none !important;
	min-width: 0;
	position: relative;
	clear: none !important;
}
.alpx-product-card__inner {
	height: 100%;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid #e4ebe9;
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 13px 34px rgba(6,45,56,.07);
	transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.alpx-product-card__inner:hover { transform: translateY(-5px); border-color: rgba(20,141,147,.32); box-shadow: 0 22px 48px rgba(6,45,56,.13); }
.alpx-product-card__image {
	position: relative;
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: linear-gradient(145deg, #e9f8f6 0%, #fff 46%, #fff1e4 100%);
	text-decoration: none !important;
}
.alpx-product-card__image::after { content: ""; position: absolute; inset: auto -30% -55% 5%; height: 70%; border-radius: 50%; background: rgba(239,125,33,.08); filter: blur(18px); pointer-events: none; }
.alpx-product-card__image img { width: 100% !important; height: 100% !important; margin: 0 !important; object-fit: cover; transition: transform .35s ease; }
.alpx-product-card__inner:hover .alpx-product-card__image img { transform: scale(1.035); }
.alpx-product-card__image .onsale,
body.woocommerce ul.products li.product .onsale {
	min-width: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 7px 11px !important;
	position: absolute !important;
	top: 12px !important;
	left: 12px !important;
	right: auto !important;
	z-index: 4;
	border-radius: 999px !important;
	background: var(--alpx-orange) !important;
	color: #fff !important;
	font: 800 10px/1 Inter, Arial, sans-serif !important;
	box-shadow: 0 7px 18px rgba(239,125,33,.25);
}
.alpx-product-card__body { flex: 1; display: flex; flex-direction: column; padding: 17px; }
.alpx-product-card__category { margin-bottom: 7px; color: var(--alpx-teal-dark); font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.alpx-product-card__title { min-height: 44px; margin: 0 !important; font-size: 15px !important; font-weight: 800 !important; line-height: 1.38 !important; letter-spacing: -.01em; }
.alpx-product-card__title a { color: var(--alpx-ink) !important; text-decoration: none !important; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.alpx-product-card__spec { min-height: 18px; margin: 7px 0 0; color: var(--alpx-muted); font-size: 11px; line-height: 1.45; }
.alpx-product-card__purchase { margin-top: auto; padding-top: 15px; }
.alpx-product-card__price { min-height: 24px; display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px; color: var(--alpx-ink) !important; font-size: 17px !important; font-weight: 850 !important; }
.alpx-product-card__price del { color: #94a1a2 !important; font-size: 11px; font-weight: 600; opacity: 1 !important; order: 2; }
.alpx-product-card__price ins { color: var(--alpx-orange) !important; font-size: 18px; text-decoration: none !important; order: 1; }
.alpx-product-card__quantity { margin-top: 10px; }
.alpx-product-card__quantity .quantity,
.alpx-product-card__quantity .qib-button-wrapper { width: 100%; display: flex !important; align-items: center; justify-content: center; }
.alpx-product-card__quantity .qib-button-wrapper { border: 1px solid #dfe8e6; border-radius: 10px; overflow: hidden; }
.alpx-product-card__quantity .qib-button,
.alpx-product-card__quantity input.qty { height: 34px !important; min-height: 34px !important; border: 0 !important; background: #f8fbfa !important; color: var(--alpx-ink) !important; }
.alpx-product-card__quantity input.qty { width: 42px !important; padding: 0 !important; text-align: center; }
.alpx-product-card__actions { display: grid; gap: 8px; margin-top: 11px; }
body.woocommerce ul.products li.product .alpx-product-card__actions .button,
.alpx-related-products .alpx-product-card__actions .button,
.alpx-product-card__actions .out-of-stock-button {
	width: 100%; min-height: 42px; display: inline-flex; align-items: center; justify-content: center;
	margin: 0 !important; padding: 10px 14px !important; border: 0 !important; border-radius: 999px !important;
	background: var(--alpx-orange) !important; color: #fff !important; font: 800 12px/1 Inter, Arial, sans-serif !important;
	text-align: center; text-decoration: none !important; box-shadow: 0 10px 20px rgba(239,125,33,.18);
}
.alpx-product-card__actions .out-of-stock-button { background: #697b7d !important; }
.alpx-product-card__actions .button:hover { background: #d96914 !important; }
.alpx-product-card__details { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 35px; color: var(--alpx-ink) !important; font-size: 11px; font-weight: 750; text-decoration: none !important; }
.alpx-product-card__details span { color: var(--alpx-orange); }

/* Pagination + JS Load More enhancement. */
.alpx-catalog-content .woocommerce-pagination { margin-top: 36px; }
.alpx-catalog-content .woocommerce-pagination ul { display: flex !important; justify-content: center; gap: 7px; border: 0 !important; }
.alpx-catalog-content .woocommerce-pagination li { border: 0 !important; }
.alpx-catalog-content .woocommerce-pagination a,
.alpx-catalog-content .woocommerce-pagination span { min-width: 42px; height: 42px; display: grid !important; place-items: center; border: 1px solid #dce7e5 !important; border-radius: 50%; background: #fff !important; color: var(--alpx-ink) !important; font-weight: 750; }
.alpx-catalog-content .woocommerce-pagination .current { border-color: var(--alpx-teal) !important; background: var(--alpx-teal) !important; color: #fff !important; }
.alpx-load-more { min-width: 220px; min-height: 48px; display: flex; align-items: center; justify-content: center; margin: 28px auto 0; border: 0; border-radius: 999px; background: var(--alpx-deep); color: #fff; font: 800 13px/1 Inter, Arial, sans-serif; cursor: pointer; }
.alpx-load-more[disabled] { opacity: .65; cursor: wait; }
.alpx-js-pagination .woocommerce-pagination { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; }

/* Filter drawer. */
.alpx-filter-backdrop { position: fixed; inset: 0; z-index: 10020; background: rgba(3,25,32,.55); backdrop-filter: blur(3px); }
.alpx-filter-drawer { position: fixed; top: 0; bottom: 0; left: 0; z-index: 10030; width: min(390px, 92vw); display: grid; grid-template-rows: auto 1fr auto; transform: translateX(-105%); background: #fff; box-shadow: 28px 0 70px rgba(3,25,32,.22); transition: transform .28s ease; }
.alpx-filter-drawer.is-open { transform: translateX(0); }
.alpx-filter-drawer > header { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 24px; border-bottom: 1px solid #e4ecea; }
.alpx-filter-drawer > header h2 { margin: 0; color: var(--alpx-ink); font-size: 27px; }
.alpx-filter-drawer > header button { width: 42px; height: 42px; border: 0; border-radius: 50%; background: #edf7f5; color: var(--alpx-ink); font-size: 25px; cursor: pointer; }
.alpx-filter-drawer__body { overflow: auto; padding: 24px; }
.alpx-filter-drawer > footer { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 17px 24px; border-top: 1px solid #e4ecea; background: #fff; }
.alpx-filter-drawer > footer a { color: var(--alpx-muted); font-size: 13px; font-weight: 700; }
.alpx-filter-drawer > footer button { min-height: 44px; padding: 10px 18px; border: 0; border-radius: 999px; background: var(--alpx-orange); color: #fff; font-weight: 800; }
.alpx-filter-widget { margin-bottom: 28px; }
.alpx-filter-widget h3,
.alpx-filter-drawer .wpfFilterTitle { margin: 0 0 12px !important; color: var(--alpx-ink) !important; font-size: 15px !important; font-weight: 800 !important; }
.alpx-filter-drawer ul { margin: 0; padding: 0; list-style: none; }
.alpx-filter-drawer li { margin: 0 0 10px; }
body.alpx-filter-open { overflow: hidden; }

.alpx-category-information { padding: 76px 0; background: linear-gradient(125deg, #edf8f6, #fff8f0); }
.alpx-category-information__inner { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr); align-items: center; gap: clamp(35px, 6vw, 80px); }
.alpx-category-information__content h2 { margin: 0 0 18px; color: var(--alpx-ink); font-size: clamp(32px, 4vw, 52px); letter-spacing: -.045em; line-height: 1.04; }
.alpx-category-information__content { color: var(--alpx-muted); font-size: 15px; line-height: 1.75; }
.alpx-category-information__content p { color: var(--alpx-muted) !important; font-size: 15px !important; line-height: 1.75 !important; }
.alpx-category-information__image { min-height: 300px; display: grid; place-items: center; overflow: hidden; border-radius: 26px; background: #fff; box-shadow: var(--alpx-shadow); }
.alpx-category-information__image img { width: 100%; height: 100%; object-fit: cover; }

@media (max-width: 1120px) {
	.alpx-category-rail__track { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.alpx-catalog-content ul.products,
	.alpx-related-products ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}

@media (max-width: 900px) {
	.alpx-catalog-hero__inner { grid-template-columns: 1fr; padding-top: 58px; }
	.alpx-catalog-hero__content { max-width: 760px; }
	.alpx-catalog-hero__visual { min-height: 330px; max-width: 620px; width: 100%; margin-inline: auto; }
	.alpx-catalog-toolbar { flex-wrap: wrap; }
	.alpx-catalog-toolbar .woocommerce-result-count { order: 3; flex-basis: 100%; }
	.alpx-category-information__inner { grid-template-columns: 1fr; }
}

@media (max-width: 700px) {
	.alpx-catalog-hero__inner { min-height: 0; padding-block: 48px 36px; gap: 18px; }
	.alpx-catalog-hero h1 { font-size: clamp(38px, 12vw, 55px); }
	.alpx-catalog-hero__description,
	.alpx-catalog-hero__description p { font-size: 15px !important; line-height: 1.65 !important; }
	.alpx-catalog-hero__visual { min-height: 260px; }
	.alpx-catalog-hero__vial { width: 42%; left: 28%; }
	.alpx-catalog-hero__spray { width: 29%; right: 8%; }
	.alpx-catalog-hero__capsules { width: 24%; left: 10%; }
	.alpx-category-rail { padding: 17px 0; overflow: hidden; }
	.alpx-category-rail__track { display: flex; overflow-x: auto; gap: 10px; padding: 2px 0 8px; scroll-snap-type: x mandatory; scrollbar-width: none; }
	.alpx-category-rail__track::-webkit-scrollbar { display: none; }
	.alpx-category-rail__card { flex: 0 0 210px; scroll-snap-align: start; }
	.alpx-catalog-page { padding: 35px 0 64px; }
	.alpx-catalog-toolbar { position: sticky; top: 72px; z-index: 50; min-height: 58px; padding: 7px; border-radius: 14px; }
	.admin-bar .alpx-catalog-toolbar { top: 118px; }
	.alpx-filter-toggle { flex: 1; justify-content: center; }
	.alpx-catalog-toolbar .woocommerce-result-count,
	.alpx-catalog-toolbar .alg-wc-products-per-page-form { display: none !important; }
	.alpx-catalog-toolbar .woocommerce-ordering { flex: 1; }
	.alpx-catalog-toolbar .woocommerce-ordering select { width: 100%; min-width: 0; }
	.alpx-catalog-content ul.products,
	.alpx-related-products ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
	.alpx-product-card__inner { border-radius: 15px; }
	.alpx-product-card__body { padding: 12px; }
	.alpx-product-card__title { min-height: 39px; font-size: 13px !important; line-height: 1.35 !important; }
	.alpx-product-card__category { font-size: 8px; }
	.alpx-product-card__spec { display: none; }
	.alpx-product-card__price { font-size: 15px !important; }
	.alpx-product-card__price ins { font-size: 16px !important; }
	.alpx-product-card__price del { font-size: 9px; }
	.alpx-product-card__quantity .qib-button-wrapper { max-width: 110px; }
	.alpx-product-card__actions .button { min-height: 39px !important; font-size: 10px !important; }
	.alpx-category-information { padding: 54px 0; }
}

@media (max-width: 390px) {
	.alpx-catalog-content ul.products,
	.alpx-related-products ul.products { grid-template-columns: 1fr !important; }
	.alpx-product-card__image { aspect-ratio: 1.05 / 1; }
	.alpx-product-card__title { min-height: auto; font-size: 15px !important; }
}

@media (prefers-reduced-motion: reduce) {
	.alpx-catalog-hero__visual img,
	.alpx-product-card__inner,
	.alpx-product-card__image img { animation: none !important; transition: none !important; }
}

/* ==========================================================
   v1.3.1 — AlphaLabs commerce direction correction
   Warm cream + teal + orange, visible floating product artwork,
   and stronger continuity with the current homepage.
   ========================================================== */
body.woocommerce-shop,
body.tax-product_cat,
body.tax-product_tag,
body.tax-product_brand {
	background: #fbf7f4;
}

.alpx-catalog-hero {
	min-height: 520px;
	background:
		radial-gradient(circle at 89% 13%, rgba(255, 151, 78, .29), transparent 28%),
		radial-gradient(circle at 78% 82%, rgba(20, 137, 144, .18), transparent 32%),
		linear-gradient(108deg, #fff 0%, #fffaf6 43%, #f8e7d8 68%, #eaf8f7 100%);
	border-bottom: 1px solid rgba(89, 52, 26, .10);
}
.alpx-catalog-hero::before {
	width: 180px;
	height: 180px;
	right: -35px;
	top: -55px;
	border-color: rgba(199, 93, 32, .18);
	box-shadow: -74px 108px 0 -56px rgba(20, 137, 144, .18), -145px 56px 0 -69px rgba(199, 93, 32, .20);
}
.alpx-catalog-hero::after {
	width: 34px;
	height: 34px;
	left: 5%;
	bottom: 10%;
	background: rgba(20, 137, 144, .10);
	box-shadow: 54px -34px 0 -8px rgba(199, 93, 32, .13);
}
.alpx-catalog-hero__inner {
	min-height: 520px;
	grid-template-columns: minmax(0, .96fr) minmax(430px, 1.04fr);
	gap: clamp(36px, 5vw, 78px);
	padding-block: clamp(62px, 7vw, 102px);
}
.alpx-catalog-hero .alpx-kicker {
	color: #c75d20;
	letter-spacing: .12em;
}
.alpx-catalog-hero h1 {
	max-width: 780px;
	background: linear-gradient(90deg, #59341a 0%, #8f4b22 48%, #c75d20 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	font-size: clamp(44px, 5.25vw, 74px);
	letter-spacing: -.045em;
	line-height: 1.01;
}
.alpx-catalog-hero__description,
.alpx-catalog-hero__description p {
	color: #68584f !important;
	font-size: 17px !important;
}
.alpx-catalog-hero__count { color: #78685f; }
.alpx-catalog-hero__count strong { color: #148990; }

.alpx-catalog-hero__visual {
	min-height: 390px;
	isolation: isolate;
}
.alpx-catalog-hero__halo {
	inset: 6% 1% 1% 7%;
	border-radius: 49% 51% 45% 55% / 51% 45% 55% 49%;
	background:
		linear-gradient(145deg, rgba(255,255,255,.85), rgba(255,242,230,.80) 49%, rgba(221,247,244,.82));
	box-shadow:
		inset 0 0 0 1px rgba(89, 52, 26, .08),
		0 38px 90px rgba(89, 52, 26, .13);
	transform: rotate(-3deg);
}
.alpx-catalog-hero__molecule {
	position: absolute;
	z-index: 0 !important;
	width: 108% !important;
	height: 108% !important;
	left: -8%;
	top: -5%;
	opacity: .38;
	filter: none !important;
	animation: alpxMoleculeDrift 18s ease-in-out infinite;
}
.alpx-catalog-hero__orb {
	position: absolute;
	z-index: 1;
	border-radius: 50%;
	backdrop-filter: blur(6px);
	box-shadow: inset -8px -10px 18px rgba(255,255,255,.5), 0 12px 26px rgba(89,52,26,.12);
}
.alpx-catalog-hero__orb--one {
	width: 56px;
	height: 56px;
	right: 5%;
	top: 12%;
	background: linear-gradient(145deg, rgba(255,255,255,.84), rgba(239,125,33,.20));
	animation: alpxOrbFloat 10s ease-in-out infinite;
}
.alpx-catalog-hero__orb--two {
	width: 34px;
	height: 34px;
	left: 8%;
	top: 27%;
	background: linear-gradient(145deg, rgba(255,255,255,.9), rgba(20,137,144,.24));
	animation: alpxOrbFloat 12s ease-in-out -4s infinite;
}
.alpx-catalog-hero__visual img:not(.alpx-catalog-hero__molecule) {
	filter: drop-shadow(0 27px 30px rgba(65, 42, 28, .22));
}
.alpx-catalog-hero__vial {
	width: 48%;
	left: 24%;
	bottom: -1%;
	z-index: 4 !important;
	animation: alpxCatalogFloat 8.5s ease-in-out infinite;
}
.alpx-catalog-hero__spray {
	width: 34%;
	right: 0;
	bottom: 8%;
	z-index: 3 !important;
	animation: alpxCatalogFloatWide 11s ease-in-out -3s infinite;
}
.alpx-catalog-hero__capsules {
	width: 31%;
	left: 0;
	bottom: 7%;
	z-index: 2 !important;
	animation: alpxCatalogFloatWide 12s ease-in-out -6s infinite reverse;
}
.alpx-catalog-hero__float-tag {
	position: absolute;
	z-index: 6;
	display: flex;
	flex-direction: column;
	gap: 2px;
	max-width: 180px;
	padding: 12px 14px;
	border: 1px solid rgba(89,52,26,.11);
	border-radius: 14px;
	background: rgba(255,255,255,.91);
	box-shadow: 0 16px 38px rgba(89,52,26,.12);
	color: #6a5548;
	font-size: 10px;
	line-height: 1.35;
	backdrop-filter: blur(8px);
}
.alpx-catalog-hero__float-tag b { color: #59341a; font-size: 13px; }
.alpx-catalog-hero__float-tag--purity { left: 7%; bottom: 3%; animation: alpxTagFloat 9s ease-in-out -2s infinite; }
.alpx-catalog-hero__float-tag--shipping { right: 2%; top: 17%; animation: alpxTagFloat 11s ease-in-out -5s infinite; }

@keyframes alpxCatalogFloatWide {
	0%,100% { transform: translate3d(0,0,0) rotate(-2deg); }
	50% { transform: translate3d(6px,-13px,0) rotate(1.5deg); }
}
@keyframes alpxMoleculeDrift {
	0%,100% { transform: translate3d(0,0,0) rotate(0); }
	50% { transform: translate3d(-8px,8px,0) rotate(1.5deg); }
}
@keyframes alpxOrbFloat {
	0%,100% { transform: translate3d(0,0,0); }
	50% { transform: translate3d(4px,-12px,0); }
}
@keyframes alpxTagFloat {
	0%,100% { transform: translate3d(0,0,0); }
	50% { transform: translate3d(0,-7px,0); }
}

.alpx-category-rail {
	padding: 28px 0 32px;
	background: #fff;
	border-bottom-color: rgba(89,52,26,.09);
}
.alpx-category-rail__track { gap: 14px; }
.alpx-category-rail__card {
	grid-template-columns: 64px minmax(0,1fr) 22px;
	min-height: 98px;
	padding: 12px 13px;
	border-color: rgba(89,52,26,.10);
	border-radius: 18px;
	box-shadow: 0 10px 25px rgba(89,52,26,.06);
}
.alpx-category-rail__card--1 { background: linear-gradient(145deg, #e8f7f6, #fff); }
.alpx-category-rail__card--2 { background: linear-gradient(145deg, #fff1e5, #fff); }
.alpx-category-rail__card--3 { background: linear-gradient(145deg, #eff8e9, #fff); }
.alpx-category-rail__card--4 { background: linear-gradient(145deg, #fff4dc, #fff); }
.alpx-category-rail__card--5 { background: linear-gradient(145deg, #e8f7f6, #fff3e9); }
.alpx-category-rail__visual {
	width: 64px;
	height: 74px;
	overflow: visible;
	background: transparent;
}
.alpx-category-rail__visual img {
	width: 105%;
	height: 105%;
	filter: drop-shadow(0 9px 10px rgba(89,52,26,.18));
	transition: transform .25s ease;
}
.alpx-category-rail__card:hover .alpx-category-rail__visual img { transform: translateY(-5px) rotate(-1deg); }
.alpx-category-rail__text strong { color: #59341a; font-size: 14px; }
.alpx-category-rail__text small { color: #806e63; }
.alpx-category-rail__arrow { color: #c75d20; }

.alpx-catalog-page { background: #fbf7f4; }
.alpx-catalog-toolbar {
	border-color: rgba(89,52,26,.12);
	background: #fffdfb;
	box-shadow: 0 12px 34px rgba(89,52,26,.07);
}
.alpx-filter-toggle { background: #59341a; }
.alpx-catalog-toolbar .woocommerce-ordering select,
.alpx-catalog-content .woocommerce-ordering select {
	border-color: rgba(89,52,26,.14);
	background: #fff8f2;
	color: #59341a;
}
.alpx-product-card__inner {
	border-color: rgba(89,52,26,.11);
	border-radius: 18px;
	box-shadow: 0 12px 28px rgba(89,52,26,.07);
}
.alpx-product-card__inner:hover {
	border-color: rgba(199,93,32,.32);
	box-shadow: 0 22px 45px rgba(89,52,26,.13);
}
.alpx-product-card__image {
	background:
		radial-gradient(circle at 18% 25%, rgba(20,137,144,.13), transparent 29%),
		radial-gradient(circle at 85% 76%, rgba(239,125,33,.16), transparent 30%),
		linear-gradient(145deg, #e8f6f5 0%, #fff 50%, #fff0e5 100%);
}
.alpx-product-card__category { color: #148990; }
.alpx-product-card__title a { color: #59341a !important; }
.alpx-product-card__spec { color: #806f66; }
.alpx-product-card__price { color: #59341a !important; }
.alpx-product-card__price ins { color: #bd581e !important; }
.alpx-product-card__quantity .qib-button-wrapper { border-color: rgba(89,52,26,.15); }
.alpx-product-card__quantity .qib-button,
.alpx-product-card__quantity input.qty { background: #fff8f2 !important; color: #59341a !important; }
body.woocommerce ul.products li.product .alpx-product-card__actions .button,
.alpx-related-products .alpx-product-card__actions .button,
.alpx-product-card__actions .out-of-stock-button {
	background: linear-gradient(90deg, #c75d20, #e17b2e) !important;
	box-shadow: 0 10px 20px rgba(199,93,32,.20);
}
.alpx-product-card__details { color: #59341a !important; }
.alpx-product-card__details span { color: #c75d20; }
.alpx-load-more { background: #59341a; }
.alpx-category-information {
	background:
		radial-gradient(circle at 8% 20%, rgba(20,137,144,.12), transparent 28%),
		linear-gradient(125deg, #f7e9dc, #fff9f2 55%, #eaf7f5);
}
.alpx-category-information__content h2 {
	background: linear-gradient(90deg, #59341a, #c75d20);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}

@media (max-width: 900px) {
	.alpx-catalog-hero { min-height: auto; }
	.alpx-catalog-hero__inner { grid-template-columns: 1fr; }
	.alpx-catalog-hero__visual { min-height: 365px; }
}
@media (max-width: 700px) {
	.alpx-catalog-hero__inner { gap: 24px; }
	.alpx-catalog-hero__visual { min-height: 285px; }
	.alpx-catalog-hero__float-tag { max-width: 142px; padding: 9px 10px; }
	.alpx-catalog-hero__float-tag b { font-size: 11px; }
	.alpx-catalog-hero__float-tag--shipping { top: 10%; right: 0; }
	.alpx-catalog-hero__float-tag--purity { left: 0; bottom: 0; }
	.alpx-category-rail__card { flex-basis: 230px; }
}
@media (max-width: 480px) {
	.alpx-catalog-hero h1 { font-size: 38px; }
	.alpx-catalog-hero__visual { min-height: 250px; }
	.alpx-catalog-hero__vial { width: 48%; left: 26%; }
	.alpx-catalog-hero__spray { width: 33%; right: 0; }
	.alpx-catalog-hero__capsules { width: 29%; left: 0; }
	.alpx-catalog-hero__float-tag--shipping { display: none; }
}
@media (prefers-reduced-motion: reduce) {
	.alpx-catalog-hero__molecule,
	.alpx-catalog-hero__orb,
	.alpx-catalog-hero__float-tag,
	.alpx-catalog-hero__vial,
	.alpx-catalog-hero__spray,
	.alpx-catalog-hero__capsules { animation: none !important; }
}
