.product-gallery { left: calc(var(--container-padding)*-1); width: calc(100% + var(--container-padding)*2); flex-direction: column-reverse; display: flex; position: relative; overflow: hidden; }
@media screen and (width >= 750px) {
  .product-gallery { flex-direction: row; width: 100%; padding: 0px; left: 0px; }
}
@media screen and (width >= 1025px) {
  .product-gallery { max-height: calc(-200px + 100vh); position: sticky; top: 80px; }
}
@media screen and (width <= 749px) {
  .product-gallery .swiper { overflow: visible; }
}
.product-gallery .swiper-pagination-bullet::before { background-color: rgb(255, 255, 255); border-color: rgb(0, 0, 0); width: 12px; height: 12px; }
.product-gallery .swiper-pagination-bullet.swiper-pagination-bullet-active::before { background-color: rgb(0, 0, 0); border-color: rgb(0, 0, 0); }
.product-gallery .product-media-item img { object-fit: contain; max-height: calc(-250px + 100vh); }
.product .product-gallery__thumbnails { align-items: center; padding: 0px 24px; display: flex; overflow-x: auto; margin: 0px 0px 16px !important; }
@media screen and (width >= 750px) {
  .product .product-gallery__thumbnails { display: none; }
}
@media screen and (width >= 1025px) {
  .product .product-gallery__thumbnails { display: block; overflow: hidden; margin: 0px 24px 0px 0px !important; }
}
.product .product-gallery__thumb { border: 2px solid rgba(0, 0, 0, 0); width: 20%; height: 20%; margin: 0px; display: block; overflow: hidden; border-radius: 25px !important; min-width: 20% !important; }
@media screen and (width >= 750px) {
  .product .product-gallery__thumb { width: 88px; height: 88px; margin: 0px 0px 6px; border-radius: 32px !important; min-width: 88px !important; }
}
.product .product-gallery__thumb.active { border: 2px solid rgb(0, 0, 0); }
.product .product-gallery__thumb img { object-fit: cover; width: 88px; height: 88px; display: block; }
.badge.product-gallery__badge { z-index: 100; left: -20px; }
@media screen and (width >= 750px) {
  .badge.product-gallery__badge { width: 125px; left: 20px; }
}
.product-gallery__zoom { z-index: 10; position: absolute; bottom: 40px; right: 16px; }
@media screen and (width >= 750px) {
  .product-gallery__zoom { top: 32px; bottom: auto; right: 32px; }
}
.product-gallery__zoom .btn { border-radius: 48px; width: 48px; height: 48px; padding: 0px; }
.product-gallery__zoom .btn.is-active { color: rgb(255, 255, 255); background-color: rgb(0, 0, 0); }
.product-gallery__zoom .btn.is-active svg path { fill: rgb(255, 255, 255); }
.product-gallery--gift-card .product-gallery__zoom { display: none; }
.product-gallery__zoom-container { z-index: 5; pointer-events: none; border-radius: 32px; width: 100%; height: calc(100% - 24px); position: absolute; top: 0px; left: 0px; overflow: hidden; }
.product-gallery__zoom-container.is-active { background-color: var(--product-background-color,#dfc8e7); }
.product-gallery__carousel { width: 100%; padding: 0px 36px 24px; }
@media screen and (width >= 750px) {
  .product-gallery__carousel { padding: 0px 0px 12px; }
}
.product-gallery__carousel .swiper-actions { bottom: 12px; }
@media screen and (width >= 750px) {
  .product-gallery__carousel .swiper-actions { bottom: 8px; }
}
.product-gallery--gift-card .product-gallery__carousel { max-width: 605px; max-height: 605px; }
.modal--product-gallery { background-color: rgb(223, 200, 231); }
.modal--product-gallery .modal__content, .modal--product-gallery .container { padding: 0px; }
.modal--product-gallery .swiper-actions { position: absolute; bottom: 40px; }
.modal--product-gallery .product-media-item { justify-content: center; align-items: center; width: 100vw; height: 100%; padding: 0px; display: flex; overflow: auto; }
.modal--product-gallery .product-media-item::-webkit-scrollbar { width: 0px; display: none; }
.modal--product-gallery .product-media-item img { object-fit: unset; border-radius: 0px; width: auto; max-width: 100%; height: auto; margin: 0px; position: relative; }
.product-gallery-overlay__carousel { height: 100%; }
.product-media-item { padding-bottom: 100%; position: relative; }
.product-media-item > * { object-fit: cover; border-radius: 32px; width: 100%; height: 100%; position: absolute; top: 0px; left: 0px; }
.accordion { box-sizing: content-box; background-color: rgb(247, 241, 249); border: 2px solid rgb(0, 0, 0); border-radius: 32px; margin-bottom: 12px; padding: 0px 20px; display: block; }
@media screen and (width >= 750px) {
  .accordion { margin-bottom: 16px; padding: 0px 20px 0px 32px; }
}
.accordion:last-of-type { border-bottom: 2px solid rgb(0, 0, 0); margin-bottom: 0px; }
.accordion.animating { transition: height 0.5s cubic-bezier(0.46, 0.01, 0.32, 1); overflow: hidden; }
@media (prefers-reduced-motion: reduce) {
  .accordion.animating { transition: height 10ms linear; }
}
.accordion__toggle { cursor: pointer; justify-content: space-between; align-items: center; width: 100%; padding: 12px 32px 12px 0px; display: flex; position: relative; }
@media screen and (width >= 1025px) {
  .accordion__toggle { padding: 14px 32px 12px 0px; }
}
.accordion__toggle span { max-width: 90%; display: block; }
.accordion__toggle svg { flex-shrink: 0; width: 26px; height: 26px; position: absolute; top: 50%; right: 0px; transform: translateY(-50%); }
[open] .accordion__toggle svg:first-of-type { display: none; }
[open] .accordion__toggle svg:last-of-type, .accordion__toggle svg:first-of-type { display: block; }
.accordion__toggle svg:last-of-type { display: none; }
.accordion__content { padding-bottom: 14px; }
.accordion__content :last-child { margin: 0px; }
.accordion.accordion--pdp { border-width: 2px 0px 0px; border-style: solid none none; border-color: rgb(0, 0, 0) currentcolor currentcolor; border-image: none; border-radius: 0px; margin-top: 24px; margin-bottom: 0px; padding: 0px; }
.accordion.accordion--pdp:not(:first-of-type) { margin-top: 0px; }
.accordion.accordion--pdp svg { width: 20px; height: 20px; }
.accordion.accordion--pdp .accordion__content { padding-bottom: 0px; }
.accordion.accordion--pdp:has(+ .accordion--pdp) .accordion__content { padding-bottom: 14px; }
.accordion .accordion__content-indent { padding-left: 48px; }
.gift-card-modal__heading { margin-bottom: 0px; font-size: 2.4rem; }
@media screen and (width >= 750px) {
  .gift-card-modal__heading { font-size: 3.6rem; }
}
label.gift-card-modal__radio-wrapper { color: rgb(0, 0, 0); text-transform: uppercase; word-break: break-word; cursor: pointer; user-select: none; flex-grow: 1; align-items: center; padding: 6px 20px 6px 0px; font-weight: 700; line-height: 1; display: flex; position: relative; }
.gift-card-modal__radio-wrapper input[type="checkbox"] { z-index: -1; opacity: 1; appearance: none; background: 0px 0px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; border-radius: 0px; width: 16px; min-width: 16px; height: 16px; min-height: 16px; position: absolute; top: 8px; left: 2px; }
div.gift-card-modal__radio { border: 2px solid rgb(0, 0, 0); border-radius: 100%; width: 20px; min-width: 20px; height: 20px; min-height: 20px; margin-right: 10px; display: block; position: relative; }
div.gift-card-modal__radio::after { content: ""; visibility: hidden; z-index: 5; background-color: rgb(0, 0, 0); border-radius: 100%; width: 12px; height: 12px; display: block; position: absolute; top: 8px; left: 2px; transform: translateY(-50%); }
.gift-card-modal__radio-wrapper > input[type="checkbox"]:checked ~ .gift-card-modal__radio::after { visibility: visible; }
.gift-card-modal__radio-message { margin-bottom: 16px; padding-left: 30px; }
.gift-card-modal__input { width: 100%; margin-bottom: 8px; }
.gift-card-modal__label { margin-bottom: 4px; display: block; }
.modal.overlay-view.modal--gift-card { border: 2px solid rgb(0, 0, 0); }
@media screen and (width >= 750px) {
  .modal.overlay-view.modal--gift-card { border-width: medium; border-style: none; border-color: currentcolor; border-image: none; }
}
.modal.overlay-view.modal--gift-card .modal__content { width: 100%; max-width: calc(100% - 40px); padding: 30px 24px; }
@media screen and (width >= 750px) {
  .modal.overlay-view.modal--gift-card .modal__content { background-color: rgb(247, 241, 249); border: 2px solid rgb(0, 0, 0); border-radius: 32px; max-width: 496px; padding: 48px 40px; }
}
.modal.overlay-view.modal--gift-card .container, .modal.overlay-view.modal--gift-card .modal__body { padding: 0px; }
.modal.overlay-view.modal--gift-card .modal__body img { max-width: 360px; margin: -55px auto; display: block; }
.product { padding-top: 24px; }
@media screen and (width >= 1025px) {
  .product { padding-top: 48px; }
}
.product__background { z-index: -1; opacity: 1; will-change: opacity; background-color: var(--product-background-color); pointer-events: none; width: 100%; height: 100%; position: fixed; top: 0px; left: 0px; }
.product-content { background-color: rgb(247, 241, 249); border: 2px solid rgb(0, 0, 0); border-radius: 32px; padding: 36px 22px; overflow: hidden; }
@media screen and (width >= 1025px) {
  .product-content { padding: 44px 40px; }
}
@media screen and (width >= 750px) {
  .product-content.product-content--gift-card { margin-top: 32px; }
}
.product__reviews { border-bottom: 2px solid rgb(0, 0, 0); width: 100%; height: 40px; margin-bottom: 16px; padding-bottom: 16px; display: block; }
.product__reviews .oke-sr-count { text-transform: uppercase; font-size: 1.6rem; font-weight: 700; line-height: 1.6rem; }
.product__reviews div.okeReviews { padding: 0px !important; }
.product-rating-summary { color: rgb(0, 0, 0); align-items: center; gap: 0px; font-size: 1.6rem; line-height: 1.6rem; text-decoration: none; display: inline-flex; }
.product-rating-summary__stars { display: inline-flex; position: relative; }
.product-rating-summary__stars-empty, .product-rating-summary__stars-full { display: inline-flex; }
.product-rating-summary__stars-empty svg, .product-rating-summary__stars-full svg { flex: 0 0 auto; width: 18px; height: 18px; display: block; }
.product-rating-summary__stars-full { position: absolute; top: 0px; left: 0px; overflow: hidden; }
.product-rating-summary__stars--okendo { align-items: center; }
.product-rating-summary__stars--okendo .oke-sr-count, .product-rating-summary__stars--okendo .oke-sr-label { display: none; }
.product-rating-summary__label { font-weight: 700; }
.product-rating-summary__empty { font-weight: 400; }
.product__heading { flex-wrap: wrap; justify-content: space-between; gap: 8px; margin-bottom: 8px; display: flex; }
@media screen and (width >= 750px) {
  .product__heading { flex-wrap: nowrap; margin-bottom: 4px; }
}
.product__heading h1 { margin-bottom: 0px; }
.product__title-group { flex: 1 1 0%; align-items: center; gap: 4px; min-width: 0px; display: flex; }
.product__title-group .product__title { flex: 1 1 0%; min-width: 0px; }
.product__title-badge { flex-shrink: 0; }
.product__title-badge-img { width: auto; max-width: 88px; height: auto; display: block; }
@media screen and (width >= 1025px) {
  .product__title-badge-img { max-width: 96px; }
}
.product__sold-out { color: rgb(255, 255, 255); background: rgb(59, 49, 206); border-radius: 32px; flex-shrink: 0; height: 100%; padding: 9px 16px 7px; }
.product-form-block { margin-top: 16px; }
.product-description__content { margin-bottom: 20px; }
.product-description__content p:last-child { margin-bottom: 0px; }
.product__iherb-link { margin-top: 16px; }
.product-description__icons:not(:last-child) { margin-bottom: 12px; }
.product-description__icons-title { text-align: center; font-size: 1.5rem; line-height: 1.5rem; }
.product-description__icons-container { flex-wrap: wrap; justify-content: center; width: 75%; margin: 0px auto; display: flex; }
.product-description__icons--one-row .product-description__icons-container { width: 100%; }
.product-description__icon { text-align: center; flex-direction: column; align-items: center; width: 50%; margin-bottom: 12px; padding: 0px 8px; display: flex; }
.product-description__icons--one-row .product-description__icon { width: 25%; }
.product-description__icon img { width: 64px; height: 64px; }
@media screen and (width >= 1025px) {
  .product-description__icon img { width: 76px; height: 76px; }
}
.product-description__icons--one-row .product-description__icon img { height: auto; }
.product-description__icon p { margin: 4px 0px 0px; font-size: 0.8rem; line-height: 1rem; }
@media screen and (width >= 550px) {
  .product-description__icon p { font-size: 1rem; line-height: 1.2rem; }
}
.product-description__icons-text { text-align: center; font-size: 1.2rem; line-height: 1.2rem; }
.product-content__actions { justify-content: center; align-items: center; display: flex; }
.product-content__actions button { margin: 0px 12px; }
.product-content__actions button:first-child { margin-left: 0px; }
.product-content__actions button:last-child { margin-right: 0px; }
.product-content__badge-wrapper { text-align: center; background-color: rgba(223, 200, 231, 0.4); border-radius: 40px; flex-direction: column; justify-content: center; align-items: center; width: 100%; min-height: 60px; margin-bottom: 16px; padding: 0px 24px; display: flex; position: relative; }
@media screen and (width >= 750px) {
  .product-content__badge-wrapper { padding: 0px 36px; }
}
.product-content__badge-wrapper .product-content__badge { width: 68px; top: 50%; left: -2px; transform: translateY(-50%); }
@media screen and (width >= 750px) {
  .product-content__badge-wrapper .product-content__badge { width: 72px; left: -10px; }
}
.product-content__badge-wrapper .product-content__badge img { vertical-align: middle; }
.product-content__badge-wrapper p { margin: 0px; }
@media screen and (width >= 1025px) {
  .product-content__badge-wrapper p { font-size: 1.6rem; line-height: 1.6rem; }
}
.product-content__badge-content { padding-left: 56px; }
@media screen and (width >= 550px) {
  .product-content__badge-content { padding-left: 0px; }
}
@media screen and (width >= 750px) {
  .product-content__badge-content { padding-left: 32px; }
}
@media screen and (width >= 1600px) {
  .product-content__badge-content { padding-left: 0px; }
}
.how-it-works__heading { border-bottom: 2px solid rgb(0, 0, 0); margin-bottom: 32px; padding-bottom: 16px; }
.how-it-works__heading h2 { margin: 0px; font-family: "Mier A", helvetica, arial, sans-serif; }
.how-it-works__content p { font-family: Recoleta, helvetica, arial, sans-serif; font-size: 2.4rem; font-weight: 500; line-height: 2.4rem; }
.how-it-works__content ul { margin: 24px 0px; list-style: none; }
.how-it-works__content li { gap: 10px; margin-bottom: 12px; font-size: 1.6rem; font-weight: 400; line-height: 2.4rem; display: flex; }
.how-it-works__content li svg { flex-shrink: 0; width: 22px; height: 22px; margin-right: 2px; position: relative; top: 3px; }
.product-benefits__heading { border-bottom: 2px solid rgb(0, 0, 0); margin-bottom: 32px; padding-bottom: 16px; }
.product-benefits__heading h2 { margin: 0px; font-family: "Mier A", helvetica, arial, sans-serif; }
.product-benefits__content p { font-family: Recoleta, helvetica, arial, sans-serif; font-size: 2.4rem; font-weight: 500; line-height: 2.4rem; }
.product-benefits__content ul { margin: 24px 0px; list-style: none; }
.product-benefits__content ul li { gap: 10px; margin-bottom: 12px; font-size: 1.6rem; font-weight: 400; line-height: 2.4rem; display: flex; }
.product-benefits__content ul li svg { flex-shrink: 0; width: 22px; height: 22px; margin-right: 2px; position: relative; top: 3px; }
.product-supplement__heading { border-bottom: 2px solid rgb(0, 0, 0); margin-bottom: 32px; padding-bottom: 16px; }
.product-supplement__heading h2 { margin: 0px; font-family: "Mier A", helvetica, arial, sans-serif; }
@media screen and (width >= 1025px) {
  .product-supplement__content { padding-bottom: 48px; }
}
.product-supplement__content table { margin-bottom: 24px; }
.product-supplement__content tr { border-bottom: 2px solid rgb(0, 0, 0); }
.product-supplement__content th, .product-supplement__content td { background: 0px 0px; border-width: medium; border-style: none; border-color: currentcolor; border-image: none; padding: 8px 0px; }
.product-supplement__content th:last-of-type, .product-supplement__content td:last-of-type { text-align: right; white-space: nowrap; }
.product-supplement__content th span, .product-supplement__content td span { font-size: 1.4rem; line-height: 1.6rem; display: block; }
.product-supplement__instruction { margin-bottom: 24px; font-family: Recoleta, helvetica, arial, sans-serif; font-size: 2.4rem; font-weight: 500; line-height: 2.4rem; }
@media screen and (width >= 1025px) {
  .product-supplement__instruction { font-size: 3.6rem; font-weight: 500; line-height: 3.6rem; }
}
.product-supplement__serving { margin-bottom: 24px; }
.product-supplement__serving p { margin-bottom: 0px; }
.product-supplement__serving .p--large { font-size: 2.4rem; line-height: 3.2rem; }
.product-supplement__disclaimer, .product-supplement__ingredients { margin-bottom: 24px; }
.product__upsell { margin-top: 32px; }
.product__upsell h2 { margin: 0px; }
.product-description__icon-tabs { background-color: rgb(237, 225, 242); border-radius: 32px; margin-bottom: 24px; padding: 16px; display: block; }
.product-description__icon-tabs .product-description__icons-container { width: 100%; margin: 0px auto -12px; }
.product-description__icon-tablist { justify-content: center; gap: 8px 0px; margin-bottom: 24px; }
.product-description__icon-tab { white-space: nowrap; background-color: rgb(255, 255, 255); border: 2px solid rgba(0, 0, 0, 0); border-radius: 50px; margin: 0px 4px; padding: 8px 16px 6px; font-size: 1.6rem; line-height: 1.6rem; }
.product-description__icon-tab.active { background-color: rgb(223, 200, 231); border-color: rgb(0, 0, 0); }
.product-content__byob-cta { background-color: var(--background-color); color: var(--text-color); border-radius: 32px; margin-bottom: 24px; padding: 24px; }
.product-content__byob-cta-content { justify-content: center; align-items: center; }
.product-content__byob-cta-image { flex-shrink: 0; max-width: 80px; margin-right: 8px; }
.product-content__byob-cta-copy { margin: 0px; font-family: Recoleta, helvetica, arial, sans-serif; font-size: 2.2rem; font-weight: 500; line-height: 2.4rem; }
.product-content__byob-cta-button { margin-top: 16px; }
.product-content__byob-cta-button .btn { --button-color: var(--cta-background-color); --button-filler-color: var(--cta-background-color-hover); --button-text-color: var(--cta-text-color); --button-text-color-hover: var(--cta-text-color-hover); margin: 0px auto; }
subscriptions-form { display: block !important; }
@media (width <= 600px) {
  .bold-on-mobile { font-weight: 700; }
  .product__meta p { font-size: 18px; }
}
@media (width >= 600px) {
  br.hide-on-desk { display: none !important; }
}
ul.product-subscription-highlights { opacity: 1; visibility: visible; height: auto; overflow: auto; }
ul.product-subscription-highlights img { flex-shrink: 0; width: 20px; height: 20px; margin-right: 8px; }
ul.product-subscription-highlights li { margin-bottom: 12px; }
.subscription-form__options-legend { display: none !important; }
body.rebuy-modal-visible { overflow: auto !important; }
body.rebuy-cart-visible { overflow: hidden !important; }
.product-promo-card { border: .2rem solid var(--promo-border,#000); background-color: var(--promo-bg,#ebdbf0); color: var(--promo-text,#000); border-radius: 32px; margin: 2.4rem 0px; position: relative; }
.product-promo-card__media { border-top-left-radius: 32px; border-top-right-radius: 32px; height: 10rem; display: block; position: relative; overflow: hidden; }
.product-promo-card__image { object-fit: cover; object-position: center center; width: 100%; height: 100%; display: block; }
.product-promo-card__label { z-index: 1; background-color: var(--promo-label-bg,#000); color: var(--promo-label-text,#fff); letter-spacing: 0.04em; white-space: nowrap; border-radius: 99.9rem; padding: 0.6rem 2.4rem; font-size: 1.4rem; position: absolute; top: 0px; left: 50%; transform: translate(-50%, -50%); }
.product-promo-card__content { text-align: center; border-top: .2rem solid var(--promo-border,#000); padding: 2rem; }
.product-promo-card__heading { color: rgb(0, 0, 0); text-align: center; max-width: 27rem; margin: 0px auto; font-family: Recoleta, helvetica, arial, sans-serif; font-size: 2.4rem; font-weight: 500; line-height: 2.4rem; }
.product-promo-card__subcopy { color: rgb(0, 0, 0); text-align: center; margin: 0.8rem 0px 0px; font-family: "Mier A", helvetica, arial, sans-serif; font-size: 1.6rem; font-weight: 400; line-height: 2.4rem; }
.product-promo-card__link { color: inherit; white-space: nowrap; font-weight: 700; text-decoration: underline; }