/* Public-only performance and image-layer overrides. */
.public-hero,
.category-hero {
  isolation: isolate;
  overflow: hidden;
  background: #171717;
}

.public-hero::after,
.category-hero::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: "";
  pointer-events: none;
}

.public-hero::after {
  background: linear-gradient(180deg, rgba(15, 12, 9, .12), rgba(15, 12, 9, .88));
}

.public-hero-image,
.category-hero-image {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.hero-copy {
  z-index: 1;
}

.category-hero {
  position: relative;
}

.category-hero::after {
  background: linear-gradient(180deg, transparent 25%, rgba(0, 0, 0, .78));
}

.category-hero > div {
  position: relative;
  z-index: 1;
}

@supports (content-visibility: auto) {
  .category-section {
    content-visibility: auto;
    contain-intrinsic-size: auto 1200px;
  }

  .menu-view-list .product-card {
    content-visibility: auto;
    contain-intrinsic-size: auto 156px;
  }

  .menu-view-gallery .product-card {
    content-visibility: auto;
    contain-intrinsic-size: auto 460px;
  }
}
