/** Shopify CDN: Minification failed

Line 1397:0 Unexpected "}"

**/
/* ================================
   TNB CUSTOM HEADER FIXES
   Safe override file
================================ */

:root {
  --tnb-green: #717b59;
}

/* Header transition */
.shopify-section-header,
.header-wrapper,
header,
sticky-header {
  transition: background-color 0.25s ease, box-shadow 0.25s ease, color 0.25s ease !important;
}

/* HERO PAGES: transparent header at very top */
body:not(.template-product):not(.tnb-header-scrolled) .shopify-section-header,
body:not(.template-product):not(.tnb-header-scrolled) .header-wrapper,
body:not(.template-product):not(.tnb-header-scrolled) header,
body:not(.template-product):not(.tnb-header-scrolled) sticky-header {
  background: transparent !important;
  box-shadow: none !important;
}

/* HERO PAGES: white text/icons at top */
body:not(.template-product):not(.tnb-header-scrolled) .header-wrapper a,
body:not(.template-product):not(.tnb-header-scrolled) .header-wrapper span,
body:not(.template-product):not(.tnb-header-scrolled) .header-wrapper svg,
body:not(.template-product):not(.tnb-header-scrolled) header a,
body:not(.template-product):not(.tnb-header-scrolled) header span,
body:not(.template-product):not(.tnb-header-scrolled) header svg {
  color: #ffffff !important;
  fill: #ffffff !important;
  stroke: #ffffff !important;
}

/* AFTER SCROLL: white header */
body.tnb-header-scrolled .shopify-section-header,
body.tnb-header-scrolled .shopify-section-header .header-wrapper,
body.tnb-header-scrolled .shopify-section-header sticky-header {
  background: #ffffff !important;
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.06) !important;
}

/* AFTER SCROLL: green menu/icons */
body.tnb-header-scrolled .shopify-section-header .header-wrapper a,
body.tnb-header-scrolled .shopify-section-header .header-wrapper span,
body.tnb-header-scrolled .shopify-section-header .header-wrapper svg,
body.tnb-header-scrolled .shopify-section-header a,
body.tnb-header-scrolled .shopify-section-header span,
body.tnb-header-scrolled .shopify-section-header svg {
  color: var(--tnb-green) !important;
  fill: var(--tnb-green) !important;
  stroke: var(--tnb-green) !important;
}

/* PRODUCT PAGES: always solid header */
body.template-product .shopify-section-header,
body.template-product .header-wrapper,
body.template-product header,
body.template-product sticky-header {
  background: #ffffff !important;
  position: relative !important;
  top: auto !important;
  box-shadow: none !important;
}

/* PRODUCT PAGES: green menu/icons */
body.template-product .header-wrapper a,
body.template-product .header-wrapper span,
body.template-product .header-wrapper svg,
body.template-product header a,
body.template-product header span,
body.template-product header svg {
  color: var(--tnb-green) !important;
  fill: var(--tnb-green) !important;
  stroke: var(--tnb-green) !important;
}

/* PRODUCT PAGES: force white logo image to appear green */
body.template-product .header__heading-logo,
body.template-product .header__heading-logo img,
body.template-product .header__heading-link img,
body.template-product .site-header__logo img,
body.template-product .logo img {
  filter: brightness(0) saturate(100%) invert(43%) sepia(12%) saturate(799%) hue-rotate(39deg) brightness(94%) contrast(86%) !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

/* PRODUCT PAGE: give content breathing room under header */
body.template-product #MainContent,
body.template-product main {
  padding-top: 35px !important;
}

/* CATERING / COLLECTION HERO: stop header crushing hero title */
body.template-collection .banner__content,
body.template-page .banner__content,
body.template-collection .slideshow__text-wrapper,
body.template-page .slideshow__text-wrapper,
body.template-collection .hero__content,
body.template-page .hero__content {
  padding-top: 130px !important;
}

/* Mobile adjustment */
@media screen and (max-width: 749px) {
  body.template-collection .banner__content,
  body.template-page .banner__content,
  body.template-collection .slideshow__text-wrapper,
  body.template-page .slideshow__text-wrapper,
  body.template-collection .hero__content,
  body.template-page .hero__content {
    padding-top: 90px !important;
  }

  body.template-product #MainContent,
  body.template-product main {
    padding-top: 20px !important;
  }
}
/* =====================================
   TNB FIX: transparent header logo + catering hero spacing
   Paste at bottom of tnb-custom.css
===================================== */

/* 1. Transparent hero pages: force logo WHITE at top */
body:not(.template-product):not(.tnb-header-scrolled) .header__heading-logo,
body:not(.template-product):not(.tnb-header-scrolled) .header__heading-logo img,
body:not(.template-product):not(.tnb-header-scrolled) .header__heading-link img,
body:not(.template-product):not(.tnb-header-scrolled) .site-header__logo img,
body:not(.template-product):not(.tnb-header-scrolled) .logo img {
  filter: brightness(0) invert(1) !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

/* 2. After scroll: white header + green logo/menu/icons */
body.tnb-header-scrolled .shopify-section-header,
body.tnb-header-scrolled .header-wrapper,
body.tnb-header-scrolled sticky-header {
  background: #ffffff !important;
  box-shadow: 0 1px 8px rgba(0,0,0,0.06) !important;
}

body.tnb-header-scrolled .header__heading-logo,
body.tnb-header-scrolled .header__heading-logo img,
body.tnb-header-scrolled .header__heading-link img,
body.tnb-header-scrolled .site-header__logo img,
body.tnb-header-scrolled .logo img {
  filter: brightness(0) saturate(100%) invert(43%) sepia(12%) saturate(799%) hue-rotate(39deg) brightness(94%) contrast(86%) !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

body.tnb-header-scrolled .header-wrapper a,
body.tnb-header-scrolled .header-wrapper span,
body.tnb-header-scrolled .header-wrapper svg {
  color: #717b59 !important;
  fill: #717b59 !important;
  stroke: #717b59 !important;
}

/* 3. Product pages: logo must stay green */
body.template-product .header__heading-logo,
body.template-product .header__heading-logo img,
body.template-product .header__heading-link img,
body.template-product .site-header__logo img,
body.template-product .logo img {
  filter: brightness(0) saturate(100%) invert(43%) sepia(12%) saturate(799%) hue-rotate(39deg) brightness(94%) contrast(86%) !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

/* 4. Catering / collection hero: push hero text down so header doesn't cut through it */
body.template-collection .collection-hero,
body.template-collection .collection-hero__inner,
body.template-collection .collection-hero__text-wrapper,
body.template-collection .banner__content,
body.template-collection .hero__content {
  padding-top: 110px !important;
}

/* Keep hero image height comfortable */
body.template-collection .collection-hero,
body.template-collection .banner,
body.template-collection .hero {
  min-height: 430px !important;
}

/* Mobile adjustment */
@media screen and (max-width: 749px) {
  body.template-collection .collection-hero,
  body.template-collection .collection-hero__inner,
  body.template-collection .collection-hero__text-wrapper,
  body.template-collection .banner__content,
  body.template-collection .hero__content {
    padding-top: 80px !important;
  }
}
/* TNB: move collection hero content slightly lower */
body.template-collection .collection-hero,
body.template-collection .collection-hero__inner,
body.template-collection .collection-hero__text-wrapper,
body.template-collection .banner__content,
body.template-collection .hero__content {
  padding-top: 180px !important;
}
/* TNB: move collection hero heading/content lower */
body.template-collection #MainContent > .shopify-section:first-child h1,
body.template-collection main > .shopify-section:first-child h1 {
  margin-top: 80px !important;
}

/* Give the whole collection hero more height so it doesn't feel cut off */
body.template-collection #MainContent > .shopify-section:first-child,
body.template-collection main > .shopify-section:first-child {
  min-height: 520px !important;
}
/* =====================================
   TNB PRODUCT PAGE — 2 COLUMN HUMBLE STYLE
   Left images / right sticky product info
===================================== */

@media screen and (min-width: 990px) {

  /* Main product container */
  body.template-product .product,
  body.template-product .product.grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 520px) !important;
    column-gap: 60px !important;
    align-items: start !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding-top: 0px !important;
  }

  /* Left image column */
  body.template-product .product__media-wrapper {
    grid-column: 1 !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
  }

  /* Right product info column */
  body.template-product .product__info-wrapper {
    grid-column: 2 !important;
    width: 100% !important;
    max-width: 520px !important;
    padding: 0 !important;
    align-self: start !important;
  }

  /* Sticky product description/details */
  body.template-product .product__info-container {
    position: sticky !important;
    top: 150px !important;
    max-width: 520px !important;
  }

  /* Reduce big blank gap under header */
  body.template-product #MainContent,
  body.template-product main {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
}

/* Mobile: keep normal stacked layout */
@media screen and (max-width: 989px) {
  body.template-product .product__info-container {
    position: static !important;
  }
}
/* =====================================
   TNB PRODUCT PAGE TYPOGRAPHY
   Smaller Humble-style product text
===================================== */

/* Product title */
body.template-product .product__title h1,
body.template-product .product__title,
body.template-product h1.product__title,
body.template-product .product__info-container h1 {
  font-size: 26px !important;
  line-height: 1.15 !important;
  letter-spacing: 1.5px !important;
  font-weight: 400 !important;
  margin-bottom: 18px !important;
}

/* Small brand/vendor text above product title */
body.template-product .product__vendor,
body.template-product .caption-with-letter-spacing,
body.template-product .product__text {
  font-size: 5px !important;
  letter-spacing: 1.8px !important;
  line-height: 1.3 !important;
}

/* Product price */
body.template-product .price,
body.template-product .price-item,
body.template-product .product__price {
  font-size: 15px !important;
  letter-spacing: 1px !important;
  line-height: 1.4 !important;
}

/* Variant label, quantity label, pickup text */
body.template-product label,
body.template-product .form__label,
body.template-product .pickup-availability-info,
body.template-product .product-form__input legend {
  font-size: 11px !important;
  letter-spacing: 0.8px !important;
}

/* Variant buttons */
body.template-product .product-form__input input[type="radio"] + label,
body.template-product .product-form__input label {
  font-size: 11px !important;
  letter-spacing: 1.2px !important;
  padding: 10px 18px !important;
}

/* Quantity selector text */
body.template-product .quantity__input,
body.template-product .quantity__button {
  font-size: 13px !important;
}

/* Add to cart / Buy it now buttons */
body.template-product .product-form__submit,
body.template-product .shopify-payment-button__button,
body.template-product button[type="submit"] {
  font-size: 13px !important;
  letter-spacing: 1px !important;
  font-weight: 400 !important;
}

/* Product description */
body.template-product .product__description,
body.template-product .product__description p,
body.template-product .product__info-container p {
  font-size: 15px !important;
  line-height: 1.65 !important;
  letter-spacing: 0.4px !important;
}

/* Product headings inside description, e.g. BOX OF 6 */
body.template-product .product__description h2,
body.template-product .product__description h3,
body.template-product .product__description strong {
  font-size: 13px !important;
  letter-spacing: 1.2px !important;
  font-weight: 600 !important;
}

/* Share text */
body.template-product .share-button,
body.template-product .share-button__button {
  font-size: 12px !important;
}
/* Force small brand/vendor text above product title */
body.template-product .product__info-container .product__text,
body.template-product .product__info-container .product__vendor,
body.template-product .product__info-container .caption-with-letter-spacing,
body.template-product .product__info-container p.caption-with-letter-spacing,
body.template-product .product__info-container .product__text p,
body.template-product .product__info-container [class*="vendor"],
body.template-product .product__info-container [class*="caption"] {
  font-size: 8px !important;
  line-height: 1.1 !important;
  letter-spacing: 1.5px !important;
  margin-bottom: 6px !important;
  text-transform: uppercase !important;
}

/* Controls the actual title/button block position */
body .slideshow__text,
body .slideshow__text-wrapper .banner__box,
body .banner__content .banner__box {
  transform: translateY(80px) !important;
}

/* Scrolled state: only the actual site header becomes white */
body.tnb-header-scrolled .shopify-section-header,
body.tnb-header-scrolled .shopify-section-header .header-wrapper,
body.tnb-header-scrolled .shopify-section-header sticky-header {
  background: #ffffff !important;
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.06) !important;
}

/* Scrolled state: only actual header links/icons turn green */
body.tnb-header-scrolled .shopify-section-header .header-wrapper a,
body.tnb-header-scrolled .shopify-section-header .header-wrapper span,
body.tnb-header-scrolled .shopify-section-header .header-wrapper svg,
body.tnb-header-scrolled .shopify-section-header a,
body.tnb-header-scrolled .shopify-section-header span,
body.tnb-header-scrolled .shopify-section-header svg {
  color: #717b59 !important;
  fill: #717b59 !important;
  stroke: #717b59 !important;
}

/* Stop scroll state from affecting hero slide content */
body.tnb-header-scrolled .humble-hero,
body.tnb-header-scrolled .humble-hero *,
body.tnb-header-scrolled .humble-hero__content,
body.tnb-header-scrolled .humble-hero__header,
body.tnb-header-scrolled .humble-hero__button,
body.tnb-header-scrolled .humble-hero__content a,
body.tnb-header-scrolled .humble-hero__content button {
  box-shadow: none !important;
}

/* Keep hero title text white after scrolling */
body.tnb-header-scrolled .humble-hero__content h1,
body.tnb-header-scrolled .humble-hero__content h2,
body.tnb-header-scrolled .humble-hero__content p,
body.tnb-header-scrolled .humble-hero__content span {
  color: #ffffff !important;
}

/* Keep hero button normal, not huge white box */
body.tnb-header-scrolled .humble-hero__content .button,
body.tnb-header-scrolled .humble-hero__content a.button,
body.tnb-header-scrolled .humble-hero__content button {
  background: #f3eee3 !important;
  color: #717b59 !important;
  border: none !important;
  box-shadow: none !important;
  width: auto !important;
  max-width: fit-content !important;
  padding: 14px 34px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Keep hero section in normal position */
main#MainContent > .shopify-section:first-child {
  position: relative !important;
  margin-bottom: 0 !important;
  overflow: hidden !important;
  z-index: 1 !important;
}
main#MainContent > .shopify-section:first-child + .shopify-section {
  padding-top: 35px !important;
}

/* Prevent the page from adding/removing header spacing on scroll */
body,
#MainContent,
main#MainContent {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* Keep first hero section locked in normal flow */
main#MainContent > .shopify-section:first-child {
  margin-top: 0 !important;
  padding-top: 0 !important;
  position: relative !important;
}

/* Make the Breadwinner section sit naturally below the hero */
main#MainContent > .shopify-section:first-child + .shopify-section {
  margin-top: 0 !important;
  padding-top: 35px !important;
  position: relative !important;
  transform: none !important;
  top: auto !important;
}
/* =====================================
   TNB CLEAN HERO + HEADER SCROLL FIX
   Stops Breadwinner section popping up
===================================== */

/* Keep header floating over hero, not pushing page content */
body.template-index #shopify-section-header,
body.template-index .shopify-section-header,
body.template-collection #shopify-section-header,
body.template-collection .shopify-section-header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 9999 !important;
}

/* No page jump when header changes from transparent to white */
body.template-index #MainContent,
body.template-index main#MainContent,
body.template-collection #MainContent,
body.template-collection main#MainContent {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Keep first hero section in normal page flow */
body.template-index main#MainContent > .shopify-section:first-child,
body.template-collection main#MainContent > .shopify-section:first-child {
  position: relative !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  overflow: hidden !important;
  transform: none !important;
}

/* Do NOT move the whole banner/hero container */
body.template-index .banner__content,
body.template-index .slideshow__text-wrapper {
  transform: none !important;
  top: auto !important;
}

/* Only move the actual text/button box lower */
body.template-index .slideshow__text-wrapper .banner__box,
body.template-index .banner__content .banner__box {
  transform: translateY(80px) !important;
}

/* Breadwinner section stays naturally underneath hero */
body.template-index main#MainContent > .shopify-section:first-child + .shopify-section {
  position: relative !important;
  top: auto !important;
  margin-top: 0 !important;
  padding-top: 35px !important;
  transform: none !important;
  z-index: 1 !important;
  clear: both !important;
}
/* =====================================
   TNB EMERGENCY HOMEPAGE SCROLL JUMP FIX
   Forces header + hero + Breadwinner to stay in normal flow
===================================== */

/* Force Shopify/Dawn sticky header to behave the same before and after scroll */
html body.template-index .section-header,
html body.template-index .shopify-section-group-header-group,
html body.template-index .shopify-section-header-sticky,
html body.template-index .shopify-section-header-hidden,
html body.template-index sticky-header,
html body.template-index .header-wrapper {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  transform: none !important;
  z-index: 9999 !important;
}

/* Stop Shopify adding/removing space when header becomes sticky */
html body.template-index,
html body.template-index #MainContent,
html body.template-index main#MainContent {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Lock homepage hero height so the section below cannot jump upward */
html body.template-index main#MainContent > .shopify-section:first-child,
html body.template-index .banner,
html body.template-index .slideshow,
html body.template-index .slideshow__slide,
html body.template-index .humble-hero {
  min-height: 100vh !important;
  height: 100vh !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Keep hero image filling the locked hero area */
html body.template-index .banner__media,
html body.template-index .slideshow__media,
html body.template-index .humble-hero__media {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

html body.template-index .banner__media img,
html body.template-index .slideshow__media img,
html body.template-index .humble-hero__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Do not move whole hero containers */
html body.template-index .banner__content,
html body.template-index .slideshow__text-wrapper,
html body.template-index .hero__content {
  transform: none !important;
  top: auto !important;
}

/* Only move the actual text/button box lower */
html body.template-index .banner__box,
html body.template-index .slideshow__text,
html body.template-index .humble-hero__content {
  transform: translateY(80px) !important;
}

/* Force Breadwinner/rich text section to sit AFTER hero, not overlap it */
html body.template-index main#MainContent > .shopify-section:has(.rich-text),
html body.template-index .rich-text,
html body.template-index .rich-text__wrapper,
html body.template-index .rich-text__blocks {
  position: relative !important;
  top: auto !important;
  bottom: auto !important;
  transform: none !important;
  margin-top: 0 !important;
  z-index: 1 !important;
  clear: both !important;
}

/* Breadwinner spacing */
html body.template-index .rich-text {
  padding-top: 35px !important;
}
/* =====================================
   TNB CATERING PRODUCT GRID — HUMBLE STYLE
   Spacing + hover price + clean card layout
===================================== */

/* Space out catering product photos */
.collection .product-grid,
.featured-collection .product-grid,
.product-grid.grid {
  column-gap: 48px !important;
  row-gap: 90px !important;
}

/* Remove tight internal padding */
.product-grid .grid__item {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Product title styling */
.card__heading,
.card__heading a,
.product-card-wrapper .card__heading,
.product-card-wrapper .card__heading a {
  font-size: 12px !important;
  letter-spacing: 1.8px !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  color: #62483d !important;
  text-decoration: none !important;
}

/* Give title space under image */
.card__information {
  padding-top: 18px !important;
}

/* Hide price until hover */
.card-wrapper .price,
.product-card-wrapper .price {
  opacity: 0 !important;
  visibility: hidden !important;
  max-height: 0 !important;
  overflow: hidden !important;
  margin-top: 0 !important;
  transform: translateY(-4px) !important;
  transition: opacity 0.2s ease, transform 0.2s ease, max-height 0.2s ease !important;
}

/* Show price when hovering over product */
.card-wrapper:hover .price,
.product-card-wrapper:hover .price {
  opacity: 1 !important;
  visibility: visible !important;
  max-height: 40px !important;
  transform: translateY(0) !important;
  margin-top: 8px !important;
}

/* Price styling */
.price,
.price-item,
.card-information .price {
  font-size: 14px !important;
  letter-spacing: 1px !important;
  color: #62483d !important;
}

/* Make product images clean and even */
.card__media,
.card .media {
  margin-bottom: 0 !important;
}

.card__media img,
.card .media img {
  object-fit: cover !important;
}


/* =====================================
   TNB HEADER FIX
   White header with green text/icons
===================================== */

/* Solid white header background */
.shopify-section-header,
.header-wrapper,
header.header,
sticky-header {
  background: #ffffff !important;
}

/* Header menu text green */
.header-wrapper a,
.header-wrapper span,
.header-wrapper .header__menu-item,
.header-wrapper .list-menu__item,
.header-wrapper details summary,
header.header a,
header.header span,
header.header .header__menu-item,
header.header .list-menu__item {
  color: #717b59 !important;
}

/* Header icons green */
.header-wrapper svg,
.header-wrapper svg path,
.header__icons svg,
.header__icons svg path,
.header__icon svg,
.header__icon svg path {
  color: #717b59 !important;
  fill: #717b59 !important;
  stroke: #717b59 !important;
}

/* Header logo green when header is white */
.header__heading-logo,
.header__heading-logo img,
.header__heading-link img,
.site-header__logo img,
.logo img {
  filter: brightness(0) saturate(100%) invert(43%) sepia(12%) saturate(799%) hue-rotate(39deg) brightness(94%) contrast(86%) !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

/* Keep header above page content */
#shopify-section-header,
.shopify-section-header {
  z-index: 9999 !important;
}
/* =====================================
   TNB CATERING GRID — FORCE 4 COLUMNS
===================================== */

@media screen and (min-width: 990px) {
  .featured-collection .product-grid,
  .collection .product-grid,
  ul.product-grid.grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    column-gap: 32px !important;
    row-gap: 85px !important;
    width: 100% !important;
    max-width: 1600px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .featured-collection .product-grid .grid__item,
  .collection .product-grid .grid__item,
  ul.product-grid.grid .grid__item {
    width: 100% !important;
    max-width: none !important;
    flex: none !important;
  }
}
/* Catering page transparent header over hero */
.shopify-section-group-header-group,
.section-header {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 50;
  background: transparent !important;
}

.header-wrapper,
sticky-header {
  background: transparent !important;
  border: 0 !important;
}

/* White header text/icons over photo */
.header__menu-item,
.header__active-menu-item,
.header__icon,
.header__heading-link {
  color: #fff !important;
}

.header__icon svg,
.header__icon path {
  stroke: #fff !important;
}

/* On scroll, make header normal again */
.shopify-section-header-sticky .header-wrapper {
  background: #fff !important;
}

.shopify-section-header-sticky .header__menu-item,
.shopify-section-header-sticky .header__active-menu-item,
.shopify-section-header-sticky .header__icon,
.shopify-section-header-sticky .header__heading-link {
  color: #677b53 !important;
}

.shopify-section-header-sticky .header__icon svg,
.shopify-section-header-sticky .header__icon path {
  stroke: #677b53 !important;
}

/* Fix duplicated logo */
.header__heading-link img + img,
.header__heading-logo + .header__heading-logo {
  display: none !important;
}
/* Catering transparent sticky header */
.section-header{
  position:sticky!important;
  top:0!important;
  z-index:99!important;
  margin-bottom:-220px!important;
  background:transparent!important;
}

.section-header:not(.scrolled-past-header) .header-wrapper,
.section-header:not(.scrolled-past-header) sticky-header{
  background:transparent!important;
  border:0!important;
}

/* White nav, logo link, account, cart, search icon over hero */
.section-header:not(.scrolled-past-header) .header__menu-item,
.section-header:not(.scrolled-past-header) .header__active-menu-item,
.section-header:not(.scrolled-past-header) .header__icon,
.section-header:not(.scrolled-past-header) .header__heading-link,
.section-header:not(.scrolled-past-header) .header__search,
.section-header:not(.scrolled-past-header) .header__icon--search{
  color:#fff!important;
}

.section-header:not(.scrolled-past-header) .header__icon svg,
.section-header:not(.scrolled-past-header) .header__icon path,
.section-header:not(.scrolled-past-header) .header__search svg,
.section-header:not(.scrolled-past-header) .header__icon--search svg{
  stroke:#fff!important;
  fill:none!important;
}

/* On scroll, header turns white again */
.section-header.scrolled-past-header{
  margin-bottom:0!important;
}

.section-header.scrolled-past-header .header-wrapper,
.section-header.scrolled-past-header sticky-header{
  background:#fff!important;
}

.section-header.scrolled-past-header .header__menu-item,
.section-header.scrolled-past-header .header__active-menu-item,
.section-header.scrolled-past-header .header__icon,
.section-header.scrolled-past-header .header__heading-link,
.section-header.scrolled-past-header .header__search,
.section-header.scrolled-past-header .header__icon--search{
  color:#717B59!important;
}

.section-header.scrolled-past-header .header__icon svg,
.section-header.scrolled-past-header .header__icon path,
.section-header.scrolled-past-header .header__search svg,
.section-header.scrolled-past-header .header__icon--search svg{
  stroke:#717B59!important;
}

/* Stop duplicate logo images */
.header__heading-link img+img,
.header__heading-logo+.header__heading-logo{
  display:none!important;
}
/* Product grid: stop hover movement */
.product-grid .card__inner {
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  overflow: hidden !important;
}

.product-grid .card__media,
.product-grid .media {
  height: 100% !important;
}

.product-grid .media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Product text area stays fixed */
.product-grid .card__information,
.product-grid .card-information {
  position: relative !important;
  min-height: 92px !important;
  text-align: center !important;
  padding-bottom: 28px !important;
}

/* Price appears without pushing anything down */
.product-grid .price {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: 24px !important;
  line-height: 24px !important;
  opacity: 0 !important;
  visibility: hidden !important;
  text-align: center !important;
  transition: opacity .2s ease !important;
}

.product-grid .card-wrapper:hover .price {
  opacity: 1 !important;
  visibility: visible !important;
}

.product-grid .price__container,
.product-grid .price__regular,
.product-grid .price-item {
  text-align: center !important;
  justify-content: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* Collection product grid spacing + stable hover price */
.product-grid {
  row-gap: 90px !important;
}

.product-grid .grid__item {
  padding-bottom: 0 !important;
}

.product-grid .card-wrapper,
.product-grid .card {
  height: 100% !important;
}

.product-grid .card__inner {
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  overflow: hidden !important;
}

.product-grid .card__media,
.product-grid .media {
  height: 100% !important;
}

.product-grid .media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.product-grid .card__information,
.product-grid .card-information {
  text-align: center !important;
  min-height: 92px !important;
  padding-top: 22px !important;
  padding-bottom: 0 !important;
}

.product-grid .card__heading,
.product-grid .card__heading a {
  min-height: 46px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  line-height: 1.45 !important;
  margin: 0 !important;
}

.product-grid .price {
  display: block !important;
  height: 24px !important;
  line-height: 24px !important;
  margin-top: 10px !important;
  text-align: center !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity .2s ease !important;
}

.product-grid .card-wrapper:hover .price {
  opacity: 1 !important;
  visibility: visible !important;
}

.product-grid .price__container,
.product-grid .price__regular,
.product-grid .price-item {
  text-align: center !important;
  justify-content: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* Catering product grid spacing */
#product-grid {
  --grid-desktop-vertical-spacing: 80px !important;
  row-gap: 60px !important;
}

#product-grid .grid__item {
  margin-bottom: 0 !important;
}

/* Keep image boxes equal */
#product-grid .card__inner {
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
}

#product-grid .card__media,
#product-grid .media {
  height: 100% !important;
}

#product-grid .media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Make product title/price spacing consistent */
#product-grid .card__information,
#product-grid .card-information {
  text-align: center !important;
  min-height: 92px !important;
  padding-top: 22px !important;
}

#product-grid .card__heading,
#product-grid .card__heading a {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  min-height: 44px !important;
  line-height: 1.45 !important;
  text-align: center !important;
  margin: 0 !important;
}

/* Price always reserves space, but only appears on hover */
#product-grid .price {
  display: block !important;
  height: 24px !important;
  line-height: 24px !important;
  margin-top: 10px !important;
  text-align: center !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity .2s ease !important;
}

#product-grid .card-wrapper:hover .price {
  opacity: 1 !important;
  visibility: visible !important;
}

#product-grid .price__container,
#product-grid .price__regular,
#product-grid .price-item {
  text-align: center !important;
  justify-content: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* Move product price closer to product name */
#product-grid .card__information,
#product-grid .card-information{
  min-height:64px!important;
  padding-top:18px!important;
  padding-bottom:0!important;
}

#product-grid .card__heading,
#product-grid .card__heading a{
  min-height:34px!important;
  margin-bottom:0!important;
}

#product-grid .price{
  position:static!important;
  margin-top:0!important;
  height:20px!important;
  line-height:20px!important;
  text-align:center!important;
}
/* Move hover price higher/closer to product title */
#product-grid .price {
  margin-top: -12px !important;
  transform: translateY(-12px) !important;
}
/* Product names green */
#product-grid .card__heading,
#product-grid .card__heading a,
#product-grid .full-unstyled-link {
  color: #717B59 !important;
}
/* Product prices grey */
#product-grid .price,
#product-grid .price *,
#product-grid .price-item {
  color: #8A8A8A !important;
}
#product-grid .price,
#product-grid .price * {
  color: #AFAFAF !important;
  font-family: Montserrat, sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0.08em !important;
}
#product-grid .price,
#product-grid .price * {
  font-family: "Avenir Next", "Helvetica Neue", Arial, sans-serif !important;
  font-weight: 300 !important;
  font-size: 13px !important;
  letter-spacing: 0.22em !important;
  color: #CFCFCF !important;
}
#product-grid .price,
#product-grid .price * {
  font-family: "Century Gothic", Futura, sans-serif !important;
  font-weight: 400 !important;
  font-size: 13px !important;
  letter-spacing: 0.18em !important;
  color: #B8B8B8 !important;
}
/* Catering featured collection product cards */

.card__heading a,
.full-unstyled-link {
  color: #717B59 !important;
  text-align: center !important;
}

.card__information,
.card-information {
  text-align: center !important;
  min-height: 58px !important;
  padding-top: 8px !important;
  padding-bottom: 0 !important;
}

.price,
.price * {
  color: #9F9F9F !important;
  font-family: "Century Gothic", Futura, Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 300 !important;
  letter-spacing: 0.18em !important;
  text-align: center !important;
}

.price {
  display: block !important;
  height: 20px !important;
  line-height: 20px !important;
  position: relative !important;
  top: -20px !important;
  opacity: 0 !important;
  transition: opacity 0.2s ease !important;
}

.card-wrapper:hover .price,
.product-card-wrapper:hover .price {
  opacity: 1 !important;
}

.grid {
  row-gap: 8px !important;
}
/* Tighten catering rows + green product names */
.card__heading a,
.full-unstyled-link {
  color: #717B59 !important;
}

.grid {
  row-gap: 8px !important;
}
/* FORCE catering featured collection spacing + green names */
body .featured-collection .grid,
body .collection .grid,
body ul.grid {
  row-gap: 0 !important;
  --grid-desktop-vertical-spacing: 12px !important;
  --grid-mobile-vertical-spacing: 12px !important;
}

body .featured-collection .grid__item,
body .collection .grid__item,
body .grid__item {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

body .card__heading,
body .card__heading a,
body .card__content .full-unstyled-link,
body .product-card-wrapper .full-unstyled-link {
  color: #717B59 !important;
}
/* FORCE catering featured collection spacing + green names */
body .featured-collection .grid,
body .collection .grid,
body ul.grid {
  row-gap: 0 !important;
  --grid-desktop-vertical-spacing: 0px !important;
  --grid-mobile-vertical-spacing: 0px !important;
}

body .featured-collection .grid__item,
body .collection .grid__item,
body .grid__item {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

body .card__heading,
body .card__heading a,
body .card__content .full-unstyled-link,
body .product-card-wrapper .full-unstyled-link {
  color: #717B59 !important;
}/* Pull featured collection rows closer */
.featured-collection .grid,
.collection .grid,
ul.grid {
  row-gap: 0 !important;
  --grid-desktop-vertical-spacing: 0px !important;
}

.featured-collection .grid__item,
.collection .grid__item {
  margin-bottom: -55px !important;
}

.featured-collection .card__information,
.featured-collection .card-information,
.collection .card__information,
.collection .card-information {
  min-height: 36px !important;
  padding-bottom: 0 !important;
}
/* Reduce spacing between catering collection sections */
.shopify-section:has(.featured-collection) {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.shopify-section:has(.featured-collection) .page-width {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.shopify-section:has(.featured-collection) .collection__title {
  margin-bottom: 24px !important;
}
/* Reduce spacing between catering collection sections */
.shopify-section:has(.featured-collection) {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}

.shopify-section:has(.featured-collection) .page-width {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.shopify-section:has(.featured-collection) .collection__title {
  margin-bottom: 24px !important;
}
/* TNB Collection Bar above Featured Products */
.tnb-collection-bar {
  width: 100%;
  display: flex;
  justify-content: center;
  gap: 0;
  margin: 20px 0 28px;
  padding: 0 16px;
  flex-wrap: wrap;
}

.tnb-collection-bar a {
  font-family: inherit;
  font-size: 13px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #677b53;
  text-decoration: none;
  line-height: 1.2;
  padding: 0 16px;
  border-right: 1px solid rgba(103, 123, 83, 0.35);
  transition: opacity 0.2s ease;
}

.tnb-collection-bar a:last-child {
  border-right: none;
}

.tnb-collection-bar a:hover {
  opacity: 0.6;
}
.tnb-collection-bar-wrap {
  width: 100%;
  background: #fff;
  position: sticky;
  top: 0;
  z-index: 50;
  padding: 16px 0;
  border-bottom: 1px solid rgba(103, 123, 83, 0.15);
}

.tnb-collection-bar {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0;
}

.tnb-collection-bar a {
  font-size: 13px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none;
  color: #677b53;
  font-weight: 500;
  line-height: 1;
  padding: 0 14px;
  border-right: 1px solid rgba(103, 123, 83, 0.35);
}

.tnb-collection-bar a:first-child {
  padding-left: 0;
}

.tnb-collection-bar a:last-child {
  border-right: none;
}

.tnb-collection-bar a:hover {
  opacity: 0.6;
}
}
@media(min-width:990px){
  main ul[class*="grid"]{
    max-width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(4,1fr)!important;
    gap:28px!important;
  }

  main ul[class*="grid"] > li{
    width:100%!important;
    max-width:none!important;
    flex:none!important;
  }
}
body.template-product .product {
  padding-left: 80px !important;
  padding-right: 80px !important;
}

body.template-product .product__media-wrapper {
  padding-right: 40px !important;
}

body.template-product .product__media img {
  max-width: 100% !important;
  height: auto !important;
}

body.template-collection #ProductGridContainer .card-wrapper {
  position: relative;
}

body.template-collection #ProductGridContainer .card__heading a::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
}
.tnb-product-image-link {
  display: block;
  color: inherit;
  text-decoration: none;
}
body.template-product .product {
  margin-top: 120px !important;
}
main [id^="MainProduct-"] {
  margin-top: 120px !important;
}
body.template-collection .product-card-wrapper .card__information {
  padding-top: 8px !important;
}

body.template-collection .product-card-wrapper .card__heading {
  margin-top: 0 !important;
}
body.template-collection .collection .product-grid {
  row-gap: 60px !important;
}
body.template-collection .product-card-wrapper .card__heading a {
  font-size: 17px !important;
  line-height: 1.25 !important;
}

/* FINAL MOBILE HOMEPAGE HERO HEIGHT FIX
   Scoped only to the Humble hero section on the homepage. */
@media screen and (max-width: 749px) {
  html body.template-index main#MainContent > .shopify-section.shopify-section--humble-hero.section {
    position: relative !important;
    display: block !important;
    height: 75vh !important;
    height: 75svh !important;
    min-height: 75vh !important;
    min-height: 75svh !important;
    max-height: 75vh !important;
    max-height: 75svh !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html body.template-index main#MainContent > .shopify-section.shopify-section--humble-hero.section .humble-hero-section,
  html body.template-index main#MainContent > .shopify-section.shopify-section--humble-hero.section .humble-hero {
    position: relative !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html body.template-index main#MainContent > .shopify-section.shopify-section--humble-hero.section .humble-hero__carousel,
  html body.template-index main#MainContent > .shopify-section.shopify-section--humble-hero.section .flickity-viewport,
  html body.template-index main#MainContent > .shopify-section.shopify-section--humble-hero.section .flickity-slider,
  html body.template-index main#MainContent > .shopify-section.shopify-section--humble-hero.section .Carousel__Cell,
  html body.template-index main#MainContent > .shopify-section.shopify-section--humble-hero.section .humble-hero__slide,
  html body.template-index main#MainContent > .shopify-section.shopify-section--humble-hero.section .humble-hero__media {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
  }
}

/* =========================================================
   TNB EASIFY BUILDER HEADER FIX
   Only: /apps/box-builder/build-your-box and build-your-box-1
   Solid white + green header, in normal flow, sticky on scroll.
========================================================= */
body.template-easify-builder .section-header,
body.template-easify-builder .shopify-section-group-header-group.section-header,
body.template-easify-builder .shopify-section-header,
body.template-easify-builder .shopify-section-header-sticky,
body.template-easify-builder .shopify-section-header-hidden {
  position: sticky !important;
  top: 0 !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  margin: 0 !important;
  transform: none !important;
  z-index: 9999 !important;
  background: #ffffff !important;
}

/* Keep the inner header in the sticky section's normal flow. */
body.template-easify-builder .header-wrapper,
body.template-easify-builder sticky-header,
body.template-easify-builder .header-wrapper--transparent-overlay,
body.template-easify-builder .header-wrapper--transparent-overlay:hover,
body.template-easify-builder .header-wrapper--transparent-overlay.header-wrapper--solid {
  position: relative !important;
  top: auto !important;
  width: 100% !important;
  background: #ffffff !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  --humble-fg: #717b59 !important;
  --humble-logo-text: #717b59 !important;
  --humble-nav-underline: #717b59 !important;
  color: #717b59 !important;
}

/* Green navigation and icons at all times on these two builder pages. */
body.template-easify-builder .header__menu-item,
body.template-easify-builder .header__menu-item span,
body.template-easify-builder .header__active-menu-item,
body.template-easify-builder .header__icon,
body.template-easify-builder .header__icon .svg-wrapper,
body.template-easify-builder .header__heading-link,
body.template-easify-builder .header__heading-link .h2,
body.template-easify-builder .header__search,
body.template-easify-builder .localization-form__select,
body.template-easify-builder .disclosure__button {
  color: #717b59 !important;
}

body.template-easify-builder .header__icon svg,
body.template-easify-builder .header__icon svg path,
body.template-easify-builder .header__search svg,
body.template-easify-builder .header__search svg path {
  color: #717b59 !important;
  stroke: #717b59 !important;
}

/* Use the green logo layer, never the white transparent-header layer. */
body.template-easify-builder .header__heading-logo-wrapper--dual .header__heading-logo--primary {
  display: block !important;
  opacity: 1 !important;
  filter: brightness(0) saturate(100%) invert(43%) sepia(12%) saturate(799%) hue-rotate(39deg) brightness(94%) contrast(86%) !important;
}

body.template-easify-builder .header__heading-logo-wrapper--dual .header__heading-logo--overlay {
  display: none !important;
  opacity: 0 !important;
}

body.template-easify-builder .header__heading-logo-wrapper:not(.header__heading-logo-wrapper--dual) .header__heading-logo,
body.template-easify-builder .header__heading-link img {
  opacity: 1 !important;
  filter: brightness(0) saturate(100%) invert(43%) sepia(12%) saturate(799%) hue-rotate(39deg) brightness(94%) contrast(86%) !important;
}

/* Undo the transparent-hero overlap so the hero and box cart begin below the header. */
body.template-easify-builder #MainContent,
body.template-easify-builder main#MainContent {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.template-easify-builder #MainContent > .shopify-section:first-child,
body.template-easify-builder main#MainContent > .shopify-section:first-child {
  margin-top: 0 !important;
  padding-top: 0 !important;
}


/* =========================================================
   TNB EASIFY BUILDER HEADER — FINAL TOP-OF-PAGE COLOUR OVERRIDE
   Only the two Easify app-proxy builder URLs. This intentionally
   outranks the older global white-on-transparent header rules.
========================================================= */
html body.template-easify-builder:not(.tnb-header-scrolled) .section-header .header-wrapper,
html body.template-easify-builder:not(.tnb-header-scrolled) .section-header sticky-header,
html body.template-easify-builder:not(.tnb-header-scrolled) .shopify-section-header .header-wrapper,
html body.template-easify-builder:not(.tnb-header-scrolled) .shopify-section-header sticky-header {
  background: #ffffff !important;
  color: #717b59 !important;
  --humble-fg: #717b59 !important;
  --humble-logo-text: #717b59 !important;
  --humble-nav-underline: #717b59 !important;
}

html body.template-easify-builder:not(.tnb-header-scrolled) .section-header .header-wrapper a,
html body.template-easify-builder:not(.tnb-header-scrolled) .section-header .header-wrapper span,
html body.template-easify-builder:not(.tnb-header-scrolled) .section-header .header-wrapper summary,
html body.template-easify-builder:not(.tnb-header-scrolled) .section-header .header-wrapper button,
html body.template-easify-builder:not(.tnb-header-scrolled) .shopify-section-header .header-wrapper a,
html body.template-easify-builder:not(.tnb-header-scrolled) .shopify-section-header .header-wrapper span,
html body.template-easify-builder:not(.tnb-header-scrolled) .shopify-section-header .header-wrapper summary,
html body.template-easify-builder:not(.tnb-header-scrolled) .shopify-section-header .header-wrapper button {
  color: #717b59 !important;
  opacity: 1 !important;
  visibility: visible !important;
  -webkit-text-fill-color: #717b59 !important;
}

html body.template-easify-builder:not(.tnb-header-scrolled) .section-header .header__icon,
html body.template-easify-builder:not(.tnb-header-scrolled) .section-header .header__icon .svg-wrapper,
html body.template-easify-builder:not(.tnb-header-scrolled) .shopify-section-header .header__icon,
html body.template-easify-builder:not(.tnb-header-scrolled) .shopify-section-header .header__icon .svg-wrapper {
  color: #717b59 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

html body.template-easify-builder:not(.tnb-header-scrolled) .section-header .header__icon svg,
html body.template-easify-builder:not(.tnb-header-scrolled) .section-header .header__icon svg path,
html body.template-easify-builder:not(.tnb-header-scrolled) .section-header .header__icon svg circle,
html body.template-easify-builder:not(.tnb-header-scrolled) .section-header .header__icon svg line,
html body.template-easify-builder:not(.tnb-header-scrolled) .shopify-section-header .header__icon svg,
html body.template-easify-builder:not(.tnb-header-scrolled) .shopify-section-header .header__icon svg path,
html body.template-easify-builder:not(.tnb-header-scrolled) .shopify-section-header .header__icon svg circle,
html body.template-easify-builder:not(.tnb-header-scrolled) .shopify-section-header .header__icon svg line {
  color: #717b59 !important;
  stroke: #717b59 !important;
}

html body.template-easify-builder:not(.tnb-header-scrolled) .section-header .header__inline-menu,
html body.template-easify-builder:not(.tnb-header-scrolled) .section-header .header__icons,
html body.template-easify-builder:not(.tnb-header-scrolled) .shopify-section-header .header__inline-menu,
html body.template-easify-builder:not(.tnb-header-scrolled) .shopify-section-header .header__icons {
  opacity: 1 !important;
  visibility: visible !important;
}
