/* Global responsive shell fixes, scoped to the exact Elementor owners. */
@media (max-width: 1024px) {
	.elementor-145 .elementor-element.elementor-element-a341a22 {
		display: none !important;
	}

	.elementor-145 .elementor-element.elementor-element-0c2a7a7 > .elementor-widget-container {
		transform: none !important;
	}

	.elementor-145 .elementor-element.elementor-element-0c2a7a7 .vertical-menu {
		position: fixed !important;
		top: var(--ge-department-top, 130px) !important;
		right: 0 !important;
		bottom: var(--ge-bottom-nav-height, calc(65px + env(safe-area-inset-bottom, 0px))) !important;
		left: auto !important;
		display: block !important;
		width: min(330px, 100vw) !important;
		max-width: 100vw !important;
		height: auto !important;
		overflow-y: auto !important;
		overscroll-behavior: contain;
		background: #fff !important;
		box-shadow: -8px 12px 28px rgba(0, 0, 0, 0.16);
		opacity: 0 !important;
		visibility: hidden !important;
		pointer-events: none !important;
		transform: translateX(10px) !important;
		transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease;
		z-index: 9998 !important;
	}

	.elementor-145 .elementor-element.elementor-element-0c2a7a7 .vertical-menu .menu {
		width: 100% !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 12px 0 calc(12px + env(safe-area-inset-bottom, 0px)) !important;
	}

	.elementor-145 .elementor-element.elementor-element-0c2a7a7 .vertical-menu .menu > li {
		padding: 0 24px !important;
	}

	.elementor-145 .elementor-element.elementor-element-0c2a7a7 .vertical-menu .menu a {
		display: flex;
		min-height: 44px;
		align-items: center;
	}

	.elementor-145 .elementor-element.elementor-element-0c2a7a7 .vertical-navigation.ge-department-open .vertical-menu {
		opacity: 1 !important;
		visibility: visible !important;
		pointer-events: auto !important;
		transform: translateX(0) !important;
	}

	html.ge-department-drawer-open {
		overscroll-behavior: none;
	}

	html.ge-department-drawer-open .chaty,
	html.ge-department-drawer-open .chaty-widget,
	html.ge-department-drawer-open .chaty-channel,
	html.ge-department-drawer-open .Whatsapp-channel-link,
	html.ge-department-drawer-open .chaty-chat-view,
	html.ge-department-drawer-open .chaty-outer-forms {
		visibility: hidden !important;
		opacity: 0 !important;
		pointer-events: none !important;
	}

	html.ge-department-drawer-open .chaty .chaty-widget .chaty-channel.Whatsapp-channel-link {
		display: none !important;
		visibility: hidden !important;
		opacity: 0 !important;
		pointer-events: none !important;
		transition: none !important;
		animation: none !important;
	}

	.elementor-162 .elementor-element.elementor-element-69ac651 {
		box-sizing: content-box;
		padding-bottom: env(safe-area-inset-bottom, 0px);
	}

	/* Keep a fourth bottom-bar cell clear for the support trigger. */
	.elementor-162 .elementor-element.elementor-element-69ac651 > .elementor-container > .elementor-column {
		flex: 0 0 25% !important;
		width: 25% !important;
		max-width: 25% !important;
	}

	#colophon {
		margin-bottom: calc(65px + env(safe-area-inset-bottom, 0px)) !important;
	}

	.chaty .chaty-widget {
		--ge-support-trigger-size: 52px;
		right: max(16px, env(safe-area-inset-right, 0px)) !important;
		bottom: calc((var(--ge-bottom-nav-height, 65px) - var(--ge-support-trigger-size)) / 2) !important;
	}

	.chaty .chaty-channel.Whatsapp-channel-link {
		box-sizing: border-box !important;
		width: var(--ge-support-trigger-size) !important;
		min-width: var(--ge-support-trigger-size) !important;
		height: var(--ge-support-trigger-size) !important;
		min-height: var(--ge-support-trigger-size) !important;
	}

	.chaty .chaty-widget .on-hover-text {
		display: none !important;
	}

	.chaty-chat-view.pos-right,
	.chaty-outer-forms.pos-right {
		right: max(12px, env(safe-area-inset-right, 0px)) !important;
		bottom: var(--ge-bottom-nav-height, calc(65px + env(safe-area-inset-bottom, 0px))) !important;
		max-width: calc(100vw - 24px) !important;
	}
}

/* Keep the back-to-top control above the fixed tablet navigation and Chaty. */
@media (min-width: 768px) and (max-width: 1024px) {
	a.scrollup {
		right: 20px !important;
		bottom: calc(var(--ge-bottom-nav-height, calc(65px + env(safe-area-inset-bottom, 0px))) + 12px) !important;
	}
}

/* Stack exact archive simple-product controls before Liquory's wide layout. */
@media (min-width: 768px) and (max-width: 1199px) {
	body.liquory-archive-product ul.liquory-products.products li.product.product-type-simple .product-caption-bottom > form.cart {
		flex-direction: column !important;
		gap: 5px !important;
	}

	body.liquory-archive-product ul.liquory-products.products li.product.product-type-simple .product-caption-bottom > form.cart > .quantity_wrap {
		margin-right: 0 !important;
	}
}

/* Preserve separate desktop stacking for back-to-top and Chaty controls. */
@media (min-width: 1025px) {
	a.scrollup {
		right: 30px !important;
		bottom: 91px !important;
	}
}

@media (max-width: 767px) {
	a.scrollup {
		display: none !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}

	.elementor-145 .elementor-element.elementor-element-0c2a7a7 > .elementor-widget-container {
		position: relative !important;
		top: 27px !important;
		left: -64px !important;
	}
}

/* Reserve the exact logo ratio before its async bytes reach the legal gate. */
body > .liquory-av > img {
	width: 512px;
	height: auto;
	aspect-ratio: 1 / 1;
}

/* Keep the legal age prompt fully usable on short phone-landscape screens. */
@media (orientation: landscape) and (max-height: 700px) {
	.liquory-av {
		width: min(580px, calc(100vw - 32px)) !important;
		max-height: calc(100vh - 16px) !important;
		padding: 12px 24px !important;
		overflow-y: auto !important;
	}

	.liquory-av img {
		width: auto !important;
		height: 180px !important;
		max-width: 100% !important;
		max-height: 46vh !important;
		margin-bottom: 12px !important;
		object-fit: contain;
	}
}

/* Liquory's age-gate typeface collapses the authored spaces visually. */
.liquory-av .liquory-av-copy {
	letter-spacing: 0;
	word-spacing: 0.16em;
}

/* Contact page text must remain readable inside its exact narrow owner. */
body.page-id-30 .elementor-30 .elementor-element.elementor-element-6515885 {
	width: max-content !important;
	max-width: none !important;
	--container-widget-width: max-content;
}

body.page-id-30 .elementor-element.elementor-element-6515885 p {
	margin-inline: auto;
	font-size: 14px;
	white-space: nowrap;
	overflow-wrap: normal;
}

/*
 * The Contact map is a local link card because Google's cross-origin embed
 * currently requests a removed font file. Preserve the former 500/400/350px
 * map geometry while keeping the address and destination fully accessible.
 */
body.page-id-30 .elementor-30 .elementor-element.elementor-element-6b8940a .ge-contact-map-card-wrap {
	width: 100%;
}

body.page-id-30 .elementor-30 .elementor-element.elementor-element-6b8940a .ge-contact-map-card {
	display: flex;
	min-height: 500px;
	box-sizing: border-box;
	align-items: center;
	justify-content: center;
	gap: 24px;
	padding: 32px;
	border: 1px solid #d8d0ca;
	border-radius: 4px;
	background:
		radial-gradient(circle at 82% 22%, rgb(180 74 8 / 14%) 0 18%, transparent 19%),
		linear-gradient(135deg, #f8f4f1 0%, #e7e4e1 100%);
	box-shadow: inset 0 0 0 1px rgb(255 255 255 / 55%);
	color: #30373e;
	text-align: left;
	text-decoration: none;
}

body.page-id-30 .elementor-30 .elementor-element.elementor-element-6b8940a .ge-contact-map-card__icon {
	display: inline-flex;
	width: 72px;
	height: 72px;
	flex: 0 0 72px;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #b44a08;
	color: #fff;
}

body.page-id-30 .elementor-30 .elementor-element.elementor-element-6b8940a .ge-contact-map-card__icon svg {
	width: 38px;
	height: 38px;
	fill: currentColor;
}

body.page-id-30 .elementor-30 .elementor-element.elementor-element-6b8940a .ge-contact-map-card__content {
	display: flex;
	max-width: 520px;
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
	font-size: 16px;
	line-height: 1.5;
}

body.page-id-30 .elementor-30 .elementor-element.elementor-element-6b8940a .ge-contact-map-card__content strong {
	font-family: "Plus Jakarta Sans", sans-serif;
	font-size: clamp(24px, 3vw, 32px);
	line-height: 1.2;
}

body.page-id-30 .elementor-30 .elementor-element.elementor-element-6b8940a .ge-contact-map-card__action {
	display: inline-flex;
	min-height: 44px;
	box-sizing: border-box;
	align-items: center;
	margin-top: 6px;
	padding: 10px 18px;
	border-radius: 3px;
	background: #b44a08;
	color: #fff;
	font-weight: 700;
}

body.page-id-30 .elementor-30 .elementor-element.elementor-element-6b8940a .ge-contact-map-card:hover,
body.page-id-30 .elementor-30 .elementor-element.elementor-element-6b8940a .ge-contact-map-card:focus-visible {
	color: #30373e;
}

body.page-id-30 .elementor-30 .elementor-element.elementor-element-6b8940a .ge-contact-map-card:focus-visible {
	outline: 3px solid #30373e;
	outline-offset: 3px;
}

@media (max-width: 880px) {
	body.page-id-30 .elementor-30 .elementor-element.elementor-element-6b8940a .ge-contact-map-card {
		min-height: 400px;
	}
}

@media (max-width: 767px) {
	body.page-id-30 .elementor-30 .elementor-element.elementor-element-6b8940a .ge-contact-map-card {
		min-height: 350px;
		flex-direction: column;
		gap: 18px;
		padding: 24px 18px;
		text-align: center;
	}

	body.page-id-30 .elementor-30 .elementor-element.elementor-element-6b8940a .ge-contact-map-card__content {
		align-items: center;
	}
}

/* Accessible neutral and status colors on the pale/white site surfaces. */
.woocommerce-breadcrumb a,
.product_meta,
.product_meta a,
.sku_wrapper,
.woosw-btn,
.woosc-btn,
.prad-textarea-char-count,
.product-cat-caption .count,
.elementor-element-143fd56,
.elementor-element-ab45b5c,
.elementor-element-c53fcb3,
.elementor-element-84dc403,
.elementor-element-eaa6c47,
.elementor-element-6bdf71d > p,
#colophon p {
	color: #666 !important;
}

.single-product div.product .product_meta > span {
	color: #666 !important;
}

.inventory_status {
	color: #2e7d32 !important;
}

.elementor-459 .elementor-element.elementor-element-c58fcb3 a.elementor-cta__button.elementor-button,
.elementor-459 .elementor-element.elementor-element-c58fcb3 a.elementor-cta__button.elementor-button:focus-visible {
	color: #000 !important;
}

.elementor-459 .elementor-element.elementor-element-c58fcb3 a.elementor-cta__button.elementor-button:hover {
	color: #fff !important;
}

.elementor-459 .elementor-element.elementor-element-c58fcb3 a.elementor-cta__button.elementor-button .elementor-button-text {
	color: inherit !important;
}

.elementor-459 .elementor-element.elementor-element-c58fcb3 a.elementor-cta__button.elementor-button:focus-visible {
	outline: 3px solid #000;
	outline-offset: 3px;
}

/* Exact homepage tequila CTA: white on #c6102e passes AA contrast. */
body.home .elementor-6809 .elementor-element.elementor-element-0989f2b a.elementor-cta__button.elementor-button,
body.home .elementor-6809 .elementor-element.elementor-element-0989f2b a.elementor-cta__button.elementor-button:hover,
body.home .elementor-6809 .elementor-element.elementor-element-0989f2b a.elementor-cta__button.elementor-button:focus-visible {
	color: #fff !important;
}

body.home .elementor-6809 .elementor-element.elementor-element-0989f2b a.elementor-cta__button.elementor-button .elementor-button-text {
	color: inherit !important;
}

body.home .elementor-6809 .elementor-element.elementor-element-0989f2b a.elementor-cta__button.elementor-button:focus-visible {
	outline: 3px solid #fff;
	outline-offset: 3px !important;
}

.woocommerce-product-gallery__trigger {
	display: inline-flex !important;
	min-width: 44px !important;
	min-height: 44px !important;
	align-items: center;
	justify-content: center;
}

/* Exact Trustindex widget: one phone card, two tablet cards, three desktop cards. */
.ge-responsive-reviews {
	min-height: 356px;
}

.ge-responsive-reviews .ti-widget.ti-goog .ti-widget-container.ti-col-1 .ti-reviews-container-wrapper {
	align-items: stretch !important;
}

.ge-responsive-reviews .ti-widget.ti-goog .ti-widget-container.ti-col-1 .ti-review-item {
	height: auto !important;
}

.ge-responsive-reviews .ti-widget.ti-goog .ti-widget-container.ti-col-1 .ti-review-item > .ti-inner {
	box-sizing: border-box !important;
	height: 100% !important;
}

@media (max-width: 767px) {
	.ge-responsive-reviews .ti-widget.ti-goog .ti-widget-container.ti-col-1 .ti-review-item {
		-ms-flex: 0 0 100% !important;
		flex: 0 0 100% !important;
		max-width: 100% !important;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.ge-responsive-reviews .ti-widget.ti-goog .ti-widget-container.ti-col-1 .ti-review-item {
		-ms-flex: 0 0 50% !important;
		flex: 0 0 50% !important;
		max-width: 50% !important;
	}
}

@media (min-width: 1025px) {
	.ge-responsive-reviews .ti-widget.ti-goog .ti-widget-container.ti-col-1 .ti-review-item {
		-ms-flex: 0 0 33.333333% !important;
		flex: 0 0 33.333333% !important;
		max-width: 33.333333% !important;
	}
}

.ge-responsive-reviews .ti-controls [role="button"] {
	min-width: 44px;
	min-height: 44px;
}

.ge-responsive-reviews .ti-controls [role="button"]:focus-visible {
	outline: 3px solid #c8102e !important;
	outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
	.elementor-145 .elementor-element.elementor-element-0c2a7a7 .vertical-menu,
	.ge-responsive-reviews .ti-review-item,
	.ge-responsive-reviews .ti-controls .ti-next,
	.ge-responsive-reviews .ti-controls .ti-prev,
	.ge-responsive-reviews .ti-controls-line .dot {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}

/* 2026 mobile homepage polish — preserves Liquory and every desktop rule. */
@media (max-width: 767px) {
	body.home {
		background: #f8f5f1;
	}

	body.home .elementor-6809 > .elementor-top-section {
		margin-inline: 0 !important;
	}

	/* Give the lightweight hero an intentional, edge-to-edge storefront treatment. */
	body.home .elementor-element-f16737a {
		padding: 0 14px 18px !important;
		background: #fff !important;
	}

	body.home .ge-home-hero {
		position: relative;
		overflow: hidden;
		min-height: 214px;
		border-radius: 0 0 18px 18px;
		box-shadow: 0 12px 28px rgb(38 22 12 / 16%);
	}

	body.home .ge-home-hero__image {
		display: block;
		width: 100%;
		height: 214px;
		object-fit: cover;
		object-position: center;
	}

	body.home .ge-home-hero__content {
		padding: 18px !important;
	}

	body.home .ge-home-hero__content h1 {
		max-width: 290px;
		font-size: clamp(25px, 8vw, 34px) !important;
		line-height: 1.02 !important;
		text-wrap: balance;
	}

	body.home .ge-home-hero__content a,
	body.home .ge-home-hero__button {
		min-height: 46px;
		padding: 13px 22px !important;
		border-radius: 3px;
		box-shadow: 0 6px 15px rgb(0 0 0 / 18%);
	}

	/* Pull the range introduction and categories into the first useful scroll. */
	body.home .elementor-element-ed264b3 {
		padding: 34px 16px 24px !important;
		background: #f8f5f1 !important;
	}

	body.home .elementor-element-ed264b3 .elementor-element-b376c56,
	body.home .elementor-element-ed264b3 .elementor-element-6bdf71d,
	body.home .elementor-element-ed264b3 .elementor-element-0a73b54 {
		margin-bottom: 12px !important;
	}

	body.home .elementor-element-ed264b3 .elementor-heading-title {
		font-size: 34px !important;
		line-height: 1.12 !important;
		letter-spacing: -.03em;
	}

	body.home .elementor-element-ed264b3 .elementor-element-6bdf71d p {
		max-width: 310px;
		margin-inline: auto;
		font-size: 15px;
		line-height: 1.55;
	}

	body.home .elementor-element-ed264b3 .elementor-element-c8aa8bb {
		display: none !important;
	}

	body.home .elementor-element-ed264b3 .elementor-element-3586f3b {
		margin-top: 18px !important;
	}

	/* Consistent section rhythm, stronger hierarchy and cleaner cards. */
	body.home .elementor-element-c50cc36,
	body.home .elementor-element-df95583,
	body.home .elementor-element-73df893,
	body.home .elementor-element-b9c1b84 {
		padding: 38px 16px !important;
		background: #fff !important;
		border-top: 1px solid #eee7e1;
	}

	body.home .elementor-element-c50cc36 .elementor-heading-title,
	body.home .elementor-element-df95583 .elementor-heading-title,
	body.home .elementor-element-73df893 .elementor-heading-title,
	body.home .elementor-element-b9c1b84 .elementor-heading-title {
		font-size: 29px !important;
		line-height: 1.15 !important;
		letter-spacing: -.025em;
		text-wrap: balance;
	}

	body.home ul.liquory-products li.product {
		border-radius: 12px;
		background: #fff;
		box-shadow: 0 7px 22px rgb(42 28 18 / 9%);
	}

	body.home ul.liquory-products li.product .product-caption {
		padding-inline: 14px !important;
	}

	body.home ul.liquory-products li.product h3,
	body.home ul.liquory-products li.product .woocommerce-loop-product__title {
		font-size: 16px !important;
		line-height: 1.35 !important;
	}

	body.home .elementor-button,
	body.home button,
	body.home a.button {
		touch-action: manipulation;
	}
}
