/** Shopify CDN: Minification failed

Line 1821:16 Expected identifier but found "{"
Line 1821:17 Unexpected "{"
Line 1821:27 Expected ":"
Line 1821:52 Unexpected ","
Line 1821:55 Unexpected "{"
Line 1821:65 Expected ":"
Line 2087:16 Expected identifier but found "{"
Line 2087:17 Unexpected "{"
Line 2087:27 Expected ":"
Line 2087:55 Unexpected ","
... and 110 more hidden warnings

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:eb-bubble-carousel (INDEX:17) */
.eb-bubble-carousel {
  background-color: var(--section-bg, #f0ede8);
  padding: 3rem 0;
}

.eb-bubble-carousel__heading {
  text-align: center;
  color: var(--text-color, #1a0a05);
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  margin: 0 0 2rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding-inline: 1.5rem;
}

.eb-bubble-carousel__track {
  display: flex;
  gap: 1rem;
  list-style: none;
  margin: 0;
  padding: 0 1.5rem 0.5rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.eb-bubble-carousel__track::-webkit-scrollbar {
  display: none;
}

.eb-bubble-card {
  flex: 0 0 78%;
  max-width: 320px;
  scroll-snap-align: center;
  background-color: var(--card-bg, #ffffff);
  border-radius: 20px;
  overflow: hidden;
  /* establish a containing block so the visually-hidden absolute rating label
     is clipped by the card instead of bleeding the page right on mobile */
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 1rem 1rem 1.25rem;
  gap: 0.75rem;
}

@media (min-width: 750px) {
  .eb-bubble-carousel {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .eb-bubble-carousel__heading {
    max-width: 1400px;
    margin-inline: auto;
  }

  .eb-bubble-carousel__track {
    display: grid;
    grid-template-columns: repeat(var(--columns, 4), 1fr);
    gap: 1.25rem;
    overflow: visible;
    max-width: 1400px;
    margin-inline: auto;
    padding: 0 1.5rem;
  }

  .eb-bubble-card {
    flex: none;
    max-width: none;
  }
}

.eb-bubble-card__top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  min-height: 2rem;
}

.eb-bubble-card__label {
  font-size: clamp(1.1rem, 2.5vw, 1.6rem);
  font-weight: 700;
  font-style: italic;
  color: var(--label-color, #1a0a05);
  line-height: 1.1;
  flex: 1;
  padding-right: 0.5rem;
}

.eb-bubble-card__stars {
  flex-shrink: 0;
  align-self: flex-start;
}

.eb-bubble-card__stars .product__rating {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.eb-bubble-card__stars .rating__star {
  display: inline-flex;
  position: relative;
  font-size: 0;
}

.eb-bubble-card__stars .rating__star svg {
  width: 12px;
  height: 12px;
}

.eb-bubble-card__stars .rating__star__empty svg {
  fill: #d4cbc5;
}

.eb-bubble-card__stars .rating__star__full {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  width: calc(100% - var(--percent, 0%));
  display: flex;
}

.eb-bubble-card__stars .rating__star__full svg {
  fill: var(--text-color, #1a0a05);
  flex-shrink: 0;
}

.eb-bubble-card__stars .product__rating__count {
  font-size: 0.65rem;
  color: var(--text-color, #1a0a05);
  opacity: 0.7;
}

.eb-bubble-card__carousel {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  background-color: #f5f2ef;
}

.eb-bubble-card__imgtrack {
  display: flex;
  overflow-x: scroll;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.eb-bubble-card__imgtrack::-webkit-scrollbar {
  display: none;
}

.eb-bubble-card__slide {
  flex: 0 0 100%;
  width: 100%;
  aspect-ratio: 1 / 1;
  scroll-snap-align: start;
  display: block;
  overflow: hidden;
}

.eb-bubble-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  pointer-events: none;
}

.eb-bubble-card__img--placeholder {
  width: 60%;
  height: 60%;
  object-fit: contain;
  opacity: 0.4;
  margin: auto;
}

.eb-bubble-card__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.85);
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  color: #1a0a05;
  opacity: 0;
  transition: opacity 0.2s ease;
  padding: 0;
}

.eb-bubble-card:hover .eb-bubble-card__arrow {
  opacity: 1;
}

.eb-bubble-card__arrow--prev {
  left: 8px;
}

.eb-bubble-card__arrow--next {
  right: 8px;
}

.eb-bubble-card__arrow:active {
  background: rgba(255, 255, 255, 1);
}

.eb-bubble-card__dots {
  position: absolute;
  bottom: 8px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 5px;
  z-index: 2;
}

.eb-bubble-card__dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  transition: background 0.2s ease, transform 0.2s ease;
  flex-shrink: 0;
}

.eb-bubble-card__dot.is-active {
  background: #ffffff;
  transform: scale(1.3);
}

.eb-bubble-card__info {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.6rem;
  text-align: center;
}

.eb-bubble-card__title {
  font-size: clamp(0.75rem, 1.8vw, 0.9rem);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--text-color, #1a0a05);
  text-decoration: none;
  line-height: 1.3;
}

.eb-bubble-card__title:hover {
  text-decoration: underline;
}

.eb-bubble-card__buy {
  display: block;
  width: 100%;
  padding: 0.65rem 1rem;
  border: 1.5px solid var(--text-color, #1a0a05);
  border-radius: 999px;
  background: transparent;
  color: var(--text-color, #1a0a05);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  transition: background-color 0.2s ease, color 0.2s ease;
  cursor: pointer;
}

.eb-bubble-card__buy:hover {
  background-color: var(--text-color, #1a0a05);
  color: var(--card-bg, #ffffff);
}
/* END_SECTION:eb-bubble-carousel */

/* START_SECTION:eb-bubble-collection (INDEX:18) */
.eb-bubble-collection {
  background-color: var(--section-bg, #f0ede8);
  padding: 3rem 1.5rem;
}

.eb-bubble-collection__heading {
  text-align: center;
  color: var(--text-color, #1a0a05);
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  margin: 0 0 2rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  max-width: 1400px;
  margin-inline: auto;
}

.eb-bubble-collection__grid {
  display: grid;
  grid-template-columns: repeat(var(--columns-mobile, 2), 1fr);
  gap: 1rem;
  list-style: none;
  margin: 0;
  padding: 0;
  max-width: 1400px;
  margin-inline: auto;
}

@media (min-width: 750px) {
  .eb-bubble-collection {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}

@media (min-width: 900px) {
  .eb-bubble-collection__grid {
    grid-template-columns: repeat(var(--columns, 2), 1fr);
    gap: 1.25rem;
  }
}

.eb-bubble-card {
  background-color: var(--card-bg, #ffffff);
  border-radius: 20px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 1rem 1rem 1.25rem;
  gap: 0.75rem;
}

.eb-bubble-card__top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  min-height: 2rem;
}

.eb-bubble-card__label {
  font-size: clamp(1.1rem, 2.5vw, 1.6rem);
  font-weight: 700;
  font-style: italic;
  color: var(--label-color, #1a0a05);
  line-height: 1.1;
  flex: 1;
  padding-right: 0.5rem;
}

.eb-bubble-card__stars {
  flex-shrink: 0;
  align-self: flex-start;
}

.eb-bubble-card__stars .product__rating {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.eb-bubble-card__stars .rating__star {
  display: inline-flex;
  position: relative;
  font-size: 0;
}

.eb-bubble-card__stars .rating__star svg {
  width: 12px;
  height: 12px;
}

.eb-bubble-card__stars .rating__star__empty svg {
  fill: #d4cbc5;
}

.eb-bubble-card__stars .rating__star__full {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  width: calc(100% - var(--percent, 0%));
  display: flex;
}

.eb-bubble-card__stars .rating__star__full svg {
  fill: var(--text-color, #1a0a05);
  flex-shrink: 0;
}

.eb-bubble-card__stars .product__rating__count {
  font-size: 0.65rem;
  color: var(--text-color, #1a0a05);
  opacity: 0.7;
}

.eb-bubble-card__carousel {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  background-color: #f5f2ef;
}

.eb-bubble-card__track {
  display: flex;
  overflow-x: scroll;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.eb-bubble-card__track::-webkit-scrollbar {
  display: none;
}

.eb-bubble-card__slide {
  flex: 0 0 100%;
  width: 100%;
  aspect-ratio: 1 / 1;
  scroll-snap-align: start;
  display: block;
  overflow: hidden;
}

.eb-bubble-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  pointer-events: none;
}

.eb-bubble-card__img--placeholder {
  width: 60%;
  height: 60%;
  object-fit: contain;
  opacity: 0.4;
  margin: auto;
}

.eb-bubble-card__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.85);
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  color: #1a0a05;
  opacity: 0;
  transition: opacity 0.2s ease;
  padding: 0;
}

.eb-bubble-card:hover .eb-bubble-card__arrow {
  opacity: 1;
}

.eb-bubble-card__arrow--prev {
  left: 8px;
}

.eb-bubble-card__arrow--next {
  right: 8px;
}

.eb-bubble-card__arrow:active {
  background: rgba(255, 255, 255, 1);
}

.eb-bubble-card__dots {
  position: absolute;
  bottom: 8px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 5px;
  z-index: 2;
}

.eb-bubble-card__dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  transition: background 0.2s ease, transform 0.2s ease;
  flex-shrink: 0;
}

.eb-bubble-card__dot.is-active {
  background: #ffffff;
  transform: scale(1.3);
}

.eb-bubble-card__info {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.6rem;
  text-align: center;
}

.eb-bubble-card__title {
  font-size: clamp(0.75rem, 1.8vw, 0.9rem);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--text-color, #1a0a05);
  text-decoration: none;
  line-height: 1.3;
}

.eb-bubble-card__title:hover {
  text-decoration: underline;
}

.eb-bubble-card__buy {
  display: block;
  width: 100%;
  padding: 0.65rem 1rem;
  border: 1.5px solid var(--text-color, #1a0a05);
  border-radius: 999px;
  background: transparent;
  color: var(--text-color, #1a0a05);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  transition: background-color 0.2s ease, color 0.2s ease;
  cursor: pointer;
}

.eb-bubble-card__buy:hover {
  background-color: var(--text-color, #1a0a05);
  color: var(--card-bg, #ffffff);
}

.eb-bubble-collection__pagination {
  display: flex;
  justify-content: center;
  padding-top: 2.5rem;
  gap: 0.5rem;
}

.eb-bubble-collection__pagination .page,
.eb-bubble-collection__pagination .next,
.eb-bubble-collection__pagination .prev {
  color: var(--text-color, #1a0a05);
  text-decoration: none;
  padding: 0.4rem 0.75rem;
  border: 1px solid currentColor;
  border-radius: 4px;
  font-size: 0.85rem;
}

.eb-bubble-collection__pagination .current {
  font-weight: 700;
}
/* END_SECTION:eb-bubble-collection */

/* START_SECTION:eb-bubble-featured (INDEX:19) */
.eb-featured {
  background-color: var(--section-bg, #f0ede8);
  padding: 3rem 0 3rem 1.5rem;
  overflow: hidden;
}

.eb-featured__header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding-right: 1.5rem;
  margin-bottom: 1.5rem;
}

.eb-featured__heading {
  color: var(--text-color, #1a0a05);
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin: 0;
}

.eb-featured__view-all {
  color: var(--text-color, #1a0a05);
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: underline;
  white-space: nowrap;
  flex-shrink: 0;
  margin-left: 1rem;
}

.eb-featured__slider-wrap {
  position: relative;
  display: flex;
  align-items: center;
}

.eb-featured__track {
  display: flex;
  gap: 0.75rem;
  overflow-x: scroll;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  list-style: none;
  margin: 0;
  padding: 0 1.5rem 0 0;
}

.eb-featured__track::-webkit-scrollbar {
  display: none;
}

.eb-featured__card {
  flex: 0 0 var(--card-width-mobile, 220px);
  width: var(--card-width-mobile, 220px);
  scroll-snap-align: start;
}

@media (min-width: 750px) {
  .eb-featured {
    padding-left: 0;
  }
  .eb-featured__header,
  .eb-featured__slider-wrap {
    max-width: var(--content-width, 1480px);
    margin-inline: auto;
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
  .eb-featured__track {
    gap: 1rem;
    padding-right: 0;
  }
  .eb-featured__card {
    flex: 0 0 calc((100% - 3rem) / 4);
    width: calc((100% - 3rem) / 4);
  }
}

.eb-featured__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.4);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border: 1.5px solid rgba(26, 10, 5, 0.25);
  color: var(--text-color, #1a0a05);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  box-shadow: 0 2px 8px rgba(0,0,0,0.12);
  transition: background 0.2s ease, opacity 0.2s ease;
}

.eb-featured__arrow:hover {
  background: rgba(255, 255, 255, 0.6);
}

.eb-featured__arrow--prev {
  left: -18px;
}

.eb-featured__arrow--next {
  right: -18px;
}

@media (max-width: 749px) {
  .eb-featured__arrow {
    display: none;
  }
}

.eb-bubble-card {
  background-color: var(--card-bg, #ffffff);
  border-radius: 20px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 1rem 1rem 1.25rem;
  gap: 0.75rem;
}

.eb-bubble-card__top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  min-height: 2rem;
}

.eb-bubble-card__label {
  font-size: clamp(0.85rem, 2vw, 1.15rem);
  font-weight: 500;
  font-style: italic;
  color: var(--label-color, #1a0a05);
  line-height: 1.1;
  flex: 1;
  padding-right: 0.5rem;
}

.eb-bubble-card__stars {
  flex-shrink: 0;
  align-self: flex-start;
}

.eb-bubble-card__stars .product__rating {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}

.eb-bubble-card__stars .rating__star {
  display: inline-flex;
  position: relative;
  font-size: 0;
}

.eb-bubble-card__stars .rating__star svg {
  width: 12px;
  height: 12px;
}

.eb-bubble-card__stars .rating__star__empty svg {
  fill: #d4cbc5;
}

.eb-bubble-card__stars .rating__star__full {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  width: calc(100% - var(--percent, 0%));
  display: flex;
}

.eb-bubble-card__stars .rating__star__full svg {
  fill: var(--text-color, #1a0a05);
  flex-shrink: 0;
}

.eb-bubble-card__stars .product__rating__count {
  font-size: 0.65rem;
  color: var(--text-color, #1a0a05);
  opacity: 0.7;
}

.eb-bubble-card__carousel {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  background-color: #f5f2ef;
}

.eb-bubble-card__track {
  display: flex;
  overflow-x: scroll;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.eb-bubble-card__track::-webkit-scrollbar {
  display: none;
}

.eb-bubble-card__slide {
  flex: 0 0 100%;
  width: 100%;
  aspect-ratio: 1 / 1;
  scroll-snap-align: start;
  display: block;
  overflow: hidden;
}

.eb-bubble-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  pointer-events: none;
}

.eb-bubble-card__img--placeholder {
  width: 60%;
  height: 60%;
  object-fit: contain;
  opacity: 0.4;
  margin: auto;
}

.eb-bubble-card__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.85);
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  color: #1a0a05;
  opacity: 0;
  transition: opacity 0.2s ease;
  padding: 0;
}

.eb-bubble-card:hover .eb-bubble-card__arrow {
  opacity: 1;
}

.eb-bubble-card__arrow--prev {
  left: 8px;
}

.eb-bubble-card__arrow--next {
  right: 8px;
}

.eb-bubble-card__dots {
  position: absolute;
  bottom: 8px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 5px;
  z-index: 2;
}

.eb-bubble-card__dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  transition: background 0.2s ease, transform 0.2s ease;
  flex-shrink: 0;
}

.eb-bubble-card__dot.is-active {
  background: #ffffff;
  transform: scale(1.3);
}

.eb-bubble-card__info {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.6rem;
  text-align: center;
}

.eb-bubble-card__title {
  font-size: clamp(0.7rem, 1.8vw, 0.85rem);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--text-color, #1a0a05);
  text-decoration: none;
  line-height: 1.3;
}

.eb-bubble-card__title:hover {
  text-decoration: underline;
}

.eb-bubble-card__buy {
  display: block;
  width: 100%;
  padding: 0.65rem 1rem;
  border: 1.5px solid var(--text-color, #1a0a05);
  border-radius: 999px;
  background: transparent;
  color: var(--text-color, #1a0a05);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  transition: background-color 0.2s ease, color 0.2s ease;
  cursor: pointer;
}

.eb-bubble-card__buy:hover {
  background-color: var(--text-color, #1a0a05);
  color: var(--card-bg, #ffffff);
}

@media (max-width: 749px) {
  .eb-bubble-card__label {
    font-size: 0.85rem;
    font-weight: 500;
  }
  .eb-bubble-card__title {
    font-size: 0.95rem;
  }
}
/* END_SECTION:eb-bubble-featured */

/* START_SECTION:eb-collection-grid (INDEX:20) */
.eb-collection-grid {
  background-color: var(--section-bg, #ffffff);
  padding: 2rem 1.5rem;
}

.eb-collection-grid__heading {
  text-align: center;
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin: 0 0 1.5rem;
  max-width: 1400px;
  margin-inline: auto;
}

.eb-collection-grid__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  list-style: none;
  margin: 0 auto;
  padding: 0;
  max-width: 1400px;
}

@media (min-width: 750px) {
  .eb-collection-grid {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
  .eb-collection-grid__grid {
    grid-template-columns: repeat(var(--columns, 4), 1fr);
    gap: 16px;
  }
}

.eb-collection-grid__item {
  border-radius: 20px;
  overflow: hidden;
}

.eb-collection-grid__link {
  display: block;
  position: relative;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  border-radius: 20px;
  text-decoration: none;
}

.eb-collection-grid__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

.eb-collection-grid__img--placeholder {
  background: #e9dcd8;
  opacity: 0.5;
}

.eb-collection-grid__link:hover .eb-collection-grid__img {
  transform: scale(1.04);
}

.eb-collection-grid__label {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--label-color, #ffffff);
  font-size: clamp(1.3rem, 4vw, 2rem);
  font-weight: 700;
  line-height: 1.1;
  pointer-events: none;
  text-shadow: 0 2px 10px rgba(0,0,0,0.35);
  text-align: center;
  padding: 1rem;
}

@media (min-width: 750px) {
  .eb-collection-grid__label {
    font-size: clamp(1.4rem, 2.5vw, 2.2rem);
  }
}
/* END_SECTION:eb-collection-grid */

/* START_SECTION:eb-hero-video (INDEX:23) */
.eb-hero-video {
  position: relative;
  width: 100%;
  min-height: var(--min-height-desktop, 600px);
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

@media (max-width: 749px) {
  .eb-hero-video {
    min-height: var(--min-height-mobile, 500px);
  }
}

.eb-hero-video__media {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.eb-hero-video__media--mobile {
  display: none;
}

.eb-hero-video__media--desktop {
  display: block;
}

@media (max-width: 749px) {
  .eb-hero-video__media--desktop {
    display: none;
  }
  .eb-hero-video__media--mobile {
    display: block;
  }
}

.eb-hero-video__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0) 60%);
  opacity: var(--overlay-opacity, 1);
  pointer-events: none;
}

.eb-hero-video__content {
  position: relative;
  z-index: 1;
  text-align: center;
  padding: 3rem 2rem 4rem;
  color: var(--text-color, #ffffff);
  max-width: 700px;
  width: 100%;
}

@media (max-width: 749px) {
  .eb-hero-video__content {
    padding: 2rem 1.5rem 3.5rem;
  }
}

.eb-hero-video__eyebrow {
  font-size: clamp(0.65rem, 1.5vw, 0.8rem);
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: inherit;
  margin: 0 0 0.75rem;
  opacity: 0.85;
}

.eb-hero-video__heading {
  font-size: clamp(2.2rem, 6vw, 5rem);
  font-weight: 700;
  margin: 0 0 1rem;
  line-height: 1.05;
  color: inherit;
  text-wrap: balance;
}

.eb-hero-video__subheading {
  font-size: clamp(0.9rem, 2vw, 1.1rem);
  margin: 0 0 1.75rem;
  opacity: 0.9;
  color: inherit;
  line-height: 1.5;
}

.eb-hero-video__button {
  display: inline-block;
  padding: 0.8rem 2.2rem;
  background-color: var(--btn-bg, rgba(255,255,255,0.2));
  color: var(--btn-text, #ffffff);
  text-decoration: none;
  font-weight: 600;
  font-size: 0.8rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border: 1.5px solid var(--btn-text, #ffffff);
  border-radius: 999px;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  transition: background-color 0.25s ease, color 0.25s ease;
}

.eb-hero-video__button:hover {
  background-color: var(--btn-text, #ffffff);
  color: var(--btn-bg, #000000);
}

.eb-hero-video__playpause {
  display: none;
}
/* END_SECTION:eb-hero-video */

/* START_SECTION:eb-image-text (INDEX:24) */
.eb-image-text {
  background-color: var(--section-bg, #f5f2ef);
  padding: 3rem 1.5rem;
}

.eb-image-text__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.5rem;
  align-items: center;
  max-width: 1400px;
  margin: 0 auto;
}

@media (min-width: 750px) {
  .eb-image-text {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}

.eb-image-text__inner--right {
  direction: rtl;
}

.eb-image-text__inner--right > * {
  direction: ltr;
}

.eb-image-text__media-wrap {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  aspect-ratio: 9 / 16;
  background: #e9dcd8;
}

.eb-image-text__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.eb-image-text__placeholder {
  width: 100%;
  height: 100%;
}

.eb-image-text__placeholder-svg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.eb-image-text__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1rem;
  padding: 2rem;
  color: var(--text-color, #1a0a05);
}

.eb-image-text__eyebrow {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin: 0;
  opacity: 0.7;
}

.eb-image-text__heading {
  font-size: clamp(2rem, 4vw, 3.5rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  line-height: 1.0;
  margin: 0;
}

.eb-image-text__subheading {
  font-size: clamp(0.9rem, 1.5vw, 1.1rem);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  margin: 0;
}

.eb-image-text__body {
  font-size: clamp(0.9rem, 1.4vw, 1rem);
  line-height: 1.6;
  margin: 0;
  max-width: 420px;
  opacity: 0.85;
}

.eb-image-text__btn {
  display: inline-block;
  padding: 0.85rem 2.5rem;
  border: 2px solid var(--text-color, #1a0a05);
  border-radius: 999px;
  background: transparent;
  color: var(--text-color, #1a0a05);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease;
  margin-top: 0.5rem;
}

.eb-image-text__btn:hover {
  background: var(--text-color, #1a0a05);
  color: var(--section-bg, #f5f2ef);
}

@media (max-width: 749px) {
  .eb-image-text {
    padding: 1.5rem 1rem;
  }

  .eb-image-text__inner {
    grid-template-columns: 1fr;
    gap: 1rem;
    direction: ltr !important;
  }

  .eb-image-text__media-wrap {
    aspect-ratio: 4 / 5;
    border-radius: 20px;
  }

  .eb-image-text__content {
    background-color: var(--card-bg, #ede9e4);
    border-radius: 20px;
    padding: 2rem 1.5rem;
    gap: 0.85rem;
  }

  .eb-image-text__btn {
    width: 100%;
    text-align: center;
  }
}
/* END_SECTION:eb-image-text */

/* START_SECTION:eb-product-spotlight (INDEX:28) */
.ebps {
  font-family: var(--ebps-font);
  color: var(--ebps-text);
  -webkit-font-smoothing: antialiased;
}
.ebps *,
.ebps *::before,
.ebps *::after {
  box-sizing: border-box;
}
.ebps__inner {
  max-width: var(--ebps-max, 1900px);
  margin-inline: auto;
}
.ebps__viewport {
  position: relative;
}
.ebps__slide {
  display: none;
  grid-template-columns: 1fr 1fr;
  gap: var(--ebps-gap, 0px);
}
.ebps__slide.is-active {
  display: grid;
}

.ebps__media {
  position: relative;
  aspect-ratio: 1 / 1;
  border-radius: var(--ebps-radius, 0px);
  overflow: hidden;
}
.ebps__media-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.ebps__media-img--ph {
  background: #e9dcd8;
}

.ebps__dots {
  position: absolute;
  left: 50%;
  bottom: 4%;
  transform: translateX(-50%);
  display: flex;
  gap: 9px;
  z-index: 3;
}
.ebps__dot {
  width: 9px;
  height: 9px;
  padding: 0;
  border: none;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.55);
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
}
.ebps__dot.is-on {
  background: #ffffff;
  transform: scale(1.1);
}

.ebps__panel {
  position: relative;
  aspect-ratio: 1 / 1;
  background: var(--ebps-panel, #ececec);
  border-radius: var(--ebps-radius, 0px);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.ebps__swatch {
  width: 60%;
  max-width: 420px;
  aspect-ratio: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ebps__swatch-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.ebps__info {
  position: absolute;
  top: clamp(20px, 4%, 48px);
  left: clamp(20px, 4%, 48px);
  right: clamp(20px, 4%, 48px);
}
.ebps__title {
  margin: 0;
  font-size: clamp(1rem, 1.6vw, 1.5rem);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.ebps__subtitle {
  margin: 0.35em 0 0;
  font-size: clamp(0.85rem, 1.2vw, 1.15rem);
  color: var(--ebps-muted, #6b6b6b);
}

.ebps__cta {
  position: absolute;
  left: clamp(20px, 4%, 48px);
  bottom: clamp(20px, 5%, 48px);
}
.ebps__form {
  margin: 0;
}
.ebps__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  color: var(--ebps-text);
  font-family: inherit;
  font-size: clamp(0.8rem, 1.1vw, 1rem);
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  padding: 0.9em 2em;
  border-radius: 999px;
  border: 1.5px solid currentColor;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
}
.ebps__btn:hover {
  background: var(--ebps-text);
  color: var(--ebps-panel, #ececec);
}
.ebps__btn[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
}
.ebps__btn--static {
  cursor: default;
}

.ebps__count {
  position: absolute;
  right: clamp(20px, 4%, 48px);
  bottom: clamp(16px, 4%, 40px);
  font-size: clamp(2.4rem, 5vw, 4rem);
  font-weight: 700;
  line-height: 1;
  color: var(--ebps-muted, #b9b9b9);
  letter-spacing: 0.02em;
}

.ebps__arrow {
  position: absolute;
  top: 50%;
  right: clamp(12px, 2%, 28px);
  transform: translateY(-50%);
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  color: var(--ebps-text);
  border: 1.5px solid currentColor;
  border-radius: 50%;
  cursor: pointer;
  z-index: 3;
  transition: background 0.2s ease, color 0.2s ease;
}
.ebps__arrow svg {
  width: 22px;
  height: 22px;
}
.ebps__arrow:hover {
  background: var(--ebps-text);
  color: var(--ebps-panel, #ececec);
}

@media (max-width: 749px) {
  .ebps__slide.is-active {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .ebps__media {
    aspect-ratio: 1 / 1;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
  }
  .ebps__panel {
    aspect-ratio: 3 / 4;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }
  .ebps__swatch {
    width: 55%;
  }
  .ebps__arrow {
    display: none;
  }
}
/* END_SECTION:eb-product-spotlight */

/* START_SECTION:eb-shop-banner (INDEX:30) */
.eb-banner {
  padding-inline: var(--eb-banner-gap, 0px);
  padding-top: var(--eb-banner-pt, 0px);
  padding-bottom: var(--eb-banner-pb, 0px);
  margin-inline: auto;
}

.eb-banner__media {
  position: relative;
  display: block;
  width: 100%;
  max-width: var(--eb-banner-max, 1400px);
  margin-inline: auto;
  aspect-ratio: var(--eb-banner-ratio-m, 1 / 1);
  border-radius: var(--eb-banner-radius, 0px);
  overflow: hidden;
  text-decoration: none;
}

.eb-banner__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.eb-banner__bg--placeholder {
  background: #e9dcd8;
}

.eb-banner__bg--desktop {
  display: none;
}

.eb-banner__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, var(--eb-banner-overlay, 0));
  pointer-events: none;
}

.eb-banner__btn {
  position: absolute;
  bottom: var(--eb-banner-btn-bottom, 8%);
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--eb-banner-btn-bg, #ffffff);
  color: var(--eb-banner-btn-text, #000000);
  font-size: clamp(0.85rem, 2.6vw, 1.1rem);
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.85em 1.9em;
  border-radius: 999px;
  border: 1.5px solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 6px 22px -10px rgba(0, 0, 0, 0.45);
  white-space: nowrap;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.eb-banner__media:hover .eb-banner__btn {
  transform: translateX(-50%) scale(1.04);
  box-shadow: 0 10px 28px -10px rgba(0, 0, 0, 0.5);
}

@media (min-width: 750px) {
  .eb-banner__media {
    aspect-ratio: var(--eb-banner-ratio-d, 21 / 9);
  }
  .eb-banner__bg--desktop {
    display: block;
  }
  .eb-banner__bg--mobile {
    display: none;
  }
}
/* END_SECTION:eb-shop-banner */

/* START_SECTION:eb-video-text (INDEX:31) */
.eb-video-text {
  background-color: var(--section-bg, #f5f2ef);
  padding: 3rem 1.5rem;
}

.eb-video-text__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.5rem;
  align-items: center;
  max-width: 1400px;
  margin: 0 auto;
}

@media (min-width: 750px) {
  .eb-video-text {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}

.eb-video-text__inner--right {
  direction: rtl;
}

.eb-video-text__inner--right > * {
  direction: ltr;
}

.eb-video-text__media-wrap {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  background: #e9dcd8;
}

.eb-video-text__video {
  width: 100%;
  height: auto;
  display: block;
}

.eb-video-text__placeholder {
  width: 100%;
  height: 100%;
}

.eb-video-text__placeholder-svg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.eb-video-text__mute {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 2;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.85);
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #1a0a05;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  transition: background 0.2s ease;
  padding: 0;
}

.eb-video-text__mute:hover {
  background: rgba(255, 255, 255, 1);
}

.eb-video-text__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1rem;
  padding: 2rem;
  color: var(--text-color, #1a0a05);
}

.eb-video-text__eyebrow {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin: 0;
  opacity: 0.7;
}

.eb-video-text__heading {
  font-size: clamp(2rem, 4vw, 3.5rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  line-height: 1.0;
  margin: 0;
}

.eb-video-text__subheading {
  font-size: clamp(0.9rem, 1.5vw, 1.1rem);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  margin: 0;
}

.eb-video-text__body {
  font-size: clamp(0.9rem, 1.4vw, 1rem);
  line-height: 1.6;
  margin: 0;
  max-width: 420px;
  opacity: 0.85;
}

.eb-video-text__btn {
  display: inline-block;
  padding: 0.85rem 2.5rem;
  border: 2px solid var(--text-color, #1a0a05);
  border-radius: 999px;
  background: transparent;
  color: var(--text-color, #1a0a05);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background 0.2s ease, color 0.2s ease;
  margin-top: 0.5rem;
}

.eb-video-text__btn:hover {
  background: var(--text-color, #1a0a05);
  color: var(--section-bg, #f5f2ef);
}

@media (max-width: 749px) {
  .eb-video-text {
    padding: 1.5rem 1rem;
  }

  .eb-video-text__inner {
    grid-template-columns: 1fr;
    gap: 1rem;
    direction: ltr !important;
  }

  .eb-video-text__media-wrap {
    border-radius: 20px;
  }

  .eb-video-text__content {
    background-color: var(--card-bg, #f5f2ef);
    border-radius: 20px;
    padding: 2rem 1.5rem;
    gap: 0.85rem;
  }

  .eb-video-text__heading {
    font-size: clamp(1.8rem, 8vw, 2.5rem);
  }

  .eb-video-text__btn {
    width: 100%;
    text-align: center;
  }
}
/* END_SECTION:eb-video-text */

/* START_SECTION:product-may2026 (INDEX:76) */
.pp {
    --pp-bone:   #EEEFEC;
    --pp-cream:  #F6F4EF;
    --pp-white:  #FDFDFD;
    --pp-ink:    #101010;
    --pp-ink-80: rgba(16, 16, 16, 0.80);
    --pp-ink-60: rgba(16, 16, 16, 0.60);
    --pp-ink-40: rgba(16, 16, 16, 0.40);
    --pp-ink-20: rgba(16, 16, 16, 0.20);
    --pp-ink-10: rgba(16, 16, 16, 0.10);
    --pp-ink-06: rgba(16, 16, 16, 0.06);
    --pp-line:   #E3E2DD;
    --pp-line-strong: #C9C7C0;
    --pp-forest: #2D4A3E;
    --pp-forest-deep: #1F362C;
    --pp-forest-12: rgba(45, 74, 62, 0.12);
    --pp-forest-08: rgba(45, 74, 62, 0.08);
    --pp-sage-soft: #E4E8DE;

    box-sizing: border-box;
    max-width: 100%;
    margin: 0 auto;
    padding: var(--pp-padding-top, 56px) clamp(20px, 4vw, 56px) var(--pp-padding-bottom, 96px);
    background: var(--pp-section-bg, var(--pp-white));
    color: var(--pp-ink);
    font-family:{{ settings.type_base_font.family }}, {{ settings.type_base_font.fallback_families }};
    -webkit-font-smoothing: antialiased;
    overflow-x: clip;
  }

  @media (min-width: 1440px) {
    .pp { max-width: 1440px; }
  }

  .pp *,
  .pp *::before,
  .pp *::after { box-sizing: border-box; }

  .pp__form { display: contents; }

  .pp__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 28px;
  }

  @media (min-width: 980px) {
    .pp__grid {
      grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
      gap: clamp(32px, 4vw, 64px);
    }
  }

  .pp-gallery {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 0;
  }

  .pp-stage {
    position: relative;
    background: var(--pp-white);
    border-radius: 4px;
    overflow: hidden;
  }

  .pp-stage__viewport {
    position: relative;
    aspect-ratio: 1 / 1;
    width: 100%;
    overflow: hidden;
  }

  .pp-tile {
    position: absolute;
    inset: 0;
    background: var(--pp-bone);
    opacity: 0;
    pointer-events: none;
    transition: opacity 260ms ease;
  }

  .pp-tile.is-active {
    opacity: 1;
    pointer-events: auto;
  }

  .pp-tile--primary {
    aspect-ratio: 1 / 1;
    width: 100%;
  }

  .pp-tile__media,
  .pp-tile img,
  .pp-tile video,
  .pp-tile iframe,
  .pp-tile model-viewer {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .pp-placeholder {
    position: absolute;
    inset: 0;
    background:
      repeating-linear-gradient(135deg, rgba(16, 16, 16, 0.035) 0px, rgba(16, 16, 16, 0.035) 1px, transparent 1px, transparent 16px),
      radial-gradient(120% 90% at 60% 30%, #F1EFE8 0%, var(--pp-bone) 55%, #E4E2DB 100%);
  }

  @media (min-width: 980px) {
    .pp-stage {
      overflow: visible;
      background: transparent;
    }

    .pp-stage__viewport {
      aspect-ratio: auto;
      overflow: visible;
      display: flex;
      flex-direction: column;
      gap: 12px;
    }

    .pp-tile {
      position: static;
      inset: auto;
      opacity: 1;
      pointer-events: auto;
      transition: none;
      border-radius: 4px;
      overflow: hidden;
    }

    .pp-thumbs-wrap { display: none; }
  }

  .pp-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    border-radius: 999px;
    border: 1px solid var(--pp-arrow-border, var(--pp-line));
    background: var(--pp-arrow-bg, var(--pp-white));
    display: grid;
    place-items: center;
    cursor: pointer;
    color: var(--pp-arrow-icon, var(--pp-ink));
    z-index: 2;
    transition: border-color 160ms ease, background 160ms ease;
  }

  .pp-arrow:hover { border-color: var(--pp-ink); }
  .pp-arrow--prev { left: 12px; }
  .pp-arrow--next { right: 12px; }
  .pp-arrow svg { width: 14px; height: 14px; }

  @media (min-width: 980px) {
    .pp-arrow { width: 44px; height: 44px; }
    .pp-arrow--prev { left: 16px; }
    .pp-arrow--next { right: 16px; }
  }

  .pp-pagination {
    position: static;
    transform: none;
    display: flex;
    justify-content: center;
    gap: 6px;
    padding: 12px 0 2px;
    background: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    border: 0;
    border-radius: 0;
    z-index: 2;
  }

  .pp-pagination span {
    width: 5px;
    height: 5px;
    border-radius: 999px;
    background: var(--pp-pagination-dot, var(--pp-ink-40));
    transition: width 200ms ease, background 200ms ease;
  }

  .pp-pagination span.is-active {
    background: var(--pp-pagination-active, var(--pp-ink));
    width: 16px;
  }

  @media (min-width: 980px) {
    .pp-pagination { display: none; }
  }

  .pp-thumbs {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    padding-bottom: 2px;
    scroll-snap-type: x mandatory;
  }

  .pp-thumbs::-webkit-scrollbar { display: none; }

  .pp-thumb {
    position: relative;
    flex: 0 0 72px;
    height: 72px;
    background: var(--pp-bone);
    border-radius: 4px;
    border: 1.5px solid transparent;
    overflow: hidden;
    cursor: pointer;
    padding: 0;
    appearance: none;
    scroll-snap-align: start;
  }

  @media (min-width: 980px) {
    .pp-thumbs { gap: 10px; }
    .pp-thumb { flex: 0 0 110px; height: 110px; }
  }

  @media (min-width: 1280px) {
    .pp-thumb { flex: 0 0 124px; height: 124px; }
  }

  .pp-thumbs-wrap {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  .pp-scrollbar {
    position: relative;
    height: 2px;
    background: var(--pp-scrollbar-track, var(--pp-line));
    border-radius: 999px;
    overflow: hidden;
    opacity: 0;
    transition: opacity 200ms ease;
  }

  .pp-scrollbar.is-active { opacity: 1; }

  .pp-scrollbar__bar {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 25%;
    background: var(--pp-scrollbar, var(--pp-ink-60));
    border-radius: 999px;
    transform: translateX(0);
    transition: background 160ms ease;
  }

  .pp-scrollbar:hover .pp-scrollbar__bar { background: var(--pp-ink); }

  .pp-thumb.is-active { border-color: var(--pp-thumb-active-border, var(--pp-ink)); }

  .pp-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .pp-panel {
    display: flex;
    flex-direction: column;
    min-width: 0;
  }

  @media (min-width: 980px) {
    .pp-panel {
      position: sticky;
      top: 24px;
      align-self: start;
      padding-top: 4px;
    }
  }

  .pp-eyebrow {
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    font-weight: 500;
    font-size: 11px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--pp-eyebrow-color, var(--pp-forest));
    margin-bottom: 10px;
  }

  .pp-title {
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    font-weight: 600;
    font-size: clamp(26px, 2.6vw, 36px);
    line-height: 1.05;
    letter-spacing: -0.018em;
    color: var(--pp-title-color, var(--pp-ink));
    margin: 0;
  }

  .pp-sku {
    font-family: 'Roboto Mono', ui-monospace, 'SF Mono', Menlo, monospace;
    font-size: 12px;
    letter-spacing: 0.06em;
    color: var(--pp-subsku-color, var(--pp-ink-60));
    margin-top: 10px;
    text-transform: uppercase;
  }

  .pp-rating {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 16px;
  }

  .pp-rating__score {
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    font-weight: 600;
    font-size: 14px;
    color: var(--pp-score-color, var(--pp-ink));
  }

  .pp-rating__stars {
    display: inline-flex;
    gap: 1px;
    color: var(--pp-star-color, var(--pp-forest));
  }

  .pp-rating__stars svg {
    display: block;
    width: 14px;
    height: 14px;
  }

  .pp-rating__reviews {
    font-family: inherit;
    font-size: 13px;
    color: var(--pp-reviews-color, var(--pp-ink-60));
    text-decoration: underline;
    text-underline-offset: 3px;
    text-decoration-color: var(--pp-ink-20);
    cursor: pointer;
  }

  .pp-meta {
    font-family: inherit;
    font-size: 13px;
    color: var(--pp-meta-color, var(--pp-ink-60));
    margin-top: 6px;
  }

  .pp-desc {
    font-family: inherit;
    font-size: 14.5px;
    line-height: 1.5;
    color: var(--pp-desc-color, var(--pp-ink-80));
    margin: 16px 0 0;
    max-width: 56ch;
  }

  .pp-desc p { margin: 0 0 8px; }
  .pp-desc p:last-child { margin-bottom: 0; }

  .pp-benefits {
    list-style: none;
    padding: 0;
    margin: 16px 0 0;
    margin-inline-start: 0;
    padding-inline-start: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }
  .pp-benefits li { padding-inline-start: 0; }

  .pp-benefits li {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    font-family: inherit;
    font-size: 13.5px;
    line-height: 1.3;
    color: var(--pp-benefit-text, var(--pp-ink-80));
    background: var(--pp-benefit-pill-bg, #EEEFEC);
    border-radius: var(--pp-benefit-pill-radius, 999px);
    padding: var(--pp-benefit-pill-pad-y, 10px) var(--pp-benefit-pill-pad-x, 16px);
    flex: 0 1 auto;
    max-width: 100%;
  }

  .pp-benefits li svg {
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    color: var(--pp-benefit-icon, var(--pp-forest));
  }

  .pp-benefits__text { min-width: 0; }
  .pp-benefits__text p { margin: 0; }
  .pp-benefits__text p + p { margin-top: 3px; }

  .pp-benefits li b,
  .pp-benefits li strong,
  .pp-benefits__text b,
  .pp-benefits__text strong { color: var(--pp-benefit-bold, var(--pp-ink)); font-weight: 600; }

  /* Mobile: stack pills vertically, left-aligned, hugging their content */
  @media (max-width: 600px) {
    .pp-benefits {
      flex-direction: column;
      align-items: flex-start;
      gap: 6px;
    }
    .pp-benefits li {
      width: auto;
      max-width: 100%;
      font-size: 13px;
      padding: 9px 14px;
    }
  }

  .pp-radio {
    width: 18px;
    height: 18px;
    border-radius: 999px;
    border: 1.5px solid var(--pp-radio-border, var(--pp-ink-40));
    flex-shrink: 0;
    position: relative;
    background: var(--pp-white);
  }

  .pp-variant-select { margin-top: 24px; }

  .pp-tiers {
    display: flex;
    flex-direction: column;
    gap: 28px;
    margin-top: 24px;
  }

  .pp-tier-block {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .pp-tier-block__heading {
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    font-weight: 600;
    font-size: 16px;
    line-height: 1.2;
    letter-spacing: -0.005em;
    color: var(--pp-block-heading, var(--pp-ink));
    margin: 0 0 4px;
  }

  .pp-tier-block__list {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .pp-tier-block__expanded {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .pp-tier-block__bar {
    width: 100%;
    appearance: none;
    border: 1.5px solid var(--pp-line);
    background: var(--pp-sub-bar-bg, var(--pp-bone));
    color: var(--pp-sub-bar-text, var(--pp-ink));
    cursor: pointer;
    padding: 18px 16px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    transition: border-color 160ms ease, background 160ms ease;
  }

  @media (min-width: 480px) {
    .pp-tier-block__bar { padding: 24px 20px; gap: 16px; }
  }

  .pp-tier-block__bar:hover { border-color: var(--pp-line-strong); }

  .pp-tier-block__bar-label {
    flex: 1 1 auto;
    min-width: 0;
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    font-weight: 600;
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--pp-sub-bar-text, var(--pp-ink));
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .pp-tier-block__bar-label > * { vertical-align: middle; }

  @media (min-width: 480px) {
    .pp-tier-block__bar-label { font-size: 14px; letter-spacing: 0.10em; }
  }

  .pp-tier-block__bar-title {
    font-weight: 600;
    color: var(--pp-ink);
  }

  .pp-tier-block__bar-sep {
    color: var(--pp-ink-40);
    letter-spacing: 0;
    font-weight: 400;
    margin: 0 4px;
  }

  @media (min-width: 480px) {
    .pp-tier-block__bar-sep { margin: 0 6px; }
  }

  .pp-tier-block__bar-from {
    font-weight: 500;
    color: var(--pp-ink-60);
  }

  .pp-tier-block__bar-icon {
    width: 24px;
    height: 24px;
    flex-shrink: 0;
    color: var(--pp-sub-bar-icon, var(--pp-ink));
  }

  @media (min-width: 480px) {
    .pp-tier-block__bar-icon { width: 32px; height: 32px; }
  }

  /* Keep the circle of the +/- icon filled white, so on a tinted bar the
     icon interior still pops. */
  .pp-tier-block__bar-icon svg circle { fill: var(--pp-white); }

  /* When Subscribe is the active block, the One-time collapsed bar takes
     a quieter neutral fill (less attention-grabbing than the sage Subscribe
     section above it). The Subscribe bar (shown when One-time is active)
     keeps its default bone background. */
  .pp-tiers[data-active-block='subscribe'] .pp-tier-block[data-block-kind='once'] .pp-tier-block__bar {
    background: var(--pp-once-bar-collapsed-bg, #F2F2F2);
    color: var(--pp-once-bar-text, var(--pp-ink));
  }
  .pp-tier-block[data-block-kind='once'] .pp-tier-block__bar-label {
    color: var(--pp-once-bar-text, var(--pp-ink));
  }
  .pp-tier-block[data-block-kind='once'] .pp-tier-block__bar-icon {
    color: var(--pp-once-bar-icon, var(--pp-ink));
  }

  /* On very narrow screens the "From $X" portion would crowd the icon.
     Hide it gracefully so the primary label always stays readable. */
  @media (max-width: 380px) {
    .pp-tier-block__bar-sep,
    .pp-tier-block__bar-from { display: none; }
  }

  .pp-tier-block__bar-icon svg {
    width: 100%;
    height: 100%;
    display: block;
  }

  /* Active block hides its bar, shows its expanded body.
     Inactive block does the inverse. */
  .pp-tiers[data-active-block='subscribe'] .pp-tier-block[data-block-kind='subscribe'] .pp-tier-block__bar { display: none; }
  .pp-tiers[data-active-block='subscribe'] .pp-tier-block[data-block-kind='subscribe'] .pp-tier-block__expanded { display: flex; }
  .pp-tiers[data-active-block='subscribe'] .pp-tier-block[data-block-kind='once'] .pp-tier-block__bar { display: flex; }
  .pp-tiers[data-active-block='subscribe'] .pp-tier-block[data-block-kind='once'] .pp-tier-block__expanded { display: none; }

  .pp-tiers[data-active-block='once'] .pp-tier-block[data-block-kind='once'] .pp-tier-block__bar { display: none; }
  .pp-tiers[data-active-block='once'] .pp-tier-block[data-block-kind='once'] .pp-tier-block__expanded { display: flex; }
  .pp-tiers[data-active-block='once'] .pp-tier-block[data-block-kind='subscribe'] .pp-tier-block__bar { display: flex; }
  .pp-tiers[data-active-block='once'] .pp-tier-block[data-block-kind='subscribe'] .pp-tier-block__expanded { display: none; }

  /* If a tier inside an inactive block is somehow still rendered, make sure
     it's not interactive. */
  .pp-tier-block__expanded { display: none; }

  .pp-tier {
    position: relative;
    border: 1.5px solid var(--pp-tier-border, var(--pp-line));
    border-radius: 8px;
    padding: 16px 18px;
    background: var(--pp-tier-bg, var(--pp-white));
    cursor: pointer;
    transition: border-color 160ms ease, background 160ms ease;
    display: block;
  }

  .pp-tier:hover { border-color: var(--pp-line-strong); }

  .pp-tier input[type='radio'] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
  }

  .pp-tier.is-selected {
    border-color: var(--pp-hl-border, var(--pp-forest));
    background: var(--pp-hl-bg, var(--pp-sage-soft));
  }

  .pp-tier.is-selected .pp-radio {
    border-color: var(--pp-hl-border, var(--pp-forest));
  }

  .pp-tier.is-selected .pp-radio::after {
    content: '';
    position: absolute;
    inset: 3px;
    border-radius: 999px;
    background: var(--pp-hl-border, var(--pp-forest));
  }

  .pp-tier__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
  }

  .pp-tier__left {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1 1 auto;
    min-width: 0;
  }

  .pp-tier__titleblock {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
  }

  .pp-tier__label {
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    font-weight: 600;
    font-size: 15px;
    letter-spacing: -0.005em;
    color: var(--pp-tier-label, var(--pp-ink));
    line-height: 1.2;
  }

  .pp-tier__save {
    display: inline-block;
    width: fit-content;
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    font-weight: 500;
    font-size: 10px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--pp-save-text, var(--pp-ink));
    background: var(--pp-save-bg, #C7E58A);
    padding: 3px 8px 2px;
    border-radius: 4px;
    white-space: nowrap;
  }

  .pp-tier__price {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
    flex: 0 0 auto;
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    text-align: right;
  }

  .pp-tier__strike {
    font-size: 13px;
    color: var(--pp-tier-strike, var(--pp-ink-40));
    text-decoration: line-through;
    font-weight: 500;
  }

  .pp-tier__now {
    font-size: 17px;
    font-weight: 600;
    color: var(--pp-tier-now, var(--pp-ink));
    line-height: 1.1;
  }

  .pp-tier__permonth {
    font-family:{{ settings.type_base_font.family }}, {{ settings.type_base_font.fallback_families }};
    font-size: 12.5px;
    font-weight: 400;
    color: var(--pp-tier-permonth, var(--pp-ink-60));
    margin-top: 2px;
  }

  .pp-tier__badge {
    position: absolute;
    top: -1px;
    right: 14px;
    transform: translateY(-50%);
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    font-weight: 500;
    font-size: 9.5px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    padding: 4px 8px 3px;
    border-radius: 4px;
    white-space: nowrap;
    line-height: 1;
  }

  .pp-tier__badge--dark {
    background: var(--pp-forest-deep);
    color: var(--pp-white);
  }

  .pp-tier__badge--light {
    background: var(--pp-bone);
    color: var(--pp-ink);
  }

  .pp-tier__badge--forest {
    background: var(--pp-forest);
    color: var(--pp-white);
  }

  .pp-tier__body {
    display: none;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--pp-ink-10);
  }

  .pp-tier.is-selected .pp-tier__body { display: block; }

  .pp-tier .pp-perks { margin-top: 0; }

  .pp-offer--standalone { margin-top: 20px; }

  .pp-select {
    width: 100%;
    appearance: none;
    -webkit-appearance: none;
    background-color: var(--pp-select-bg, var(--pp-white));
    border: 1px solid var(--pp-select-border, var(--pp-line));
    border-radius: 4px;
    font-family: inherit;
    font-size: 13.5px;
    color: var(--pp-select-text, var(--pp-ink));
    padding: 10px 38px 10px 12px;
    background-image:
      linear-gradient(45deg, transparent 50%, var(--pp-ink) 50%),
      linear-gradient(135deg, var(--pp-ink) 50%, transparent 50%);
    background-position: calc(100% - 18px) 50%, calc(100% - 13px) 50%;
    background-size: 5px 5px, 5px 5px;
    background-repeat: no-repeat;
    cursor: pointer;
  }

  .pp-perks {
    list-style: none;
    padding: 0;
    margin: 12px 0 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
  }

  .pp-perks li {
    display: flex;
    align-items: baseline;
    gap: 12px;
    font-family: inherit;
    font-size: 13px;
    color: var(--pp-ink);
    line-height: 1.4;
  }

  .pp-perks li::before {
    content: var(--pp-perks-symbol, '•');
    flex-shrink: 0;
    color: var(--pp-perks-symbol-color, var(--pp-forest));
    font-family: var(--pp-perks-symbol-font, inherit);
    font-weight: 600;
    min-width: 0.7em;
    text-align: left;
  }

  .pp-perks li.pp-perks__item--has-icon::before { content: none; display: none; }

  .pp-perks__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 24px;
    height: 24px;
  }

  .pp-perks__icon svg {
    width: 100%;
    height: 100%;
    display: block;
  }

  .pp-perks li.pp-perks__item--has-icon {
    align-items: center;
    gap: 14px;
  }

  .pp-perks__text { line-height: 1.4; }

  .pp-offer {
    margin-top: 12px;
    background: var(--pp-offer-bg, var(--pp-sage-soft));
    border: none;
    border-radius: 8px;
    padding: 16px;
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: 16px;
    align-items: center;
  }

  @media (min-width: 480px) {
    .pp-offer { grid-template-columns: 96px 1fr; gap: 20px; padding: 18px; }
  }

  .pp-offer__img {
    width: 80px;
    height: 80px;
    border-radius: 4px;
    background: var(--pp-white);
    overflow: hidden;
    position: relative;
  }

  @media (min-width: 480px) {
    .pp-offer__img { width: 96px; height: 96px; }
  }

  .pp-offer__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .pp-offer__eyebrow {
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    font-weight: 500;
    font-size: 10.5px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--pp-offer-eyebrow, var(--pp-forest-deep));
    margin-bottom: 4px;
  }

  .pp-offer__title {
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    font-weight: 600;
    font-size: 14px;
    color: var(--pp-offer-text, var(--pp-ink));
    line-height: 1.3;
  }

  @media (min-width: 480px) {
    .pp-offer__title { font-size: 15px; }
  }

  .pp-offer__price {
    margin-top: 6px;
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    font-size: 13px;
    color: var(--pp-offer-text, var(--pp-ink));
  }

  .pp-offer__price s { color: var(--pp-ink-40); margin-right: 6px; }
  .pp-offer__price b { color: var(--pp-offer-text, var(--pp-ink)); font-weight: 700; }

  button.pp-cta,
  .pp-stickybar button.pp-cta {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    appearance: none;
    border: none;
    cursor: pointer;
    background-color: var(--pp-cta-bg, var(--pp-ink));
    background-image: none;
    color: var(--pp-cta-text, var(--pp-white));
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    font-weight: 500;
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    padding: 16px 14px;
    border-radius: 4px;
    margin-top: 16px;
    transition: background-color 160ms ease, opacity 160ms ease;
    white-space: nowrap;
    opacity: 1;
    visibility: visible;
  }

  @media (min-width: 480px) {
    button.pp-cta,
    .pp-stickybar button.pp-cta {
      gap: 8px;
      font-size: 13px;
      letter-spacing: 0.10em;
      padding: 16px 24px;
    }
  }

  button.pp-cta:hover:not(:disabled),
  .pp-stickybar button.pp-cta:hover:not(:disabled) {
    background-color: var(--pp-cta-hover-bg, var(--pp-forest-deep));
  }

  button.pp-cta:disabled,
  .pp-stickybar button.pp-cta:disabled {
    opacity: 0.55;
    cursor: not-allowed;
  }

  .pp-cta__strike {
    text-decoration: line-through;
    opacity: 0.55;
    margin: 0 2px 0 4px;
    font-weight: 500;
    white-space: nowrap;
  }

  @media (min-width: 480px) {
    .pp-cta__strike { margin: 0 4px 0 8px; }
  }

  .pp-cta__label,
  .pp-cta__price { white-space: nowrap; }

  .pp-reassure {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 24px;
    padding: 16px;
    background: var(--pp-bone);
    border-radius: 8px;
  }

  @media (min-width: 980px) {
    .pp-reassure {
      background: transparent;
      padding: 0;
      margin-top: 24px;
    }
  }

  .pp-reassure__row {
    display: flex;
    align-items: center;
    gap: 12px;
    font-family: inherit;
    font-size: 13.5px;
    color: var(--pp-reassure-text, var(--pp-ink));
    line-height: 1.4;
  }

  .pp-reassure__row svg {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    color: var(--pp-reassure-icon, var(--pp-forest));
  }

  .pp-reassure__text { min-width: 0; }
  .pp-reassure__text p { margin: 0; }
  .pp-reassure__text p + p { margin-top: 3px; }

  .pp-reassure__row b,
  .pp-reassure__row strong,
  .pp-reassure__text b,
  .pp-reassure__text strong { color: var(--pp-reassure-bold, var(--pp-ink)); font-weight: 600; }

  .pp-accordions {
    margin-top: 28px;
    border-top: 1px solid var(--pp-acc-divider, var(--pp-line));
  }

  .pp-acc { border-bottom: 1px solid var(--pp-acc-divider, var(--pp-line)); }

  .pp-acc__head {
    width: 100%;
    appearance: none;
    background: none;
    border: none;
    cursor: pointer;
    padding: 20px 0;
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 18px;
    text-align: left;
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    font-weight: 600;
    font-size: 15px;
    color: var(--pp-acc-heading, var(--pp-ink));
  }

  @media (min-width: 980px) {
    .pp-acc__head { gap: 24px; }
  }

  .pp-acc__num {
    font-family: 'Roboto Mono', ui-monospace, 'SF Mono', Menlo, monospace;
    font-weight: 400;
    font-size: 11px;
    letter-spacing: 0.14em;
    color: var(--pp-acc-num, var(--pp-ink-40));
    line-height: 1;
    min-width: 22px;
  }

  .pp-acc__heading {
    min-width: 0;
    line-height: 1.3;
    font-weight: 800;
  }

  .pp-acc__icon {
    width: 28px;
    height: 28px;
    border-radius: 999px;
    border: 1px solid var(--pp-acc-icon, var(--pp-line-strong));
    position: relative;
    flex-shrink: 0;
    transition: border-color 180ms ease, background 180ms ease;
  }

  @media (min-width: 980px) {
    .pp-acc__icon { width: 32px; height: 32px; }
  }

  .pp-acc__head:hover .pp-acc__icon { border-color: var(--pp-acc-icon, var(--pp-ink)); }

  .pp-acc__icon::before,
  .pp-acc__icon::after {
    content: '';
    position: absolute;
    background: var(--pp-acc-icon, var(--pp-ink));
    transition: transform 220ms ease;
  }

  .pp-acc__icon::before {
    top: 50%;
    left: 30%;
    right: 30%;
    height: 1.5px;
    transform: translateY(-50%);
  }

  .pp-acc__icon::after {
    left: 50%;
    top: 30%;
    bottom: 30%;
    width: 1.5px;
    transform: translateX(-50%);
  }

  .pp-acc.is-open .pp-acc__icon::after { transform: translateX(-50%) scaleY(0); }

  .pp-acc__body {
    max-height: 0;
    overflow: hidden;
    transition: max-height 320ms ease;
    font-family: inherit;
    font-size: 14px;
    line-height: 1.55;
    color: var(--pp-acc-body, var(--pp-ink-80));
  }

  .pp-acc.is-open .pp-acc__body { max-height: 1200px; }

  .pp-acc__inner { padding: 0 0 22px; }

  .pp-acc__inner p { margin: 0 0 10px; }
  .pp-acc__inner p:last-child { margin-bottom: 0; }
  .pp-acc__inner ul { margin: 0 0 10px; padding-left: 18px; }
  .pp-acc__inner b,
  .pp-acc__inner strong { color: var(--pp-ink); font-weight: 600; }

  .pp-acc__intro {
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    font-weight: 600;
    color: var(--pp-ink);
    margin-bottom: 14px;
  }

  .pp-acc__intro p { margin: 0; }
  .pp-acc__intro p + p { margin-top: 12px; }

  .pp-acc__items {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .pp-acc__item {
    display: grid;
    grid-template-columns: 60px 1fr;
    gap: 18px;
    align-items: center;
  }

  @media (min-width: 980px) {
    .pp-acc__item { grid-template-columns: 64px 1fr; gap: 22px; }
  }

  .pp-acc__item-img {
    width: 60px;
    height: 60px;
    background: var(--pp-bone);
    border-radius: 4px;
    overflow: hidden;
    position: relative;
  }

  @media (min-width: 980px) {
    .pp-acc__item-img { width: 64px; height: 64px; }
  }

  .pp-acc__item-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .pp-acc__item-name {
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    font-weight: 500;
    font-size: 13px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--pp-ink);
    line-height: 1.2;
  }

  .pp-stickybar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--pp-white);
    border-top: 1px solid var(--pp-line);
    padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
    z-index: 50;
    transform: translateY(110%);
    transition: transform 240ms ease;
    box-shadow: 0 -6px 24px -8px rgba(16, 16, 16, 0.10);
  }

  .pp-stickybar.is-visible { transform: translateY(0); }

  .pp-cta--sticky { margin-top: 0; }

  .pp-stickybar__inner {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0;
  }

  @media (min-width: 980px) {
    .pp-stickybar {
      padding: 12px clamp(20px, 4vw, 56px) 12px;
    }
    .pp-stickybar__inner {
      display: flex;
      justify-content: flex-end;
    }
    .pp-stickybar__inner .pp-cta--sticky {
      max-width: 420px;
    }
  }

  /* ----------------------------------------------------------------
     Video testimonials sub-section (below accordions)
     ---------------------------------------------------------------- */
  .pp-vt {
    margin-top: var(--pp-vt-section-gap, 32px);
  }
  .pp-vt__heading {
    font-family:{{ settings.type_heading_font.family }}, {{ settings.type_heading_font.fallback_families }};
    font-weight: 600;
    font-size: var(--pp-vt-heading-size, 24px);
    line-height: 1.15;
    letter-spacing: -0.01em;
    color: var(--pp-vt-heading, var(--pp-ink, #101010));
    margin: 0 0 16px;
  }
  .pp-vt__rail {
    display: flex;
    gap: var(--pp-vt-gap, 14px);
    overflow-x: auto;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    scroll-snap-type: x proximity;
    padding-bottom: 6px;
  }
  .pp-vt__rail::-webkit-scrollbar { display: none; }
  button.pp-vt__card {
    appearance: none;
    background: transparent;
    border: 0;
    padding: 0;
    cursor: pointer;
    position: relative;
    flex: 0 0 var(--pp-vt-card-w, 220px);
    width: var(--pp-vt-card-w, 220px);
    aspect-ratio: var(--pp-vt-aspect, 9 / 14);
    border-radius: var(--pp-vt-radius, 10px);
    overflow: hidden;
    isolation: isolate;
    scroll-snap-align: start;
  }
  .pp-vt__img,
  .pp-vt__ph {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    display: block;
  }
  .pp-vt__img { object-fit: cover; }
  .pp-vt__ph {
    background:
      repeating-linear-gradient(135deg, rgba(16,16,16,0.04) 0 1px, transparent 1px 14px),
      var(--pp-bone, #EEEFEC);
  }
  .pp-vt__caption {
    position: absolute;
    left: 12px;
    bottom: 56px;
    z-index: 2;
    font-family:{{ settings.type_base_font.family }}, {{ settings.type_base_font.fallback_families }};
    font-weight: 500;
    font-size: 12px;
    line-height: 1.25;
    color: #FDFDFD;
    background: rgba(16, 16, 16, 0.78);
    padding: 5px 9px;
    border-radius: 4px;
    max-width: calc(100% - 24px);
    text-align: left;
  }
  .pp-vt__play {
    position: absolute;
    right: 12px;
    bottom: 12px;
    z-index: 2;
    display: grid;
    place-items: center;
    width: var(--pp-vt-play-size, 44px);
    height: var(--pp-vt-play-size, 44px);
    border-radius: 999px;
    background: var(--pp-vt-play-bg, rgba(253,253,253,0.92));
    color: var(--pp-vt-play-icon, #101010);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    transition: transform 180ms cubic-bezier(0.22,0.61,0.36,1), background 180ms ease;
  }
  .pp-vt__play svg {
    width: calc(var(--pp-vt-play-size, 44px) * 0.36);
    height: calc(var(--pp-vt-play-size, 44px) * 0.36);
    fill: currentColor;
    transform: translateX(1px);
  }
  button.pp-vt__card:hover .pp-vt__play { transform: scale(1.06); background: #FDFDFD; }

  @media (max-width: 720px) {
    button.pp-vt__card {
      flex-basis: var(--pp-vt-card-w-m, 180px);
      width: var(--pp-vt-card-w-m, 180px);
    }
  }

  /* Lightbox — "window in window" video player */
  .pp-vt__lightbox {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: grid;
    place-items: center;
    padding: 24px;
  }
  .pp-vt__lightbox[hidden] { display: none; }
  .pp-vt__lightbox-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(10, 10, 10, 0.84);
    cursor: pointer;
  }
  .pp-vt__lightbox-inner {
    position: relative;
    width: min(94vw, 460px);
    aspect-ratio: var(--pp-vt-aspect, 9 / 14);
    max-height: 88vh;
    background: #000;
    border-radius: 12px;
    overflow: hidden;
    z-index: 1;
  }
  .pp-vt__lightbox-stage {
    position: absolute;
    inset: 0;
    background: #000;
  }
  .pp-vt__lightbox-stage video,
  .pp-vt__lightbox-stage iframe {
    width: 100%;
    height: 100%;
    border: 0;
    display: block;
    object-fit: contain;
    background: #000;
  }
  .pp-vt__lightbox-close {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 3;
    width: 36px;
    height: 36px;
    border-radius: 999px;
    background: rgba(253, 253, 253, 0.92);
    border: 0;
    display: grid;
    place-items: center;
    cursor: pointer;
    color: #101010;
  }
  .pp-vt__lightbox-controls {
    position: absolute;
    bottom: 14px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 3;
    display: inline-flex;
    gap: 10px;
    padding: 6px 8px;
    background: rgba(16, 16, 16, 0.55);
    border-radius: 999px;
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
  }
  .pp-vt__lb-btn {
    appearance: none;
    width: 36px;
    height: 36px;
    border-radius: 999px;
    background: transparent;
    border: 0;
    padding: 0;
    cursor: pointer;
    color: #FDFDFD;
    display: grid;
    place-items: center;
    transition: background 160ms ease;
  }
  .pp-vt__lb-btn:hover { background: rgba(253, 253, 253, 0.15); }
  .pp-vt__lb-icon { width: 16px; height: 16px; }
  /* Show only one icon per button at a time based on state classes */
  .pp-vt__lb-btn[data-pp-vt-toggle]   .pp-vt__lb-icon--play   { display: none; }
  .pp-vt__lb-btn[data-pp-vt-toggle].is-paused .pp-vt__lb-icon--pause { display: none; }
  .pp-vt__lb-btn[data-pp-vt-toggle].is-paused .pp-vt__lb-icon--play  { display: block; }
  .pp-vt__lb-btn[data-pp-vt-mute]     .pp-vt__lb-icon--mute    { display: none; }
  .pp-vt__lb-btn[data-pp-vt-mute].is-muted .pp-vt__lb-icon--unmute { display: none; }
  .pp-vt__lb-btn[data-pp-vt-mute].is-muted .pp-vt__lb-icon--mute   { display: block; }
/* END_SECTION:product-may2026 */

/* CSS from snippet stylesheet tags */
/* START_SNIPPET:product-grid-item (INDEX:335) */
@media (min-width: 769px) {
  .collection-items .grid {
    row-gap: calc(var(--grid-gutter) + 28px);
  }
}
/* END_SNIPPET:product-grid-item */