.product-entry {
  display: flex;
  align-items: stretch;
  flex-direction: column;
  width: 100%;
  position: relative;
  gap: 3.6rem;
}
.product-entry .entry__gallery {
  position: relative;
  width: 100%;
  display: grid;
  gap: 0.2rem;
}
.product-entry .swiper {
  width: 100%;
  position: relative;
}
.product-entry .swiper.swiper--main {
}
.product-entry .swiper.swiper--main:before {
  content: '';
  z-index: 20;
  pointer-events: none;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(
    0deg,
    rgb(var(--color-surface-rgb) / 1) 0%,
    rgb(var(--color-surface-rgb) / 0) 100%
  );
  height: 35%;
}
.product-entry .swiper-slide {
  width: 100%;
}
.product-entry .swiper--thumbs {
  position: absolute;
  left: 0;
  bottom: 2rem;
  right: 0;
  padding: 0 0.6rem;
}
.product-entry .swiper--thumbs .swiper-wrapper {
  justify-content: center;
}
.product-entry .swiper--thumbs .swiper-slide {
  cursor: pointer;
  border-radius: 50%;
  overflow: hidden;
  width: 6rem;
}
.product-entry .swiper--thumbs .swiper-slide:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgb(var(--color-surface-dark-rgb) / 0.5);
  z-index: 5;
  transition: var(--duration-normal);
  opacity: 0;
}
.product-entry .swiper--thumbs .swiper-slide:after {
  content: '';
  position: absolute;
  z-index: 10;
  left: 50%;
  top: 50%;
  margin-top: -1rem;
  margin-left: -1rem;
  width: 1.6rem;
  height: 1.6rem;
  border: 0.2rem solid rgb(var(--color-text-light-rgb) / 0.6);
  border-radius: 50%;
  transition: var(--duration-normal);
  opacity: 0;
  transform: scale(0.5);
}
.product-entry .swiper--thumbs .swiper-slide.swiper-slide-thumb-active:before {
  opacity: 1;
}
.product-entry .swiper--thumbs .swiper-slide.swiper-slide-thumb-active:after {
  opacity: 1;
  transform: scale(1);
}

.product-entry .swiper-pagination--main {
  position: absolute;
  z-index: 10;
  left: 0;
  width: 100%;
  bottom: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
}
.product-entry .swiper-pagination--main .swiper-pagination-bullet {
  display: flex;
  flex-shrink: 0;
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 20rem;
  background-color: var(--color-text-light);
  transition: var(--duration-normal);
  opacity: 0.5;
}
.product-entry
  .swiper-pagination--main
  .swiper-pagination-bullet.swiper-pagination-bullet-active {
  opacity: 1;
}

.product-entry .gallery__media-wrap {
  position: relative;
  aspect-ratio: 2/3;
  display: block;
  overflow: hidden;
  width: 100%;
}
.product-entry .swiper--thumbs .swiper-slide .gallery__media-wrap {
  aspect-ratio: 1/1;
}
.product-entry .gallery__media {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.product-entry .entry__content {
  display: flex;
  flex-direction: column;
  position: relative;
}
.product-entry .breadcrumbs {
  margin-bottom: 2rem;
  padding: 0 2.8rem;
}

.product-entry .product-badges {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  padding: 0 2.8rem;
  margin-bottom: 1rem;
}
.product-entry .product-badge {
  border-radius: 20rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background-color: var(--color-primary);
  color: var(--color-on-primary);
  padding: 0.6rem 1.4rem;
  font-size: var(--font-size-xs);
}

.product-entry .entry__title {
  font-size: var(--font-size-h3);
  line-height: var(--line-height-dense);
  display: block;
  font-weight: var(--font-weight-regular);
  padding: 0 2.8rem;
}

.product-entry .product__sample-file {
  width: 100%;
  padding: 0 2.8rem;
  margin-top: 3.6rem;
}
.product-entry .product__sample-file .product__sample-file-link {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 1.6rem;
  padding: 2rem;
  border-radius: 1.8rem;
  background-color: var(--color-surface-muted);
}
.product-entry .product__sample-file .product__sample-file-link .button__icon {
  display: flex;
  flex-shrink: 0;
}
.product-entry
  .product__sample-file
  .product__sample-file-link
  .button__icon
  .icon {
  width: 1.8rem;
  height: 1.8rem;
}
.product-entry .product__sample-file .product__sample-file-link .button__text {
  display: block;
}
.product-entry .product__sample-file .product__sample-file-link .button__label {
  display: block;
  font-size: var(--font-size-sm);
  line-height: var(--line-height-snug);
}

.product-entry .entry__attrubutes {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-top: 4.8rem;
  padding: 0 2.8rem;
}
.product-entry .entry__attrubute {
  border-top: 0.1rem solid rgb(var(--color-text-rgb) / 0.12);
  padding-top: 1.2rem;
  margin-top: 1.2rem;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.product-entry .entry__attrubute:first-child {
  border-top: none;
  padding-top: 0;
  margin-top: 0;
}
.product-entry .entry__attrubute .entry__attrubute-label {
  display: block;
  line-height: var(--line-height-none);
  opacity: var(--opacity-70);
  font-size: var(--font-size-sm);
}
.product-entry .entry__attrubute .entry__attrubute-value {
  display: block;
  line-height: var(--line-height-none);
  opacity: var(--opacity-70);
  font-size: var(--font-size-sm);
}

/*  */

.product-entry .product__purchase-block {
  padding: 0 0.6rem;
  width: 100%;
  margin-top: 3.6rem;
}
.product-entry .product-purchase {
  width: 100%;
  padding: 2.8rem 0.2rem 0.2rem;
  background-color: rgb(var(--color-primary-rgb) / 0.2);
  border: 0.1rem solid rgb(var(--color-primary-rgb) / 0.2);
  border-radius: 3rem;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 2.4rem;
}

.product-entry .entry__price {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 2.2rem;
}

.product-entry .entry__price .price {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  font-size: var(--font-size-sm);
}
.product-entry .entry__price .price .amount {
  display: block;
  font-size: var(--font-size-xl);
  line-height: var(--line-height-normal);
}
.product-entry .entry__price .price del {
  order: 10;
  text-decoration: line-through;
  opacity: var(--opacity-70);
}

/*  */

.product-purchase .cart {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 2.8rem;
}
.product-purchase .variations {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding: 0 2.2rem;
}
.product-purchase .variation {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.product-purchase .variation .variation__label {
  display: block;
}
.product-purchase .variation .variation__label label {
  font-size: var(--font-size-h6);
  font-weight: var(--font-weight-base);
  display: block;
}
.product-purchase .variation .variation__value {
  width: 100%;
  display: flex;
  flex-direction: column;
}
.product-purchase .variation .variation__value select {
  position: absolute;
  opacity: 0;
  width: 0.1rem;
  height: 0.1rem;
  z-index: -1;
}
.product-purchase .variation .variation__value .variation__options {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  align-items: stretch;
  flex-wrap: wrap;
  gap: 0.6rem;
  width: 100%;
}
.product-purchase .variation .variation__value .variation-option {
  display: inline-flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  background-color: var(--color-surface);
  min-width: 4.8rem;
  min-height: 4rem;
  padding: 0.8rem;
  color: inherit;
  font: inherit;
  line-height: var(--line-height-none);
  border-radius: 1.2rem;
  cursor: pointer;
  transition: var(--duration-normal);
}
.product-purchase .variation .variation__value .variation-option.is-selected {
  color: var(--color-on-primary);
  background-color: var(--color-primary);
  pointer-events: none;
}
.product-purchase .variation .variation__value .variation-option:disabled,
.product-purchase .variation .variation__value .variation-option.is-disabled {
  position: relative;
  opacity: 0.5;
  cursor: not-allowed;
}
.product-purchase
  .variation
  .variation__value
  .variation-option:disabled:after {
  position: absolute;
  width: calc(80%);
  height: 0.1rem;
  content: '';
  background-color: currentColor;
  transform: rotate(-20deg);
}
.product-purchase .variation .variation__value .reset_variations {
  display: none !important;
}
/*  */
.product-purchase .variations_form .single_variation_wrap {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 2rem;
}
.product-purchase .variations_form .single_variation_wrap .single_variation {
  width: 100%;
  display: flex;
  flex-direction: column;
  padding: 0 2.2rem;
}
.product-purchase
  .variations_form
  .single_variation_wrap
  .single_variation
  .woocommerce-variation-description {
}
.product-purchase
  .variations_form
  .single_variation_wrap
  .single_variation
  .woocommerce-variation-price {
  font-size: var(--font-size-h5);
}
.product-purchase
  .variations_form
  .single_variation_wrap
  .single_variation
  .woocommerce-variation-availability {
}
.product-purchase
  .cart
  .single_variation_wrap
  .woocommerce-variation-add-to-cart {
  width: 100%;
}
/*  */
.product-purchase .cart {
  width: 100%;
}
.product-purchase .cart .quantity {
  display: none !important;
}
.product-purchase .cart .single_add_to_cart_button {
  display: flex;
  justify-content: space-between;
  width: 100%;
  background-color: var(--color-primary);
  height: 6rem;
  border-radius: 20rem;
  align-items: center;
  padding: 0 2.8rem;
  font-size: var(--font-size-sm);
  color: var(--color-on-primary);
}
.product-purchase .cart .single_add_to_cart_button .button__icon {
  display: flex;
  flex-shrink: 0;
}
.product-purchase .cart .single_add_to_cart_button .button__icon .icon {
  width: 2rem;
  height: 2rem;
}
.product-purchase .cart .single_add_to_cart_button .xoo-cp-added,
.product-purchase .cart .single_add_to_cart_button .xoo-cp-adding {
  display: none !important;
}
.product-purchase .cart .added_to_cart {
  display: none !important;
}

/*  */

.product-entry .entry__description {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: stretch;
  gap: 2.4rem;
  margin-top: 4.8rem;
}
.product-entry .entry__description .description__title {
  font-size: var(--font-size-h4);
  font-weight: var(--font-weight-semi-bold);
  font-family: var(--font-family-heading);
  opacity: var(--opacity-30);
  line-height: var(--line-height-snug);
  padding: 0 2.8rem;
}
.product-entry .entry__description .description__content {
  font-size: var(--font-size-sm);
}

/*  */

.section-collaboration {
  margin-top: 7.2rem;
}

/*  */

.section-posts-product {
  margin-top: 4.8rem;
}
