@import 'components/swiper.css';
@import 'components/bopis-overlay.css';
@import 'components/login-overlay.css';
@import 'components/shop-items.css';
@import 'components/related-products.css';
@import 'components/product-tags.css';
@import 'components/product-mixed-content.css';
@import 'components/product-carousel.css';
@import 'components/fit-expert.css';

/* product content */
.product {
  margin: 8px 0 100px 0;
  display: flex;
  flex-direction: column;
  row-gap: 100px;
}

.product-content {
  display: grid;
  grid-template-columns: repeat(var(--cols), 1fr);
  grid-template-rows: auto 1fr;
  column-gap: var(--col-gap);
  row-gap: 40px;
}

.product--discontinued .product-content {
  row-gap: 0;
}

@media all and (max-width:767px) {
  .product {
    margin: 20px 0 0 0;
    row-gap: 60px;
  }

  .product--discontinued {
    margin-bottom: 60px;
  }

  .product-content {
    row-gap: 0;
  }
}

/* product gallery */
.product-gallery {
  position: relative;
  padding-left: 60px;
  padding-bottom: 20px;
  grid-area: 1 / 1 / 2 / 11;
}

.product-gallery::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background: var(--color-white) url(../images/loader.gif) center center no-repeat;
  transition: opacity .2s ease-in;
  z-index: 10;
}

.product-gallery--no-swiper {
  padding-left: 0;
}

.product-gallery--no-swiper .product-gallery-thumbs {
  display: none;
}

.product-gallery.loaded::after {
  opacity: 0;
  pointer-events: none;
}

.product-gallery .product-tag {
  --factor: 1.11363636;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}

.product-gallery_swiper {
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 3;
}

.product-gallery_swiper .swiper-slide:focus {
  outline-offset: -2px;
}

.product-gallery_swiper img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}

.product-gallery-thumbs {
  position: absolute;
  left: -4px;
  top: 50%;
  width: 40px;
  height: 267px;
  transform: translateY(-50%);
}

.product-gallery-thumbs_swiper {
  visibility: hidden;
}

.product-gallery-thumbs_swiper.center-slides .swiper-wrapper {
  align-items: center;
  justify-content: center;
}

.product-gallery-thumbs_swiper.center-slides .swiper-slide {
  margin-bottom: 0 !important;
  margin-right: 0 !important;
}

.product-gallery-thumbs_swiper.swiper-initialized {
  visibility: visible;
}

.product-gallery-thumbs .swiper-button-disabled {
  display: none;
}

.product-gallery-thumbs .swiper-button-prev,
.product-gallery-thumbs .swiper-button-next {
  left: 50%;
  right: auto;
  width: 20px;
  height: 15px;
  margin: 0;
  background: center center no-repeat;
  background-size: 20px 15px;
  transform: translateX(-50%);
}

.product-gallery-thumbs .swiper-button-prev::after,
.product-gallery-thumbs .swiper-button-next::after {
  display: none;
}

.product-gallery-thumbs .swiper-button-prev {
  top: -20px;
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyMCAxNSI+PHBhdGggc3Ryb2tlPSIjMDAwIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBzdHJva2Utd2lkdGg9IjIiIGQ9Ik0xLjUgMTIgMTAgM2w4LjUgOSIvPjwvc3ZnPg==');
}

.product-gallery-thumbs .swiper-button-prev:hover {
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyMCAxNSI+PHBhdGggc3Ryb2tlPSIjRUIxNTIwIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBzdHJva2Utd2lkdGg9IjIiIGQ9Ik0xLjUgMTIgMTAgM2w4LjUgOSIvPjwvc3ZnPg==');
}

.product-gallery-thumbs .swiper-button-next {
  top: auto;
  bottom: -20px;
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyMCAxNSI+PHBhdGggc3Ryb2tlPSIjMDAwIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBzdHJva2Utd2lkdGg9IjIiIGQ9Ik0xOC41IDMgMTAgMTIgMS41IDMiLz48L3N2Zz4=');
}
.product-gallery-thumbs .swiper-button-next:hover {
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyMCAxNSI+PHBhdGggc3Ryb2tlPSIjRUIxNTIwIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBzdHJva2Utd2lkdGg9IjIiIGQ9Ik0xOC41IDMgMTAgMTIgMS41IDMiLz48L3N2Zz4=');
}

.swiper-thumbs {
  width: 100%;
  height: 100%;
}

.swiper-thumbs .swiper-slide {
  width: 40px;
  height: 40px;
  border: 1px solid transparent;
}

.swiper-thumbs .swiper-slide:focus {
  outline-offset: -2px;
  z-index: 1;
}

.swiper-thumbs .swiper-slide-thumb-active {
  border-color: var(--color-black);
}

.swiper-thumbs img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}

.product-gallery #zoom {
  appearance: none;
  position: absolute;
  bottom: 0;
  left: 50%;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  font-size: 12px;
  line-height: 20px;
  transform: translateX(-50%);
}

.product-gallery #zoom:hover {
  text-decoration: underline;
}

.product-gallery #zoom span {
  float: left;
  width: 13px;
  height: 13px;
  margin: 3px 7px 0 0;
  display: block;
  background-image: url(../images/sprite.png);
  background-position: -212px -115px;
}

@media all and (max-width:1023px) {
  .product-gallery {
    position: relative;
    padding-left: 0;
    padding-bottom: 82px;
  }

  .product-gallery--no-swiper {
    padding-bottom: 20px;
  }

  .product-gallery-thumbs {
    position: absolute;
    left: 50%;
    top: auto;
    bottom: 26px;
    width: 290px;
    height: 40px;
    transform: translateX(-50%);
  }

  .product-gallery-thumbs .swiper-button-prev,
  .product-gallery-thumbs .swiper-button-next {
    bottom: auto;
    top: 50%;
    width: 20px;
    height: 35px;
    background-size: 20px 35px;
    transform: translateY(-50%);
  }

  .product-gallery-thumbs .swiper-button-prev,
  .product-gallery-thumbs .swiper-button-prev:hover {
    left: -30px;
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyMCAzNSI+PHBhdGggc3Ryb2tlPSIjMDAwIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBzdHJva2Utd2lkdGg9IjIiIGQ9Ik0xOCAzMyAxLjU4OCAxNy41IDE4IDIiLz48L3N2Zz4=');
  }

  .product-gallery-thumbs .swiper-button-next,
  .product-gallery-thumbs .swiper-button-next:hover {
    left: auto;
    right: -30px;
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyMCAzNSI+PHBhdGggc3Ryb2tlPSIjMDAwIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBzdHJva2Utd2lkdGg9IjIiIGQ9Ik0xLjkwOSAyIDE4IDE3LjUgMS45MDkgMzMiLz48L3N2Zz4=');
  }
}

@media all and (max-width:767px) {
  .product-gallery {
    padding-bottom: 40px;
    grid-area: auto;
    grid-column-end: span 8;
    order: 1;
  }

  .product-gallery--no-swiper {
    padding-bottom: 0;
  }

  .product-gallery .product-tag {
    left: auto;
    right: 0;
  }

  .product-gallery-thumbs {
    bottom: 0;
  }

  .product-gallery #zoom {
    display: none;
  }
}

.product-heading {
  display: none;
}

.product-details {
  grid-area: 1 / 11 / 3 / 17;
}

.product-details .product-family {
  margin-bottom: 8px;
}

.product-details .product-subtitle {
  margin-top: 21px;
}

.product-details .product-description {
  display: none;
}

@media all and (max-width:767px) {
  .product-heading {
    display: block;
    grid-area: auto;
    grid-column-end: span 8;
    order: 0;
  }

  .product-heading .product-family {
    margin-bottom: 4px;
  }

  .product-heading .product-subtitle {
    margin-top: 6px;
  }

  .product-details {
    grid-area: auto;
    grid-column-end: span 8;
    order: 2;
  }

  .product-details .product-family,
  .product-details .product-title,
  .product-details .product-subtitle,
  .product-details .product-rating {
    display: none;
  }

  .product-details .product-description {
    margin: 30px -20px 0 -20px;
    padding: 20px 20px 0 20px;
    display: block;
  }
}


.product-family {
  margin: 0 0 10px;
}

.product-title {
  margin: 0;
}

h2.product-subtitle {
  margin: 0;
  text-align: left;
}

@media all and (max-width:1023px) {
  .product-family {
    margin: 0 0 5px;
  }
}

/* product rating */
.product-rating {
  --rating: 5;
  margin: 10px 0 0 0;
  display: inline-flex;
  justify-content: flex-start;
  align-items: flex-end;
  vertical-align: top;
  font-size: 12px;
  line-height: 12px;
  font-weight: 600;
}

.product-rating_stars {
  position: relative;
  width: 80px;
  height: 15px;
  margin: 0 5px 0 0;
  display: block;
  background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxNiAxNSI+PHBhdGggc3Ryb2tlPSIjMDAwIiBzdHJva2Utd2lkdGg9Ii45MjMiIGQ9Im04IDIgMS4zNDcgNC4xNDZoNC4zNkwxMC4xOCA4LjcwOGwxLjM0NyA0LjE0Nkw4IDEwLjI5MmwtMy41MjcgMi41NjJMNS44MiA4LjcwOCAyLjI5NCA2LjE0Nmg0LjM1OUw4IDJaIi8+PC9zdmc+') left center repeat-x;
  background-size: 16px 15px;
}

.product-rating_stars--no-rating,
.product-rating_stars--no-rating::after {
  background: none;
}

.product-rating_stars::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% * (var(--rating) / 5));
  height: 15px;
  display: block;
  background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxNiAxNSI+PHBhdGggZmlsbD0iIzAwMCIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utd2lkdGg9Ii45MjMiIGQ9Im04IDIgMS4zNDcgNC4xNDZoNC4zNkwxMC4xOCA4LjcwOGwxLjM0NyA0LjE0Nkw4IDEwLjI5MmwtMy41MjcgMi41NjJMNS44MiA4LjcwOCAyLjI5NCA2LjE0Nmg0LjM1OUw4IDJaIi8+PC9zdmc+') left center repeat-x;
  background-size: 16px 15px;
}

@media all and (max-width:1023px) {
  .product-rating {
    margin: 5px 0 0 0;
  }
}

@media all and (max-width:767px) {
  .product-rating {
    font-size: 14px;
    line-height: 14px;
  }
}

/* product price */
.product-price {
  margin: 40px 0 0 0;
  display: flex;
}

.product-price .price {
  display: flex;
  align-items: flex-start;
  font-size: 36px;
  line-height: 36px;
  font-weight: 900;
  letter-spacing: -0.05em;
  text-transform: uppercase;
}

.product-price .price.compare-at {
  margin-right: 13px;
  font-weight: 400;
  text-decoration: line-through;
}

/*.product-price .price.sale {
  color: var(--color-red);
}*/

.product-price .price .price-cents {
  top: 0.05em;
  margin: 1px -1px 0 0;
  font-size: 22px;
  line-height: 22px;
  letter-spacing: -0.04em;
}

.product-price .price .currency {
  margin-bottom: 0.2em;
  align-self: flex-end;
  font-size: 12px;
  line-height: 14px;
  letter-spacing: 0.01em;
}

@media all and (max-width:767px) {
  .product-price .price.compare-at {
    margin-right: 10px;
  }

  .product-price .price .currency {
    margin-bottom: 0.15em;
    font-size: 14px;
    line-height: 16px;
  }
}

/* addlsale */
.product-addlsale {
  margin: 10px 0;
  padding: 4px;
  display: inline-block;
  vertical-align: top;
  border-top: 2px dashed #EB1520;
  border-bottom: 2px dashed #EB1520;
  font-size: 14px;
  line-height: 16px;
  font-weight: 900;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  text-align: left;
}

.product-addlsale span {
  color: #EB1520;
}

/* afterpay widget */
.afterpay-widget {
  float: none;
  margin: 5px 0 0;
  display: flex;
  align-items: center;
  gap: 4px;
  color: var(--color-grey);
  font-size: 12px;
  line-height: 14px;
  font-weight: 600;
  letter-spacing: -0.05em;
}

.afterpay-widget strong {
  font-weight: 900;
}

.afterpay-widget img {
  height: 18px;
  width: auto;
  margin: 0;
  display: block;
  opacity: 0.4;
}

.afterpay-info-link {
  color: var(--color-black);
}

@media all and (max-width:767px) {
  .afterpay-widget {
    font-size: 14px;
    line-height: 16px;
  }
}

/* product colours */
.product-colours {
  margin: 20px 0 20px 0;
}

.product-colours_selected {
  margin: 0;
  font-size: 14px;
  line-height: 16px;
  font-family: var(--font-primary);
  font-weight: 900;
  letter-spacing: 0.01em;
}

.product-colours_selected + .product-form-notification,
.product-form-notification + .product-colours_selected {
  margin-top: 20px;
}

.product-colours_count {
  margin: 1px 0 0 0;
  font-size: 12px;
  line-height: 12px;
  font-weight: 600;
}

@media all and (max-width:767px) {
  .product-colours {
    margin: 30px 0 0 0;
  }

  .product-colours_selected {
    font-size: 16px;
    line-height: 18px;
  }

  .product-colours_count {
    margin: 3px 0 0 0;
    font-size: 14px;
    line-height: 14px;
  }
}

/* additional colours */
.additional-colours {
  position: relative;
  margin-top: 9px;
  padding-right: 35px;
}

.additional-colours::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background: var(--color-white) url(../images/loader.gif) center center no-repeat;
  transition: opacity .2s ease-in;
  z-index: 10;
}

.additional-colours.loaded::after {
  opacity: 0;
  pointer-events: none;
}

.additional-colours .swiper-button-next {
  top: 50%;
  right: 0;
  width: 15px;
  height: 25px;
  margin: 0;
  background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxNSAyNSI+PHBhdGggc3Ryb2tlPSIjMDAwIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBzdHJva2Utd2lkdGg9IjIiIGQ9Im0yIDIgMTEgMTAuNUwyIDIzIi8+PC9zdmc+') center center no-repeat;
  background-size: 15px 25px;
  transform: translateY(-50%);
}

.additional-colours .swiper-button-next::after {
  display: none;
}

.additional-colours .swiper-button-next:hover {
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxNSAyNSI+PHBhdGggc3Ryb2tlPSIjRUIxNTIwIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBzdHJva2Utd2lkdGg9IjIiIGQ9Im0yIDIgMTEgMTAuNUwyIDIzIi8+PC9zdmc+');
}

.additional-colours_swiper {

}

.additional-colours_swiper .swiper-slide {
  width: calc(100% / 4);
}

.additional-colour {
  position: relative;
  width: 100%;
  height: auto;
  display: block;
}

.additional-colour--selected::after {
  content: '';
  width: 100%;
  height: auto;
  display: block;
  background: url('data:image/png;base64,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') center center no-repeat;
  background-size: contain;
  aspect-ratio: 66 / 6;
}

.additional-colour img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 1;
  object-fit: contain;
}

.additional-colour .product-tag {
  --factor: 0.590909091;
  position: absolute;
  top: 3px;
  right: 0;
}

@media all and (max-width:1023px) {
  .additional-colours {
    margin-top: 13px;
    padding-right: 52px;
  }

  .additional-colours .swiper-button-next,
  .additional-colours .swiper-button-next:hover {
    width: 20px;
    height: 35px;
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyMCAzNSI+PHBhdGggc3Ryb2tlPSIjMDAwIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBzdHJva2Utd2lkdGg9IjIiIGQ9Ik0xLjkwOSAyIDE4IDE3LjUgMS45MDkgMzMiLz48L3N2Zz4=');
    background-size: 20px 35px;
  }

  .additional-colours_swiper .swiper-slide {
    width: calc(100% / 3);
  }
}

/* product size/qty selectors */
.product-size-qty {
  margin-top: 20px;
  display: flex;
}

.product-size-select {
  appearance: none;
  width: 100%;
  height: 40px;
  margin: 0;
  padding: 11px 41px 11px 14px;
  background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxMiA2Ij48cGF0aCBmaWxsPSIjMDAwIiBkPSJNMTIgMEgwbDYuMjYgNkwxMiAwWiIvPjwvc3ZnPg==') right 16px center no-repeat;
  background-size: 12px 6px;
  border: 1px solid var(--color-black);
  border-radius: 0;
  color: var(--color-black);
  font-size: 14px;
  line-height: 16px;
  font-family: var(--font-primary);
  font-weight: 900;
  letter-spacing: 0.01em;
  text-transform: uppercase;
}

.product-size-select:disabled,
.product-size-select--disabled {
  background-image: none;
  opacity: 0.4;
  pointer-events: none;
}

.product-size-select--disabled {
  display: none;
}

.product-size-select option {
  font-weight: 900;
}

.product-size-select option:disabled,
.product-size-select option.sold-out {
  color: var(--color-grey);
}

.product-qty {
  width: 90px;
  height: 40px;
  margin-left: 15px;
  display: flex;
  flex-shrink: 0;
  border: 1px solid var(--color-black);
}

.product-qty--disabled {
  opacity: 0.4;
  pointer-events: none;
}

.product-qty-decrease,
.product-qty-increase {
  appearance: none;
  width: 32px;
  height: 38px;
  display: block;
  flex-shrink: 0;
  background: center no-repeat;
  background-size: 10px 10px;
  border: none;
  border-radius: 0;
}

.product-qty:not(.product-qty--disabled) .product-qty-decrease:disabled,
.product-qty:not(.product-qty--disabled) .product-qty-increase:disabled {
  opacity: 0.4;
  pointer-events: none;
}

.product-qty-decrease {
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxMCAxMCI+PHBhdGggZmlsbD0iIzAwMCIgZD0iTTAgNS44MzNWNC4xNjZoMTB2MS42Njd6Ii8+PC9zdmc+');
}

.product-qty-increase {
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxMCAxMCI+PHBhdGggZmlsbD0iIzAwMCIgZD0iTTAgNS44MzNWNC4xNjZoMTB2MS42Njd6Ii8+PHBhdGggZmlsbD0iIzAwMCIgZD0iTTQuMTY3IDBoMS42Njd2MTBINC4xNjd6Ii8+PC9zdmc+');
}

.product-qty-input {
  appearance: none;
  -moz-appearance: textfield;
  width: 100%;
  height: 38px;
  margin: 0;
  padding: 11px 0;
  display: block;
  background: none;
  border: none;
  border-radius: 0;
  color: var(--color-black);
  font-size: 14px;
  line-height: 16px;
  font-family: var(--font-primary);
  font-weight: 900;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  text-align: center;
}

.product-qty-input::-webkit-outer-spin-button,
.product-qty-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

@media all and (max-width:767px) {
  .product-size-qty {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    column-gap: 16px;
  }

  .product-size-select {
    height: 50px;
    padding: 15px 41px 15px 14px;
    font-size: 16px;
    line-height: 18px;
    background-position: right 20px center;
    background-size: 15px auto;
    grid-column-end: span 5;
  }

  .product-size-select:last-child {
    grid-column-end: span 8;
  }

  .product-qty {
    width: 100%;
    height: 50px;
    margin: 0;
    grid-column-end: span 3;
  }

  .product-qty-decrease,
  .product-qty-increase {
    width: 46px;
    height: 48px;
    background-size: 16px 16px;
  }

  .product-qty-input {
    width: 100%;
    height: 48px;
    padding: 15px 0;
    font-size: 16px;
    line-height: 18px;
  }
}

/* product size guide */
.product-size-guide {
  appearance: none;
  margin: 5px 0 0 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  color: var(--color-black);
  font-size: 14px;
  line-height: 20px;
  font-weight: 600;
  text-decoration: underline;
}

.product-size-guide:hover {
  color: var(--color-red);
}

@media all and (max-width:767px) {
  .product-size-guide {
    margin: 15px 0 0 0;
    font-size: 16px;
    line-height: 22px;
  }

  .product-size-guide:hover {
    color: var(--color-black);
  }
}

/* product form notification */
.product-form-notification {
  margin: 10px 0 0 0;
  color: var(--color-red);
  font-size: 14px;
  line-height: 16px;
  font-weight: 900;
  letter-spacing: 0.01em;
}

.product-form-notification--grey {
  color: var(--color-grey);
}

.product-form-notification--black {
  color: var(--color-black);
}

.product-form-notification:empty {
  display: none;
}

.product-stock-notification {
  margin-top: 20px;
}

@media all and (max-width:767px) {
  .product-form-notification {
    margin: 15px 0 0 0;
    font-size: 16px;
    line-height: 22px;
  }

  .product-stock-notification {
    margin-top: 15px;
  }
}

/* product form buttons */
.product-flueseum,
.product-notify-me,
.product-add-to-cart {
  margin-top: 10px;
}

.product-add-to-cart.loading {
  position: relative;
  pointer-events: none;
}

.product-add-to-cart.loading::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background: var(--color-white) url('../images/loader.gif') center center no-repeat;
}

@media all and (max-width:767px) {
  .product-flueseum,
  .product-notify-me,
  .product-add-to-cart {
    margin-top: 15px;
  }
}

/* product wishlist buttons */
.product-wishlist-add {
  appearance: none;
  margin: 20px 0 0 0;
  padding: 1px 0 1px 24px;
  display: inline-block;
  border: none;
  border-radius: 0;
  background: left center no-repeat;
  background-size: 19px 18px;
  vertical-align: top;
  font-size: 14px;
  line-height: 16px;
  font-family: var(--font-primary);
  font-weight: 900;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  cursor:pointer;
}

.product-wishlist-add {
  background-image:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxOC45OSAxOCI+PHBhdGggZD0iTTQuNzEgMmMuODUgMCAxLjgyLjM3IDIuODkgMS4xMWwuODEuNTUgMS4xNS43OCAxLjEzLS44MWMxLjMyLS45NSAyLjQ2LTEuNDggMy4zOS0xLjU5LjEyLS4wMS4yNS0uMDIuMzYtLjAyLjU3IDAgMS4wNS4xOCAxLjU2LjZsLjA0LjAzYzEuMiAxLjA0IDEuMjcgMy4zNi4xNiA1LjU1LTEuMzIgMi42My0zLjQgNC45MS02LjY5IDcuMzQtMy40Ni0yLjYtNi4wMS01LjEyLTcuMjItOC42OS0uNjEtMS44MS0uMjgtMy41MS44Ni00LjM0LjQ1LS4zMy45Ny0uNSAxLjU1LS41bTAtMmE0LjU2IDQuNTYgMCAwIDAtMi43Mi44N0MuMTIgMi4yNC0uNDkgNC44My40MSA3LjQ4YzEuNDUgNC4yNiA0LjQ1IDcuMTEgOC41MiAxMC4wOWwuNTguNDMuNTktLjQyYzMuOTEtMi43OSA2LjM0LTUuNCA3LjktOC40OSAxLjU2LTMuMSAxLjI3LTYuNC0uNzItOC4wM0MxNi40Mi4zNSAxNS40OSAwIDE0LjQ1IDBjLS4xOSAwLS4zOS4wMS0uNTkuMDQtMS4yOS4xNS0yLjcxLjc5LTQuMzMgMS45NWwtLjgxLS41NUM3LjE0LjM2IDUuOCAwIDQuNzEgMFoiLz48L3N2Zz4=');
}

.product-wishlist-add.added {
  background-image:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxOSAxOCI+PHBhdGggZmlsbD0iIzAwMCIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utd2lkdGg9IjIiIGQ9Im05LjU0MSAzLjIxOS0uNTc2LS4zODlhNzYuMTQgNzYuMTQgMCAwIDAtLjMyMS0uMjE1IDM3LjI1NyAzNy4yNTcgMCAwIDEtLjUtLjMzNkM1Ljg1NC43MDIgMy45NjQuNjc2IDIuNTY3IDEuNjk2IDEuMjEgMi42ODUuNTM1IDQuNzYyIDEuMzUgNy4xNjZsOC4xOS0zLjk0N1ptMCAwIC41NjYtLjQwNW0tLjU2Ni40MDUuNTY2LS40MDVtMCAwYzEuNTM2LTEuMTAzIDIuODEtMS42NDggMy44NjEtMS43NzIgMS4wMDctLjEyIDEuODY5LjEzNyAyLjY2Ny43OTNtLTYuNTI5Ljk3OSA2LjUzLS45OG0wIDBjMS40NzggMS4yMTggMS45MzQgMy44OTEuNDYyIDYuODEyLTEuNjk1IDMuMzYyLTQuMzkgNS44NDUtNy41ODcgOC4xMjUtMy42MjQtMi42NTMtNi43NDItNS40MzItOC4xNi05LjYwNGwxNS4yODQtNS4zMzJaIi8+PC9zdmc+');
  pointer-events: none;
}

.product-wishlist-add:hover {
  text-decoration: underline;
}

@media all and (max-width:767px) {
  .product-wishlist-add {
    margin: 30px 0 0 0;
    padding: 2px 0 2px 33px;
    font-size: 16px;
    line-height: 18px;
    background-size: 23px 22px;
  }

  .product-wishlist-add:hover {
    text-decoration: none;
  }
}

/* product benefits */
.product-benefit_list {
  margin: 20px 0 0 0;
}

.product-benefit_list li {
  margin: 0 0 15px 0;
}

.product-benefit_list li:last-child {
  margin-bottom: 0;
}

.product-benefit {
  padding-left: 20px;
  background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxMyAxMCI+PHBhdGggZmlsbD0iIzAwMCIgZD0iTTQuMjQyIDkuOTgyIDIuODI4IDguNTY4IDExLjMxNC4wODJsMS40MTQgMS40MTV6Ii8+PHBhdGggZmlsbD0iIzAwMCIgZD0iTTUuNjU2IDguNTY4IDQuMjQyIDkuOTgyIDAgNS43MzlsMS40MTUtMS40MTR6Ii8+PC9zdmc+') top 4px left no-repeat;
  background-size: 13px 10px;
  font-size: 12px;
  line-height: 16px;
}

.product-benefit--grey {
  background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxMyAxMSI+PHBhdGggZmlsbD0iIzdBN0E3QSIgZD0iTTQuMjQyIDEwLjA0NyAyLjgyOCA4LjYzMiAxMS4zMTMuMTQ3bDEuNDE0IDEuNDE0eiIvPjxwYXRoIGZpbGw9IiM3QTdBN0EiIGQ9Im0xMS4zMTQgMTAuMDQ2IDEuNDE0LTEuNDE0TDQuMjQzLjE0NyAyLjgyOSAxLjU2MXoiLz48L3N2Zz4=') top 3px left no-repeat;
  background-size: 13px 11px;
}

.product-benefit--grey .h6 {
  color: var(--color-grey);
}

.product-benefit .h6 {
  margin: 0 0 10px 0;
}

.product-benefit .h6:last-child {
  margin-bottom: 0;
}

.product-benefit .product-bopis-note {
  margin: 0;
}

.bopis-store {
  display: none;
}

.bopis-store_overlay-toggle {
  appearance: none;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
  text-decoration: underline;
}

@media all and (max-width:767px) {
  .product-benefit_list {
    margin: 30px 0 0 0;
  }

  .product-benefit {
    padding-left: 24px;
    backround-position: top left;
    background-size: 18px 16px;
    font-size: 14px;
    line-height: 18px;
  }

  .product-benefit .h6 {
    margin: 0 0 4px 0;
  }

  .bopis-store_overlay-toggle {
    font-size: 14px;
    line-height: 18px;
  }
}

/* product accordions */
.product-accordion_list {
  margin: 20px 0 0 0;
}

.product-accordion {
  border-top: 1px solid var(--color-border);
}

.product-accordion--open .product-accordion_toggle {
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyMSAxMyI+PHBhdGggc3Ryb2tlPSIjMDAwIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBzdHJva2Utd2lkdGg9IjIiIGQ9Im0yIDEwLjU5NyA4LjUtOSA4LjUgOSIvPjwvc3ZnPg==');
}

.product-accordion_toggle {
  width: 100%;
  height: auto;
  padding: 15px 0;
  display: block;
  background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyMSAxMyI+PHBhdGggc3Ryb2tlPSIjMDAwIiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiBzdHJva2Utd2lkdGg9IjIiIGQ9Im0xOSAyLjI3NC04LjUgOS04LjUtOSIvPjwvc3ZnPg==') right center no-repeat;
  background-size: 21px 13px;
  border: none;
  border-radius: 0;
  font-size: 14px;
  line-height: 16px;
  font-weight: 900;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  text-align: left;
}

.product-accordion_content-wrapper {
  height: 0;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  column-gap: var(--col-gap);
  overflow: hidden;
}

.product-accordion_content {
  padding: 5px 0 20px 0;
  grid-column-end: span 5;
}

.product-accordion_content--full-width {
  grid-column-end: span 6;
}

.product-accordion_content .btn--outline {
  margin-top: 12px;
}

.product-accordion_content .btn--thick-outline {
  margin-top: 20px;
}

@media all and (max-width:1023px) {
  .product-accordion_content-wrapper {
    grid-template-columns: 1fr;
  }

  .product-accordion_content {
    grid-column-end: span 1;
  }
}

@media all and (max-width:767px) {
  .product-accordion_list {
    margin: 30px -20px 0 -20px;
  }

  .product-accordion_toggle {
    padding: 20px;
    background-position: right 20px center;
    font-size: 16px;
    line-height: 18px;
  }

  .product-accordion_content {
    padding: 0 20px 20px 20px;
  }
}

/* product share */
.product-share {
  margin-top: 20px;
  padding-top: 15px;
  display: flex;
  border-top: 1px solid var(--color-border);
}

@media all and (max-width:767px) {
  .product-share {
    margin: 20px -20px 0;
    padding: 15px 20px 0;
  }
}

.product-accordion_list ~ .product-share,
.product-accordion_list ~ .product-share {
  margin-top: 0;
}


.product-share a {
  margin-right: 12px;
}

.product-share a.email {
  height: 18px;
  width: 17px;
  background-image: url(../images/sprite@2x.png);
  background-position: -253px -290px;
  background-size: 374px 329px;
}

.product-share a.pinterest {
  height: 18px;
  width: 14px;
  background-image: url(../images/sprite@2x.png);
  background-position: -240px -173px;
  background-size: 374px 329px;
}

.product-share a.facebook {
  height: 18px;
  width: 8px;
  background-image: url(../images/sprite@2x.png);
  background-position: -366px -165px;
  background-size: 374px 329px;
}

@media all and (max-width:767px) {
  .product-share a {
    margin-right: 20px;
  }
}

/* product-description */
.product-description {
  grid-area: 2 / 1 / 3 / 11;
  padding-top: 15px;
  display: grid;
  grid-template-columns: repeat(10, 1fr);
  border-top: 1px solid var(--color-border);
}

.product-description .text-component {
  grid-area: 1 / 1 / 2 / 10;
}

@media all and (max-width:767px) {
  .product-description {
    display: none;
  }
}


.product-section {
}

.product-section_heading {
  padding-top: 15px;
  border-top: 1px solid var(--color-border);
  display: flex;
  justify-content: space-between;
}

.product-section_heading h3,
.product-section_heading .h3 {
  margin-top: 9px;
}

.product-section_heading a.h5 {
  margin: 19px 0 0 0;
}

/* product: social feed */
.product-social-feed {
}

.product-social-feed_heading {
  padding-top: 24px;
  border-top: 1px solid var(--color-border);
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.product-social-feed_heading a.h5 {
  margin: 10px 0 0 0;
}

.product-social-feed #sb_instagram {
  margin-top: 20px;
}

.product-social-feed #sb_instagram #sbi_images {
  float: none;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: var(--col-gap);
  row-gap: var(--col-gap);
}

.product-social-feed #sb_instagram #sbi_images .sbi_item {
  width: 100% !important;
}

/*.product-social-feed #sb_instagram #sbi_images .sbi_item:nth-child(n + 5) {
  display: none;
}*/

.product-social-feed #sb_instagram #sbi_load .sbi_load_btn {
  appearance: none;
  width: auto;
  height: 40px;
  padding: 13px 19px;
  margin-top: 15px;
  display: inline-block;
  vertical-align: top;
  background: #000 !important;
  border: 1px solid #000 !important;
  border-radius: 0;
  color: #fff;
  font-size: 12px;
  line-height: 12px;
  font-family: var(--font-primary);
  font-weight: 900;
  text-align: center;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  white-space: nowrap;
  outline-color: #000;
}


.product-social-feed #sb_instagram #sbi_load .sbi_load_btn .sbi_loader {
  background-color: #fff !important;
}

.product-social-feed #sb_instagram #sbi_load .sbi_load_btn:hover {
  background: transparent !important;
  color: #000;
  text-decoration: none;
  box-shadow: none;
}

.product-social-feed #sb_instagram #sbi_load .sbi_load_btn:hover .sbi_loader {
  background-color: #000 !important;
}

.product-social-feed .sbi-header {
  display: none;
}

.product-social-feed_grid {
  margin-top: 20px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: var(--col-gap);
  row-gap: var(--col-gap);
}

.product-social-feed_grid li:nth-child(n + 5) {
  display: none;
}

.product-social-feed_grid a {
  display: block;
}

.product-social-feed_grid img {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 1;
  object-fit: cover;
}

@media all and (max-width:767px) {
  .product-social-feed_heading {
    padding: 20px 20px 0 20px;
    margin: 0 -20px;
    display: block;
  }

  .product-social-feed_heading a.h5 {
    margin-top: 5px;
    display: inline-block;
    vertical-align: top;
  }

  .product-social-feed #sb_instagram #sbi_images {
    grid-template-columns: repeat(2, 1fr);
  }

  .product-social-feed_grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* product: reviews */
.product-reviews {

}

.product-reviews_heading {
  padding-top: 15px;
  border-top: 1px solid var(--color-border);
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.product-reviews_heading h3 {
  margin-top: 9px;
  display: flex;
  align-items: flex-end;
}

.product-reviews_heading .product-rating_stars {
  /*margin: 0 0 4px 9px;*/
  margin: 0 0 1px 9px;
  transform: scale(1, 0.77);
}

.product-reviews_util {
  display: flex;
}

.product-reviews_util select {
  appearance: none;
  width: 100%;
  height: 40px;
  margin: 0;
  padding: 11px 41px 11px 14px;
  background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxMiA2Ij48cGF0aCBmaWxsPSIjMDAwIiBkPSJNMTIgMEgwbDYuMjYgNkwxMiAwWiIvPjwvc3ZnPg==') right 16px center no-repeat;
  background-size: 12px 6px;
  border: 1px solid var(--color-black);
  border-radius: 0;
  color: var(--color-black);
  font-size: 14px;
  line-height: 16px;
  font-family: var(--font-primary);
  font-weight: 900;
  letter-spacing: 0.01em;
  text-transform: uppercase;
}

.product-reviews_util select option {
  font-weight: 900;
}

.product-reviews_util button {
  margin-left: 10px;
}

.product-reviews_message {
  padding-top: 20px;
}

.product-reviews_message p {
  margin: 0;
  font-size: 14px;
  line-height: 20px;
  font-weight: 900;
}

.product-reviews_message p.error {
  color: var(--color-red);
}


.product-reviews_form {
  padding-top: 50px;
  display: none;
}

.product-reviews_form .firstname {
  display: none;
}

#vote-stars {
  margin-bottom: 14px;
}

.product-reviews_list {
  margin-top: 50px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: var(--col-gap);
  row-gap: 30px;
}

.product-review {
  display: none;
  font-size: 14px;
  line-height: 20px;
}

.product-review--visible {
  display: block;
}

.product-review h5 {
  margin: 0 0 10px 0;
}

.product-review_author {
  margin: 10px 0 0 0;
  font-size: 14px;
  line-height: 18px;
  font-weight: 900;
}

.product-review_date {
  margin: 0;
  color: var(--color-grey);
  font-size: 14px;
  line-height: 18px;
}

.product-review_response {
  margin: 10px 0 0 0;
  padding: 20px;
  background: #E4E4E4;
}

.product-reviews_show-more {
  margin-top: 30px;
}

@media all and (max-width:767px) {
  .product-reviews_heading {
    padding: 20px 20px 0 20px;
    margin: 0 -20px;
    display: block;
  }

  .product-reviews_heading h3 {
    margin: 0;
    justify-content: space-between;
  }

  .product-reviews_heading .product-rating_stars {
    /*margin: 0 0 5px 0;*/
    margin: 0 0 2px 0;
  }

  .product-reviews_util {
    margin-top: 16px;
    display: grid;
    row-gap: 15px;
  }

  .product-reviews_util select {
    height: 50px;
    padding: 15px 41px 15px 14px;
    font-size: 16px;
    line-height: 18px;
    background-position: right 20px center;
    background-size: 15px auto;
    order: 1;
  }

  .product-reviews_util button {
    margin-left: 0;
    order: 0;
  }

  .product-reviews_form {
    padding-top: 40px;
  }

  .product-reviews_list {
    margin-top: 40px;
    grid-template-columns: 1fr;
    row-gap: 40px;
  }

  .product-review {
    font-size: 16px;
    line-height: 22px;
  }

  .product-review h5 {
    margin-bottom: 5px;
  }

  .product-review .product-rating_stars {
    margin-bottom: 16px;
  }

  .product-review_author {
    margin: 15px 0 0 0;
    font-size: 16px;
    line-height: 20px;
  }

  .product-review_date {
    font-size: 16px;
    line-height: 20px;
  }

  .product-review_response {
    margin-top: 15px;
  }

  .product-reviews_show-more {
    margin-top: 40px;
  }
}

/* mobile product navigation */
.product .bottom-post-navigation {
  position: relative;
  bottom: auto;
  left: auto;
}

/* forms elements */
.form-row {
  display: grid;
  column-gap: var(--col-gap);
}

.form-row--center {
  text-align: center;
}

.form-row--two-column {
  grid-template-columns: 1fr 1fr;
}

.form-row--submit {
  display: block;
}

.form-row--ratings {
  display: flex;
  flex-wrap: wrap;
  column-gap: 0;
}

.form-row--ratings input {
  appearance: none;
  width: 16px;
  height: 15px;
  display: block;
  background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxNiAxNSI+PHBhdGggZmlsbD0iIzAwMCIgc3Ryb2tlPSIjMDAwIiBzdHJva2Utd2lkdGg9Ii45MjMiIGQ9Im04IDIgMS4zNDcgNC4xNDZoNC4zNkwxMC4xOCA4LjcwOGwxLjM0NyA0LjE0Nkw4IDEwLjI5MmwtMy41MjcgMi41NjJMNS44MiA4LjcwOCAyLjI5NCA2LjE0Nmg0LjM1OUw4IDJaIi8+PC9zdmc+') center no-repeat;
  background-size: 16px 15px;
  border: none;
  border-radius: 0;
}

.form-row--ratings input:hover ~ input,
.form-row--ratings input:checked ~ input {
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxNiAxNSI+PHBhdGggc3Ryb2tlPSIjMDAwIiBzdHJva2Utd2lkdGg9Ii45MjMiIGQ9Im04IDIgMS4zNDcgNC4xNDZoNC4zNkwxMC4xOCA4LjcwOGwxLjM0NyA0LjE0Nkw4IDEwLjI5MmwtMy41MjcgMi41NjJMNS44MiA4LjcwOCAyLjI5NCA2LjE0Nmg0LjM1OUw4IDJaIi8+PC9zdmc+');
}

.form-row--util {
  margin-bottom: 35px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.form-row--submit + .form-row--util {
  margin-top: 10px;
  margin-bottom: 0;
}

.form-row--util label.checkbox {
  width: auto;
  margin: 0 auto 0 0;
  display: flex;
  align-items: center;
  color: var(--color-grey);
  font-size: 12px;
  line-height: 16px;
}

.form-row--util label.checkbox input {
  float: none;
  width: 14px;
  height: 14px;
  margin: 0;
  border-color: var(--color-grey);
}

.form-row--util label.checkbox > span {
  margin: 0 0 0 5px;
}

.form-row--util button {
  appearance: none;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  color: var(--color-grey);
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
  text-decoration: underline;
  text-align: left;
  white-space: nowrap;
}

@media all and (max-width:767px) {
  .form-row--util {
    margin-top: 5px;
    flex-direction: column;
    align-items: flex-start;
  }

  .form-row--util label.checkbox {
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 16px;
  }

  .form-row--util label.checkbox:last-child {
    margin-bottom: 0;
  }

  .form-row--util label.checkbox input {
    width: 20px;
    height: 20px;
  }

  .form-row--util label.checkbox > span {
    margin: 0 0 0 8px;
  }

  .form-row--util button {
    font-size: 14px;
    line-height: 16px;
  }
}

/* zoom overlay */
.zoom-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background: #fff;
  opacity: 0;
  z-index: 99999;
  pointer-events: none;
}

.zoom-overlay--no-swiper .swiper-button-prev,
.zoom-overlay--no-swiper .swiper-button-next {
  display: none;
}

.zoom-overlay.loaded {
  display: none;
  pointer-events: auto;
}

.zoom-overlay .close {
  appearance: none;
  position: absolute;
  top: 33px;
  right: 33px;
  height: 42px;
  width: 42px;
  padding: 0;
  background: url(../images/sprite@2x.png) -264px -198px no-repeat;
  background-size: 374px 329px;
  border: none;
  border-radius: 0;
  z-index: 2;
}

.zoom-overlay .close:hover {
  background-position: -306px -198px;
}

.zoom-overlay_swiper {
  width: 100%;
  height: 100%;
}

.zoom-overlay_swiper .swiper-slide:focus {
  outline-offset: -2px;
}

.zoom-overlay_swiper img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}

.zoom-overlay_swiper .swiper-button-prev,
.zoom-overlay_swiper .swiper-button-next {
  position: absolute;
  top: 50%;
  width: 32px;
  height: 68px;
  margin-top: -34px;
  background: url(../images/sprite@2x.png) no-repeat;
  background-size: 374px 329px;
}

.zoom-overlay_swiper .swiper-button-prev::after,
.zoom-overlay_swiper .swiper-button-next::after {
  display: none;
}

.zoom-overlay_swiper .swiper-button-prev {
  left: 30px;
  background-position: -102px -128px;
}

.zoom-overlay_swiper .swiper-button-next {
  right: 30px;
  background-position: -166px -128px;
}

/* size guide overlay */
.size-guide-overlay {
  position: fixed;
  top: 40px;
  left: 50%;
  width: calc((950px + var(--col-gap)) / 16 * 14 - var(--col-gap));
  max-width: calc(100% - 40px);
  padding: 56px;
  display: none;
  background: var(--color-white);
  border: 4px solid var(--color-black);
  transform: translateX(-50%);
  z-index: 99999;
}

.size-guide-overlay .close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 14px;
  height: 14px;
  display: block;
  border: 0;
  cursor: pointer;
  background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxNCAxNCI+PHBhdGggZmlsbD0iIzAwMCIgZD0ibTIgMTQtMi0yTDEyIDBsMiAyeiIvPjxwYXRoIGZpbGw9IiMwMDAiIGQ9Im0wIDIgMi0yIDEyIDEyLTIgMnoiLz48L3N2Zz4=') center no-repeat;
  background-size: 14px 14px;
}

.size-guide-overlay .close:hover {
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxNCAxNCI+PHBhdGggZmlsbD0iI0VCMTUyMCIgZD0ibTIgMTQtMi0yTDEyIDBsMiAyeiIvPjxwYXRoIGZpbGw9IiNFQjE1MjAiIGQ9Im0wIDIgMi0yIDEyIDEyLTIgMnoiLz48L3N2Zz4=');
}

.size-guide-overlay_content {
  margin-bottom: 40px;
  text-align: center;
}

.size-guide {
  position: relative;
  height: 346px;
}

.size-guide::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 14px;
  display: block;
  border-bottom: 1px solid var(--color-border);
}

.size-guide_table {
  position: relative;
  width: 100%;
}

.size-guide_table th {
  position: sticky;
  top: 0;
  padding: 0;
  font-size: 14px;
  line-height: 16px;
  font-family: var(--font-primary);
  font-weight: 900;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  text-align: left;
}

.size-guide_table th span {
  padding: 0 0 18px 0;
  display: block;
  background: var(--color-white);
  border-bottom: 2px solid var(--color-black);
}

.size-guide_table th:first-child span {
  padding-left: 40px;
}

.size-guide_table th:last-child span {
  padding-right: 40px;
}

.size-guide_table td {
  padding: 10px 0;
  border-bottom: 1px solid var(--color-border);
  font-size: 14px;
  line-height: 14px;
  font-weight: 600;
  text-align: left;
}

.size-guide_table td:first-child {
  padding-left: 40px;
}

.size-guide_table td:last-child {
  padding-right: 40px;
}

.size-guide_table tr:last-child td {
  border: none;
}

.size-guide .overflow-scroll {
  width: 100%;
  height: 100%;
  padding-right: 10px;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

.size-guide .overflow-scroll::-webkit-scrollbar-track {
  background-color: var(--color-border);
}

.size-guide .overflow-scroll::-webkit-scrollbar {
  width: 4px;
  background-color: var(--color-border);
}

.size-guide .overflow-scroll::-webkit-scrollbar-thumb {
  background-color: var(--color-black);
}

.size-guide_note {
  margin: 10px 0 0 0;
  font-size: 12px;
  line-height: 14px;
}

@media all and (max-width:767px) {
  .size-guide-overlay {
    width: calc(100% - 40px);
    padding: 36px 16px;
  }

  .size-guide-overlay_content {
    margin-bottom: 30px;
  }

  .size-guide {
    height: 279px;
  }

  .size-guide::after {
    right: 0;
  }

  .size-guide_table th:first-child span {
    padding-left: 0;
  }

  .size-guide_table th:last-child span {
    padding-right: 0;
  }

  .size-guide_table td:first-child {
    padding-left: 0;
  }

  .size-guide_table td:last-child {
    padding-right: 0;
  }

  .size-guide .overflow-scroll {
    padding-right: 0;
  }

  .size-guide .overflow-scroll::-webkit-scrollbar {
    display: none;
  }
}

/* stock notification overlay */
.notify-overlay {
  position: absolute;
  top: 40px;
  left: 50%;
  width: 440px;
  max-width: calc(100% - 40px);
  padding: 56px 46px;
  display: none;
  background: var(--color-white);
  border: 4px solid var(--color-black);
  transform: translatex(-50%);
  z-index: 99999;
}

.notify-overlay .close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 14px;
  height: 14px;
  display: block;
  border: 0;
  cursor: pointer;
  background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxNCAxNCI+PHBhdGggZmlsbD0iIzAwMCIgZD0ibTIgMTQtMi0yTDEyIDBsMiAyeiIvPjxwYXRoIGZpbGw9IiMwMDAiIGQ9Im0wIDIgMi0yIDEyIDEyLTIgMnoiLz48L3N2Zz4=') center no-repeat;
  background-size: 14px 14px;
}

.notify-overlay .close:hover {
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxNCAxNCI+PHBhdGggZmlsbD0iI0VCMTUyMCIgZD0ibTIgMTQtMi0yTDEyIDBsMiAyeiIvPjxwYXRoIGZpbGw9IiNFQjE1MjAiIGQ9Im0wIDIgMi0yIDEyIDEyLTIgMnoiLz48L3N2Zz4=');
}

.notify-overlay_content h2 {
  margin-bottom: 20px;
  text-align: center;
}

.notify-overlay p.note {
  margin-bottom: 34px;
  font-size: 12px;
  line-height: 16px;
}

.notify-overlay .message p {
  margin: 14px 0;
}

.notify-overlay .form-row {
  margin-bottom: 10px;
}

.notify-overlay .form-row--submit {
  margin-top: 25px;
  margin-bottom: 0;
}

.notify-overlay input[type="text"],
.notify-overlay input[type="email"],
.notify-overlay input[type="tel"],
.notify-overlay select {
  appearance: none;
  width: 100%;
  height: 40px;
  margin: 0;
  padding: 11px 14px;
  border: 1px solid var(--color-black);
  border-radius: 0;
  color: var(--color-black);
  font-size: 14px;
  line-height: 16px;
  font-family: var(--font-primary);
  font-weight: 900;
  letter-spacing: 0.01em;
}

.notify-overlay select {
  padding-right: 41px;
  background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAxMiA2Ij48cGF0aCBmaWxsPSIjMDAwIiBkPSJNMTIgMEgwbDYuMjYgNkwxMiAwWiIvPjwvc3ZnPg==') right 16px center no-repeat;
  background-size: 12px 6px;
  text-transform: uppercase;
}

.notify-overlay select option {
  font-weight: 900;
}

.notify-overlay .checkbox {
  margin: 0;
}

.notify-overlay button[type="submit"].loading {
  position: relative;
  pointer-events: none;
}

.notify-overlay button[type="submit"].loading::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background: var(--color-white) url('../images/loader.gif') center center no-repeat;
}

.notify-overlay ul.ketchup-errors {
  margin: 5px 0 10px 0!important
}

@media all and (max-width:767px) {
  .notify-overlay {
    width: calc(100% - 40px);
    padding: 36px 16px;
  }
  .notify-overlay input,
  .notify-overlay select {
    height: 50px;
    padding: 15px 14px;
    font-size: 16px;
    line-height: 18px;
  }

  .notify-overlay select {
    padding-right: 41px;
    background-position: right 20px center;
    background-size: 15px auto;
  }
}

/* page widening */
.page-template-single-product .related-products .shop-item:nth-child(n + 5) {
  display: none;
}

@media only screen and (min-width: 1320px) {
  .page-template-single-product .inner {
    max-width: 1260px;
  }
  
  .page-template-single-product #wrap header #nav ul li {
    margin-right: 80px;
  }

  .page-template-single-product #wrap header #nav ul li.our-story{
    margin-right: 180px;
  }

  .page-template-single-product #wrap header #nav ul li.vogknob {
    margin-right: 0;
  }
  
  .page-template-single-product #wrap footer .footer-left,
  .page-template-single-product #wrap footer .footer-left .email-wrap {
    width: 360px;
  }
  
  .page-template-single-product #wrap footer .footer-left .zip-wrap {
    width: 314px;
  } 

  .page-template-single-product .product-details {
    grid-area: 1 / 12 / 3 / 17;
  }
  
  .page-template-single-product .product-gallery { 
    grid-area: 1 / 1 / 2 / 12;
  }
  
  .page-template-single-product .product-description {
    grid-area: 2 / 1 / 3 / 12;
  }
  
  .page-template-single-product .related-products .shop-items {
    grid-template-columns: repeat(6, 1fr);
  }

  .page-template-single-product .related-products .shop-item:nth-child(n + 5) {
    display: block;
  }
}
