/* ???????? */


:root {
  --detail-tab-size: 20px;
  --detail-tab-height: 28px;
  --detail-tab-bottom: 12px;
  --detail-tab-right: 40px;
  --max-width: 1400px;
}

.product-details {
  padding: 0 var(--side-padding);
  padding-top: 64px;
}

.product-main .main-left {
  position: static;
  z-index: 0;
}

.product-main {
  position: static;
  z-index: 10;
  margin-bottom: 92px;
  --detail-section-space: var(--section-space);
  --detail-info-space: 25px;
  --detail-product-name-size: 40px;
  --detail-product-subtitle-size: 16px;
  --product-star-size: 14px;
  --detail-product-star-right: 4px;
  --detail-product-reviews-left: calc(10px - var(--detail-product-star-right));
  --detail-product-price-size: 24px;
  --detail-product-attr-label-size: 16px;
  --detail-product-attr-label-height: 24px;
  --detail-product-attr-label-bottom: 6px;
  --detail-product-attr-bottom: 14px;
  --detail-product-attr-select-height: 56px;
  --detail-product-attr-button-height: var(--btn-height);
  --detail-product-attr-v-space: 10px;
  --detail-product-attr-h-space: 10px;
  --detail-product-attr-min-width: 160px;
  --detail-product-qty-height: 48px;
  --detail-product-qty-bottom: 0;
  --detail-product-add-height: 78px;
  --detail-product-add-size: 24px;
  --detail-product-add-right: 0;
  --detail-paypal-bottom: 20px;
  --detail-share-box-bottom: 20px;

}

.product-main .size-guide {
  align-items: center;
}

.product-main .product-name {
  font-family: Utopia;
  -webkit-line-clamp: 5;
}

.product-main .product-description {
  color: #000;
  line-height: 1.8;
}

.product-attribute .select-wrapper select {
  padding-left: 20px;
  padding-right: 31px;
  cursor: pointer;
}

.product-attribute .select-wrapper:hover {
  box-shadow: 0 0 0 1px rgba(18, 18, 18, .55);
}

.product-attribute select:focus {
  box-shadow: 0 0 0 2px rgba(18, 18, 18, 1);
}

.product-attribute .select-wrapper i {
  top: 23px;
  font-size: 10px;
}

.quantity-and-price {
  display: flex;
  align-items: center;
  /* margin-bottom: var(--detail-info-space); */
  margin-bottom: 14px;
}

.quantity-wrapper {
  border: 0;
  --detail-product-qty-max-width: 100%;
}

.quantity-wrapper .quantity-button,
.quantity-wrapper .quantity {
  border: 1px solid;
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  text-align: center;
  line-height: 48px;
  padding: 0;
}

.quantity-wrapper .quantity {
  margin: 0 2px;
}

*:focus-visible {
  outline: 2px solid rgba(18, 18, 18, .5);
  outline-offset: 3px;
  box-shadow: 0 0 0 3px rgb(255, 255, 255), 0 0 5px 4px rgba(18, 18, 18, .3);
}

.quantity-wrapper .quantity-button[disabled] {
  opacity: 1;
}

.product-price .price {
  margin:0 20px;
  font-family: Inter-Black;
  --detail-product-price-color: var(--theme-font-color);
}

.product-main .product-price {
  --detail-info-space: 0;
  flex-wrap: wrap;
  justify-content: center;
}
.product-main .add-to-cart,
.product-main .buy-now{
  font-weight: 700;
  text-transform: uppercase;
}
.product-main .add-to-cart {
  --detail-product-add-margin: 0;
  --detail-product-add-color: #fff;
  --detail-product-add-bg: rgb(18, 18, 18);
  --detail-product-add-border: 1px solid rgb(18, 18, 18);
}
.product-main .buy-now{
  --detail-product-buy-bg-color:rgb(18, 18, 18);
}
.product-main .add-to-cart:hover,
.product-main .buy-now:hover {
  --highlight-bg-color:rgb(18, 18, 18);
  --main-color: rgb(18, 18, 18);
  box-shadow: 0 0 0 1.3px rgba(18, 18, 18, 1);
}
@media screen and (min-width: 768px){
  .product-main .buy-now{
    --detail-product-buy-width: 100%;
  }
  .product-main .add-to-cart{
    --detail-product-add-weight: 100%;
  }
}
.pd-image-small {
  display: block;
  width: 100%;
  margin: auto;
  text-align: center;
  font-family: Assistant;
  color: rgba(18, 18, 18, .75);
}

#productThumbs {
  --detail-product-thumbs-width: 130px;
  overflow-y: scroll;
}

.productImages-wrapper {
  --product-images-wrapper-width: calc(100% - 130px);
  height: 100%;
}

#productImages {
  height: 100%;
  border: 1px solid rgb(18, 18, 18, .05);
  border-radius: 4px;
}

.product-thumbs .swiper-slide {
  border-radius: 4px;
  overflow: hidden;
}

.product-thumbsimg-wrapper:hover {
  opacity: .7;
}

.product-thumbs .swiper-slide-thumb-active {
  box-shadow: 0 0 0 1px rgb(18, 18, 18);
  --detail-thumbs-slide-active-bordercolor: rgb(18, 18, 18);
  --thumb-active-img-margin: 0;
  --thumb-active-img-height: 100%;
  --thumb-active-img-width: 100%;
}

.products-box .product-image .first-image {
  transition: transform .5s ease;
}

.products-box .product-image:hover .first-image {
  opacity: 1;
}

.products-box .product-image:hover .hover-image {
  opacity: 0;
}

.show-enlarger-view {
  top: 12px;
  right: 12px;
  width: 30px;
  height: 30px;
  line-height: 30px;
  opacity: 0;
  box-shadow: none;
  border: 1px solid rgba(18, 18, 18, .1);
  transition: color .1s ease, opacity .1s ease;
}

.product-images:hover .show-enlarger-view {
  opacity: 1;
}

#productImages-next,
#productImages-prev {
  display: none;
}

.size-table-dialog-wrapper {
  /* display: block !important; */
  background-color: rgba(26, 26, 26, 0.882);
}

.size-table-dialog {
  left: unset;
  right: 0;
  bottom: 0;
  top: 0;
  width: 550px;
  min-width: unset;
  transform: none;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  max-height: 100%;
}

.size-table-dialog .icon-close {
  top: 20px;
  width: 36px;
  height: 36px;
  line-height: 36px;
  box-shadow: 0 0 3px 0 rgba(60, 60, 60, .4);
  border-radius: 50%;
  text-align: center;
  font-size: 11px;
  color: #000;
  font-weight: 600;
}

.size-table__body {
  max-height: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 3.5%;
  color: #3a4742;
  overflow-y: auto;
  font-family: Assistant;
}

.size-table__header {
  padding: 0;
}

.productImages-wrapper.product-images-one .swiper-slide {
  width: 100% !important;
}

.productImages-wrapper.product-images-one {
  width: 100%;
}

.product-main .of-stock,
.product-main .sold-out {
  --detail-sold-out-bgcolor: var(--main-color-third);
  text-transform: uppercase;
  font-weight: 700;
  padding: 25px 10px;
  font-size: 24px;
}

@media screen and (max-width: 1200px) {
  .pd-image-small {
    max-width: 90%;
    margin-top: 10px;
  }

  :root {
    --detail-tab-size: 16px;
    --detail-tab-height: 20px;
    --detail-tab-bottom: 10px;
    --detail-tab-right: 20px;
  }

  .product-main {
    margin-bottom: 0;
    --detail-product-name-size: 30px;
    --detail-product-subtitle-size: 16px;
    --product-star-size: 12px;
    --detail-product-star-right: 3px;
    --detail-product-reviews-left: calc(10px - var(--detail-product-star-right));
    --detail-product-del-price-size: 12px;
    --detail-product-attr-label-size: 16px;
    --detail-product-attr-label-height: 20px;
    --detail-product-attr-label-bottom: 10px;
    --detail-product-attr-bottom: 15px;
    --detail-product-attr-v-space: 10px;
    --detail-product-attr-h-space: 10px;
    --detail-product-attr-min-width: calc(50% - var(--detail-product-attr-v-space));
    --detail-product-add-size: 18px;
  }

  .product-attribute .select-wrapper select {
    font-size: 16px;
  }
}

.product-main .main-right {
  position: sticky;
  top: 0;
  --detail-product-main-right-right: 0;
}

.product-main .main-left {
  align-items: flex-start;
  gap: 14px;
  width: calc(48% - 20px);
  max-width: 48%;
}

#productThumbs {
  max-height: 682px;
}

.product-images-wrapper {
  --next-btn-right: 20px;
  --prev-btn-left: 20px;
}

.product-main .product-button {
  display: flex;
  justify-content: space-between;
  gap: var(--detail-product-add-right);
}

.product-main .buy-now:hover {
  background-color: var(--highlight-bg-color);
}

#paypal-button-container {
  margin-bottom: var(--detail-paypal-bottom);
}

.share-box a:hover {
  color: var(--highlight-bg-color);
}

/*  tab & description */

@media screen and (max-width: 1000px) {
  .product-main .main-left {
    flex-direction: column-reverse;
    justify-content: flex-end;
  }

  #productThumbs {
    max-height: initial;
  }

  .main-left .product-thumbs-wrapper {
    --detail-product-thumbs-width: 100%;
    width: 100%;
    height: 60px;
  }

  .product-thumbs .swiper-slide {
    padding-bottom: initial;
    width: 60px;
  }
}

@media screen and (max-width: 767px) {
  .quantity-and-price .add-to-cart{
    display: none !important;
  }
  .product-button .add-to-cart{
    margin-right: 10px;
  }
  footer {
    padding-bottom: 0;
  }

  .size-table-dialog .icon-close {
    top: 2px;
    right: 2px;
    width: 31.5px;
    height: 31.5px;
    line-height: 31.5px;
  }

  .size-table-dialog {
    width: 100%;
    font-size: 17px;
  }

  .productImages-wrapper {
    --product-images-wrapper-width: 100%;
  }

  .show-enlarger-view {
    opacity: 1;
  }

  .productImages-wrapper .swiper-slide {
    padding-bottom: 83.33%;
    border: 1px solid rgba(18, 18, 18, .05);
  }

  .product-images-wrapper .swiper-pagination {
    display: flex;
    bottom: 10px;
    right: 80px;
    transform: none;
    left: unset;
  }

  #productImages {
    border: 0;
  }

  .size-guide {
    display: none;
  }

  .product-details {
    padding-top: 18px;
  }

  .productImages-wrapper {
    margin-top: 15px;
  }

  .size-table-btn {
    display: none;
  }

  .product-main .size-guide {
    padding: 9px 13.5px;
  }

  .product-main .main-right {
    position: static;
    padding-left: 0;
  }

  .product-main .product-description {
    font-size: 15px;
  }

  .product-main {
    flex-direction: column;
  }

  .variant-buttons .variant-select {
    white-space: nowrap;
  }

  .product-main .main-right .product-button {
    gap: initial;
  }

}

/* ??????????? Start */
.tab {
  border-bottom: 1px solid var(--theme-border-color);
}

.tab .tab-list {
  display: flex;
  color: #a6a6a6;
}

.tab-list .tab-item {
  color: var(--theme-font-color);
  font-size: 18px;
  cursor: pointer;
}

.tab-item .tab-box {
  display: flex;
  font-weight: 400;
  font-size: var(--detail-tab-size);
}

.tab-item.current .tab-box {
  font-weight: var(--detail-tab-active-weight, 700);
  color: var(--detail-tab-active-color, inherit);
}

.tab-item[data-tab=reviews] {
  display: block;
}

@media screen and (min-width: 768px) {
  .tab-list .tab-item {
    padding-right: 45px;
  }

  .tab-list .tab-item.current .tab-box {
    border-bottom: 2px solid var(--highlight-font-color);
  }
}

/* ??Start */
.review-left {
  margin-right: 35px;
  width: 30%;
}

.review-right {
  width: 70%;
}

.review-left-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.prodetail-review-photos {
  --detail-Photos-Videos-border-bottom: 1px solid var(--theme-border-color);
}

/* ??End */

@media screen and (max-width: 767px) {
  /* ?? Start */

  /* ?? End */
  /* ?? Start */
  .properties-list li {
    font-size: 16px;
  }

  .properties-list li p:first-child {
    margin-right: 0;
    max-width: 120px;
  }

  .properties-list li p {
    padding: 16px 12px;
  }

  /* ?? End */
}

@media screen and (max-width: 1180px) {

  /* ?? Start */
  .review-left {
    margin: 0;
    width: 100%;
    max-width: 450px;
  }

  .review-right {
    width: 100%;
  }

  .prodetail-review-top .review-header {
    margin-bottom: 15px;
  }

  .review-header {
    flex-direction: column;
    align-items: flex-start;
    padding-bottom: 10px;
    margin: 0;
  }

  .review-header .header-left {
    padding-bottom: 10px;
    width: 100%;
    font-size: 14px;
  }

  .review-header .header-right {
    width: 100%;
  }

  /* ?? End */
}

/* ??? ?? Start */
.size-table-btn {
  margin-left: 10px;
  font-size: 16px;
  line-height: 24px;
  cursor: pointer;
  padding: 0;
  color: var(--theme-font-color);
  /* font-family:Assistant ; */
}