/** Shopify CDN: Minification failed

Line 317:2 Unexpected "{"
Line 317:3 Expected identifier but found "%"
Line 317:32 Unexpected "{"
Line 317:33 Expected identifier but found "%"

**/


/* CSS from block stylesheet tags */
.group-block {
    position: relative;
  }

  .group-block__content {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }

  /* Layout variations */
  .group-block--layout-row .group-block__content {
    flex-direction: row;
    align-items: flex-start;
  }

  .group-block--layout-column .group-block__content {
    flex-direction: column;
  }

  /* Gap size variations */
  .group-block--gap-small .group-block__content {
    gap: 0.5rem;
  }

  .group-block--gap-medium .group-block__content {
    gap: 1rem;
  }

  .group-block--gap-large .group-block__content {
    gap: 2rem;
  }

  /* Responsive adjustments */
  @media screen and (max-width: 768px) {
    .group-block--layout-row .group-block__content {
      flex-direction: column;
    }
  }
.media-item {
    position: relative;
    overflow: hidden;
    border-radius: inherit;
    background: #f8f8f8;
    aspect-ratio: 16/9;
  }

  .media-item img,
  .media-item video,
  .media-item iframe {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border: none;
  }

  .media-item iframe {
    aspect-ratio: 16/9;
  }

  .media-placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: #666;
    text-align: center;
    padding: 2rem;
  }

  .media-placeholder svg {
    margin-bottom: 1rem;
    opacity: 0.7;
  }

  .media-placeholder p {
    margin: 0;
    font-size: 0.875rem;
    font-weight: 500;
  }

  /* Video controls styling */

  /* Aspect ratio adjustments for different content */
  .media-item.square {
    aspect-ratio: 1/1;
  }

  .media-item.portrait {
    aspect-ratio: 3/4;
  }

  .media-item.landscape {
    aspect-ratio: 4/3;
  }
.variant-selector {
  display: none;
}

.variant-selector.active {
  display: flex;
}

.variant-selector__header {
  margin-bottom: var(--section-title-margin-bottom);
}

.variant-selector__title {
  font-size: var(--section-title-font-size);
  font-weight: var(--section-title-font-weight);
  color: var(--section-title-text-color);
  margin: 0;
}

.variant-options__list {
  display: flex;
  flex-direction: column;
  gap: var(--options-gap);
  list-style: none;
  padding: 0;
  margin: 0;
}

.variant-option {
  position: relative;
  display: flex;
  flex-direction: column;
  border: var(--option-border-width) solid var(--option-border-color);
  border-radius: var(--option-border-radius);
  background: var(--option-bg-color);
  padding: var(--option-padding);
  cursor: pointer;
  transition: all 0.2s ease;
}

.variant-option:hover {
  border-color: var(--option-active-border-color);
}

.variant-option--selected {
  border-color: var(--option-active-border-color);
  background: var(--option-active-bg-color);
}

.variant-option__input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.variant-option__badge {
  position: absolute;
  top: -8px;
  left: 16px;
  background: var(--badge-bg-color);
  color: var(--badge-text-color);
  border: var(--badge-border-width) solid var(--badge-border-color);
  border-radius: var(--badge-border-radius);
  padding: var(--badge-padding-v) var(--badge-padding-h);
  font-size: var(--badge-font-size);
  font-weight: 600;
  z-index: 1;
}

.variant-option--selected .variant-option__badge {
  background: var(--badge-active-bg-color);
  color: var(--badge-active-text-color);
  border-color: var(--badge-active-border-color);
}

.variant-option__content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}

.variant-option__left {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
}

.variant-option__title {
  font-size: var(--option-title-font-size);
  font-weight: var(--option-title-font-weight);
  color: var(--option-title-text-color);
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.variant-option__title {
  font-size: var(--option-title-font-size);
  font-weight: var(--option-title-font-weight);
  color: var(--option-title-text-color);
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.variant-option__description {
  font-size: var(--option-desc-font-size);
  font-weight: var(--option-desc-font-weight);
  color: var(--option-desc-text-color);
}

.variant-option__right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
}

.variant-option__price {
  font-size: var(--price-font-size);
  font-weight: var(--price-font-weight);
  color: var(--price-text-color);
}

.variant-option__original-price {
  font-size: calc(var(--price-font-size) * 0.85);
  color: var(--original-price-color);
  text-decoration: line-through;
}

.variant-option__savings-badge {
  display: inline-block;
  background: var(--badge-bg-color);
  color: var(--badge-text-color);
  border-radius: var(--badge-border-radius);
  padding: var(--badge-padding-v) var(--badge-padding-h);
  font-size: var(--badge-font-size);
  font-weight: 600;
}

.variant-option__savings-badge--mobile {
  display: none;
}

@media (max-width: 768px) {
  .variant-selector__header {
    margin-bottom: var(--section-title-margin-bottom-mobile);
  }

  .variant-selector__title {
    font-size: var(--section-title-font-size-mobile);
  }

  .variant-options__list {
    gap: var(--options-gap-mobile);
  }

  .variant-option {
    padding: var(--option-padding-mobile);
  }

  .variant-option__title {
    font-size: var(--option-title-font-size-mobile);
  }

  .variant-option__description {
    font-size: var(--option-desc-font-size-mobile);
  }

  .variant-option__price {
    font-size: var(--price-font-size-mobile);
  }

  .variant-option__savings-badge {
    font-size: var(--badge-font-size-mobile);
  }

  .variant-option__savings-badge--desktop {
    display: none;
  }

  .variant-option__savings-badge--mobile {
    display: inline-block;
  }
}
.menu-button {
  display: flex;
  justify-content: center;
  margin-top: var(--btn-margin-top-desktop, 0px);
  margin-bottom: var(--btn-margin-bottom-desktop, 0px);
  order: 2;
  width: 100%;
}

.menu-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--btn-padding-y-desktop, 8px) var(--btn-padding-x-desktop, 24px);
  background-color: var(--btn-bg, #f3efe8);
  color: var(--btn-color, #3a3a3a);
  font-family: 'Brandon Grotesque', sans-serif;
  font-size: var(--btn-font-size-desktop, 16px);
  {% comment %}font-weight: 600;{% endcomment %}
  border-radius: var(--btn-border-radius, 8px);
  text-decoration: none;
  transition: background-color 0.2s, color 0.2s;
}

.menu-button__link:hover {
  background-color: var(--btn-hover-bg, #e5e1d8);
  color: var(--btn-hover-color, #3a3a3a);
}

/* Visibility overrides to preserve flex display */
@media (min-width: 750px) {
  .menu-button.hide-mobile {
    display: flex !important;
  }
}

@media (min-width: 990px) {
  .menu-button.hide-tablet {
    display: flex !important;
  }
}

@media (max-width: 768px) {
  .menu-button {
    margin-top: var(--btn-margin-top-mobile, 0px);
    margin-bottom: var(--btn-margin-bottom-mobile, 0px);
  }
  
  .menu-button__link {
    padding: var(--btn-padding-y-mobile, 8px) var(--btn-padding-x-mobile, 24px);
    font-size: var(--btn-font-size-mobile, 14px);
  }
}
.menu-featured-card {
  display: grid;
  grid-template-columns: var(--image-width-desktop, 45%) 1fr;
  background-color: var(--card-bg, #f3efe8);
  border-radius: var(--card-radius, 8px);
  overflow: hidden;
  width: 100%;
  max-width: 450px;
  position: relative;
}

/* Visibility overrides to preserve grid display */
@media (min-width: 750px) {
  .menu-featured-card.hide-mobile {
    display: grid !important;
  }
}

@media (min-width: 990px) {
  .menu-featured-card.hide-tablet {
    display: grid !important;
  }
}

.menu-featured-card--left {
  order: -1;
}

.menu-featured-card--right {
  order: 1;
}

.menu-featured-card__image {
  width: 100%;
  height: 100%;
  min-width: var(--min-image-width-desktop, auto);
  min-height: var(--min-image-height-desktop, auto);
  overflow: hidden;
  border-radius: var(--image-border-radius, 0px);
}

.menu-featured-card__image img {
  width: 100%;
  height: 100%;
  object-fit: var(--image-fit, cover);
  display: block;
}

.menu-featured-card__content {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: var(--content-padding, 16px);
  justify-content: var(--content-align-vertical-desktop, flex-start);
  align-items: var(--content-align-horizontal-desktop, flex-start);
  text-align: var(--content-align-horizontal-desktop, left);
}

.menu-featured-card__tag {
  font-family: var(--tag-font, 'Brandon Grotesque', sans-serif);
  color: var(--tag-color, #3a3a3a);
  font-size: var(--tag-size-desktop, 14px);
  font-weight: var(--tag-weight, 500);
  letter-spacing: var(--tag-spacing, 0px);
  margin: 0;
}

.menu-featured-card__tag--uppercase {
  text-transform: uppercase;
}

.menu-featured-card__tag--capitalize {
  text-transform: capitalize;
}

.menu-featured-card__tag--lowercase {
  text-transform: lowercase;
}

.menu-featured-card__title {
  font-family: var(--title-font, 'Cardinal Fruit', sans-serif);
  color: var(--title-color, #3a3a3a);
  font-size: var(--title-size-desktop, 24px);
  font-weight: var(--title-weight, 500);
  line-height: var(--title-line-height, 1.08);
  letter-spacing: var(--title-spacing, 0px);
  margin: 0;
}

.menu-featured-card__title--uppercase {
  text-transform: uppercase;
}

.menu-featured-card__title--capitalize {
  text-transform: capitalize;
}

.menu-featured-card__title--lowercase {
  text-transform: lowercase;
}

.menu-featured-card__description {
  font-family: var(--desc-font, 'Brandon Grotesque', sans-serif);
  color: var(--desc-color, #3a3a3a);
  font-size: var(--desc-size-desktop, 14px);
  font-weight: var(--desc-weight, 400);
  margin: 0;
}

.menu-featured-card__description--uppercase {
  text-transform: uppercase;
}

.menu-featured-card__description--capitalize {
  text-transform: capitalize;
}

.menu-featured-card__description--lowercase {
  text-transform: lowercase;
}

.menu-featured-card__button-wrapper {
  margin-top: 8px;
}

.menu-featured-card__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--btn-padding-y, 8px) var(--btn-padding-x, 24px);
  background-color: var(--btn-bg, #f3efe8);
  color: var(--btn-color, #3a3a3a);
  font-family: 'Brandon Grotesque', sans-serif;
  font-size: var(--btn-font-size, 16px);
  font-weight: 600;
  border-radius: var(--btn-radius, 50px);
  text-decoration: none;
  transition: background-color 0.2s, color 0.2s;
}

.menu-featured-card__button:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.shopify-design-mode .menu-featured-card__button:before {
  display: none;
}

.menu-featured-card__button:hover {
  background-color: var(--btn-hover-bg, #e5e1d8);
  color: var(--btn-hover-color, #3a3a3a);
}

/* Mobile responsiveness */
@media (max-width: 768px) {
  .menu-featured-card {
    grid-template-columns: var(--image-width-mobile, 50%) 1fr;
    max-width: 100%;
  }

  .menu-featured-card__image {
    min-width: var(--min-image-width-mobile, auto);
    min-height: var(--min-image-height-mobile, auto);
    max-height: var(--image-height-mobile, 150px);
  }
  
  .menu-featured-card__content {
    padding: var(--content-padding-mobile, 16px);
    justify-content: var(--content-align-vertical-mobile, flex-start);
    align-items: var(--content-align-horizontal-mobile, flex-start);
    text-align: var(--content-align-horizontal-mobile, left);
  }

  .menu-featured-card__button {
    font-size: var(--btn-font-size-mobile, 14px);
  }

  .menu-featured-card__tag {
    font-size: var(--tag-size-mobile, 12px);
  }

  .menu-featured-card__title {
    font-size: var(--title-size-mobile, 20px);
  }

  .menu-featured-card__description {
    font-size: var(--desc-size-mobile, 12px);
  }
}

/* Featured card in mobile menu */
@media (max-width: 749px) {
  .header__nav.is-open .menu-featured-card {
    /* Featured card should not have bottom border like nav items */
    padding-bottom: 0 !important;
    border-bottom: none !important;
  }

  /* Reduce margin between consecutive featured cards */
  .header__nav.is-open .header__nav-item:has(.menu-featured-card) + .header__nav-item:has(.menu-featured-card) {
    margin-top: -8px; /* Compensate for 24px gap to make it 16px */
  }
}
.menu-goal-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  background: #ffffff;
  border: var(--item-border-width, 0.5px) solid var(--item-border-color, #acacac);
  border-radius: var(--item-border-radius, 8px);
  padding-inline: var(--card-padding-inline, 0px);
  padding-block: var(--card-padding-block, 0px);
  transition: opacity 0.2s;
  overflow: hidden;
  gap: var(--content-gap, 0px);
  min-height: 110px;
  justify-content: center;
}

.menu-goal-item:hover {
  opacity: 0.85;
}

/* Visibility overrides to preserve flex display */
@media (min-width: 750px) {
  .menu-goal-item.hide-mobile {
    display: flex !important;
  }
}

@media (min-width: 990px) {
  .menu-goal-item.hide-tablet {
    display: flex !important;
  }
}

.menu-goal-item__icon-container {
  width: 100%;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: var(--icon-align, center);
  overflow: hidden;
  flex-shrink: 0;
}

.menu-goal-item__icon {
  width: auto;
  height: auto;
  max-width: var(--icon-max-width-desktop, 42px);
  max-height: var(--icon-max-height-desktop, 34px);
  object-fit: contain;
  display: block;
}

.menu-goal-item__text-container  > *,
.menu-goal-item__text-container {
  font-family: var(--text-font, 'Brandon Grotesque', sans-serif);
  font-weight: var(--text-weight, 400);
  color: var(--text-color, #3a3a3a);
  font-size: var(--text-size-desktop, 16px);
  line-height: 1.625;
  text-align: var(--text-align, center);
  text-transform: var(--text-transform, none);
  width: 100%;
  align-items: var(--text-container-align, center);
}

@media (max-width: 768px) {
  .menu-goal-item {
    padding-inline: var(--card-padding-inline-mobile, 0px);
    padding-block: var(--card-padding-block-mobile, 0px);
  }

  .menu-goal-item__icon-container {
    width: 100%;
    height: 50px;
  }

  .menu-goal-item__icon {
    max-width: var(--icon-max-width-mobile, 42px);
    max-height: var(--icon-max-height-mobile, 34px);
  }

  .menu-goal-item__text-container {
    width: 100%;
  }

  .menu-goal-item__text {
    font-size: var(--text-size-mobile, 16px);
  }
}
.menu-learn {
  display: none;
}

/* Desktop only - show at > 768px */
@media (min-width: 769px) {
  .menu-learn {
    display: block;
  }
}

/* Visibility overrides to preserve block display */
@media (min-width: 750px) {
  .menu-learn.hide-mobile {
    display: block !important;
  }
}

@media (min-width: 990px) {
  .menu-learn.hide-tablet {
    display: block !important;
  }
}

.menu-learn__content {
  display: flex;
  gap: var(--column-gap, 32px);
  align-items: flex-start;
}

.menu-learn__columns {
  display: grid;
  grid-template-columns: repeat(var(--columns, 3), 1fr);
  gap: var(--column-gap, 32px);
  flex: 1;
}

.menu-learn__column {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.menu-learn__heading {
  font-family: var(--heading-font, 'Cardinal Fruit', sans-serif);
  font-size: var(--heading-size, 18px);
  letter-spacing: var(--heading-spacing, 0px);
  color: var(--heading-color, #3a3a3a);
  font-weight: 500;
  text-decoration: none;
  display: block;
  transition: color 0.2s;
}

.menu-learn__heading:hover {
  color: var(--link-hover-color, #3a3a3a);
}

.menu-learn__heading--no-link {
  cursor: default;
}

.menu-learn__heading--no-link:hover {
  color: var(--heading-color, #3a3a3a);
}

.menu-learn__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.menu-learn__list-item {
  margin: 0;
  padding: 0;
}

.menu-learn__link {
  font-family: var(--link-font, 'Brandon Grotesque', sans-serif);
  font-size: var(--link-size, 14px);
  letter-spacing: var(--link-spacing, 0px);
  color: var(--link-color, #3a3a3a);
  text-decoration: none;
  display: block;
  transition: color 0.2s;
}

.menu-learn__link:hover {
  color: var(--link-hover-color, #3a3a3a);
}

.menu-learn__featured {
  display: flex;
  gap: 16px;
}
.menu-product-item {
  display: flex;
  text-decoration: none;
  border: var(--item-border-width, 1px) solid var(--item-border-color, transparent);
  border-radius: var(--item-border-radius, 0px);
  transition: opacity 0.2s;
  overflow: hidden;
}

/* Visibility overrides to preserve flex display */
@media (min-width: 750px) {
  .menu-product-item.hide-mobile {
    display: flex !important;
  }
}

@media (min-width: 990px) {
  .menu-product-item.hide-tablet {
    display: flex !important;
  }
}

.menu-product-item:hover {
  opacity: 0.85;
}

/* Desktop layout directions */
.menu-product-item--desktop-horizontal {
  flex-direction: row;
  align-items: center;
  min-height: var(--min-image-height-desktop, 80px);
}

.menu-product-item--desktop-vertical {
  flex-direction: column;
  align-items: stretch;
}

.menu-product-item__image {
  width: var(--image-width-desktop, 100px);
  min-width: var(--min-image-width-desktop, 80px);
  overflow: hidden;
  border-radius: var(--image-border-radius, 0px);
  flex-shrink: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

/* For horizontal desktop layout, image height stretches to match content */
.menu-product-item--desktop-horizontal .menu-product-item__image {
  height: 100%;
  min-height: var(--min-image-height-desktop, 80px);
}

/* For vertical desktop layout, image has fixed height */
.menu-product-item--desktop-vertical .menu-product-item__image {
  height: var(--image-height-desktop, 100px);
  min-height: var(--min-image-height-desktop, 80px);
}

.menu-product-item__image img {
  width: 100%;
  height: 100%;
  object-fit: var(--image-fit, cover);
  display: block;
}

.menu-product-item__content {
  padding: var(--content-padding, 0px);
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 4px;
  justify-content: var(--content-align-vertical-desktop, flex-start);
  align-items: var(--content-align-horizontal-desktop, flex-start);
  text-align: var(--content-align-horizontal-desktop, left);
}

.menu-product-item__title {
  font-family: var(--title-font, 'Cardinal Fruit', sans-serif);
  color: var(--title-color, #3a3a3a);
  font-size: var(--title-size-desktop, 16px);
  font-weight: var(--title-weight, 600);
  display: block;
}

.menu-product-item__title--uppercase {
  text-transform: uppercase;
}

.menu-product-item__title--capitalize {
  text-transform: capitalize;
}

.menu-product-item__title--lowercase {
  text-transform: lowercase;
}

.menu-product-item__description {
  font-family: var(--desc-font, 'Brandon Grotesque', sans-serif);
  color: var(--desc-color, #666666);
  font-size: var(--desc-size-desktop, 14px);
  font-weight: var(--desc-weight, 400);
  display: block;
}

.menu-product-item__description--uppercase {
  text-transform: uppercase;
}

.menu-product-item__description--capitalize {
  text-transform: capitalize;
}

.menu-product-item__description--lowercase {
  text-transform: lowercase;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
  /* Mobile layout directions override desktop */
  .menu-product-item--mobile-horizontal {
    flex-direction: row !important;
    align-items: center !important;
    min-height: var(--min-image-height-mobile, 60px);
  }

  .menu-product-item--mobile-vertical {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  /* Mobile image sizing */
  .menu-product-item__image {
    width: var(--image-width-mobile, 80px);
    min-width: var(--min-image-width-mobile, 60px);
  }

  /* For horizontal mobile layout, image height stretches to match content */
  .menu-product-item--mobile-horizontal .menu-product-item__image {
    height: 100%;
    min-height: var(--min-image-height-mobile, 60px);
  }

  /* For vertical mobile layout, image has fixed height */
  .menu-product-item--mobile-vertical .menu-product-item__image {
    width: 100%;
    height: var(--image-height-mobile, 80px);
    min-height: var(--min-image-height-mobile, 60px);
  }

  .menu-product-item__title {
    font-size: var(--title-size-mobile, 14px);
  }

  .menu-product-item__description {
    font-size: var(--desc-size-mobile, 12px);
  }

  .menu-product-item__content {
    justify-content: var(--content-align-vertical-mobile, flex-start);
    align-items: var(--content-align-horizontal-mobile, flex-start);
    text-align: var(--content-align-horizontal-mobile, left);
  }
}
.mega-menu__products {
  display: grid;
  grid-template-columns: repeat(var(--columns, 2), 1fr);
  column-gap: var(--column-gap, 16px);
  row-gap: var(--row-gap, 16px);
}

/* Visibility overrides to preserve grid display */
@media (min-width: 750px) {
  .mega-menu__products.hide-mobile {
    display: grid !important;
  }
}

@media (min-width: 990px) {
  .mega-menu__products.hide-tablet {
    display: grid !important;
  }
}

@media (max-width: 768px) {
  .mega-menu__products {
    grid-template-columns: repeat(var(--columns-mobile, 2), 1fr);
    width: 100%;
  }
}

/* CSS from snippet stylesheet tags */
.group-block__link {
position: absolute;
inset: 0;
}

.group-block__link ~ :is(.group-block-content, .group-block__media-wrapper) {
pointer-events: none;

:is(a, button, input, textarea, select) {
pointer-events: auto;
}
}

/* Needs the .group-block__link ~ to be specific enough to take effect. */
.group-block__link ~ .group-block-content--design-mode {
pointer-events: auto;
}