/**
 * HiGuppy mobile header fix
 *
 * Fixes the expanded pill menu on mobile: keeps logo + actions on one row,
 * shows nav links in a compact dropdown panel, and overrides global touch-target
 * rules that were stretching the header.
 *
 * Loaded after hg-shell.css and higuppy-responsive.css.
 *
 * @package HiGuppy
 */

/* The block theme template part is a second header on HiGuppy product pages. */
body.single-product > .wp-site-blocks > header.wp-block-template-part {
	display: none !important;
}

/* Keep the spotlight CTA legible on Collections, including the open mobile drawer. */
body.page-id-2262 nav#hgSiteNav.hg-nav .hg-menu-spotlight__cta,
body.page-id-2262 nav#hgSiteNav.hg-nav .hg-menu-spotlight__cta:hover,
body.page-id-2262 nav#hgSiteNav.hg-nav .hg-menu-spotlight__cta:focus-visible {
	color: #fff !important;
}

/* The product block template otherwise leaves its content in one half of a
 * two-column shell after the duplicate header is removed. */
body.single-product > .wp-site-blocks > .wp-block-group.woocommerce.product {
	display: block !important;
}

/* Keep shop actions anchored to the right edge on desktop, even when another
 * stylesheet changes the shared header from grid to flex. */
@media (min-width: 1101px) {
	body.higuppy-site-shell nav#hgSiteNav.hg-nav .hg-actions {
		margin-left: auto !important;
		flex: 0 0 auto;
	}
}

@media (max-width: 1100px) {
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav,
	body.woocommerce-shop nav.hg-nav,
	body.woocommerce-shop nav#hgSiteNav.hg-nav,
	body.post-type-archive-product nav.hg-nav,
	body.post-type-archive-product nav#hgSiteNav.hg-nav,
	body.tax-product_cat nav.hg-nav,
	body.tax-product_cat nav#hgSiteNav.hg-nav,
	body.tax-product_tag nav.hg-nav,
	body.tax-product_tag nav#hgSiteNav.hg-nav,
	body.single-product nav.hg-nav,
	body.single-product nav#hgSiteNav.hg-nav,
	body.hg-contact-active nav.hg-nav,
	body.hg-contact-active nav#hgSiteNav.hg-nav {
		position: sticky;
		top: 8px;
		z-index: 1001;
		display: flex !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		justify-content: flex-start !important;
		gap: 6px !important;
		width: min(100% - 20px, 1160px) !important;
		margin: 8px auto 12px !important;
		padding: 8px 10px 8px 12px !important;
		min-height: 56px !important;
		border-radius: 18px !important;
		grid-template-columns: none !important;
	}

	body.hg-homepage-active nav.hg-nav,
	body.hg-homepage-active nav#hgSiteNav.hg-nav,
	body.home.higuppy-site-shell nav.hg-nav,
	body.home.higuppy-site-shell nav#hgSiteNav.hg-nav,
	body.higuppy-site-shell nav.hg-nav,
	body.higuppy-site-shell nav#hgSiteNav.hg-nav,
	body.hg-blog-active nav.hg-nav,
	body.hg-blog-active nav#hgSiteNav.hg-nav {
		position: sticky;
		z-index: 1001;
		background: rgba(255, 255, 255, 0.86) !important;
		backdrop-filter: blur(14px) saturate(1.12);
		-webkit-backdrop-filter: blur(14px) saturate(1.12);
		border: 1px solid rgba(255, 255, 255, 0.9) !important;
		box-shadow: 0 10px 28px rgba(8, 39, 71, 0.08) !important;
		margin: 8px auto 0 !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-logo,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-logo,
	body.woocommerce-shop nav.hg-nav .hg-logo,
	body.single-product nav.hg-nav .hg-logo,
	body.hg-contact-active nav.hg-nav .hg-logo {
		flex: 0 0 auto;
		min-width: 0;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-logo-img,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-logo-img,
	body.woocommerce-shop nav.hg-nav .hg-logo-img,
	body.single-product nav.hg-nav .hg-logo-img,
	body.hg-contact-active nav.hg-nav .hg-logo-img {
		height: 34px !important;
		max-width: 128px !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-actions,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-actions,
	body.woocommerce-shop nav.hg-nav .hg-actions,
	body.single-product nav.hg-nav .hg-actions,
	body.hg-contact-active nav.hg-nav .hg-actions {
		display: flex !important;
		align-items: center !important;
		gap: 8px !important;
		margin-left: auto !important;
		flex: 0 0 auto;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-action-btn,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-action-btn,
	body.woocommerce-shop nav.hg-nav .hg-action-btn,
	body.single-product nav.hg-nav .hg-action-btn,
	body.hg-contact-active nav.hg-nav .hg-action-btn {
		width: 40px !important;
		height: 40px !important;
		min-width: 40px !important;
		min-height: 40px !important;
		display: inline-grid !important;
		place-items: center !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu-toggle,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu-toggle,
	body.woocommerce-shop nav.hg-nav .hg-menu-toggle,
	body.single-product nav.hg-nav .hg-menu-toggle,
	body.hg-contact-active nav.hg-nav .hg-menu-toggle {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 40px !important;
		height: 40px !important;
		min-width: 40px !important;
		min-height: 40px !important;
		margin-left: 2px !important;
		flex: 0 0 auto;
		font-size: 0 !important;
		line-height: 0 !important;
		color: #082747 !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu-toggle::before,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu-toggle::before,
	body.woocommerce-shop nav.hg-nav .hg-menu-toggle::before,
	body.single-product nav.hg-nav .hg-menu-toggle::before,
	body.hg-contact-active nav.hg-nav .hg-menu-toggle::before {
		content: "☰";
		font-size: 22px;
		line-height: 1;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu-toggle[aria-expanded="true"]::before,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu-toggle[aria-expanded="true"]::before,
	body.woocommerce-shop nav.hg-nav .hg-menu-toggle[aria-expanded="true"]::before,
	body.single-product nav.hg-nav .hg-menu-toggle[aria-expanded="true"]::before,
	body.hg-contact-active nav.hg-nav .hg-menu-toggle[aria-expanded="true"]::before {
		content: "✕";
		font-size: 18px;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu,
	body.woocommerce-shop nav.hg-nav .hg-menu,
	body.single-product nav.hg-nav .hg-menu,
	body.hg-contact-active nav.hg-nav .hg-menu {
		position: absolute !important;
		top: calc(100% + 8px) !important;
		left: 0 !important;
		right: 0 !important;
		order: unset !important;
		display: none !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		max-height: calc(100dvh - 96px) !important;
		margin: 0 !important;
		padding: 10px !important;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 8px !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		overscroll-behavior: contain;
		background: #fff !important;
		border: 1px solid rgba(8, 39, 71, 0.08) !important;
		border-radius: 16px !important;
		box-shadow: 0 16px 40px rgba(8, 39, 71, 0.12) !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav.is-open .hg-menu,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav.is-open .hg-menu,
	body.woocommerce-shop nav.hg-nav.is-open .hg-menu,
	body.single-product nav.hg-nav.is-open .hg-menu,
	body.hg-contact-active nav.hg-nav.is-open .hg-menu {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) minmax(136px, 44%) !important;
		align-items: stretch !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu-links,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu-links,
	body.woocommerce-shop nav.hg-nav .hg-menu-links,
	body.single-product nav.hg-nav .hg-menu-links,
	body.hg-contact-active nav.hg-nav .hg-menu-links {
		display: flex !important;
		flex-direction: column !important;
		gap: 2px !important;
		min-width: 0 !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu-spotlight,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu-spotlight,
	body.woocommerce-shop nav.hg-nav .hg-menu-spotlight,
	body.single-product nav.hg-nav .hg-menu-spotlight,
	body.hg-contact-active nav.hg-nav .hg-menu-spotlight {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		justify-content: flex-end !important;
		gap: 8px !important;
		min-height: 100% !important;
		padding: 6px !important;
		border-radius: 14px !important;
		background: linear-gradient(165deg, #eaf6ff 0%, #d7eefc 48%, #bfe3f5 100%) !important;
		border: 1px solid rgba(23, 71, 184, 0.12) !important;
		box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7) !important;
		overflow: hidden !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu-spotlight__scene,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu-spotlight__scene {
		flex: 1 1 auto !important;
		min-height: 120px !important;
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu-spotlight__scene svg,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu-spotlight__scene svg {
		width: 100% !important;
		height: auto !important;
		max-height: 150px !important;
		display: block !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu-spotlight__label,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu-spotlight__label {
		margin: 0 !important;
		color: #0e2f86 !important;
		font-size: var(--hg-font-size-body);
		font-weight: var(--hg-font-weight-ui);
		letter-spacing: 0.02em !important;
		text-align: center !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu-spotlight__cta,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu-spotlight__cta,
	body.woocommerce-shop nav.hg-nav .hg-menu-spotlight__cta,
	body.single-product nav.hg-nav .hg-menu-spotlight__cta,
	body.hg-contact-active nav.hg-nav .hg-menu-spotlight__cta {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		flex-wrap: nowrap !important;
		gap: 4px !important;
		width: 100% !important;
		min-height: 34px !important;
		padding: 7px 8px !important;
		border-radius: 999px !important;
		background: #ff6b35 !important;
		color: #fff !important;
		font-size: var(--hg-font-size-body);
		font-weight: var(--hg-font-weight-ui);
		line-height: 1;
		white-space: nowrap !important;
		text-decoration: none !important;
		box-shadow: 0 8px 18px rgba(255, 107, 53, 0.28) !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu-spotlight__cta:hover,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu-spotlight__cta:hover {
		background: #e75222 !important;
		color: #fff !important;
		transform: none !important;
		padding-left: 10px !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu a,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu a,
	body.woocommerce-shop nav.hg-nav .hg-menu a,
	body.single-product nav.hg-nav .hg-menu a,
	body.hg-contact-active nav.hg-nav .hg-menu a {
		display: flex !important;
		align-items: center !important;
		justify-content: flex-start !important;
		width: 100% !important;
		min-width: 0 !important;
		min-height: 44px !important;
		padding: 10px 14px !important;
		border-radius: 10px !important;
		font-size: var(--hg-font-size-body);
		font-weight: var(--hg-font-weight-ui);
		color: #082747 !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu a::after,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu a::after,
	body.woocommerce-shop nav.hg-nav .hg-menu a::after,
	body.single-product nav.hg-nav .hg-menu a::after,
	body.hg-contact-active nav.hg-nav .hg-menu a::after {
		display: none !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu a.is-active,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu a.is-active,
	body.woocommerce-shop nav.hg-nav .hg-menu a.is-active,
	body.single-product nav.hg-nav .hg-menu a.is-active,
	body.hg-contact-active nav.hg-nav .hg-menu a.is-active {
		color: #ff6b4a !important;
		background: rgba(255, 107, 74, 0.08) !important;
	}

	/* Trust note at bottom of mobile menu — stand out from navy nav links. */
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu a.hg-menu-note,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu a.hg-menu-note,
	body.woocommerce-shop nav.hg-nav .hg-menu a.hg-menu-note,
	body.single-product nav.hg-nav .hg-menu a.hg-menu-note,
	body.hg-contact-active nav.hg-nav .hg-menu a.hg-menu-note {
		grid-column: 1 / -1 !important;
		margin-top: 2px !important;
		color: #c2410c !important;
		background: linear-gradient(135deg, #fff6e6 0%, #ffe8d2 100%) !important;
		border: 1px solid rgba(255, 107, 53, 0.35) !important;
		box-shadow: 0 6px 16px rgba(255, 107, 53, 0.12) !important;
		font-size: var(--hg-font-size-body);
		font-weight: var(--hg-font-weight-ui);
		letter-spacing: 0.01em !important;
		justify-content: center !important;
		text-align: center !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu a.hg-menu-note:hover,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu a.hg-menu-note:hover,
	body.woocommerce-shop nav.hg-nav .hg-menu a.hg-menu-note:hover,
	body.single-product nav.hg-nav .hg-menu a.hg-menu-note:hover,
	body.hg-contact-active nav.hg-nav .hg-menu a.hg-menu-note:hover,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu a.hg-menu-note:focus-visible,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu a.hg-menu-note:focus-visible {
		color: #9a3412 !important;
		background: linear-gradient(135deg, #ffedd5 0%, #ffd4b0 100%) !important;
		border-color: rgba(255, 107, 53, 0.55) !important;
		transform: none !important;
		padding-left: 14px !important;
	}

	/* Open state: keep header solid white (frosted glass turns gray over overlay). */
	body.hg-nav-open :is(nav.hg-nav, nav#hgSiteNav.hg-nav).is-open,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav.is-open,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav.is-open,
	body.woocommerce-shop nav.hg-nav.is-open,
	body.single-product nav.hg-nav.is-open,
	body.hg-contact-active nav.hg-nav.is-open {
		background: #ffffff !important;
		background-image: none !important;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
		border: 1px solid rgba(23, 71, 184, 0.12) !important;
		box-shadow: 0 14px 36px rgba(8, 39, 71, 0.14) !important;
	}

	/* Menu panel + link hover / press feedback. */
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav.is-open .hg-menu,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav.is-open .hg-menu,
	body.woocommerce-shop nav.hg-nav.is-open .hg-menu,
	body.single-product nav.hg-nav.is-open .hg-menu,
	body.hg-contact-active nav.hg-nav.is-open .hg-menu {
		padding: 10px !important;
		gap: 8px !important;
		background: #ffffff !important;
		border: 1px solid rgba(23, 71, 184, 0.10) !important;
		border-radius: 18px !important;
		box-shadow: 0 18px 44px rgba(8, 39, 71, 0.16) !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu a,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu a,
	body.woocommerce-shop nav.hg-nav .hg-menu a,
	body.single-product nav.hg-nav .hg-menu a,
	body.hg-contact-active nav.hg-nav .hg-menu a {
		position: relative !important;
		transition:
			background-color 0.18s ease,
			color 0.18s ease,
			transform 0.18s ease,
			box-shadow 0.18s ease,
			padding-left 0.18s ease !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu a:not(.hg-menu-spotlight__cta):not(.hg-menu-note):hover,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu a:not(.hg-menu-spotlight__cta):not(.hg-menu-note):hover,
	body.woocommerce-shop nav.hg-nav .hg-menu a:not(.hg-menu-spotlight__cta):not(.hg-menu-note):hover,
	body.single-product nav.hg-nav .hg-menu a:not(.hg-menu-spotlight__cta):not(.hg-menu-note):hover,
	body.hg-contact-active nav.hg-nav .hg-menu a:not(.hg-menu-spotlight__cta):not(.hg-menu-note):hover,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu a:not(.hg-menu-spotlight__cta):not(.hg-menu-note):focus-visible,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu a:not(.hg-menu-spotlight__cta):not(.hg-menu-note):focus-visible,
	body.woocommerce-shop nav.hg-nav .hg-menu a:not(.hg-menu-spotlight__cta):not(.hg-menu-note):focus-visible,
	body.single-product nav.hg-nav .hg-menu a:not(.hg-menu-spotlight__cta):not(.hg-menu-note):focus-visible,
	body.hg-contact-active nav.hg-nav .hg-menu a:not(.hg-menu-spotlight__cta):not(.hg-menu-note):focus-visible {
		color: #1747b8 !important;
		background: rgba(23, 71, 184, 0.08) !important;
		padding-left: 18px !important;
		box-shadow: inset 3px 0 0 #1747b8 !important;
		outline: none !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu a:active,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu a:active,
	body.woocommerce-shop nav.hg-nav .hg-menu a:active,
	body.single-product nav.hg-nav .hg-menu a:active,
	body.hg-contact-active nav.hg-nav .hg-menu a:active {
		color: #0e2f86 !important;
		background: rgba(23, 71, 184, 0.14) !important;
		transform: scale(0.985);
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu a.is-active:hover,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu a.is-active:hover,
	body.woocommerce-shop nav.hg-nav .hg-menu a.is-active:hover,
	body.single-product nav.hg-nav .hg-menu a.is-active:hover,
	body.hg-contact-active nav.hg-nav .hg-menu a.is-active:hover {
		color: #ff6b35 !important;
		background: rgba(255, 107, 53, 0.14) !important;
		box-shadow: inset 3px 0 0 #ff6b35 !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-action-btn,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-action-btn,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu-toggle,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu-toggle {
		border-radius: 999px !important;
		transition: background-color 0.18s ease, color 0.18s ease, transform 0.18s ease !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-action-btn:hover,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-action-btn:hover,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu-toggle:hover,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu-toggle:hover {
		background: rgba(23, 71, 184, 0.10) !important;
		color: #1747b8 !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-action-btn:active,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-action-btn:active,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-menu-toggle:active,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-menu-toggle:active {
		transform: scale(0.94);
		background: rgba(23, 71, 184, 0.16) !important;
	}

	body.hg-nav-open::before {
		content: "";
		position: fixed;
		inset: 0;
		background: rgba(8, 36, 71, 0.28);
		z-index: 1000;
		pointer-events: none;
	}

	body.hg-nav-open {
		overflow: hidden;
	}
}

@media (max-width: 480px) {
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav {
		width: min(100% - 16px, 1160px) !important;
		padding: 8px !important;
	}

	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav.hg-nav .hg-logo-img,
	:is(body.higuppy-site-shell, body.home, body.hg-homepage-active, body.woocommerce-account, body.woocommerce-cart, body.woocommerce-checkout, body.woocommerce-page) nav#hgSiteNav.hg-nav .hg-logo-img {
		height: 30px !important;
		max-width: 112px !important;
	}
}
/* Global HiGuppy shell: suppress the XStore FSE template chrome so every
 * page has one header and one footer. The child theme renders the canonical
 * hg-nav and hg-site-footer instead. */
body.higuppy-site-shell header.wp-block-template-part,
body.higuppy-site-shell footer.wp-block-template-part {
	display: none !important;
}

/* The FSE template parts are not always direct children of .wp-site-blocks.
 * Keep the canonical HiGuppy shell and remove the extra theme chrome on
 * product, shop, and other pages that opt into higuppy-site-shell. */
body.higuppy-site-shell header.wp-block-template-part,
body.higuppy-site-shell footer.wp-block-template-part,
body.single-product header.wp-block-template-part,
body.single-product footer.wp-block-template-part {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

/* Site-wide XStore/FSE cleanup. Some archive and content templates do not
 * receive higuppy-site-shell, but they do render the canonical HiGuppy nav
 * and footer. In that case remove the remaining legacy chrome as well. */
:is(body:has(nav.hg-nav), body:has(footer.hg-site-footer)) :is(
	header.wp-block-template-part,
	footer.wp-block-template-part,
	#header.site-header,
	.header-wrapper,
	.mobile-header-wrapper,
	.main-header,
	footer.footer,
	#footer,
	.et-footers-wrapper
) {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

:is(body:has(nav.hg-nav), body:has(footer.hg-site-footer)) footer.site-footer:not(:has(.hg-site-footer)) {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

@media (min-width: 1101px) {
	body.higuppy-site-shell nav#hgSiteNav .hg-menu-note,
	body.higuppy-site-shell nav.hg-nav .hg-menu-note {
		display: none !important;
	}

	/* Desktop keeps a horizontal link row — unwrap the mobile links wrapper. */
	body.higuppy-site-shell nav#hgSiteNav .hg-menu-links,
	body.higuppy-site-shell nav.hg-nav .hg-menu-links,
	body.home nav#hgSiteNav .hg-menu-links,
	body.hg-homepage-active nav#hgSiteNav .hg-menu-links {
		display: contents !important;
	}

	body.higuppy-site-shell nav#hgSiteNav .hg-menu-spotlight,
	body.higuppy-site-shell nav.hg-nav .hg-menu-spotlight,
	body.home nav#hgSiteNav .hg-menu-spotlight,
	body.hg-homepage-active nav#hgSiteNav .hg-menu-spotlight {
		display: none !important;
	}
}

/* Real aquarium spotlight for the expanded navigation. The image is decorative
 * and intentionally separate from product photography. */
nav#hgSiteNav.hg-nav .hg-menu-spotlight__scene {
	position: relative !important;
	overflow: hidden !important;
	border-radius: 12px !important;
	background: #0d6982 !important;
}

nav#hgSiteNav.hg-nav .hg-menu-spotlight__scene img {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	max-height: none !important;
	object-fit: cover !important;
	object-position: center 42% !important;
	filter: saturate(1.04) contrast(1.03) !important;
	animation: hg-nav-aquarium-drift 14s ease-in-out infinite alternate !important;
}

nav#hgSiteNav.hg-nav .hg-menu-spotlight__scene::after {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	pointer-events: none !important;
	background: linear-gradient(115deg, transparent 28%, rgba(255,255,255,.22) 48%, transparent 66%), radial-gradient(circle at 20% 92%, rgba(255,255,255,.75) 0 2px, transparent 3px), radial-gradient(circle at 74% 88%, rgba(255,255,255,.6) 0 3px, transparent 4px) !important;
	animation: hg-nav-water-glint 8s ease-in-out infinite !important;
}

@keyframes hg-nav-aquarium-drift {
	from { transform: scale(1.04) translate3d(-1.2%, .4%, 0); }
	to { transform: scale(1.10) translate3d(1.2%, -.5%, 0); }
}

@keyframes hg-nav-water-glint {
	0%, 48% { opacity: .25; transform: translateX(-12%); }
	72%, 100% { opacity: .75; transform: translateX(12%); }
}

@media (min-width: 701px) and (max-width: 1100px) {
	nav#hgSiteNav.hg-nav .hg-menu-spotlight {
		min-height: 280px !important;
		padding: 9px !important;
		gap: 10px !important;
	}

	nav#hgSiteNav.hg-nav .hg-menu-spotlight__scene {
		min-height: 174px !important;
	}

	nav#hgSiteNav.hg-nav .hg-menu-spotlight__label {
		font-size: var(--hg-font-size-body);
	}

	body.higuppy-site-shell nav#hgSiteNav.hg-nav .hg-menu a.hg-menu-note {
		display: flex !important;
		min-height: 58px !important;
		padding: 12px 20px !important;
		white-space: normal !important;
		line-height: 1.4;
	}
}

@media (prefers-reduced-motion: reduce) {
	nav#hgSiteNav.hg-nav .hg-menu-spotlight__scene img,
	nav#hgSiteNav.hg-nav .hg-menu-spotlight__scene::after {
		animation: none !important;
	}
}
html body.higuppy-site-shell nav#hgSiteNav.hg-nav a.hg-action-cart > span {
	min-width: 24px !important;
	height: 24px !important;
	padding: 0 5px !important;
	font-family: var(--hg-font-family);
	font-size: var(--hg-font-size-body);
	font-weight: var(--hg-font-weight-ui);
	line-height: 1;
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
}
html body.higuppy-site-shell nav#hgSiteNav.hg-nav a.hg-action-cart > span[hidden],
html body.higuppy-site-shell nav#hgSiteNav.hg-nav a.hg-action-cart > span:empty,
html body.higuppy-site-shell nav#hgSiteNav.hg-nav a.hg-action-cart > span.is-empty {
	display: none !important;
}

@media (max-width: 1100px) {
	html body.higuppy-site-shell nav#hgSiteNav.hg-nav .hg-actions {
		width: 136px !important;
		justify-content: space-between !important;
		gap: 0 !important;
	}
}
