@charset "utf-8";

.input-swatch { display: inline-block; margin: 0.25rem 0.35rem 0.25rem 0.25rem; position: relative; }

.input-swatch input { inset: 0px; height: 100%; opacity: 0; position: absolute; width: 100%; z-index: 2; }

.input-swatch label { align-items: center; display: flex; flex-direction: row; gap: 0.5rem; justify-content: flex-start; margin: 0px; }

.input-swatch .swatch { --border-radius: 50%; background-position: 50% center; background-size: cover; border-radius: var(--border-radius); display: block; flex-shrink: 0; height: 2.375rem; position: relative; width: 2.375rem; }

.input-swatch .swatch::after, .input-swatch .swatch::before { border-radius: var(--border-radius); content: ""; display: block; left: 50%; position: absolute; top: 50%; transform: translate(-50%, -50%); }

.input-swatch .swatch::after { border: 0.0625rem solid rgba(0, 0, 0, 0.15); height: 100%; width: 100%; }

.input-swatch .swatch::before { border: 0.0625rem solid transparent; height: 125%; width: 125%; z-index: -1; }

.input-swatch input:checked ~ label .swatch::before { border-color: var(--border-primary); }

.input-swatch input.focus-visible { box-shadow: none; }

.input-swatch input.focus-visible ~ label .swatch::before { border-color: var(--text-reverse); border-radius: var(--border-radius,.125rem); box-shadow: rgb(24, 102, 255) 0px 0px 0px 0.125rem; outline: none; }

.input-swatch input:disabled { pointer-events: none; }

.input-swatch input:disabled ~ label { opacity: 0.5; }

.input-swatch--small .swatch { height: 1.5rem; width: 1.5rem; }

.input-pill { display: grid; padding: 0px; position: relative; z-index: 1; }

.input-pill input { inset: 0px; height: 100%; opacity: 0; position: absolute; width: 100%; z-index: 2; }

.input-pill label { align-items: center; border: 0.0625rem solid transparent; border-radius: var(--border-radius,0); color: var(--text-color,var(--text-primary)); display: inline-flex; font-family: "Walter Turncoat", sans-serif; font-size: 0.75rem; font-weight: 500; justify-content: center; line-height: 1; margin: 0px; min-height: 2rem; padding: var(--padding,.85rem 1rem); text-align: center; text-transform: uppercase; }

.input-pill label::before { background-color: var(--background-color,transparent); border: var(--border-width,.109375rem) solid var(--border-color,var(--text-primary)); border-radius: var(--border-radius,0); inset: 0px; content: ""; display: block; mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none' viewBox='0 0 193 61'%3E%3Cpath d='M192.79 45.04c-.1.63-.16 3.14-.16 4.48 0 .31 0 .55.01.7v.04c.05 1.35 0 5.75.2 7.06.03.19.03.38 0 .56v.11c.22 1.48-.53 2.26-2.03 2.38-.51.04-1.02.04-1.52.03-.4.02-.59-.01-1.01-.02-.14 0-.29-.01-.43-.01-1.24 0-2.48-.23-3.72-.25-.41 0-.83.01-1.24.06-.08.01-.15.01-.23.02-1.24.15-2.44.21-3.7.09-.12-.01-.24-.01-.37-.03-1.5-.19-3.05-.17-4.6-.14l-1.55.03c-2.82.04-5.65.05-8.48.03-.7 0-1.4-.09-2.09-.05-.14.01-.27.02-.41.04-.28.04-.55.11-.82.22-.18.06-.36.05-.54-.01-.84-.3-1.7-.23-2.56-.21-.29 0-.59 0-.89-.02-1.52-.12-3.03.15-4.55.03h-.26c-1.87-.21-3.75.07-5.62.15-1.03.04-2.07.18-3.11.24-.35.02-.69.03-1.04.02-.5 0-.98.12-1.46.21-.4.07-.79.12-1.19.16-.61.06-1.22.07-1.86 0-1.94-.23-3.89-.33-5.85-.3h-.14c-.57.01-1.14.01-1.71.01-1.14-.01-2.29-.04-3.43-.06-.57 0-1.14-.01-1.72 0-1.89.01-3.8-.28-5.7.2-.04.02-.09.02-.13.03-.51.1-1.07.09-1.59-.11-.34-.14-.68-.16-1.05-.14-.26.02-.52.02-.77.02-1.79-.02-3.56-.41-5.37-.24-1.77.17-3.55-.45-5.33-.04a.715.715 0 0 1-.25-.03c-.09-.03-.18-.06-.27-.05-.36.01-.72-.02-1.07-.06-.44-.05-.88-.11-1.32-.17-.58-.07-1.16-.13-1.75-.08-.85.07-1.71.11-2.56.02-2.32-.23-4.65-.04-6.96-.33-.84-.11-1.67-.11-2.5-.06-.95.05-1.9.15-2.85.25-1.07.1-2.14.19-3.22.14-1.34-.06-2.67.13-4.02.29-.37.05-.75.09-1.13.12h-.15c-.24.01-.48.03-.72.04-.29.01-.58.01-.87-.01-.12 0-.25 0-.37-.01-1.88-.08-3.77-.16-5.66.01-.1 0-.2 0-.29.01-.02.01-.04.01-.05.01-.38.03-.78 0-1.05-.29-4.22-.07-38.93.51-42.2.02-.47 0-.76.01-.82.02h-.02c-1.32.44-2.69.25-4 .13-1.11-.1-2.22-.18-3.32-.18-.68 0-1.37.03-2.05.11-2.03.23-4.01-.18-6.02-.03-1.38.1-2.76-.17-4.13-.24-.16.01-.31.02-.48.04-.32.04-.64.03-.95 0h-.06c-.92.11-1.68-.14-2.45-.47-.5-.21-.67-.55-.65-1.13v-1.21c-.01-1.76-.08-4.64-.21-5.8-.01-.03-.01-.07-.02-.11-.01-.05-.01-.11-.02-.16-.12-.65-.16-4.13-.08-4.78.04-.34.12-.68.12-1.02 0-2.8-.45-9.4-.21-12.21.12-1.46.11-12.46-.09-13.89-.15-1.01.09-3.87.05-4.85-.03-.94-.14-1.9-.09-2.83.14-2.36.32-7.57.17-9.94C.14.88.63.4 1.45.4c.7 0 1.4.01 2.1.01.04 0 .07-.01.11-.01.26 0 .48 0 .68.01C5.26.39 6.17.33 7.09.17h.02c.13-.01.26-.01.38.02 1.16.26 2.32.14 3.48.09l.48-.03c1.25-.03 2.51-.04 3.76-.1.27-.02.53-.02.8-.01 1.06.02 2.13.16 3.2.17.22.01.44 0 .66 0 .57-.03 1.15-.11 1.72-.29.04-.01.08-.01.13-.01.05.01.1.02.14.02.32.07.64.12.96.17C23.91.35 25 .36 26.1.17c.27-.04.54-.02.81.01.14 0 .27.02.41.02 1.12.02 2.24.03 3.36.03 1.38.01 2.76-.02 4.15-.03.24 0 .49-.01.73-.01h.1c.35 0 .71.03 1.07.07.18.01.36.04.54.06.49.05.97.11 1.46.13.05 0 .09.01.14.01.32.01.64-.01.96-.05.04-.01.07-.01.11-.01.01 0 .02 0 .03-.01.68-.1 1.37-.14 2.05-.15.35 0 .69 0 1.04.02l1.04.06c.07.01.14.01.21.01.19 0 .39-.02.58-.05 2.22-.31 4.46.03 6.69-.12 1.15-.08 2.33.09 3.5.08 1.78-.02 3.57-.21 5.35.15.21.04.44-.03.66-.06 1.17-.13 2.35-.57 3.52.03.14.08.36.06.53.04C67.01.12 68.9.3 70.77.23c.26-.01.51 0 .77.01.82.04 1.64.16 2.43.1 1.39-.1 2.76-.06 4.14-.1.85-.03 1.68.28 2.54.18 3.21-.4 6.45-.23 9.67-.21 1.6 0 3.22-.08 4.83-.07 1.25.01 2.51.07 3.75.28.58.09 1.16.12 1.74.11 1.45-.02 2.9-.25 4.35-.19.29.02.58.04.87.08.34.05.67.05 1.01.03.6-.04 1.19-.14 1.79-.2 1.12-.11 2.22.23 3.35.18 1.1-.05 2.21-.09 3.32-.12.81-.02 1.61-.03 2.42-.03h.16c2.04.01 4.07.11 6.11.16.58 0 1.2.05 1.73-.11.52-.16 1.03-.19 1.53-.15.25.02.5.05.73.11 1.17.27 2.33.19 3.49.22.58.02 1.18-.04 1.75.05.28.05.56.08.84.1.27.02.55.03.83.03.56 0 1.11-.04 1.67-.11 2.12-.27 4.27.44 6.37-.21.06-.02.14.02.22.03.01.01.03.01.04.01 1.2.13 2.4.19 3.6.19 1.12 0 2.24-.05 3.36-.14.51-.05 1.02-.07 1.53-.1.96-.04 1.92-.07 2.89-.05 2.54.06 5.07.22 7.61.22.85 0 1.7-.01 2.55-.05 1.01-.05 2.03-.09 3.06-.09h.35c.57.01 1.15.03 1.71.07.38.02.76.07 1.14.12.19.02.38.03.57.06.14.02.27.02.4 0 .09-.02.18-.03.25-.08.13-.09.25-.15.38-.18.38-.11.77-.03 1.17.04.24.05.49.06.73.07.25 0 .49-.02.74-.03.95-.05 1.92-.14 2.86-.14h.27c.34 0 .68.02 1.01.05 1.56.17 3.08-.06 4.63.06.56.05 1.12.06 1.69.06 1.17-.03 2.06-.21 4.06-.31.26-.02.49 0 .71.04.19-.02.39-.03.58-.04.6-.03 1.09.14 1.24.74.11.41.24.81.35 1.22.1.31.16.62.19.9v.06c.03.29.02.54-.01.73-.28 1.88-.12 6.64-.23 8.52-.02.3-.03.71-.04 1.2-.07 4.69.38 16.93.29 19.83-.03 1.28.34 2.57-.02 3.87-.14.52-.12 4.95 0 5.49.17.78.08 1.55-.04 2.31Z'/%3E%3C/svg%3E"); mask-repeat: no-repeat; mask-size: 100% 100%; position: absolute; transition: background-color 0.15s ease-in; z-index: -1; }

.input-pill:has(:hover) { --border-color: var(--border-brand-hover); }

.input-pill:has(:checked) { --text-color: var(--text-reverse); --background-color: var(--surface-reverse); --border-color: var(--border-strong); }

.input-pill:has(.is-unavailable) label, .input-pill:has(:disabled) label { cursor: default; opacity: 0.5; }

.input-pill:has(.is-unavailable) label::after, .input-pill:has(:disabled) label::after { background: linear-gradient(to left top, transparent 48.5%, currentcolor 0px, transparent 50%); inset: 0px; content: ""; display: block; position: absolute; }

.input-pill:has(:disabled) { pointer-events: none; }

.input-pill:has(:disabled) label { cursor: default; pointer-events: none; }

.input-pill input.focus-visible ~ label { border-radius: var(--border-radius,.125rem); box-shadow: rgb(24, 102, 255) 0px 0px 0px 0.125rem; }

.input-pill input.focus-visible ~ label::before { border-color: var(--border-color); }

.input-pill--lg { --padding: 1.4rem 3rem; --border-width: 0.15625rem; }

.input-pill--simple { --border-width: 0.0625rem; --border-radius: 0.25rem; }

.input-pill--simple:has(:hover):not(:has(:checked)) { --text-color: #010c06; --background-color: var(--surface-cta-hover); }

.input-pill--simple label::before { mask-image: none; }

.product-options { display: grid; gap: 1.5rem; }

.product-options__option { align-items: stretch; display: flex; flex-flow: wrap; gap: 0.5rem; justify-content: flex-start; }

.product-options__option > * { flex: 1 1 auto; white-space: nowrap; }

.product-options__option-title { font-size: 1rem; font-weight: 700; margin-bottom: 0.3125rem; }

.product-form { display: grid; gap: 1rem; }

.product-form__actions { align-items: stretch; display: flex; flex-flow: wrap; gap: 0.5rem; justify-content: space-between; width: 100%; }

.product-form__actions button[type="submit"] { flex: 1 1 0%; height: 100%; padding-inline: 1rem; }

.slider { overflow: hidden; position: relative; width: 100%; }

.slider__slide { }

.slider__controls { align-items: center; display: flex; justify-content: space-between; margin: 0px; padding: 0.5rem 0.1875rem 0.1875rem; width: 100%; }

.slider__dots .fm-slider__dot--standard ~ label::before { height: 0.75rem; opacity: 0.75; width: 0.75rem; }

.slider__dots .fm-slider__dot--thumb ~ label { background-position: 50% center; background-size: cover; border: 1px solid var(--border-subtle); border-radius: 0.5rem; height: 3rem; margin: 0.125rem; width: 3rem; }

.slider__dots .fm-slider__dot--thumb.current ~ label { border-color: var(--border-primary); }

.slider__dots .fm-slider__dot--thumb.focus-visible ~ label { border-color: var(--text-reverse); border-radius: var(--border-radius,.125rem); box-shadow: rgb(24, 102, 255) 0px 0px 0px 0.125rem; outline: none; }

.slider__btn { flex-shrink: 0; }

.slider__autoplay-btn { background-color: var(--surface-primary); border-radius: 50%; position: absolute; z-index: 2; }

.slider__autoplay-btn .play { display: none; }

.slider__autoplay-btn.paused .play { display: block; }

.slider__autoplay-btn.paused .pause { display: none; }

.product-gallery { margin: 0px auto; overflow: hidden; width: 100%; }

.product-gallery .fm-slider__slides { background-color: var(--surface-primary); }

.product-gallery .fm-slider__slide { align-items: center; display: flex; flex-direction: column; justify-content: center; }

.product-gallery .slider__btn { background-color: var(--surface-primary); border-radius: 50%; position: absolute; top: calc(50% - 2.125rem); transform: translateY(-50%); }

.product-gallery .slider__btn:first-of-type { left: 0.5rem; }

.product-gallery .slider__btn:nth-of-type(2) { right: 0.5rem; }

.product-gallery .slider__controls { min-height: 4.9375rem; }

.product-gallery .fm-slider__dots { padding: 0.5rem 0.85rem; justify-content: flex-start !important; }

.product-gallery__slide { width: 100%; }

.product-gallery__slide picture { display: block; width: 100%; }

.prod-accordion { border-bottom: .0625rem solid var(--text-primary); margin-top: 1rem; }

.js .prod-accordion__content { display: none; height: 0px; margin: 0px -0.1875rem; opacity: 0; overflow: hidden; padding: 0px 0.1875rem; width: calc(100% + 0.375rem); }

.js .prod-accordion__content::after, .js .prod-accordion__content::before { content: ""; display: block; position: relative; z-index: -1; }

.js .prod-accordion__content::before { margin-top: -0.3125rem; }

.js .prod-accordion__content::after { margin-bottom: -2.8125rem; }

.js .prod-accordion__content.is-active { display: block; transition: padding 0.3s, opacity 0.3s; }

.js .prod-accordion__content.is-visible { height: auto; opacity: 1; padding-bottom: 3.5rem; padding-top: 0.5rem; }

.prod-accordion__btn { align-items: center; border-top: .0625rem solid var(--text-primary); display: flex; flex-direction: row; font-size: 1.125rem; font-weight: 700; height: 3rem; justify-content: space-between; line-height: 1.1; padding-bottom: 0.0625rem; padding-top: 0.25rem; text-align: left; width: 100%; }

.prod-accordion__btn .indicator { height: 0.9rem; position: relative; transition: transform 0.3s; width: 0.9rem; }

.prod-accordion__btn .indicator::after, .prod-accordion__btn .indicator::before { background-color: currentcolor; content: ""; display: block; height: 0.0625rem; position: absolute; top: 50%; transition: transform 0.25s ease-in-out, opacity 0.25s ease-in-out; width: 100%; }

.prod-accordion__btn .indicator::before { bottom: 0px; left: 0px; }

.prod-accordion__btn .indicator::after { left: 0px; right: 0px; transform: rotate(90deg); }

.prod-accordion__btn.is-active .indicator, .prod-accordion__btn[aria-expanded="true"] .indicator { transform: rotate(45deg); }

.prod-accordion__btn.focus-visible { position: relative; }

.c-prod-badge { background-color: var(--background-color,var(--surface-cta)); border-radius: 0.125rem; color: var(--text-color,var(--text-on-cta)); font-family: "Walter Turncoat", sans-serif; font-size: 0.875rem; font-weight: 400; line-height: 1.1; padding: 0.5rem 0.75rem; position: absolute; right: 0.5rem; text-transform: uppercase; top: 0.5rem; z-index: 2; }

.c-prod-badge--static { inset: auto; position: static; }

.c-prod-badge--secondary { --background-color: var(--surface-secondary); }

.c-prod-badge--tertiary { --background-color: var(--surface-tertiary); }

.c-prod-badge--inactive { --background-color: var(--surface-inactive); --text-color: var(--text-secondary); }

.product { background-color: var(--surface-primary); }

.product__container { align-items: flex-start; display: flex; flex-flow: wrap; gap: 1.5rem; justify-content: space-between; overflow: hidden; padding-block: 0px 2.5rem; position: relative; }

.product__media { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); padding-left: 1.25rem; padding-right: 1.25rem; position: relative; width: 100vw; }

.product__media:focus-within .product__zoom-btn, .product__media:hover .product__zoom-btn { opacity: 1; }

.product__zoom-btn { --border-radius: 0.5rem; border: .0625rem solid var(--border-light); border-radius: var(--border-radius); opacity: 0; position: absolute; right: 0.5rem; top: 0.5rem; transition: opacity 0.25s; }

.product__zoom-btn, .product__zoom-btn:hover { background-color: var(--surface-primary); }

.product__details { display: grid; gap: 1.5rem; width: 100%; }

.product__details-inner { display: grid; gap: 1rem; width: 100%; }

.product__details--no-image { margin: auto; max-width: 600px; width: 100% !important; }

.product__header { display: grid; gap: 0.5rem; }

.product__title { font-size: 1.4375rem; font-weight: 700; line-height: 1.1; }

.product__reviews-link { color: currentcolor; text-decoration-line: underline; }

.product__reviews-link:active, .product__reviews-link:hover { opacity: 0.8; }

.product__description .metafield-rich_text_field p:first-child { margin-top: 0px; }

.product__subtitle { color: var(--text-secondary); font-family: "Walter Turncoat", sans-serif; font-size: 0.875rem; font-weight: 400; line-height: 1.1; text-transform: uppercase; }

.product__price { align-items: center; gap: 0.5rem 1rem; display: flex; flex-flow: wrap; font-size: 1.125rem; font-weight: 700; justify-content: flex-start; position: relative; }

.product__price s { font-weight: 400; }

@media only screen and (min-width: 30em) {
  .product__media { padding-left: 1.5rem; padding-right: 1.5rem; }
}

@media only screen and (min-width: 48em) {
  .slider__dots .fm-slider__dot--thumb ~ label { height: 5rem; width: 5rem; }
  .product-gallery { padding: 0.125rem; }
  .product-gallery .fm-slider__dots { padding: 0px; }
  .product-gallery__slide { --border-radius: 0.5rem; padding: 0.125rem; }
  .product-gallery__slide picture { border-radius: 0.5rem; overflow: hidden; }
  .prod-accordion__btn { font-size: 1.25rem; }
  .product { padding-top: 2rem; }
  .product__container { overflow: unset; padding-block: 1.5rem 3rem; }
  .product__media { margin: 0px; position: sticky; top: calc(1.5rem + var(--header-height)); width: calc(100% - 27rem); }
  .product__media .product-badge { left: auto; right: 1.25rem; top: 1.25rem; }
  .product__zoom-btn { left: 0.1875rem; right: auto; top: 0.1875rem; }
  .product__details { width: 25rem; }
  .product__title { font-size: 1.8125rem; }
}

@media only screen and (min-width: 64em) {
  .product-gallery { padding-left: 6.5rem; }
  .product-gallery .slider__btn:first-of-type { left: 7rem; }
  .product__container { padding-block: 0.75rem 3rem; }
  .product__media { width: calc(100% - 29rem); }
  .product__details { width: 27.5rem; }
  .product__price { font-size: 1.4375rem; }
}

@media only screen and (min-width: 80em) {
  .prod-accordion__btn { font-size: 1.4375rem; }
  .product__title { font-size: 2.0625rem; }
}

@media only screen and (max-width: calc(48em - 1px)) {
  .product__media { padding-left: 0px; padding-right: 0px; }
  .product__header { padding-top: 0.5rem; }
}