/** Shopify CDN: Minification failed

Line 6:1 Unexpected "/"

**/
*/

body:has([data-dp-category-filter-root]) {
  --dp-grid-bg: #f4efe6;
  --dp-grid-bg-soft: #f8f4ec;
  --dp-card-bg: #fffdf8;
  --dp-card-bg-bottom: #fbf7ef;
  --dp-media-bg: #faf7f0;
  --dp-border: #ded4c3;
  --dp-border-hover: #b9cbbf;
  --dp-text: #1c3f35;
  --dp-muted: #718078;
  --dp-accent: #174b3d;
  --dp-radius: 20px;
  --dp-media-radius: 15px;
  --dp-gap-mobile: 12px;
  --dp-gap-desktop: 18px;
}

/* =========================================================
   COLLECTION SURFACE
   ========================================================= */

body:has([data-dp-category-filter-root]) results-list.product-grid-container {
  position: relative;
  background:
    radial-gradient(circle at 100% 0%, rgb(187 216 199 / 0.13), transparent 26rem),
    linear-gradient(180deg, var(--dp-grid-bg-soft) 0%, var(--dp-grid-bg) 100%);
}

body:has([data-dp-category-filter-root]) results-list.product-grid-container::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0 0 auto;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgb(23 75 61 / 0.13),
    transparent
  );
  pointer-events: none;
}

body:has([data-dp-category-filter-root]) .collection-wrapper,
body:has([data-dp-category-filter-root]) .main-collection-grid,
body:has([data-dp-category-filter-root]) .product-grid {
  position: relative;
  z-index: 1;
}

body:has([data-dp-category-filter-root]) .main-collection-grid {
  padding-block: 13px 42px;
}

body:has([data-dp-category-filter-root]) .product-grid {
  gap: var(--dp-gap-mobile) !important;
  row-gap: var(--dp-gap-mobile) !important;
  column-gap: var(--dp-gap-mobile) !important;
  align-items: stretch;
  padding-inline: 12px;
}

/* =========================================================
   CARD SHELL
   ========================================================= */

body:has([data-dp-category-filter-root]) .product-grid__item {
  position: relative;
  display: flex;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--dp-border) !important;
  border-radius: var(--dp-radius) !important;
  background: linear-gradient(
    180deg,
    var(--dp-card-bg) 0%,
    var(--dp-card-bg-bottom) 100%
  );
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / 0.94),
    0 2px 5px rgb(30 57 47 / 0.025),
    0 10px 24px rgb(30 57 47 / 0.065);
  isolation: isolate;
}

body:has([data-dp-category-filter-root]) .product-grid__item::after {
  content: "";
  position: absolute;
  z-index: 5;
  inset: 0;
  border-radius: inherit;
  box-shadow: inset 0 0 0 1px rgb(255 255 255 / 0.34);
  pointer-events: none;
}

body:has([data-dp-category-filter-root]) .product-grid__item,
body:has([data-dp-category-filter-root]) .product-grid__item * {
  box-sizing: border-box;
}

body:has([data-dp-category-filter-root]) .product-grid__item > *,
body:has([data-dp-category-filter-root]) .product-grid__item .product-card,
body:has([data-dp-category-filter-root]) .product-grid__card.product-grid__card {
  width: 100%;
  min-width: 0;
}

body:has([data-dp-category-filter-root]) .product-grid__item .product-card,
body:has([data-dp-category-filter-root]) .product-grid__card.product-grid__card {
  height: 100%;
  border-radius: inherit;
  background: transparent !important;
}

body:has([data-dp-category-filter-root]) .product-grid__card.product-grid__card {
  --product-card-gap: 0px;
  display: flex;
  flex-direction: column;
  padding: 0 !important;
  overflow: hidden;
  color: var(--dp-text);
}

/* =========================================================
   INSET PRODUCT MEDIA
   ========================================================= */

body:has([data-dp-category-filter-root])
  .product-grid__item
  :is(.card-gallery, .product-card__media, .product-media-container) {
  position: relative;
  width: auto;
  margin: 8px 8px 0;
  overflow: hidden;
  border: 1px solid rgb(222 212 195 / 0.64);
  border-radius: var(--dp-media-radius) !important;
  background:
    radial-gradient(circle at 50% 31%, rgb(255 255 255 / 0.98), transparent 61%),
    var(--dp-media-bg);
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / 0.86),
    0 4px 14px rgb(40 64 55 / 0.035);
}

body:has([data-dp-category-filter-root])
  .product-grid__item
  :is(.product-media, .product-media-container) {
  width: 100%;
  border-radius: inherit !important;
}

body:has([data-dp-category-filter-root])
  .product-grid__item
  :is(.product-media, .product-media-container) img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  transform: scale(1.001);
  transition: transform 360ms cubic-bezier(0.2, 0.72, 0.25, 1);
}

/* Remove gallery borders that can visually split the card. */
body:has([data-dp-category-filter-root])
  .product-grid__item
  :is(.card-gallery, .product-card__media, .product-media-container) {
  border-bottom-color: rgb(222 212 195 / 0.64) !important;
}

/* =========================================================
   CONTENT RHYTHM
   ========================================================= */

body:has([data-dp-category-filter-root])
  .product-grid__card
  > *:not(:first-child) {
  width: 100%;
  padding-inline: 12px;
}

body:has([data-dp-category-filter-root])
  .product-grid__card
  > *:nth-child(2) {
  padding-top: 10px;
}

body:has([data-dp-category-filter-root])
  .product-grid__card
  > *:last-child {
  padding-bottom: 14px;
}

/* Product title */
body:has([data-dp-category-filter-root]) .product-grid__item a.contents {
  color: inherit;
  text-decoration: none;
}

body:has([data-dp-category-filter-root])
  .product-grid__item
  p[role="heading"] {
  display: -webkit-box;
  min-height: 2.7em;
  margin: 0;
  overflow: hidden;
  color: var(--dp-text);
  font-size: 13.5px;
  font-weight: 720;
  line-height: 1.34;
  letter-spacing: -0.014em;
  text-wrap: pretty;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

body:has([data-dp-category-filter-root])
  .product-grid__item
  p[role="heading"] a {
  color: inherit;
  text-decoration: none;
}

/* Price */
body:has([data-dp-category-filter-root])
  .product-grid__card
  > *:has(.price) {
  margin-top: auto;
  padding-top: 9px;
}

body:has([data-dp-category-filter-root]) .product-grid__item .price {
  color: var(--dp-accent);
  font-size: 14.7px;
  font-weight: 800;
  line-height: 1.18;
  letter-spacing: -0.012em;
  font-variant-numeric: tabular-nums;
}

body:has([data-dp-category-filter-root])
  .product-grid__item
  :is(.compare-at-price, s) {
  color: var(--dp-muted);
  font-size: 11.5px;
  font-weight: 540;
}

/* Never show vendor text. */
body:has([data-dp-category-filter-root])
  .product-grid__item
  :is(.product-vendor, [data-product-vendor], .vendor) {
  display: none !important;
}

/* Variant swatches */
body:has([data-dp-category-filter-root])
  .product-grid__item
  :is(.swatches, .product-card-swatches, .variant-picker) {
  margin-top: 7px;
}

/* Existing Horizon quick add, when enabled. */
body:has([data-dp-category-filter-root])
  .product-grid__item
  :is(.quick-add, quick-add-component, .product-card__quick-add) {
  margin-top: 9px;
}

body:has([data-dp-category-filter-root])
  .product-grid__item
  :is(.quick-add, quick-add-component, .product-card__quick-add)
  :is(button, .button) {
  min-height: 42px;
  border: 1px solid var(--dp-accent);
  border-radius: 999px;
  background: var(--dp-accent);
  box-shadow: 0 6px 16px rgb(23 75 61 / 0.15);
  color: #fffdf8;
  font-size: 12.5px;
  font-weight: 750;
}

/* Focus and touch feedback */
body:has([data-dp-category-filter-root]) .product-grid__item:focus-within {
  outline: 3px solid rgb(23 75 61 / 0.19);
  outline-offset: 3px;
}

@media (hover: none) and (pointer: coarse) {
  body:has([data-dp-category-filter-root]) .product-grid__item:active {
    transform: scale(0.993);
  }
}

/* =========================================================
   DESKTOP
   ========================================================= */

@media screen and (min-width: 750px) {
  body:has([data-dp-category-filter-root]) .product-grid {
    gap: var(--dp-gap-desktop) !important;
    row-gap: var(--dp-gap-desktop) !important;
    column-gap: var(--dp-gap-desktop) !important;
    padding-inline: 0;
  }

  body:has([data-dp-category-filter-root]) .main-collection-grid {
    padding-block: 18px 58px;
  }

  body:has([data-dp-category-filter-root]) .product-grid__item {
    transition:
      transform 220ms ease,
      border-color 220ms ease,
      box-shadow 220ms ease;
  }

  body:has([data-dp-category-filter-root]) .product-grid__item:hover {
    border-color: var(--dp-border-hover) !important;
    box-shadow:
      inset 0 1px 0 rgb(255 255 255 / 0.95),
      0 4px 10px rgb(30 57 47 / 0.035),
      0 18px 40px rgb(30 57 47 / 0.11);
    transform: translateY(-4px);
  }

  body:has([data-dp-category-filter-root])
    .product-grid__item:hover
    :is(.product-media, .product-media-container) img {
    transform: scale(1.026);
  }

  body:has([data-dp-category-filter-root])
    .product-grid__item
    p[role="heading"] {
    min-height: 2.65em;
    font-size: 15px;
  }

  body:has([data-dp-category-filter-root]) .product-grid__item .price {
    font-size: 15.7px;
  }
}

/* =========================================================
   VERY NARROW PHONES
   ========================================================= */

@media screen and (max-width: 359px) {
  body:has([data-dp-category-filter-root]) .product-grid {
    gap: 8px !important;
    row-gap: 8px !important;
    column-gap: 8px !important;
    padding-inline: 8px;
  }

  body:has([data-dp-category-filter-root])
    .product-grid__item
    :is(.card-gallery, .product-card__media, .product-media-container) {
    margin: 6px 6px 0;
    border-radius: 13px !important;
  }

  body:has([data-dp-category-filter-root])
    .product-grid__card
    > *:not(:first-child) {
    padding-inline: 9px;
  }

  body:has([data-dp-category-filter-root])
    .product-grid__item
    p[role="heading"] {
    font-size: 12.8px;
  }

  body:has([data-dp-category-filter-root]) .product-grid__item .price {
    font-size: 13.6px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:has([data-dp-category-filter-root]) .product-grid__item,
  body:has([data-dp-category-filter-root])
    .product-grid__item
    :is(.product-media, .product-media-container) img {
    transition: none !important;
  }
}