/**
 * Storefront Theme Compatibility Overrides
 *
 * Neutralizes Storefront CSS that conflicts with Helix Architect's
 * custom product page templates. Scoped to single-product and shop pages
 * so the rest of the site is unaffected.
 *
 * @package Helix_Architect
 * @since   4.1.1
 */

/* ============================================================
   1. FULL-WIDTH LAYOUT — Remove Storefront sidebar constraints
   ============================================================ */

body.single-product .site-content,
body.single-product #content,
body.single-product #primary,
body.single-product .content-area,
body.single-product .site-main {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.single-product .col-full {
	max-width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Hide sidebar on product pages */
body.single-product #secondary,
body.single-product .widget-area {
	display: none !important;
}

/* ============================================================
   2. FONTS — Override Storefront's Source Sans Pro
   ============================================================ */

/* Body text → DM Sans */
body.single-product .pci-apple-product,
body.single-product .pci-apple-product *,
body.single-product .pci-m,
body.single-product .pci-m * {
	font-family: var(--pci-font-body, 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif) !important;
}

/* Headings → Outfit */
body.single-product .pci-product-title,
body.single-product .pci-section-title,
body.single-product .pci-purity-value,
body.single-product .pci-price-current,
body.single-product .pci-price-label,
body.single-product .pci-variant-label,
body.single-product .pci-chem-card-value,
body.single-product .pci-coa-title,
body.single-product .pci-coa-stat-value,
body.single-product .pci-sticky-price,
body.single-product .pci-m-title,
body.single-product .pci-m-section-title,
body.single-product .pci-m-price-current {
	font-family: var(--pci-font-heading, 'Outfit', sans-serif) !important;
}

/* ============================================================
   3. HIDE STOREFRONT CHROME — breadcrumbs, sale flash, etc.
   ============================================================ */

body.single-product .storefront-breadcrumb,
body.single-product .woocommerce-breadcrumb {
	display: none !important;
}

/* ============================================================
   4. DARK BACKGROUND CONTINUITY — header/footer blend
   ============================================================ */

body.single-product .site-header,
body.post-type-archive-product .site-header,
body.tax-product_cat .site-header {
	background-color: var(--pci-bg-primary, #0a1628) !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

body.single-product .site-header .site-title a,
body.single-product .site-header .site-description,
body.post-type-archive-product .site-header .site-title a,
body.tax-product_cat .site-header .site-title a {
	color: #ffffff !important;
}

body.single-product .main-navigation a,
body.single-product .site-header-cart a,
body.single-product .site-header-cart .count,
body.post-type-archive-product .main-navigation a,
body.post-type-archive-product .site-header-cart a,
body.tax-product_cat .main-navigation a,
body.tax-product_cat .site-header-cart a {
	color: rgba(255, 255, 255, 0.9) !important;
}

body.single-product .main-navigation a:hover,
body.single-product .site-header-cart a:hover,
body.post-type-archive-product .main-navigation a:hover,
body.tax-product_cat .main-navigation a:hover {
	color: var(--pci-accent, #4fd1c5) !important;
}

/* ============================================================
   4b. HEADER LAYOUT — Clean up Storefront header structure
   ============================================================ */

/* Hide policy/legal links from header area — they belong in the footer */
body.single-product .site-header .menu-item a[href*="privacy-policy"],
body.single-product .site-header .menu-item a[href*="terms-and-conditions"],
body.single-product .site-header .menu-item a[href*="refund"],
body.single-product .site-header .menu-item a[href*="returns"],
body.post-type-archive-product .site-header .menu-item a[href*="privacy-policy"],
body.post-type-archive-product .site-header .menu-item a[href*="terms-and-conditions"],
body.post-type-archive-product .site-header .menu-item a[href*="refund"],
body.post-type-archive-product .site-header .menu-item a[href*="returns"],
body.woocommerce-cart .site-header .menu-item a[href*="privacy-policy"],
body.woocommerce-cart .site-header .menu-item a[href*="terms-and-conditions"],
body.woocommerce-cart .site-header .menu-item a[href*="refund"],
body.woocommerce-cart .site-header .menu-item a[href*="returns"],
body.woocommerce-checkout .site-header .menu-item a[href*="privacy-policy"],
body.woocommerce-checkout .site-header .menu-item a[href*="terms-and-conditions"],
body.woocommerce-checkout .site-header .menu-item a[href*="refund"],
body.woocommerce-checkout .site-header .menu-item a[href*="returns"],
body.woocommerce-account .site-header .menu-item a[href*="privacy-policy"],
body.woocommerce-account .site-header .menu-item a[href*="terms-and-conditions"],
body.woocommerce-account .site-header .menu-item a[href*="refund"],
body.woocommerce-account .site-header .menu-item a[href*="returns"] {
	display: none !important;
}

/* Also hide via wp_nav_menu class if Storefront uses a separate footer menu in header */
body.helix-storefront-shell .site-header .secondary-navigation .menu-item a[href*="privacy"],
body.helix-storefront-shell .site-header .secondary-navigation .menu-item a[href*="terms"],
body.helix-storefront-shell .site-header .secondary-navigation .menu-item a[href*="refund"],
body.helix-storefront-shell .site-header .secondary-navigation .menu-item a[href*="return"],
body.helix-storefront-shell .site-header a[href*="privacy-policy"],
body.helix-storefront-shell .site-header a[href*="terms-and-conditions"],
body.helix-storefront-shell .site-header a[href*="refund-policy"],
body.helix-storefront-shell .site-header a[href*="returns-policy"] {
	display: none !important;
}

/* If the secondary nav becomes empty after hiding, collapse it */
body.helix-storefront-shell .site-header .secondary-navigation,
body.helix-storefront-shell .site-header .header-widget-region,
body.helix-storefront-shell .site-header .top-bar {
	display: none !important;
	max-height: 0 !important;
	overflow: hidden !important;
	visibility: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

/* Style the search bar in the header */
body.helix-storefront-shell .site-header .site-search,
body.helix-storefront-shell .site-header .woocommerce-product-search {
	background: rgba(255, 255, 255, 0.06) !important;
	border: 1px solid rgba(255, 255, 255, 0.1) !important;
	border-radius: 999px !important;
	overflow: hidden;
}

body.helix-storefront-shell .site-header .site-search input[type="search"],
body.helix-storefront-shell .site-header .woocommerce-product-search input[type="search"] {
	background: transparent !important;
	border: none !important;
	color: rgba(255, 255, 255, 0.9) !important;
	font-family: var(--pci-font-body, 'DM Sans', sans-serif) !important;
	font-size: 0.85rem !important;
	padding: 8px 16px !important;
}

body.helix-storefront-shell .site-header .site-search input[type="search"]::placeholder,
body.helix-storefront-shell .site-header .woocommerce-product-search input[type="search"]::placeholder {
	color: rgba(255, 255, 255, 0.4) !important;
}

body.helix-storefront-shell .site-header .site-search button,
body.helix-storefront-shell .site-header .woocommerce-product-search button {
	background: rgba(79, 209, 197, 0.15) !important;
	border: none !important;
	color: var(--pci-accent, #4fd1c5) !important;
	padding: 8px 14px !important;
}

/* Dissolve .col-full — grid lives on .site-header (see stabilization section) */
body.helix-storefront-shell .site-header .col-full {
	display: contents !important;
}

/* Primary navigation bar — padding handled by grid gap in stabilization section */
body.helix-storefront-shell .site-header .main-navigation {
	padding-left: 0 !important;
}

body.helix-storefront-shell .site-header .main-navigation ul.menu {
	display: flex !important;
	align-items: center !important;
	gap: 4px;
}

body.helix-storefront-shell .site-header .main-navigation ul.menu > li > a {
	padding: 10px 14px !important;
	font-size: 0.85rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.3px;
	white-space: nowrap;
}

/* Cart count badge in header */
body.helix-storefront-shell .site-header .site-header-cart .cart-contents .count {
	background: var(--pci-accent, #4fd1c5) !important;
	color: #0a1628 !important;
	font-weight: 700 !important;
	border-radius: 50px !important;
	font-size: 0.75rem !important;
}

/* Make sure the logo image doesn't clip */
body.helix-storefront-shell .site-header .custom-logo-link,
body.helix-storefront-shell .site-header .site-logo-anchor {
	flex-shrink: 0;
	margin-right: 16px;
}

body.helix-storefront-shell .site-header .custom-logo,
body.helix-storefront-shell .site-header .site-logo-anchor img {
	max-height: 48px !important;
	width: auto !important;
}

body.single-product .site-footer {
	background-color: var(--pci-bg-primary, #0a1628) !important;
	color: rgba(255, 255, 255, 0.7) !important;
}

body.single-product .site-footer a {
	color: rgba(255, 255, 255, 0.7) !important;
}

body.single-product .site-footer a:hover {
	color: var(--pci-accent, #4fd1c5) !important;
}

body.single-product .site-info {
	border-top-color: rgba(255, 255, 255, 0.06) !important;
}

/* ============================================================
   5. HEADING / LINK COLORS inside product template
   ============================================================ */

body.single-product .pci-apple-product h1,
body.single-product .pci-apple-product h2,
body.single-product .pci-apple-product h3,
body.single-product .pci-apple-product h4 {
	color: var(--pci-text-primary, #ffffff) !important;
}

body.single-product .pci-apple-product a {
	color: var(--pci-accent, #4fd1c5);
}

body.single-product .pci-apple-product .woocommerce-Price-amount,
body.single-product .pci-m .woocommerce-Price-amount {
	font-family: inherit !important;
	color: inherit !important;
}

/* ============================================================
   6. STOREFRONT HAMBURGER / MOBILE NAV on dark background
   ============================================================ */

body.single-product .menu-toggle {
	color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.3) !important;
}

body.single-product .menu-toggle::before {
	color: #ffffff !important;
}

/* ============================================================
   7. SHOP PAGE — Keep shop grid unaffected by sidebar removal
   ============================================================ */

body.post-type-archive-product .site-content,
body.post-type-archive-product #primary,
body.tax-product_cat .site-content,
body.tax-product_cat #primary {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
}

body.post-type-archive-product #secondary,
body.tax-product_cat #secondary {
	display: none !important;
}

body.post-type-archive-product .col-full,
body.tax-product_cat .col-full {
	max-width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* ============================================================
   8. HIDE STOREFRONT STICKY CHECKOUT BAR on shop/archive pages
   The single-product sticky add-to-cart (.pci-sticky-cart)
   is from Helix Architect and should remain visible.
   ============================================================ */

body.post-type-archive-product .storefront-sticky-add-to-cart,
body.tax-product_cat .storefront-sticky-add-to-cart,
body.post-type-archive-product .site-header-cart .widget_shopping_cart,
body.tax-product_cat .site-header-cart .widget_shopping_cart {
	display: none !important;
}

/* Storefront handheld footer bar — hide everywhere Helix controls the page.
   This bar duplicates nav items (Home, Cart, My Account) and conflicts
   with the pci-sticky-cart and WooCommerce mini-cart. */
body.helix-storefront-shell .storefront-handheld-footer-bar {
	display: none !important;
}

/* ============================================================
   9. MY ACCOUNT + CART + CHECKOUT — dark background continuity
   ============================================================ */

body.woocommerce-cart .site-header,
body.woocommerce-checkout .site-header,
body.woocommerce-account .site-header {
	background-color: var(--pci-bg-primary, #0a1628) !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

body.woocommerce-cart .main-navigation a,
body.woocommerce-checkout .main-navigation a,
body.woocommerce-account .main-navigation a,
body.woocommerce-cart .site-header-cart a,
body.woocommerce-checkout .site-header-cart a,
body.woocommerce-account .site-header-cart a {
	color: rgba(255, 255, 255, 0.9) !important;
}

body.woocommerce-cart .site-header .site-title a,
body.woocommerce-checkout .site-header .site-title a,
body.woocommerce-account .site-header .site-title a {
	color: #ffffff !important;
}

body.woocommerce-cart .site-footer,
body.woocommerce-checkout .site-footer,
body.woocommerce-account .site-footer {
	background-color: var(--pci-bg-primary, #0a1628) !important;
	color: rgba(255, 255, 255, 0.7) !important;
}

/* ============================================================
   10. STOREFRONT HEADER POLISH — desktop + mobile
   ============================================================ */

body.helix-storefront-shell #masthead,
body.helix-storefront-shell .site-header {
	position: sticky;
	top: 0;
	z-index: 1001;
}

/* .col-full dissolved — see stabilization section */

@media (min-width: 981px) {
	body.helix-storefront-shell .menu-toggle {
		display: none !important;
	}

	body.helix-storefront-shell .site-header .col-full > .secondary-navigation,
	body.helix-storefront-shell .site-header .col-full > .header-widget-region,
	body.helix-storefront-shell .site-header .col-full > .top-bar,
	body.helix-storefront-shell .site-header .col-full > .widget-area,
	body.helix-storefront-shell .site-header .col-full > .header-widget-area {
		display: none !important;
	}

	body.helix-storefront-shell .site-header .site-branding,
	body.helix-storefront-shell .site-header .custom-logo-link,
	body.helix-storefront-shell .site-header .site-logo-anchor {
		flex: 0 0 auto;
		margin-right: 0;
	}

	body.helix-storefront-shell .site-header .main-navigation {
		order: 2;
		flex: 1 1 auto;
		min-width: 0;
		align-self: center;
	}

	body.helix-storefront-shell .site-header .main-navigation ul.menu {
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;
		scrollbar-width: none;
	}

	body.helix-storefront-shell .site-header .main-navigation ul.menu::-webkit-scrollbar {
		display: none;
	}

	body.helix-storefront-shell .site-header .site-search,
	body.helix-storefront-shell .site-header .woocommerce-product-search {
		order: 3;
		flex: 0 0 320px;
		width: 320px;
		min-width: 320px;
		max-width: 320px;
		margin-left: auto;
	}

	body.helix-storefront-shell .site-header .site-header-cart {
		order: 4;
		flex: 0 0 auto;
		margin-left: 0;
	}
}

body.helix-storefront-shell .site-branding,
body.helix-storefront-shell .custom-logo-link,
body.helix-storefront-shell .site-logo-anchor {
	display: flex !important;
	align-items: center !important;
	min-height: 56px;
}

body.helix-storefront-shell .custom-logo,
body.helix-storefront-shell .site-logo-anchor img {
	max-height: 58px !important;
	width: auto !important;
	object-fit: contain;
}

body.helix-storefront-shell .site-header .site-search,
body.helix-storefront-shell .site-header .woocommerce-product-search {
	min-width: min(100%, 320px);
	max-width: 420px;
	flex: 0 1 420px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0.08) 100%) !important;
	border: 1px solid rgba(255, 255, 255, 0.16) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body.helix-storefront-shell .site-header .site-search input[type="search"],
body.helix-storefront-shell .site-header .woocommerce-product-search input[type="search"] {
	height: 42px;
	padding: 10px 16px !important;
	font-size: 0.92rem !important;
}

body.helix-storefront-shell .site-header .site-search button,
body.helix-storefront-shell .site-header .woocommerce-product-search button {
	padding: 0 14px !important;
	background: transparent !important;
	color: rgba(255, 255, 255, 0.75) !important;
}

body.helix-storefront-shell .site-header .main-navigation {
	padding-left: 0 !important;
}

body.helix-storefront-shell .site-header .main-navigation ul.menu {
	gap: 8px;
	flex-wrap: wrap;
}

body.helix-storefront-shell .site-header .main-navigation ul.menu > li > a {
	padding: 10px 14px !important;
	border-radius: 999px;
	font-size: 0.9rem !important;
	font-weight: 600 !important;
	background: transparent;
}

body.helix-storefront-shell .site-header .main-navigation ul.menu > li > a:hover,
body.helix-storefront-shell .site-header .main-navigation ul.menu > li > a:focus-visible,
body.helix-storefront-shell .site-header .main-navigation .current-menu-item > a,
body.helix-storefront-shell .site-header .main-navigation .current_page_item > a {
	background: rgba(79, 209, 197, 0.12);
	color: #ffffff !important;
}

body.helix-storefront-shell .site-header .site-header-cart {
	margin-left: auto;
}

body.helix-storefront-shell .site-header .site-header-cart .cart-contents {
	display: inline-flex !important;
	align-items: center;
	gap: 10px;
	padding: 10px 14px 10px 16px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.1);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

body.helix-storefront-shell .site-header .site-header-cart .amount {
	font-weight: 700;
	letter-spacing: 0.01em;
}

body.helix-storefront-shell .site-header .site-header-cart .cart-contents .count {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-width: 28px;
	min-height: 28px;
	padding: 4px 9px;
	line-height: 1;
	font-size: 0.74rem !important;
	font-weight: 800 !important;
	box-shadow: 0 8px 16px rgba(79, 209, 197, 0.2);
}

body.helix-storefront-shell .menu-toggle {
	display: none !important;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	padding: 0 !important;
	border-radius: 16px !important;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0.07) 100%) !important;
	border: 1px solid rgba(255, 255, 255, 0.14) !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
	color: #ffffff !important;
}

body.helix-storefront-shell .menu-toggle::before {
	color: var(--pci-accent, #4fd1c5) !important;
	font-size: 1.15rem !important;
	line-height: 1;
}

body.helix-storefront-shell .handheld-navigation,
body.helix-storefront-shell .main-navigation.toggled,
body.helix-storefront-shell .handheld-navigation .dropdown,
body.helix-storefront-shell .handheld-navigation ul.menu {
	background: linear-gradient(180deg, rgba(8, 20, 32, 0.98) 0%, rgba(9, 24, 38, 0.98) 100%) !important;
}

body.helix-storefront-shell .handheld-navigation,
body.helix-storefront-shell .main-navigation.toggled {
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	padding: 10px 16px 16px;
}

body.helix-storefront-shell .handheld-navigation ul li a,
body.helix-storefront-shell .main-navigation.toggled ul li a {
	display: block;
	padding: 12px 14px !important;
	border-radius: 14px;
	color: rgba(255, 255, 255, 0.88) !important;
}

body.helix-storefront-shell .handheld-navigation ul li a:hover,
body.helix-storefront-shell .main-navigation.toggled ul li a:hover,
body.helix-storefront-shell .handheld-navigation ul li.current-menu-item > a,
body.helix-storefront-shell .main-navigation.toggled ul li.current-menu-item > a {
	background: rgba(79, 209, 197, 0.12);
	color: #ffffff !important;
}

@media (max-width: 980px) {
	body.helix-storefront-shell .custom-logo,
	body.helix-storefront-shell .site-logo-anchor img {
		max-height: 50px !important;
	}

	body.helix-storefront-shell .site-header .site-search,
	body.helix-storefront-shell .site-header .woocommerce-product-search,
	body.helix-storefront-shell .site-header .main-navigation,
	body.helix-storefront-shell .site-header .site-header-cart {
		flex: 1 1 100%;
		max-width: 100%;
	}

	body.helix-storefront-shell .site-header .site-search,
	body.helix-storefront-shell .site-header .woocommerce-product-search {
		order: 3;
	}

	body.helix-storefront-shell .menu-toggle {
		display: inline-flex !important;
	}
}

@media (max-width: 768px) {
	body.helix-storefront-shell .site-branding,
	body.helix-storefront-shell .custom-logo-link,
	body.helix-storefront-shell .site-logo-anchor {
		min-height: 44px;
		min-width: 0;
	}

	body.helix-storefront-shell .custom-logo,
	body.helix-storefront-shell .site-logo-anchor img {
		max-height: 38px !important;
	}

	body.helix-storefront-shell .site-header .site-search,
	body.helix-storefront-shell .site-header .woocommerce-product-search,
	body.helix-storefront-shell .site-header .site-header-cart {
		display: none !important;
	}

	body.helix-storefront-shell .menu-toggle {
		width: 42px;
		height: 42px;
		border-radius: 12px !important;
		justify-self: end;
	}

	body.helix-storefront-shell .menu-toggle::before {
		font-size: 1rem !important;
	}
}
/* ============================================================
   LAYOUT STABILIZATION — Grid on .site-header, dissolve .col-full

   Storefront outputs TWO .col-full wrappers inside <header>:
   1. branding + search  (priorities 0–41)
   2. nav + cart inside .storefront-primary-navigation (42–68)

   We dissolve all intermediate wrappers so every element
   participates in a single grid on .site-header itself.
   ============================================================ */

.helix-storefront-shell {
    --helix-shell-max-width: min(1380px, calc(100vw - clamp(2rem, 4vw, 5rem)));
    --helix-shell-inline: clamp(1rem, 2.4vw, 2rem);
    --helix-shell-block: clamp(1rem, 2vw, 1.75rem);
    --helix-shell-gap: clamp(0.75rem, 1.8vw, 1.5rem);
    --helix-shell-search-width: clamp(14rem, 22vw, 18rem);
    --helix-shell-header-bg: linear-gradient(180deg, rgba(6, 16, 31, 0.98), rgba(7, 18, 34, 0.96));
}

.helix-storefront-shell .site {
    background:
        radial-gradient(circle at top center, rgba(31, 227, 209, 0.08), transparent 30%),
        #081826;
}

/* ---- GRID CONTAINER on .site-header (NOT .col-full) ---- */
.helix-storefront-shell .site-header {
    position: relative;
    z-index: 30;
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    gap: var(--helix-shell-gap);
    width: min(100%, var(--helix-shell-max-width));
    margin: 0 auto;
    padding: var(--helix-shell-block) var(--helix-shell-inline);
    background: var(--helix-shell-header-bg);
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.2);
    border: 0;
}

/* Kill pseudo-elements on header and dissolved containers */
.helix-storefront-shell .site-header::before,
.helix-storefront-shell .site-header::after,
.helix-storefront-shell .site-header .col-full::before,
.helix-storefront-shell .site-header .col-full::after,
.helix-storefront-shell .storefront-primary-navigation::before,
.helix-storefront-shell .storefront-primary-navigation::after {
    display: none !important;
    content: none !important;
}

/* ---- DISSOLVE intermediate wrappers ---- */
.helix-storefront-shell .site-header > .col-full,
.helix-storefront-shell .storefront-primary-navigation,
.helix-storefront-shell .storefront-primary-navigation > .col-full {
    display: contents !important;
}

/* ---- Grid children placement ---- */
.helix-storefront-shell .site-branding {
    grid-column: 1;
    display: flex;
    align-items: center;
    margin: 0;
    min-width: 0;
    max-width: 100%;
}

.helix-storefront-shell .custom-logo-link img,
.helix-storefront-shell .site-branding img {
    display: block;
    width: auto;
    max-width: clamp(160px, 16vw, 220px);
    max-height: clamp(42px, 5vw, 58px);
}

.helix-storefront-shell .main-navigation {
    grid-column: 2;
    min-width: 0;
    margin: 0;
}

.helix-storefront-shell .main-navigation > div,
.helix-storefront-shell .main-navigation ul.menu,
.helix-storefront-shell .main-navigation ul.nav-menu {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(0.75rem, 1.6vw, 1.5rem);
    min-width: 0;
    margin: 0;
    padding: 0;
    flex-wrap: nowrap;
    list-style: none;
}

.helix-storefront-shell .main-navigation li {
    float: none;
    margin: 0;
    position: relative;
}

.helix-storefront-shell .main-navigation a {
    padding: 0.45rem 0;
    white-space: nowrap;
}

/* Dropdown sub-menus — must NOT inherit grid/flex from ancestors */
.helix-storefront-shell .main-navigation ul.menu ul,
.helix-storefront-shell .main-navigation ul.nav-menu ul {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 50;
    flex-direction: column;
    min-width: 200px;
    padding: 0.5rem 0;
    background: rgba(6, 16, 31, 0.98);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.3);
}

.helix-storefront-shell .main-navigation li:hover > ul,
.helix-storefront-shell .main-navigation li:focus-within > ul {
    display: flex;
}

.helix-storefront-shell .main-navigation ul ul a {
    padding: 0.6rem 1rem;
    white-space: normal;
}

.helix-storefront-shell .menu-toggle {
    display: none !important;
}

.helix-storefront-shell .site-search {
    grid-column: 3;
    width: min(100%, var(--helix-shell-search-width));
    margin: 0;
}

.helix-storefront-shell .site-search form {
    margin: 0;
}

.helix-storefront-shell .site-search .search-field,
.helix-storefront-shell .site-search input[type="search"] {
    width: 100%;
    min-width: 0;
    height: clamp(2.75rem, 5vw, 3.15rem);
    padding-inline: 1rem 2.75rem;
    border-radius: 999px;
}

.helix-storefront-shell .site-header-cart {
    grid-column: 4;
    justify-self: end;
    align-self: center;
    margin: 0;
}

.helix-storefront-shell .site-header-cart .cart-contents,
.helix-storefront-shell .site-header-cart .site-header-cart-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    margin: 0;
    white-space: nowrap;
}

/* Hidden elements */
.helix-storefront-shell .secondary-navigation,
.helix-storefront-shell .header-widget-region,
.helix-storefront-shell .site-header-cart .widget_shopping_cart,
.helix-storefront-shell .site-header .top-bar,
.helix-storefront-shell .site-header .header-top,
.helix-storefront-shell .site-header .header-top-bar,
.helix-storefront-shell .site-header .header-upper,
.helix-storefront-shell .site-header .header-utility,
.helix-storefront-shell .site-header .header-widget-area,
.helix-storefront-shell .site-header .widget-area,
.helix-storefront-shell .site-header .top-navigation,
.helix-storefront-shell .site-header .storefront-primary-navigation > .secondary-navigation,
.helix-storefront-shell .site-header .storefront-handheld-footer-bar,
.helix-storefront-shell .site-header .nav-menu > .menu-item-type-custom:first-child:last-child {
    display: none !important;
}

.helix-storefront-shell .woocommerce-breadcrumb {
    width: min(100%, var(--helix-shell-max-width));
    margin: 0 auto;
    padding: 1rem var(--helix-shell-inline) 0;
}

/* ---- MOBILE: ≤ 980px — 2-column layout [Logo | Cart + Menu] ---- */
@media (max-width: 980px) {
    .helix-storefront-shell .site-header {
        display: flex !important;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
        gap: 0.75rem;
        padding: 0.9rem 1rem;
    }

    .helix-storefront-shell .site-branding {
        flex: 1 1 auto;
        min-width: 0;
        grid-column: unset;
    }

    /* Right side: cart + hamburger sit together */
    .helix-storefront-shell .site-header-cart {
        order: 2;
        grid-column: unset;
        display: inline-flex !important;
        align-items: center;
        gap: 0.5rem;
        flex: 0 0 auto;
    }

    .helix-storefront-shell .menu-toggle {
        order: 3;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        min-width: 2.75rem;
        min-height: 2.75rem;
        margin: 0;
        flex: 0 0 auto;
    }

    /* Hide nav and search on mobile — they appear in toggled drawer */
    .helix-storefront-shell .site-header .main-navigation:not(.toggled),
    .helix-storefront-shell .site-header .site-search,
    .helix-storefront-shell .site-header .woocommerce-product-search {
        display: none !important;
    }

    /* When toggled open, show nav full-width below */
    .helix-storefront-shell .main-navigation.toggled {
        display: block !important;
        flex-basis: 100%;
        order: 10;
    }

    .helix-storefront-shell .main-navigation.toggled > div,
    .helix-storefront-shell .main-navigation.toggled ul.menu,
    .helix-storefront-shell .main-navigation.toggled ul.nav-menu {
        flex-direction: column;
        align-items: stretch;
        gap: 0;
    }

    .helix-storefront-shell .main-navigation.toggled ul li a {
        padding: 14px 16px !important;
        border-radius: 12px;
    }

    /* Storefront handheld nav drawer */
    .helix-storefront-shell .handheld-navigation {
        flex-basis: 100%;
        order: 11;
    }
}

/* ---- PHONE: ≤ 640px ---- */
@media (max-width: 640px) {
    .helix-storefront-shell .custom-logo-link img,
    .helix-storefront-shell .site-branding img {
        max-height: 44px;
        max-width: 170px;
    }

    .helix-storefront-shell .site-header-cart .amount {
        display: none;
    }
}

/* ============================================================
   11. SHOP PAGE — hide page title, close gap, tighten header nav
   ============================================================ */

/* Hide "Shop" page title on archive/shop pages */
body.helix-storefront-shell .woocommerce-products-header__title,
body.helix-storefront-shell .woocommerce-products-header,
body.helix-storefront-shell.post-type-archive-product .page-title,
body.helix-storefront-shell.post-type-archive-product .entry-header,
body.helix-storefront-shell.post-type-archive-product .woocommerce-result-count + .page-title,
body.helix-storefront-shell .page-title {
    display: none !important;
}

/* Close the gap between header and product grid */
body.helix-storefront-shell .site-content,
body.helix-storefront-shell #content,
body.helix-storefront-shell .content-area {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

body.helix-storefront-shell .site-main {
    padding-top: 0 !important;
}

body.helix-storefront-shell.post-type-archive-product .site-main > *:first-child,
body.helix-storefront-shell.tax-product_cat .site-main > *:first-child {
    margin-top: 0 !important;
    padding-top: 16px !important;
}

/* Tighten nav items so they fit on one line */
.helix-storefront-shell .main-navigation a {
    padding: 0.45rem 0.6rem !important;
    font-size: 0.88rem !important;
}

.helix-storefront-shell .main-navigation > div,
.helix-storefront-shell .main-navigation ul.menu,
.helix-storefront-shell .main-navigation ul.nav-menu {
    gap: clamp(0.25rem, 1vw, 1rem) !important;
}

/* Shrink search bar so nav has more room */
.helix-storefront-shell .site-search {
    width: min(100%, clamp(10rem, 18vw, 16rem)) !important;
}

/* ============================================================
   SITE-WIDE BRANDING — .helix-branded (all front-end pages)
   Applies dark header/footer and Medvinci fonts to non-WC pages
   (legal, about, contact, blog, etc.)
   @since 4.1.1
   ============================================================ */

/* Dark header on all branded pages */
body.helix-branded .site-header {
	background-color: var(--pci-bg-primary, #0a1628) !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

body.helix-branded .site-header .site-title a,
body.helix-branded .site-header .site-description {
	color: #ffffff !important;
}

body.helix-branded .main-navigation a,
body.helix-branded .site-header-cart a,
body.helix-branded .site-header-cart .count {
	color: rgba(255, 255, 255, 0.9) !important;
}

body.helix-branded .main-navigation a:hover,
body.helix-branded .site-header-cart a:hover {
	color: var(--pci-accent, #4fd1c5) !important;
}

/* Dark footer on all branded pages */
body.helix-branded .site-footer {
	background-color: var(--pci-bg-primary, #0a1628) !important;
	color: rgba(255, 255, 255, 0.7) !important;
}

body.helix-branded .site-footer a {
	color: rgba(255, 255, 255, 0.7) !important;
}

body.helix-branded .site-footer a:hover {
	color: var(--pci-accent, #4fd1c5) !important;
}

body.helix-branded .site-info {
	border-top-color: rgba(255, 255, 255, 0.06) !important;
}

/* Fonts on all branded pages — DM Sans body, Outfit headings */
body.helix-branded {
	font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}

body.helix-branded h1,
body.helix-branded h2,
body.helix-branded h3,
body.helix-branded h4,
body.helix-branded h5,
body.helix-branded h6,
body.helix-branded .site-title {
	font-family: 'Outfit', sans-serif;
}

/* Hamburger menu on dark bg */
body.helix-branded .menu-toggle {
	color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.3) !important;
}

body.helix-branded .menu-toggle::before {
	color: #ffffff !important;
}

/* Hide secondary nav and header widget region site-wide */
body.helix-branded .secondary-navigation,
body.helix-branded .header-widget-region {
	display: none !important;
}

/* Page content area — subtle dark background for non-WC pages */
body.helix-branded:not(.helix-storefront-shell) .site-content {
	background: #081826;
	color: rgba(255, 255, 255, 0.85);
}

body.helix-branded:not(.helix-storefront-shell) .site-content a {
	color: var(--pci-accent, #4fd1c5);
}

body.helix-branded:not(.helix-storefront-shell) .site-content h1,
body.helix-branded:not(.helix-storefront-shell) .site-content h2,
body.helix-branded:not(.helix-storefront-shell) .site-content h3 {
	color: #ffffff;
}

/* ============================================================
   LIGHT MODE — override all dark hardcodes above
   ============================================================ */

/* Branded header — light */
html[data-theme="light"] body.helix-branded .site-header {
	background-color: #ffffff !important;
	border-bottom: 1px solid rgba(47, 59, 59, 0.1);
}

html[data-theme="light"] body.helix-branded .site-header .site-title a,
html[data-theme="light"] body.helix-branded .site-header .site-description {
	color: #2F3B3B !important;
}

html[data-theme="light"] body.helix-branded .main-navigation a,
html[data-theme="light"] body.helix-branded .site-header-cart a,
html[data-theme="light"] body.helix-branded .site-header-cart .count {
	color: #2F3B3B !important;
}

html[data-theme="light"] body.helix-branded .main-navigation a:hover,
html[data-theme="light"] body.helix-branded .site-header-cart a:hover {
	color: #008C89 !important;
}

/* Branded footer — light */
html[data-theme="light"] body.helix-branded .site-footer {
	background-color: #f0f2f4 !important;
	color: #5A6A6A !important;
}

html[data-theme="light"] body.helix-branded .site-footer a {
	color: #5A6A6A !important;
}

html[data-theme="light"] body.helix-branded .site-footer a:hover {
	color: #008C89 !important;
}

html[data-theme="light"] body.helix-branded .site-info {
	border-top-color: rgba(47, 59, 59, 0.1) !important;
}

/* Branded hamburger — light */
html[data-theme="light"] body.helix-branded .menu-toggle {
	color: #2F3B3B !important;
	border-color: rgba(47, 59, 59, 0.2) !important;
}

html[data-theme="light"] body.helix-branded .menu-toggle::before {
	color: #008C89 !important;
}

/* Non-WC page content — light */
html[data-theme="light"] body.helix-branded:not(.helix-storefront-shell) .site-content {
	background: #f8f9fa;
	color: #2F3B3B;
}

html[data-theme="light"] body.helix-branded:not(.helix-storefront-shell) .site-content a {
	color: #008C89;
}

html[data-theme="light"] body.helix-branded:not(.helix-storefront-shell) .site-content h1,
html[data-theme="light"] body.helix-branded:not(.helix-storefront-shell) .site-content h2,
html[data-theme="light"] body.helix-branded:not(.helix-storefront-shell) .site-content h3 {
	color: #2F3B3B;
}

/* Search bar — light */
html[data-theme="light"] body.helix-storefront-shell .site-header .site-search,
html[data-theme="light"] body.helix-storefront-shell .site-header .woocommerce-product-search {
	background: rgba(47, 59, 59, 0.05) !important;
	border: 1px solid rgba(47, 59, 59, 0.12) !important;
	box-shadow: none;
}

html[data-theme="light"] body.helix-storefront-shell .site-header .site-search input[type="search"],
html[data-theme="light"] body.helix-storefront-shell .site-header .woocommerce-product-search input[type="search"] {
	color: #2F3B3B !important;
}

html[data-theme="light"] body.helix-storefront-shell .site-header .site-search input[type="search"]::placeholder,
html[data-theme="light"] body.helix-storefront-shell .site-header .woocommerce-product-search input[type="search"]::placeholder {
	color: #8A9A9A !important;
}

html[data-theme="light"] body.helix-storefront-shell .site-header .site-search button,
html[data-theme="light"] body.helix-storefront-shell .site-header .woocommerce-product-search button {
	color: #008C89 !important;
}

/* Cart badge — light */
html[data-theme="light"] body.helix-storefront-shell .site-header .site-header-cart .cart-contents {
	background: rgba(0, 140, 137, 0.06);
	border: 1px solid rgba(0, 140, 137, 0.15);
}

/* Nav active — light */
html[data-theme="light"] body.helix-storefront-shell .site-header .main-navigation ul.menu > li > a:hover,
html[data-theme="light"] body.helix-storefront-shell .site-header .main-navigation .current-menu-item > a {
	background: rgba(0, 140, 137, 0.08);
	color: #008C89 !important;
}

/* Mobile nav — light */
html[data-theme="light"] body.helix-storefront-shell .menu-toggle {
	background: rgba(47, 59, 59, 0.06) !important;
	border: 1px solid rgba(47, 59, 59, 0.12) !important;
	color: #2F3B3B !important;
}

html[data-theme="light"] body.helix-storefront-shell .handheld-navigation,
html[data-theme="light"] body.helix-storefront-shell .main-navigation.toggled {
	background: #ffffff !important;
	border-top: 1px solid rgba(47, 59, 59, 0.1);
}

html[data-theme="light"] body.helix-storefront-shell .handheld-navigation ul li a,
html[data-theme="light"] body.helix-storefront-shell .main-navigation.toggled ul li a {
	color: #2F3B3B !important;
}

html[data-theme="light"] body.helix-storefront-shell .handheld-navigation ul li a:hover,
html[data-theme="light"] body.helix-storefront-shell .main-navigation.toggled ul li a:hover {
	background: rgba(0, 140, 137, 0.06);
	color: #008C89 !important;
}

/* Dropdown submenus — light */
html[data-theme="light"] .helix-storefront-shell .main-navigation ul.menu ul,
html[data-theme="light"] .helix-storefront-shell .main-navigation ul.nav-menu ul {
	background: #ffffff;
	border: 1px solid rgba(47, 59, 59, 0.1);
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.08);
}

/* Shell site bg — light */
html[data-theme="light"] .helix-storefront-shell .site {
	background: #f8f9fa;
}

html[data-theme="light"] .helix-storefront-shell {
	--helix-shell-header-bg: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 249, 250, 0.96));
}

/* Single product body — light */
html[data-theme="light"] body.single-product {
	background: #f8f9fa !important;
}

/* Legal pages (.mv-legal, .mv-tos) override their own colors inline,
   but in case they don't, ensure readability on dark bg */
body.helix-branded:not(.helix-storefront-shell) .entry-content {
	color: rgba(255, 255, 255, 0.85);
}

body.helix-branded:not(.helix-storefront-shell) .entry-title {
	color: #ffffff;
}


/* ============================================================
   CONSOLIDATED FROM MU-PLUGINS (Phase 1 — March 2026)
   Previously in helix-hotfix.php + helix-template-force.php
   ============================================================ */

/* Search bar — compact pill */
.helix-storefront-shell .site-search {
    max-width: 220px;
    height: 40px;
    max-height: 40px;
    overflow: hidden;
    border-radius: 20px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.1);
    display: flex;
    align-items: center;
    padding: 0;
}
.helix-storefront-shell .site-search .widget,
.helix-storefront-shell .site-search .widget_product_search {
    margin: 0; padding: 0;
    height: 38px; width: 100%;
    display: flex; align-items: center;
}
.helix-storefront-shell .site-search .woocommerce-product-search {
    display: flex; align-items: center;
    margin: 0; padding: 0; height: 38px;
}
.helix-storefront-shell .site-search input[type="search"] {
    background: transparent;
    border: none;
    color: rgba(255,255,255,0.8);
    padding: 8px 16px;
    font-size: 13px;
    height: 38px;
    line-height: 38px;
}
.helix-storefront-shell .site-search input[type="search"]::placeholder {
    color: rgba(255,255,255,0.4);
}
.helix-storefront-shell .site-search button[type="submit"],
.helix-storefront-shell .site-search .search-field + button {
    display: none;
}

/* Header nav — ensure visible */
.helix-storefront-shell .site-header .main-navigation,
.helix-storefront-shell .storefront-primary-navigation,
.helix-storefront-shell #site-navigation {
    display: block; visibility: visible;
}
.helix-storefront-shell #site-navigation > .menu:not(.nav-menu):not(:first-child) {
    display: none;
}

/* Hide header cart — floating cart bottom-right replaces it */
.helix-storefront-shell .site-header-cart,
.helix-storefront-shell ul.site-header-cart,
.helix-storefront-shell #site-header-cart {
    display: none;
}

/* Logo swap for light mode */
[data-theme="light"] .custom-logo-link .custom-logo,
[data-theme="light"] .site-logo-anchor img,
[data-theme="light"] .site-branding img {
    content: url('https://medvinciresearch.com/wp-content/uploads/2026/03/DISTRIBUTION-dark-long-e1774471232515.png') !important;
}
/* Hide old floating toggle */
.pci-theme-toggle { display: none !important; }
/* Header toggle base styles (on all pages) */
.mv-header-toggle {
    display: inline-flex; align-items: center; justify-content: center;
    width: 38px; height: 38px; border-radius: 10px;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.06);
    cursor: pointer; transition: all 0.2s; flex-shrink: 0; padding: 0; margin-left: 8px;
}
.mv-header-toggle:hover { background: rgba(79,209,197,0.12); border-color: rgba(79,209,197,0.3); }
.mv-header-toggle svg { width: 18px; height: 18px; color: rgba(255,255,255,0.7); transition: color 0.2s; }
.mv-header-toggle:hover svg { color: #4fd1c5; }
.mv-header-toggle .mv-icon-moon { display: none; }
.mv-header-toggle .mv-icon-sun { display: block; }
[data-theme="light"] .mv-header-toggle .mv-icon-sun { display: none; }
[data-theme="light"] .mv-header-toggle .mv-icon-moon { display: block; }
[data-theme="light"] .mv-header-toggle { border-color: rgba(47,59,59,0.15); background: rgba(0,0,0,0.04); }
[data-theme="light"] .mv-header-toggle:hover { background: rgba(0,140,137,0.08); }
[data-theme="light"] .mv-header-toggle svg { color: #5A6A6A; }
[data-theme="light"] .mv-header-toggle:hover svg { color: #008C89; }
@media(max-width:768px){.mv-header-toggle{width:34px;height:34px}.mv-header-toggle svg{width:16px;height:16px}}

/* Expand grid to 5 columns: logo | nav | search | toggle | cart */
.helix-storefront-shell .site-header,
.helix-branded .site-header {
    grid-template-columns: auto minmax(0, 1fr) auto auto auto !important;
    max-width: 100% !important;
    width: 100% !important;
}

/* Toggle sits in column 4 */
.mv-header-toggle {
    grid-column: 4 !important;
    align-self: center !important;
    justify-self: center !important;
}

/* Cart moves to column 5 */
.helix-storefront-shell .site-header-cart,
.helix-branded .site-header-cart {
    grid-column: 5 !important;
}

/* Full-width header — remove Storefront max-width cap */
.helix-storefront-shell .site-header,
.helix-branded .site-header {
    padding-left: clamp(24px, 3vw, 48px) !important;
    padding-right: clamp(24px, 3vw, 48px) !important;
}

/* ---- Light mode header ---- */
[data-theme="light"] .site-header,
[data-theme="light"] .helix-storefront-shell .site-header,
[data-theme="light"] .helix-branded .site-header {
    background: #FFFFFF !important;
    border-bottom: 1px solid rgba(47,59,59,0.1) !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04) !important;
}
[data-theme="light"] .site-header .site-title a,
[data-theme="light"] .site-header .site-description {
    color: #2F3B3B !important;
}
[data-theme="light"] .main-navigation a {
    color: #2F3B3B !important;
}
[data-theme="light"] .main-navigation a:hover,
[data-theme="light"] .main-navigation .current-menu-item > a {
    color: #008C89 !important;
}
[data-theme="light"] .site-header-cart a {
    color: #2F3B3B !important;
}
[data-theme="light"] .site-header-cart .count {
    background: #008C89 !important;
    color: #FFFFFF !important;
}

/* Light mode nav pills — no dark bg */
[data-theme="light"] .helix-storefront-shell .main-navigation ul.menu > li > a:hover,
[data-theme="light"] .helix-storefront-shell .main-navigation .current-menu-item > a {
    background: rgba(0,140,137,0.08) !important;
    color: #008C89 !important;
}

/* Light mode search bar */
[data-theme="light"] .site-search,
[data-theme="light"] .site-search .woocommerce-product-search {
    background: #F0F2F4 !important;
    border: 1px solid rgba(47,59,59,0.12) !important;
}
[data-theme="light"] .site-search input[type="search"] {
    color: #2F3B3B !important;
    background: transparent !important;
}
[data-theme="light"] .site-search input[type="search"]::placeholder {
    color: #8A9A9A !important;
}

/* Light mode cart button */
[data-theme="light"] .site-header-cart .cart-contents {
    background: #F0F2F4 !important;
    border: 1px solid rgba(47,59,59,0.12) !important;
    color: #2F3B3B !important;
}

/* Light mode dropdown menus */
[data-theme="light"] .main-navigation ul.menu ul {
    background: #FFFFFF !important;
    border: 1px solid rgba(47,59,59,0.1) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.08) !important;
}
[data-theme="light"] .main-navigation ul ul a {
    color: #2F3B3B !important;
}
[data-theme="light"] .main-navigation ul ul a:hover {
    background: rgba(0,140,137,0.06) !important;
    color: #008C89 !important;
}

/* Mobile toggle + hamburger */
[data-theme="light"] .menu-toggle {
    color: #2F3B3B !important;
    border-color: rgba(47,59,59,0.2) !important;
    background: rgba(0,0,0,0.03) !important;
}
[data-theme="light"] .menu-toggle::before {
    color: #2F3B3B !important;
}

/* Mobile — toggle stays visible, stack header properly */
@media (max-width: 980px) {
    .helix-storefront-shell .site-header,
    .helix-branded .site-header {
        grid-template-columns: 1fr auto auto auto !important;
    }
    .helix-storefront-shell .site-header .main-navigation:not(.toggled),
    .helix-branded .site-header .main-navigation:not(.toggled),
    .helix-storefront-shell .site-header .site-search,
    .helix-branded .site-header .site-search {
        display: none !important;
    }
    .mv-header-toggle { grid-column: 2 !important; }
    .helix-storefront-shell .site-header-cart,
    .helix-branded .site-header-cart { grid-column: 3 !important; display: inline-flex !important; }
    .helix-storefront-shell .menu-toggle,
    .helix-branded .menu-toggle { grid-column: 4 !important; display: inline-flex !important; }
}

/* Main header container */
.helix-branded .site-header,
.helix-storefront-shell .site-header {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 14px clamp(20px, 3vw, 48px) !important;
    gap: 20px !important;
    box-sizing: border-box !important;
}

/* Kill ALL nested wrappers — they break layout */
.helix-branded .site-header > .col-full,
.helix-branded .site-header .storefront-primary-navigation,
.helix-branded .site-header .storefront-primary-navigation > .col-full,
.helix-storefront-shell .site-header > .col-full,
.helix-storefront-shell .site-header .storefront-primary-navigation,
.helix-storefront-shell .site-header .storefront-primary-navigation > .col-full {
    display: contents !important;
}

/* Logo — far left, no shrink */
.helix-branded .site-branding,
.helix-storefront-shell .site-branding {
    flex: 0 0 auto !important;
    order: 1 !important;
}

/* Nav — center, fills space */
.helix-branded .main-navigation,
.helix-storefront-shell .main-navigation {
    flex: 1 1 auto !important;
    order: 2 !important;
    justify-content: center !important;
}
.helix-branded .main-navigation ul.menu,
.helix-storefront-shell .main-navigation ul.menu {
    display: flex !important;
    justify-content: center !important;
    gap: 8px !important;
}

/* Search — auto width */
.helix-branded .site-search,
.helix-storefront-shell .site-search {
    flex: 0 1 280px !important;
    order: 3 !important;
    min-width: 160px !important;
}

/* Toggle — placed by JS before cart */
.mv-header-toggle {
    order: 4 !important;
}

/* Cart — far right */
.helix-branded .site-header-cart,
.helix-storefront-shell .site-header-cart {
    flex: 0 0 auto !important;
    order: 5 !important;
}

/* Hide floating toggle — now in header */
.pci-theme-toggle { display: none !important; }

/* Mobile header */
@media (max-width: 980px) {
    .helix-branded .site-header,
    .helix-storefront-shell .site-header {
        flex-wrap: nowrap !important;
        gap: 12px !important;
        padding: 10px 16px !important;
    }
    /* Hide nav + search on mobile (hamburger reveals) */
    .helix-branded .main-navigation:not(.toggled),
    .helix-storefront-shell .main-navigation:not(.toggled) {
        display: none !important;
    }
    .helix-branded .site-search,
    .helix-storefront-shell .site-search {
        display: none !important;
    }
    /* Logo fills, rest auto */
    .helix-branded .site-branding,
    .helix-storefront-shell .site-branding {
        flex: 1 1 auto !important;
    }
    .mv-header-toggle { order: 4 !important; }
    .helix-branded .site-header-cart,
    .helix-storefront-shell .site-header-cart {
        order: 5 !important;
    }
    /* Hamburger */
    .helix-branded .menu-toggle,
    .helix-storefront-shell .menu-toggle {
        order: 6 !important;
        display: inline-flex !important;
    }
}

/* ================================================================
   HEADER v3 - Storefront hook-aware flexbox layout
   DOM: header > .col-full (logo+search) + .storefront-primary-navigation (nav+cart)
   Fix: dissolve both wrappers, flex-order all children into single row
   ================================================================ */

.helix-branded .site-header,
.helix-storefront-shell .site-header {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 14px 40px !important;
    gap: 24px !important;
    box-sizing: border-box !important;
}

/* Dissolve BOTH wrapper divs */
.helix-branded .site-header > .col-full,
.helix-branded .site-header > .storefront-primary-navigation,
.helix-storefront-shell .site-header > .col-full,
.helix-storefront-shell .site-header > .storefront-primary-navigation {
    display: contents !important;
}

/* Logo - far left */
.helix-branded .site-branding,
.helix-storefront-shell .site-branding {
    flex: 0 0 auto !important;
    order: 1 !important;
}

/* Primary nav - center fills space */
.helix-branded .main-navigation,
.helix-storefront-shell .main-navigation {
    flex: 1 1 auto !important;
    order: 2 !important;
    display: flex !important;
    justify-content: center !important;
}
.helix-branded .main-navigation ul.menu,
.helix-storefront-shell .main-navigation ul.menu {
    display: flex !important;
    justify-content: center !important;
    gap: 4px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Search bar */
.helix-branded .site-search,
.helix-storefront-shell .site-search {
    flex: 0 1 260px !important;
    order: 3 !important;
    min-width: 140px !important;
}

/* Toggle button (JS-injected before cart) */
.mv-header-toggle { order: 4 !important; flex: 0 0 auto !important; }

/* Cart - far right */
.helix-branded .site-header-cart,
.helix-storefront-shell .site-header-cart {
    flex: 0 0 auto !important;
    order: 5 !important;
}

/* Hide secondary nav + old floating toggle */
.helix-branded .storefront-secondary-navigation,
.helix-storefront-shell .storefront-secondary-navigation { display: none !important; }
.pci-theme-toggle { display: none !important; }

/* Dark mode nav links */
.helix-branded .main-navigation ul.menu > li > a,
.helix-storefront-shell .main-navigation ul.menu > li > a {
    color: rgba(255,255,255,0.85) !important;
    font-family: 'DM Sans', sans-serif !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    padding: 8px 16px !important;
    border-radius: 8px !important;
    transition: all 0.2s !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}
.helix-branded .main-navigation ul.menu > li > a:hover,
.helix-storefront-shell .main-navigation ul.menu > li > a:hover,
.helix-branded .main-navigation ul.menu > li.current-menu-item > a,
.helix-storefront-shell .main-navigation ul.menu > li.current-menu-item > a {
    color: #4fd1c5 !important;
    background: rgba(79,209,197,0.08) !important;
}

/* Dark dropdown menus */
.helix-branded .main-navigation ul.menu ul,
.helix-storefront-shell .main-navigation ul.menu ul {
    background: #0d1f31 !important;
    border: 1px solid rgba(79,209,197,0.15) !important;
    border-radius: 10px !important;
    box-shadow: 0 12px 32px rgba(0,0,0,0.3) !important;
    padding: 6px !important;
    min-width: 200px !important;
}
.helix-branded .main-navigation ul.menu ul li a,
.helix-storefront-shell .main-navigation ul.menu ul li a {
    color: rgba(255,255,255,0.75) !important;
    padding: 10px 16px !important;
    border-radius: 6px !important;
    font-size: 13px !important;
}
.helix-branded .main-navigation ul.menu ul li a:hover,
.helix-storefront-shell .main-navigation ul.menu ul li a:hover {
    color: #4fd1c5 !important;
    background: rgba(79,209,197,0.08) !important;
}

/* ================================================================
   LIGHT MODE HEADER
   ================================================================ */
[data-theme="light"] .site-header {
    background: #FFFFFF !important;
    border-bottom: 1px solid rgba(47,59,59,0.08) !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04) !important;
}
[data-theme="light"] .main-navigation ul.menu > li > a {
    color: #2F3B3B !important;
}
[data-theme="light"] .main-navigation ul.menu > li > a:hover,
[data-theme="light"] .main-navigation ul.menu > li.current-menu-item > a {
    color: #008C89 !important;
    background: rgba(0,140,137,0.06) !important;
}
[data-theme="light"] .main-navigation ul.menu ul {
    background: #FFFFFF !important;
    border: 1px solid rgba(47,59,59,0.1) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.1) !important;
}
[data-theme="light"] .main-navigation ul.menu ul li a {
    color: #5A6A6A !important;
}
[data-theme="light"] .main-navigation ul.menu ul li a:hover {
    color: #008C89 !important;
    background: rgba(0,140,137,0.05) !important;
}
[data-theme="light"] .site-search,
[data-theme="light"] .site-search .woocommerce-product-search {
    background: #F0F2F4 !important;
    border: 1px solid rgba(47,59,59,0.1) !important;
}
[data-theme="light"] .site-search input[type="search"] {
    color: #2F3B3B !important; background: transparent !important;
}
[data-theme="light"] .site-search input::placeholder { color: #8A9A9A !important; }
[data-theme="light"] .site-header-cart .cart-contents { color: #2F3B3B !important; }
[data-theme="light"] .site-header-cart .count { background: #008C89 !important; color: #fff !important; }
[data-theme="light"] .mv-header-toggle {
    border-color: rgba(47,59,59,0.15) !important;
    background: rgba(0,0,0,0.03) !important;
}
[data-theme="light"] .mv-header-toggle svg { color: #5A6A6A !important; }
[data-theme="light"] .mv-header-toggle:hover { background: rgba(0,140,137,0.06) !important; }
[data-theme="light"] .mv-header-toggle:hover svg { color: #008C89 !important; }
[data-theme="light"] .menu-toggle {
    color: #2F3B3B !important;
    border-color: rgba(47,59,59,0.2) !important;
}

/* ================================================================
   MOBILE (max 980px)
   ================================================================ */
@media (max-width: 980px) {
    .helix-branded .site-header,
    .helix-storefront-shell .site-header {
        flex-wrap: nowrap !important;
        gap: 12px !important;
        padding: 10px 16px !important;
    }
    .helix-branded .main-navigation:not(.toggled),
    .helix-storefront-shell .main-navigation:not(.toggled),
    .helix-branded .site-search,
    .helix-storefront-shell .site-search { display: none !important; }
    .helix-branded .site-branding,
    .helix-storefront-shell .site-branding { flex: 1 1 auto !important; }
    .helix-branded .menu-toggle,
    .helix-storefront-shell .menu-toggle {
        order: 6 !important; display: inline-flex !important;
    }
    .mv-header-toggle { width: 34px !important; height: 34px !important; }
    .mv-header-toggle svg { width: 16px !important; height: 16px !important; }
}

/* ================================================================
   HEADER v3.1 - Fix dark nav bar + 3rd wrapper + inline styles
   Storefront wraps nav in: .storefront-primary-navigation > .col-full
   This bar has its own background that doesnt respond to data-theme.
   ================================================================ */

/* Kill the nav bar background in BOTH modes */
.storefront-primary-navigation {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* Dissolve ALL THREE wrappers */
.helix-branded .site-header > .col-full,
.helix-storefront-shell .site-header > .col-full,
.helix-branded .storefront-primary-navigation,
.helix-storefront-shell .storefront-primary-navigation,
.helix-branded .storefront-primary-navigation > .col-full,
.helix-storefront-shell .storefront-primary-navigation > .col-full {
    display: contents !important;
    background: transparent !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Also nuke Storefront inline header background */
.helix-branded .site-header,
.helix-storefront-shell .site-header {
    background-image: none !important;
}

/* Light mode: override inline style too */
[data-theme="light"] .site-header {
    background: #FFFFFF !important;
    background-image: none !important;
    background-color: #FFFFFF !important;
}

/* ================================================================
   MOBILE NAV - proper dropdown + kill dark bar everywhere
   ================================================================ */

/* KILL the dark nav bar on ALL modes */
.storefront-primary-navigation,
.helix-branded .storefront-primary-navigation,
.helix-storefront-shell .storefront-primary-navigation {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Light mode - ensure header is fully white */
[data-theme="light"] .storefront-primary-navigation {
    background: transparent !important;
}
[data-theme="light"] #masthead {
    background: #FFFFFF !important;
    background-color: #FFFFFF !important;
    background-image: none !important;
}

/* Mobile nav - hamburger opens full-width dropdown */
@media (max-width: 980px) {
    /* Toggled nav becomes full-width dropdown */
    .helix-branded .main-navigation.toggled,
    .helix-storefront-shell .main-navigation.toggled {
        display: block !important;
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        z-index: 9999 !important;
        background: #0d1f31 !important;
        border-top: 1px solid rgba(79,209,197,0.15) !important;
        box-shadow: 0 12px 32px rgba(0,0,0,0.3) !important;
        padding: 12px 0 !important;
        order: 10 !important;
    }
    [data-theme="light"] .main-navigation.toggled {
        background: #FFFFFF !important;
        border-top: 1px solid rgba(47,59,59,0.1) !important;
        box-shadow: 0 8px 24px rgba(0,0,0,0.08) !important;
    }

    /* Menu items stack vertically */
    .main-navigation.toggled ul.menu {
        display: flex !important;
        flex-direction: column !important;
        gap: 0 !important;
        padding: 0 16px !important;
    }
    .main-navigation.toggled ul.menu > li {
        border-bottom: 1px solid rgba(255,255,255,0.06) !important;
    }
    [data-theme="light"] .main-navigation.toggled ul.menu > li {
        border-bottom: 1px solid rgba(47,59,59,0.06) !important;
    }
    .main-navigation.toggled ul.menu > li > a {
        display: block !important;
        padding: 14px 16px !important;
        font-size: 15px !important;
        color: rgba(255,255,255,0.85) !important;
        border-radius: 0 !important;
    }
    [data-theme="light"] .main-navigation.toggled ul.menu > li > a {
        color: #2F3B3B !important;
    }
    .main-navigation.toggled ul.menu > li > a:hover {
        background: rgba(79,209,197,0.08) !important;
        color: #4fd1c5 !important;
    }
    [data-theme="light"] .main-navigation.toggled ul.menu > li > a:hover {
        background: rgba(0,140,137,0.06) !important;
        color: #008C89 !important;
    }

    /* Mobile submenus - indent, no float */
    .main-navigation.toggled ul.menu ul {
        position: static !important;
        display: none !important;
        background: transparent !important;
        box-shadow: none !important;
        border: none !important;
        padding: 0 0 0 20px !important;
        min-width: 0 !important;
    }
    .main-navigation.toggled ul.menu li:hover > ul,
    .main-navigation.toggled ul.menu li.focus > ul,
    .main-navigation.toggled ul.menu li[aria-expanded="true"] > ul {
        display: block !important;
    }
    .main-navigation.toggled ul.menu ul li a {
        padding: 10px 16px !important;
        font-size: 14px !important;
        color: rgba(255,255,255,0.6) !important;
    }
    [data-theme="light"] .main-navigation.toggled ul.menu ul li a {
        color: #5A6A6A !important;
    }
    .main-navigation.toggled ul.menu ul li a:hover {
        color: #4fd1c5 !important;
    }
    [data-theme="light"] .main-navigation.toggled ul.menu ul li a:hover {
        color: #008C89 !important;
    }

    /* Dropdown arrow for items with children */
    .main-navigation.toggled ul.menu > li.menu-item-has-children > a::after {
        content: '\25BE' !important;
        float: right !important;
        margin-left: 8px !important;
        font-size: 12px !important;
        opacity: 0.5;
    }

    /* Hamburger button styling */
    .helix-branded .menu-toggle,
    .helix-storefront-shell .menu-toggle {
        background: transparent !important;
        border: 1px solid rgba(255,255,255,0.15) !important;
        border-radius: 8px !important;
        color: rgba(255,255,255,0.8) !important;
        padding: 6px 10px !important;
    }
    [data-theme="light"] .menu-toggle {
        border-color: rgba(47,59,59,0.15) !important;
        color: #2F3B3B !important;
    }

    /* Header needs relative for dropdown positioning */
    .helix-branded .site-header,
    .helix-storefront-shell .site-header {
        position: relative !important;
    }
}

/* ================================================================
   HEADER v3.2 - No more .storefront-primary-navigation wrapper
   PHP hooks removed it. Now header has:
   <header>
     <div.col-full> logo + search </div>
     <nav.main-navigation> nav </nav>
     <ul.site-header-cart> cart </ul>
     <button.mv-header-toggle> toggle </button>
   </header>
   ================================================================ */

/* Header itself is flex */
#masthead.site-header {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 12px 32px !important;
    gap: 20px !important;
    box-sizing: border-box !important;
    position: relative !important;
}

/* Dissolve only the first .col-full (logo+search wrapper) */
#masthead.site-header > .col-full {
    display: contents !important;
}

/* Ordering */
#masthead .site-branding { order: 1 !important; flex: 0 0 auto !important; }
#masthead .main-navigation { order: 2 !important; flex: 1 1 auto !important; display: flex !important; justify-content: center !important; }
#masthead .site-search { order: 3 !important; flex: 0 1 260px !important; min-width: 120px !important; }
#masthead .mv-header-toggle { order: 4 !important; flex: 0 0 auto !important; }
#masthead .site-header-cart { order: 5 !important; flex: 0 0 auto !important; }

/* Menu layout */
#masthead .main-navigation ul.menu {
    display: flex !important; justify-content: center !important;
    gap: 4px !important; list-style: none !important; margin: 0 !important; padding: 0 !important;
}
#masthead .main-navigation ul.menu > li > a {
    color: rgba(255,255,255,0.85) !important;
    font-family: 'DM Sans', sans-serif !important;
    font-weight: 500 !important; font-size: 14px !important;
    padding: 8px 16px !important; border-radius: 8px !important;
    transition: all 0.2s !important; white-space: nowrap !important;
}
#masthead .main-navigation ul.menu > li > a:hover,
#masthead .main-navigation .current-menu-item > a {
    color: #4fd1c5 !important; background: rgba(79,209,197,0.08) !important;
}

/* Desktop dropdown menus */
#masthead .main-navigation ul.menu ul {
    background: #0d1f31 !important; border: 1px solid rgba(79,209,197,0.15) !important;
    border-radius: 10px !important; box-shadow: 0 12px 32px rgba(0,0,0,0.3) !important;
    padding: 6px !important; min-width: 200px !important;
}
#masthead .main-navigation ul.menu ul li a {
    color: rgba(255,255,255,0.75) !important; padding: 10px 16px !important;
    border-radius: 6px !important; font-size: 13px !important;
}
#masthead .main-navigation ul.menu ul li a:hover {
    color: #4fd1c5 !important; background: rgba(79,209,197,0.08) !important;
}

/* LIGHT MODE header */
[data-theme="light"] #masthead.site-header {
    background: #FFFFFF !important; background-image: none !important;
    border-bottom: 1px solid rgba(47,59,59,0.08) !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04) !important;
}
[data-theme="light"] #masthead .main-navigation ul.menu > li > a { color: #2F3B3B !important; }
[data-theme="light"] #masthead .main-navigation ul.menu > li > a:hover,
[data-theme="light"] #masthead .main-navigation .current-menu-item > a {
    color: #008C89 !important; background: rgba(0,140,137,0.06) !important;
}
[data-theme="light"] #masthead .main-navigation ul.menu ul {
    background: #FFFFFF !important; border: 1px solid rgba(47,59,59,0.1) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.1) !important;
}
[data-theme="light"] #masthead .main-navigation ul.menu ul li a { color: #5A6A6A !important; }
[data-theme="light"] #masthead .main-navigation ul.menu ul li a:hover {
    color: #008C89 !important; background: rgba(0,140,137,0.05) !important;
}

[data-theme="light"] #masthead .site-search { background: #F0F2F4 !important; border: 1px solid rgba(47,59,59,0.1) !important; border-radius: 20px !important; }
[data-theme="light"] #masthead .site-search input { color: #2F3B3B !important; background: transparent !important; }
[data-theme="light"] #masthead .site-header-cart .cart-contents { color: #2F3B3B !important; }
[data-theme="light"] #masthead .site-header-cart .count { background: #008C89 !important; color: #fff !important; }
[data-theme="light"] #masthead .mv-header-toggle { border-color: rgba(47,59,59,0.15) !important; background: rgba(0,0,0,0.03) !important; }
[data-theme="light"] #masthead .mv-header-toggle svg { color: #5A6A6A !important; }
[data-theme="light"] #masthead .mv-header-toggle:hover svg { color: #008C89 !important; }
[data-theme="light"] #masthead .menu-toggle { color: #2F3B3B !important; border-color: rgba(47,59,59,0.15) !important; }

/* Hide any remaining .storefront-primary-navigation that got through */
.storefront-primary-navigation {
    display: contents !important;
    background: transparent !important;
}
.storefront-primary-navigation > .col-full {
    display: contents !important;
}

/* MOBILE HEADER */
@media (max-width: 980px) {
    #masthead.site-header { gap: 12px !important; padding: 10px 16px !important; }
    #masthead .main-navigation:not(.toggled),
    #masthead .site-search { display: none !important; }
    #masthead .site-branding { flex: 1 1 auto !important; }
    #masthead .mv-header-toggle { order: 4 !important; width: 36px !important; height: 36px !important; }
    #masthead .site-header-cart { order: 5 !important; }
    #masthead .menu-toggle { order: 6 !important; display: inline-flex !important;
        background: transparent !important; border: 1px solid rgba(255,255,255,0.15) !important;
        border-radius: 8px !important; color: rgba(255,255,255,0.8) !important; padding: 6px 10px !important; }
    [data-theme="light"] #masthead .menu-toggle { border-color: rgba(47,59,59,0.15) !important; color: #2F3B3B !important; }

    /* Mobile nav dropdown */
    #masthead .main-navigation.toggled {
        display: block !important; position: absolute !important;
        top: 100% !important; left: 0 !important; right: 0 !important;
        width: 100% !important; z-index: 9999 !important;
        background: #0d1f31 !important;
        border-top: 1px solid rgba(79,209,197,0.15) !important;
        box-shadow: 0 12px 32px rgba(0,0,0,0.3) !important;
        padding: 8px 0 !important;
    }
    [data-theme="light"] #masthead .main-navigation.toggled {
        background: #FFFFFF !important;
        border-top: 1px solid rgba(47,59,59,0.08) !important;
        box-shadow: 0 8px 24px rgba(0,0,0,0.08) !important;
    }

    #masthead .main-navigation.toggled ul.menu {
        display: flex !important; flex-direction: column !important; gap: 0 !important; padding: 0 16px !important;
    }
    #masthead .main-navigation.toggled ul.menu > li {
        border-bottom: 1px solid rgba(255,255,255,0.06) !important;
    }
    [data-theme="light"] #masthead .main-navigation.toggled ul.menu > li {
        border-bottom: 1px solid rgba(47,59,59,0.06) !important;
    }
    #masthead .main-navigation.toggled ul.menu > li > a {
        display: block !important; padding: 14px 16px !important; font-size: 15px !important;
        color: rgba(255,255,255,0.85) !important; border-radius: 0 !important;
    }
    [data-theme="light"] #masthead .main-navigation.toggled ul.menu > li > a { color: #2F3B3B !important; }
    #masthead .main-navigation.toggled ul.menu > li > a:hover { color: #4fd1c5 !important; background: rgba(79,209,197,0.06) !important; }
    [data-theme="light"] #masthead .main-navigation.toggled ul.menu > li > a:hover { color: #008C89 !important; }

    /* Mobile submenus */
    #masthead .main-navigation.toggled ul.menu ul {
        position: static !important; display: none !important;
        background: transparent !important; box-shadow: none !important;
        border: none !important; padding: 0 0 0 20px !important; min-width: 0 !important; border-radius: 0 !important;
    }
    #masthead .main-navigation.toggled ul.menu li:hover > ul,
    #masthead .main-navigation.toggled ul.menu li.focus > ul { display: block !important; }
    #masthead .main-navigation.toggled ul.menu ul li a {
        padding: 10px 16px !important; font-size: 14px !important; color: rgba(255,255,255,0.5) !important;
    }
    [data-theme="light"] #masthead .main-navigation.toggled ul.menu ul li a { color: #8A9A9A !important; }
}

/* ================================================================
   HAMBURGER + NAV VISIBILITY FIX
   ================================================================ */

/* Desktop: ensure nav is visible (not hidden by :not(.toggled) rule) */
@media (min-width: 981px) {
    #masthead .main-navigation {
        display: flex !important;
    }
    #masthead .menu-toggle {
        display: none !important;
    }
}

/* Mobile: hamburger always visible */
@media (max-width: 980px) {
    #masthead .menu-toggle {
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
        background: transparent !important;
        border: 1px solid rgba(255,255,255,0.15) !important;
        border-radius: 8px !important;
        color: rgba(255,255,255,0.8) !important;
        padding: 8px 12px !important;
        font-size: 13px !important;
        cursor: pointer !important;
        order: 6 !important;
    }
    [data-theme="light"] #masthead .menu-toggle {
        border-color: rgba(47,59,59,0.15) !important;
        color: #2F3B3B !important;
    }
    /* Hide nav when NOT toggled on mobile */
    #masthead .main-navigation:not(.toggled) {
        display: none !important;
    }
    /* Show nav when toggled */
    #masthead .main-navigation.toggled {
        display: block !important;
        position: absolute !important;
        top: 100% !important;
        left: 0 !important; right: 0 !important;
        width: 100% !important;
        z-index: 9999 !important;
        background: #0d1f31 !important;
        border-top: 1px solid rgba(79,209,197,0.15) !important;
        box-shadow: 0 12px 32px rgba(0,0,0,0.3) !important;
        padding: 8px 0 !important;
        order: 10 !important;
    }
    [data-theme="light"] #masthead .main-navigation.toggled {
        background: #FFFFFF !important;
        border-top: 1px solid rgba(47,59,59,0.08) !important;
        box-shadow: 0 8px 24px rgba(0,0,0,0.08) !important;
    }
    #masthead .main-navigation.toggled ul.menu {
        display: flex !important; flex-direction: column !important;
        gap: 0 !important; padding: 0 16px !important;
    }
    #masthead .main-navigation.toggled ul.menu > li {
        border-bottom: 1px solid rgba(255,255,255,0.06) !important;
    }
    #masthead .main-navigation.toggled ul.menu > li > a {
        display: block !important; padding: 14px 16px !important;
        font-size: 15px !important; border-radius: 0 !important;
        color: rgba(255,255,255,0.85) !important;
    }
    [data-theme="light"] #masthead .main-navigation.toggled ul.menu > li > a {
        color: #2F3B3B !important;
    }
    [data-theme="light"] #masthead .main-navigation.toggled ul.menu > li {
        border-color: rgba(47,59,59,0.06) !important;
    }
    #masthead .main-navigation.toggled ul.menu ul {
        position: static !important; display: none !important;
        background: transparent !important; box-shadow: none !important;
        border: none !important; padding: 0 0 0 20px !important;
        min-width: 0 !important; border-radius: 0 !important;
    }
}

/* ================================================================
   OVERRIDE STOREFRONT CUSTOMIZER COLORS
   Customizer outputs #storefront-style-inline-css with nav colors.
   These selectors must match or exceed that specificity.
   ================================================================ */

/* Override Customizer nav link colors (it sets #1e73be) */
body .site-header .main-navigation ul li a,
body .main-navigation ul li a,
body .site-header .main-navigation ul li a:visited {
    color: rgba(255,255,255,0.85) !important;
}
body .site-header .main-navigation ul li a:hover,
body .main-navigation ul li:hover > a,
body .site-header ul.menu li.current-menu-item > a {
    color: #4fd1c5 !important;
}

/* Light mode nav colors */
[data-theme="light"] body .site-header .main-navigation ul li a,
[data-theme="light"] body .main-navigation ul li a {
    color: #2F3B3B !important;
}
[data-theme="light"] body .site-header .main-navigation ul li a:hover,
[data-theme="light"] body .main-navigation ul li:hover > a,
[data-theme="light"] body .site-header ul.menu li.current-menu-item > a {
    color: #008C89 !important;
}

/* Override Customizer submenu bg (#f0f0f0) */
body .main-navigation ul.menu ul.sub-menu,
body .main-navigation ul.nav-menu ul.children {
    background-color: #0d1f31 !important;
}
[data-theme="light"] body .main-navigation ul.menu ul.sub-menu,
[data-theme="light"] body .main-navigation ul.nav-menu ul.children {
    background-color: #FFFFFF !important;
}

/* Override Customizer header border */
body .site-header {
    border-bottom-color: rgba(79,209,197,0.1) !important;
}
[data-theme="light"] body .site-header {
    border-bottom-color: rgba(47,59,59,0.08) !important;
}

/* ================================================================
   BODY BACKGROUNDS - scoped to theme mode
   ================================================================ */
[data-theme="dark"] body,
[data-theme="dark"] .site-content,
[data-theme="dark"] #content {
    background-color: #0a1520 !important;
}
[data-theme="light"] body,
[data-theme="light"] .site-content,
[data-theme="light"] #content {
    background-color: #F8F9FA !important;
}
/* Content wrapper - transparent to inherit */
#content > .col-full {
    background: transparent !important;
}

/* ================================================================
   HAMBURGER - Storefront wraps toggle in .storefront-primary-navigation
   which we removed. Force toggle to show on mobile and work.
   ================================================================ */

/* Desktop: nav visible, hamburger hidden */
@media (min-width: 981px) {
    #masthead .main-navigation { display: flex !important; }
    #masthead .menu-toggle { display: none !important; }
}

/* Mobile: hamburger visible, nav hidden until toggled */
@media (max-width: 980px) {
    #masthead .menu-toggle {
        display: inline-flex !important;
        align-items: center !important;
        background: transparent !important;
        border: 1px solid rgba(255,255,255,0.15) !important;
        border-radius: 8px !important;
        color: rgba(255,255,255,0.8) !important;
        padding: 8px 12px !important;
        cursor: pointer !important;
        order: 6 !important;
        font-size: 14px !important;
    }
    [data-theme="light"] #masthead .menu-toggle {
        border-color: rgba(47,59,59,0.15) !important;
        color: #2F3B3B !important;
    }

    /* Hide nav when not toggled */
/* REMOVED: was hiding nav on desktop */
    
    /* Toggled nav - dropdown */
    #masthead .main-navigation.toggled {
        display: block !important;
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        z-index: 9999 !important;
        background: #0d1f31 !important;
        border-top: 1px solid rgba(79,209,197,0.12) !important;
        box-shadow: 0 12px 32px rgba(0,0,0,0.35) !important;
        padding: 8px 0 !important;
    }
    [data-theme="light"] #masthead .main-navigation.toggled {
        background: #FFFFFF !important;
        border-top: 1px solid rgba(47,59,59,0.08) !important;
        box-shadow: 0 8px 24px rgba(0,0,0,0.08) !important;
    }

    /* Menu items in dropdown */
    #masthead .main-navigation.toggled ul.menu {
        display: flex !important;
        flex-direction: column !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    #masthead .main-navigation.toggled ul.menu > li {
        border-bottom: 1px solid rgba(255,255,255,0.06) !important;
    }
    [data-theme="light"] #masthead .main-navigation.toggled ul.menu > li {
        border-color: rgba(47,59,59,0.06) !important;
    }
    #masthead .main-navigation.toggled ul.menu > li > a {
        display: block !important;
        padding: 14px 20px !important;
        font-size: 15px !important;
        color: rgba(255,255,255,0.85) !important;
        border-radius: 0 !important;
    }
    [data-theme="light"] #masthead .main-navigation.toggled ul.menu > li > a {
        color: #2F3B3B !important;
    }

    /* Submenus in dropdown */
    #masthead .main-navigation.toggled ul.menu ul {
        position: static !important;
        display: none !important;
        background: transparent !important;
        box-shadow: none !important;
        border: none !important;
        padding: 0 0 0 24px !important;
        min-width: 0 !important;
    }
    #masthead .main-navigation.toggled ul.menu ul li a {
        padding: 10px 20px !important;
        font-size: 14px !important;
        color: rgba(255,255,255,0.5) !important;
    }
    [data-theme="light"] #masthead .main-navigation.toggled ul.menu ul li a {
        color: #8A9A9A !important;
    }
    /* Arrow for parent items */
    #masthead .main-navigation.toggled .menu-item-has-children > a::after {
        content: '\25BE' !important;
        float: right !important;
        opacity: 0.4;
    }
}

/* ================================================================
   DESKTOP SAFETY: nav + search + cart always visible above 980px
   ================================================================ */
@media (min-width: 981px) {
    #masthead .main-navigation,
    .helix-branded .main-navigation,
    .helix-storefront-shell .main-navigation {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
    #masthead .site-search,
    .helix-branded .site-search,
    .helix-storefront-shell .site-search {
        display: block !important;
        visibility: visible !important;
    }
    #masthead .site-header-cart,
    .helix-branded .site-header-cart,
    .helix-storefront-shell .site-header-cart {
        display: inline-flex !important;
        visibility: visible !important;
    }
    #masthead .menu-toggle,
    .helix-branded .menu-toggle,
    .helix-storefront-shell .menu-toggle {
        display: none !important;
    }
}
