/* Core Vault Category Banner Content Target */
.category-heading,
.page-heading,
main#product-listing-container .page-header,
.page-content[data-category-banner] .page-header {
  background-image: url(https://cdn11.bigcommerce.com/s-0ruwnqmdy9/images/stencil/original/image-manager/elegant-minerals-natural-mineral-makeup-foundation.jpg?t=1783045391) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  padding: 40px 30px !important;
  border-radius: 8px !important;
  border: 1px solid #e8e3cc !important;
  margin-bottom: 30px !important; }

/* Force dark text to change to high-contrast white over the background image */
.category-heading,
.page-heading,
main#product-listing-container .page-header p,
main#product-listing-container .page-header h1 {
  color: #ffffff !important;
  text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.6) !important; }

/* Fix for overlapping shop sorting buttons */
.actionBar-section {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  align-items: center !important; }

.actionBar-section .button {
  margin: 0 !important;
  white-space: nowrap !important;
  min-width: auto !important;
  padding: 0.5rem 1rem !important; }

/* Hide View All Brands link in sidebar menu */
ul.brands-menu li a[href*="brands.asp"],
.brands-list-link,
a[href="/brands.asp"] {
  display: none !important; }

@media screen and (min-width: 801px) {
  /* Completely disable mobile menu layers on desktop */
  .mobileMenu-panel,
  .nav-sidebar,
  [class*="mobileMenu"][class*="panel"],
  div#menu-sidebar,
  div[class*="menu-overlay"],
  .modal-background {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    position: absolute !important;
    z-index: -100 !important; }
  /* Restore normal scroll and stacking for desktop layout */
  body,
  .main,
  #main-content,
  .page {
    position: relative !important;
    z-index: 10 !important;
    overflow: visible !important;
    background-color: transparent !important; }
  /* Keep header and carousel properly layered */
  header.header,
  .header-sticky-wrapper {
    position: relative !important;
    z-index: 9999 !important; } }

.header,
.header-sticky-wrapper,
.navPages-container {
  position: relative !important;
  z-index: 999999 !important; }

/* Force top navigation to stay centered or left-aligned */
.header .navPages-container,
.header .navPages,
.header .navPages-list {
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  float: none !important;
  margin: 0 auto !important;
  position: relative !important;
  left: 0 !important;
  right: 0 !important; }

/* Keep top navigation aligned in BOTH normal and sticky states */
.header .navPages-container,
.header .navPages,
.header .navPages-list,
.header-sticky-wrapper .navPages-container,
.header-sticky-wrapper .navPages,
.header-sticky-wrapper .navPages-list {
  display: flex !important;
  justify-content: center !important;
  /* or flex-start if you prefer left */
  align-items: center !important;
  float: none !important;
  margin: 0 auto !important;
  position: relative !important;
  left: 0 !important;
  right: 0 !important;
  transform: none !important; }

/* Fix alignment for BOTH normal and sticky header states */
.header .navPages-container,
.header .navPages,
.header .navPages-list,
.header-sticky-wrapper .navPages-container,
.header-sticky-wrapper .navPages,
.header-sticky-wrapper .navPages-list {
  display: flex !important;
  justify-content: center !important;
  /* or flex-start if you prefer left */
  align-items: center !important;
  float: none !important;
  margin: 0 auto !important;
  position: relative !important;
  left: 0 !important;
  right: 0 !important;
  transform: none !important; }

/* 1. Stop sticky header from overlaying the entire page */
.header-sticky-wrapper {
  position: relative !important;
  width: auto !important;
  height: auto !important;
  transform: none !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 10 !important;
  /* lower than left menu */ }

/* 2. Ensure left navigation menu stays on top */
.mobileMenu-panel,
.nav-sidebar {
  position: fixed !important;
  left: 0 !important;
  right: auto !important;
  z-index: 999999 !important;
  /* higher than sticky header */ }

/* 3. Prevent sticky header from pushing layout sideways */
.header,
.header-sticky-wrapper,
.navPages-container {
  float: none !important;
  margin: 0 !important;
  transform: none !important; }

/* Limit sorting bar overrides to product listing pages only */
.page-type-category .actionBar,
.page-type-category .actionBar-section,
.page-type-category [data-sort-by="product"],
.page-type-category .form-field--sort {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 25px 0 35px 0 !important;
  padding: 16px !important;
  background: rgba(255, 255, 255, 0.6) !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 6px !important;
  box-sizing: border-box !important; }

/* Limit sorting bar layout to product listing area only */
.page-type-category .actionBar,
.page-type-category .form-field--sort {
  max-width: 600px !important;
  margin: 0 auto 25px auto !important;
  justify-content: center !important;
  align-items: center !important; }

/* Keep sidebar anchored on the left and clickable */
.nav-sidebar,
.mobileMenu-panel {
  position: relative !important;
  left: 0 !important;
  right: auto !important;
  z-index: 999999 !important;
  transform: none !important; }

.nav-sidebar {
  position: sticky !important;
  top: 120px !important; }

/* Ensure sorting bar and sidebar don't overlap */
.page-type-category .actionBar {
  clear: both !important; }

.header-sticky-wrapper {
  position: relative !important;
  width: auto !important;
  height: auto !important;
  transform: none !important;
  z-index: 10 !important;
  /* lower than sidebar */ }

.nav-sidebar {
  position: relative !important;
  z-index: 999999 !important; }

/* Prevent product content from sliding under sticky header */
.page-type-product .main-content {
  margin-top: 140px !important;
  /* adjust if header height differs */
  position: relative !important;
  z-index: 1 !important; }

/* Keep sticky header from overlapping product info */
.header-sticky-wrapper {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 99999 !important; }

/* Ensure product title and price remain visible */
.productView-title,
.productView-price {
  position: relative !important;
  z-index: 2 !important; }

/* Restore sidebar visibility on desktop */
@media screen and (min-width: 801px) {
  .nav-sidebar {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 9999 !important;
    transform: none !important; } }

/* Limit sorting bar overrides to category pages only */
.page-type-category .actionBar,
.page-type-category .form-field--sort,
.page-type-category form[data-sort-by] {
  display: block !important;
  width: 100% !important;
  max-width: 650px !important;
  margin: 25px auto 35px auto !important;
  padding: 24px 20px !important;
  background: #ffffff !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 6px !important;
  text-align: center !important; }

/* Stabilize sticky header */
#menu.fixed,
#menu-wrapper.fixed {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 99999 !important;
  transform: none !important; }

/* Add spacing below sticky header on product pages */
.page-type-product #main-content {
  margin-top: 140px !important; }

.category-heading,
.page-heading,
main#product-listing-container .page-header,
.page-content[data-category-banner] .page-header {
  background-image: url(https://cdn11.bigcommerce.com/s-0ruwnqmdy9/images/stencil/original/image-manager/elegant-minerals-natural-mineral-makeup-foundation.jpg?t=1783045391) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  padding: 40px 30px !important;
  border-radius: 8px !important;
  border: 1px solid #e8e3cc !important;
  margin-bottom: 30px !important; }

.category-heading,
.page-heading,
main#product-listing-container .page-header p,
main#product-listing-container .page-header h1 {
  color: #ffffff !important;
  text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.6) !important; }

.page-type-category .actionBar,
.page-type-category form[data-sort-by] {
  display: block !important;
  width: 100% !important;
  max-width: 650px !important;
  margin: 25px auto 35px auto !important;
  padding: 24px 20px !important;
  background: #ffffff !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 6px !important;
  text-align: center !important; }

.page-type-category .actionBar-section,
.page-type-category .form-field--sort {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 14px 10px !important; }

@media screen and (min-width: 801px) {
  .nav-sidebar {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 9999 !important;
    transform: none !important; } }

#menu.fixed,
#menu-wrapper.fixed {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 99999 !important;
  transform: none !important; }

.page-type-product #main-content {
  margin-top: 140px !important; }
