/*.flat-single-product {
  padding: 0px 0px 40px; }*/

.stagger-wrap .stagger-item {
  transition: 0.3s ease-in-out;
  transform: scale(0.5) rotate(90deg) skew(15deg);
  opacity: 0; }
  .stagger-wrap .stagger-item.stagger-finished {
    transform: scale(1) rotate(0deg) skew(0deg);
    opacity: 1; }

.slider-scroll,
.product-thumbs-slider {
  display: flex;
  gap: 10px; }

.thumbs-bottom {
  flex-direction: column; }
  .thumbs-bottom .tf-product-media-thumbs {
    order: 1;
    width: 100%; }
  .thumbs-bottom .flat-wrap-media-product {
    width: 100%; }
    .thumbs-bottom .flat-wrap-media-product .tf-product-media-main .item {
      max-height: none; }

.tf-product-media-thumbs {
  width: 122px;
  flex-shrink: 0;
  max-height: 758px; }
  .tf-product-media-thumbs .swiper-slide {
    height: max-content;
    width: auto; }
    .tf-product-media-thumbs .swiper-slide .item {
      position: relative;
      height: 100%; }
      .tf-product-media-thumbs .swiper-slide .item img {
        border-radius: 8px;
        width: 100%;
        height: 100%;
        object-fit: cover; }
      .tf-product-media-thumbs .swiper-slide .item::after {
        position: absolute;
        content: "";
        top: 0;
        right: 0;
        left: 0;
        bottom: 0;
        border: 1px solid transparent;
        border-radius: 8px; }
    .tf-product-media-thumbs .swiper-slide:not(.swiper-slide-thumb-active) .item {
      opacity: 0.6; }
    .tf-product-media-thumbs .swiper-slide.swiper-slide-thumb-active .item::after {
      border-color: rgba(0, 0, 0, 0.4); }

.wrap-btn-viewer {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-color: var(--white);
  z-index: 5; }
  .wrap-btn-viewer .icon {
    font-size: 20px; }

.tf-model-viewer-ui-button .wrap-btn-viewer {
  width: 44px;
  height: 44px; }

.flat-wrap-media-product {
  width: calc(100% - 132px);
  position: relative; }
  .flat-wrap-media-product .tf-product-media-main {
    border-radius: 12px;
    height: 100%; }
    .flat-wrap-media-product .tf-product-media-main .item {
      display: flex;
      width: 100%;
      height: 100%;
      overflow: hidden;
      max-height: 758px; }
      .flat-wrap-media-product .tf-product-media-main .item img {
        width: 100%;
        height: 100%;
        object-fit: cover; }
    .flat-wrap-media-product .tf-product-media-main .slide-3d,
.flat-wrap-media-product .tf-product-media-main .slide-video {
      height: auto; }

.tf-product-info-wrap {
  display: grid;
  gap: 32px; }
  .tf-product-info-wrap .tf-product-info-list {
    display: grid;
    gap: 24px; }
  .tf-product-info-wrap .tf-product-heading {
    border-bottom: 1px solid var(--line);
    padding-bottom: 24px;
    display: grid;
    gap: 12px; }
  .tf-product-info-wrap .brand-product {
    font-weight: 500;
    color: var(--text);
    font-size: 14px;
    line-height: 20px; }
  .tf-product-info-wrap .product-rate {
    display: flex;
    align-items: center; }
    .tf-product-info-wrap .product-rate .list-star {
      margin-right: 6px;
      display: flex;
      align-items: center; }
    .tf-product-info-wrap .product-rate .icon {
      font-size: 16px;
      color: #98ab23; }
      .tf-product-info-wrap .product-rate .icon:not(:last-child) {
        margin-right: 5px; }
    .tf-product-info-wrap .product-rate .count-review {
      font-weight: 500;
      font-size: 16px;
      line-height: 22.4px;
      letter-spacing: -3%;
      color: var(--text); }
  .tf-product-info-wrap .product-price {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    font-weight: 500; }
    .tf-product-info-wrap .product-price .price-new {
      color: var(--primary); }
    .tf-product-info-wrap .product-price .price-old {
      color: var(--rgba-dark);
      text-decoration: line-through; }
  .tf-product-info-wrap .badge-sale {
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    background-color: var(--primary);
    border-radius: 22px;
    padding: 5px 10px;
    color: var(--white); }
  .tf-product-info-wrap .product-stock {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 4px; }
    .tf-product-info-wrap .product-stock .icon {
      animation: tf-ani-flash 2s infinite; }
    .tf-product-info-wrap .product-stock .stock {
      padding: 5px 10px;
      border-radius: 5px;
      margin-right: 8px;
      font-weight: 500; }
    .tf-product-info-wrap .product-stock .in-stock {
      background-color: rgba(44, 163, 21, 0.1);
      color: #1d770b; }
    .tf-product-info-wrap .product-stock .out-stock {
      background-color: rgba(37, 37, 37, 0.1);
      color: #252525; }
  .tf-product-info-wrap .progress-sold {
    width: 100%;
    background-color: var(--line-4);
    height: 5px;
    position: relative;
    border-radius: 5px; }
    .tf-product-info-wrap .progress-sold .value {
      position: relative;
      height: 100%;
      background-color: var(--primary);
      transition: width 2s ease;
      border-radius: 5px; }
  .tf-product-info-wrap .product-progress-sale {
    margin-top: 8px; }
    .tf-product-info-wrap .product-progress-sale .title-hurry-up {
      margin-bottom: 10px;
      font-size: 12px;
      line-height: 14.4px;
      color: var(--dark); }
    .tf-product-info-wrap .product-progress-sale .count {
      font-size: 20px;
      line-height: 24px;
      font-weight: 500;
      color: var(--primary); }
  .tf-product-info-wrap .tf-product-variant {
    display: grid;
    gap: 24px; }
    .tf-product-info-wrap .tf-product-variant .variant-picker-label {
      margin-bottom: 8px;
      font-size: 16px;
      line-height: 24px;
      color: var(--dark); }
    .tf-product-info-wrap .tf-product-variant .variant-picker-label-value {
      text-transform: capitalize;
      margin-left: 4px;
      font-weight: 500; }
  .tf-product-info-wrap .variant-color .variant-picker-values {
    display: flex;
    gap: 12px; }
  .tf-product-info-wrap .variant-color .color-btn:not(.select-item) {
    position: relative;
    width: 38px;
    height: 38px;
    text-align: center;
    border: 1px solid transparent;
    cursor: pointer;
    border-radius: 50%; }
    .tf-product-info-wrap .variant-color .color-btn:not(.select-item) .check-color {
      width: 32px;
      height: 32px;
      display: block;
      border-radius: 50%;
      border: 1px solid #dcdcdc; }
    .tf-product-info-wrap .variant-color .color-btn:not(.select-item).active {
      border-color: var(--dark-2); }
  .tf-product-info-wrap .variant-color .color-btn.style-image {
    width: 56px;
    height: 56px;
    padding: 5px;
    border: 1px solid var(--line); }
    .tf-product-info-wrap .variant-color .color-btn.style-image .img {
      width: 100%;
      height: 100%;
      border-radius: 50%;
      overflow: hidden; }
    .tf-product-info-wrap .variant-color .color-btn.style-image img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .tf-product-info-wrap .variant-color .color-btn.style-image-square {
    width: 80px;
    height: 100px;
    padding: 6px;
    border: 1px solid var(--line);
    border-radius: 6px; }
    .tf-product-info-wrap .variant-color .color-btn.style-image-square .img {
      width: 100%;
      height: 100%;
      border-radius: 6px;
      overflow: hidden; }
    .tf-product-info-wrap .variant-color .color-btn.style-image-square img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .tf-product-info-wrap .variant-size .variant-picker-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px; }
  .tf-product-info-wrap .variant-size .size-guide {
    font-size: 14px;
    line-height: 16.8px;
    text-decoration: underline; }
  .tf-product-info-wrap .variant-size .variant-picker-values {
    display: flex;
    gap: 16px;
    flex-wrap: wrap; }
  .tf-product-info-wrap .variant-size .size-btn:not(.select-item) {
    min-width: 48px;
    height: 48px;
    /*border-radius: 50%;*/
    border: 1px solid var(--line);
    font-size: 20px;
    line-height: 30px;
    color: var(--dark);
    font-weight: 500;
    cursor: pointer; }
    .tf-product-info-wrap .variant-size .size-btn:not(.select-item).active {
      border-color: var(--dark); }
  .tf-product-info-wrap .product-info-countdown {
    margin-top: 8px;
    padding: 20px;
    display: inline-block;
    width: max-content;
    border: 1px solid var(--primary);
    border-radius: 8px; }
    .tf-product-info-wrap .product-info-countdown .countdown-title {
      display: flex;
      align-items: center;
      gap: 4px;
      margin-bottom: 12px; }
    .tf-product-info-wrap .product-info-countdown .countdown__timer {
      display: flex;
      gap: 12px; }
    .tf-product-info-wrap .product-info-countdown .countdown__item {
      width: 48px;
      height: 32px;
      font-size: 16px;
      line-height: 24px;
      color: var(--white);
      background-color: var(--primary);
      border-radius: 4px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      position: relative; }
      .tf-product-info-wrap .product-info-countdown .countdown__item:not(:last-child)::after {
        position: absolute;
        content: ":";
        top: 50%;
        transform: translateY(-50%);
        right: -8px;
        color: var(--dark); }
    .tf-product-info-wrap .product-info-countdown.type-1 {
      min-width: 276px; }
      .tf-product-info-wrap .product-info-countdown.type-1 .countdown__timer {
        justify-content: center; }
      .tf-product-info-wrap .product-info-countdown.type-1 .countdown__item {
        width: unset;
        background-color: transparent;
        color: #e83524;
        font-weight: 500;
        font-size: 12px;
        line-height: 120%; }
        .tf-product-info-wrap .product-info-countdown.type-1 .countdown__item::after {
          color: #e83524; }
  .tf-product-info-wrap .tf-product-total-quantity .group-btn {
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 12px; }
    .tf-product-info-wrap .tf-product-total-quantity .group-btn .tf-btn {
      flex-grow: 1; }
    .tf-product-info-wrap .tf-product-total-quantity .group-btn .product-btns {
      width: 52px;
      height: 52px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 15px;
      border: 1px solid #ebebeb;
      border-radius: 50%;
      color: #252525; }
      .tf-product-info-wrap .tf-product-total-quantity .group-btn .product-btns:hover {
        background-color: #252525;
        color: var(--white); }
  .tf-product-info-wrap .tf-product-total-quantity .tf-btn {
    text-transform: none; }
  .tf-product-info-wrap .tf-product-total-quantity .btn-out-stock {
    background-color: var(--text);
    border-color: var(--text);
    cursor: not-allowed; }
  .tf-product-info-wrap .tf-product-total-quantity .more-choose-payment {
    margin-top: 12px;
    display: block;
    text-align: center;
    text-decoration: underline; }
  .tf-product-info-wrap .tf-product-extra-link {
    display: flex;
    align-items: center;
    gap: 30px;
    flex-wrap: wrap; }
    .tf-product-info-wrap .tf-product-extra-link .product-extra-icon {
      display: flex;
      align-items: center;
      gap: 6px;
      font-weight: 500; }
      .tf-product-info-wrap .tf-product-extra-link .product-extra-icon .icon {
        font-size: 18px; }
  .tf-product-info-wrap .tf-product-trust-seal .list-card {
    margin-top: 12px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center; }
  .tf-product-info-wrap .tf-product-trust-seal .card-item {
    width: 45px;
    height: 32px;
    border: 1px solid #d9d9d9;
    border-radius: 2.5px; }
  .tf-product-info-wrap .tf-product-delivery-return {
    border-radius: 16px;
    border: 1px solid var(--line);
    padding: 20px;
    display: flex; }
    .tf-product-info-wrap .tf-product-delivery-return .product-delivery {
      display: grid;
      gap: 10px;
      text-align: center;
      padding: 0px 25px; }
      .tf-product-info-wrap .tf-product-delivery-return .product-delivery .icon {
        font-size: 23px;
        color: var(--dark); }
      .tf-product-info-wrap .tf-product-delivery-return .product-delivery:not(:last-child) {
        border-right: 1px solid var(--line); }
  .tf-product-info-wrap .tf-product-pickup-available {
    display: flex;
    margin: 8px 0px;
    gap: 8px; }
    .tf-product-info-wrap .tf-product-pickup-available .icon {
      font-size: 21px;
      color: var(--light-green); }
    .tf-product-info-wrap .tf-product-pickup-available .content {
      display: grid;
      gap: 4px; }
    .tf-product-info-wrap .tf-product-pickup-available .check-availability {
      font-size: 12px;
      line-height: 18px;
      color: var(--text);
      text-decoration: underline; }
  .tf-product-info-wrap .form-group-product {
    margin-bottom: 8px; }

.btn-add-wishlist .added {
  display: none; }

.btn-add-wishlist.added-wishlist .add {
  display: none; }

.btn-add-wishlist.added-wishlist .added {
  display: block; }

.wg-quantity {
  display: flex;
  justify-content: space-between;
  background-color: #f1f1f1;
  border-radius: 43px;
  overflow: hidden; }
  .wg-quantity .quantity-product {
    width: 42px;
    height: 42px;
    padding: 0;
    background-color: transparent;
    border: 0;
    text-align: center;
    font-size: 20px;
    font-weight: 500;
    line-height: 30px;
    color: var(--dark);
    pointer-events: none; }
  .wg-quantity .btn-quantity {
    width: 42px;
    height: 42px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    color: #011624;
    cursor: pointer;
    background-color: transparent;
    border: 1px solid transparent; }
    .wg-quantity .btn-quantity:hover {
      color: var(--primary); }
  .wg-quantity.small .btn-quantity,
.wg-quantity.small .quantity-product {
    height: 30px;
    width: 30px;
    font-size: 18px; }
  .wg-quantity.small .quantity-product {
    font-size: 14px;
    font-weight: 700;
    line-height: 16.8px;
    letter-spacing: -0.03em; }

.tf-product-fbt {
  padding: 20px;
  border-radius: 16px;
  border: 1px solid var(--line); }
  .tf-product-fbt .title {
    margin-bottom: 16px; }
  .tf-product-fbt .tf-bundle-product-item {
    padding: 16.35px 0px; }
  .tf-product-fbt .tf-product-form-bundle {
    display: grid;
    gap: 24px; }
  .tf-product-fbt .btn-submit-total {
    font-weight: 600;
    text-transform: none; }
  .tf-product-fbt .bundle-total-submit {
    display: flex;
    align-items: center;
    font-size: 20px;
    line-height: 32px;
    font-weight: 500; }
    .tf-product-fbt .bundle-total-submit .text {
      margin-right: 10px; }
    .tf-product-fbt .bundle-total-submit .total-price {
      margin-right: 5px;
      color: var(--primary); }
    .tf-product-fbt .bundle-total-submit .total-price-old {
      color: var(--line-3);
      text-decoration: line-through; }

.tf-product-fbt-wrap {
  padding: 15px;
  border-radius: 16px;
  border: 1px solid var(--line); }
  .tf-product-fbt-wrap .list-fbt {
    display: flex;
    gap: 25px;
    align-items: center;
    overflow-x: auto;
    min-width: 100%; }
    .tf-product-fbt-wrap .list-fbt::-webkit-scrollbar {
      width: 4px;
      height: 4px; }
    .tf-product-fbt-wrap .list-fbt::-webkit-scrollbar-track {
      background-color: var(--bg-scrollbar-track); }
    .tf-product-fbt-wrap .list-fbt::-webkit-scrollbar-thumb {
      background: var(--bg-scrollbar-thumb);
      border-radius: 4px; }
  .tf-product-fbt-wrap .fbt-image {
    width: 129px;
    min-width: 129px;
    border-radius: 8px;
    overflow: hidden; }
  .tf-product-fbt-wrap .fbt-swatches {
    display: grid;
    gap: 8px; }
  .tf-product-fbt-wrap .fbt-info {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px; }
    .tf-product-fbt-wrap .fbt-info .bundle-variant,
.tf-product-fbt-wrap .fbt-info .bundle-title {
      margin-right: 10px; }
    .tf-product-fbt-wrap .fbt-info .bundle-price {
      display: flex;
      gap: 6px; }
    .tf-product-fbt-wrap .fbt-info .new-price {
      color: var(--primary); }
    .tf-product-fbt-wrap .fbt-info .old-price {
      color: #bfbfbf; }
  .tf-product-fbt-wrap .tf-product-form-fbt {
    display: flex;
    flex-direction: column;
    gap: 20px; }
  .tf-product-fbt-wrap .list-fbt {
    margin-bottom: 15px; }
  .tf-product-fbt-wrap .fbt-total-price {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px; }
    .tf-product-fbt-wrap .fbt-total-price .price-new {
      color: var(--primary); }
    .tf-product-fbt-wrap .fbt-total-price .price-old {
      color: #bfbfbf;
      text-decoration: line-through;
      font-size: 14px;
      line-height: 22.4px;
      margin-left: 5px; }

.tf-bundle-product-item {
  display: flex;
  gap: 20px; }
  .tf-bundle-product-item .bundle-check {
    align-self: center; }
  .tf-bundle-product-item .bundle-image {
    width: 129px;
    min-width: 129px;
    border-radius: 8px;
    overflow: hidden; }
    .tf-bundle-product-item .bundle-image img {
      width: 100%;
      height: 100%; }
  .tf-bundle-product-item .bundle-info {
    display: grid;
    gap: 8px;
    align-content: flex-start; }
  .tf-bundle-product-item .bundle-price .new-price {
    color: var(--primary); }
  .tf-bundle-product-item .bundle-price .old-price {
    color: var(--rgba-dark);
    text-decoration: line-through; }
  .tf-bundle-product-item .tf-select {
    width: max-content; }

.item-has-checkbox {
  opacity: 0.4; }
  .item-has-checkbox.check {
    opacity: 1; }

.wd-product-descriptions .item .title {
  margin-bottom: 5px; }

.wd-product-descriptions .item:not(:last-child) {
  margin-bottom: 20px; }

.wd-product-descriptions .item p,
.wd-product-descriptions .item li {
  font-size: 14px;
  line-height: 22.4px; }

.wd-product-descriptions .item ul li {
  position: relative;
  padding-left: 20px; }
  .wd-product-descriptions .item ul li::before {
    position: absolute;
    content: "";
    left: 5px;
    top: 50%;
    transform: translateY(-50%);
    background-color: var(--dark);
    width: 4px;
    height: 4px;
    border-radius: 50%; }

.wd-product-descriptions .list-policies {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 15px; }

.wd-product-descriptions .accordion-body {
  padding: 10px 0px 30px; }

.tf-product-side-accordions {
  margin-bottom: 42px; }
  .tf-product-side-accordions .wd-customer-review {
    flex-direction: column;
    gap: 42px; }

.flat-single-grid .item {
  border-radius: 8px;
  overflow: hidden;
  width: 100%;
  height: 100%;
  display: block; }
  .flat-single-grid .item img {
    width: 100%;
    height: 100%;
    object-fit: cover; }

.recent-blog-item {
  display: flex;
  gap: 20px; }
  .recent-blog-item .img-product {
    width: 75px;
    height: 112px;
    border-radius: 4px;
    overflow: hidden;
    display: block; }
    .recent-blog-item .img-product img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .recent-blog-item .content {
    display: grid;
    gap: 8px;
    align-content: flex-start; }
    .recent-blog-item .content .old-price {
      margin-left: 6px;
      color: #5c5c5c; }
    .recent-blog-item .content .new-price {
      color: var(--primary); }

.flat-wrap-frequently-bought-together .product-thumbs-slider {
  margin-bottom: 30px; }

.tf-product-volume-discount {
  padding: 15px;
  border-radius: 16px;
  border: 1px solid var(--line); }
  .tf-product-volume-discount .title-discount {
    margin-bottom: 24px; }
  .tf-product-volume-discount .tf-btn {
    margin-top: 42px; }

.list-volume-discount .volume-discount-item {
  padding: 15px;
  gap: 14px;
  border-radius: 8px;
  border: 1px solid var(--line);
  display: flex;
  align-items: center;
  position: relative; }
  .list-volume-discount .volume-discount-item:not(:last-child) {
    margin-bottom: 16px; }
  .list-volume-discount .volume-discount-item .content-discount {
    flex-grow: 1;
    gap: 8px;
    flex-wrap: wrap; }
  .list-volume-discount .volume-discount-item .name span {
    color: var(--primary); }
  .list-volume-discount .volume-discount-item .info-discount,
.list-volume-discount .volume-discount-item .discount-price {
    opacity: 0.8; }
  .list-volume-discount .volume-discount-item .check {
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 12px;
    height: 12px;
    border: 1px solid #9a9a9a;
    background-color: transparent;
    flex-shrink: 0; }
    .list-volume-discount .volume-discount-item .check span {
      width: 6px;
      height: 6px;
      border-radius: 50%;
      display: block;
      background-color: var(--white); }
  .list-volume-discount .volume-discount-item .discount-price {
    display: flex;
    align-items: center;
    gap: 6px; }
    .list-volume-discount .volume-discount-item .discount-price .price-new {
      color: var(--primary); }
    .list-volume-discount .volume-discount-item .discount-price .price-old {
      color: var(--text);
      font-size: 12px;
      line-height: 18px;
      text-decoration: line-through; }
  .list-volume-discount .volume-discount-item .tag-shipping {
    border: 1px solid #22ae45;
    border-radius: 4px;
    padding: 4px 10px;
    color: rgba(34, 174, 69, 0.8);
    text-transform: uppercase; }
  .list-volume-discount .volume-discount-item .tag-sale {
    position: absolute;
    padding: 6px 10px;
    font-size: 12px;
    line-height: 18px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--rgba-white);
    top: -2px;
    right: -15px;
    border-radius: 4px;
    border-radius: 4px;
    animation: pulse-rotate 1s infinite; }
    .list-volume-discount .volume-discount-item .tag-sale .icon {
      font-size: 16px;
      color: var(--white); }
    .list-volume-discount .volume-discount-item .tag-sale.pos2 {
      right: -15px;
      animation-delay: 0.5s; }
  .list-volume-discount .volume-discount-item.active, .list-volume-discount .volume-discount-item:hover {
    background-color: #22ae45;
    border-color: #22ae45; }
    .list-volume-discount .volume-discount-item.active .check, .list-volume-discount .volume-discount-item:hover .check {
      border-color: var(--white); }
    .list-volume-discount .volume-discount-item.active .discount-price .price-new,
.list-volume-discount .volume-discount-item.active .discount-price .price-old,
.list-volume-discount .volume-discount-item.active .info-discount,
.list-volume-discount .volume-discount-item.active span, .list-volume-discount .volume-discount-item:hover .discount-price .price-new,
.list-volume-discount .volume-discount-item:hover .discount-price .price-old,
.list-volume-discount .volume-discount-item:hover .info-discount,
.list-volume-discount .volume-discount-item:hover span {
      color: var(--white); }
    .list-volume-discount .volume-discount-item.active .tag-shipping, .list-volume-discount .volume-discount-item:hover .tag-shipping {
      border-color: var(--white);
      color: var(--white); }

.tf-product-volume-discount-thumbnail {
  padding: 15px;
  border-radius: 16px;
  border: 1px solid var(--line);
  overflow-x: auto;
  padding: 20px 15px 30px; }
  .tf-product-volume-discount-thumbnail .title-discount {
    margin-bottom: 30px; }
  .tf-product-volume-discount-thumbnail .list-volume-discount-thumbnail {
    margin-bottom: 20px;
    padding-bottom: 10px; }

.list-volume-discount-thumbnail {
  gap: 12px;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: -15px;
  padding-top: 15px; }
  .list-volume-discount-thumbnail::-webkit-scrollbar {
    width: 4px;
    height: 4px; }
  .list-volume-discount-thumbnail::-webkit-scrollbar-track {
    background-color: var(--bg-scrollbar-track); }
  .list-volume-discount-thumbnail::-webkit-scrollbar-thumb {
    background: var(--bg-scrollbar-thumb);
    border-radius: 4px; }

.volume-discount-thumbnail-item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding: 24px 10px;
  border-radius: 8px;
  border: 2px solid var(--line);
  position: relative; }
  .volume-discount-thumbnail-item .content-discount {
    text-align: center; }
    .volume-discount-thumbnail-item .content-discount .price-new,
.volume-discount-thumbnail-item .content-discount .price-old,
.volume-discount-thumbnail-item .content-discount .count {
      opacity: 0.8; }
    .volume-discount-thumbnail-item .content-discount .price-new {
      font-weight: 500;
      color: var(--primary); }
    .volume-discount-thumbnail-item .content-discount .price-old {
      font-weight: 500;
      font-size: 14px;
      line-height: 20px;
      color: #b0b0b0; }
    .volume-discount-thumbnail-item .content-discount .tag-sold {
      padding: 3px 8px;
      border-radius: 4px;
      background-color: #ff9148;
      font-weight: 700;
      font-size: 10px;
      line-height: 14px;
      height: 20px;
      color: var(--white);
      margin-left: 4px; }
  .volume-discount-thumbnail-item .image-box {
    width: 140px;
    height: 160px;
    border-radius: 8px; }
  .volume-discount-thumbnail-item:hover, .volume-discount-thumbnail-item.active {
    border-color: #22ae45;
    background-color: #e9ffee; }
  .volume-discount-thumbnail-item .tag-sale {
    animation: pulse2 1s infinite;
    top: 0;
    margin-top: -15px;
    position: absolute;
    padding: 6px;
    font-size: 12px;
    line-height: 18px;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: var(--rgba-white);
    left: 15px;
    right: 15px;
    border-radius: 4px; }
    .volume-discount-thumbnail-item .tag-sale .icon {
      font-size: 14px;
      color: var(--white); }

@keyframes pulse-rotate {
  0% {
    transform: scale(1) rotate(12deg); }
  50% {
    transform: scale(1.05) rotate(12deg); }
  100% {
    transform: scale(1) rotate(12deg); } }

.card-product.style-wishlist {
  position: relative; }
  .card-product.style-wishlist > .icon {
    position: absolute;
    z-index: 25;
    top: 10px;
    right: 10px;
    width: 32px;
    height: 32px;
    font-size: 10px;
    border: 0;
    background-color: var(--white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer; }
    .card-product.style-wishlist > .icon:hover {
      color: var(--primary); }
  .card-product.style-wishlist .list-product-btn {
    bottom: 24px !important; }

.card-product.style-2 .list-product-btn {
  top: unset;
  right: unset;
  left: 50%;
  transform: translateX(-50%);
  bottom: 8px;
  gap: 0;
  flex-direction: row; }
  .card-product.style-2 .list-product-btn li {
    transition-delay: unset !important; }
    .card-product.style-2 .list-product-btn li:first-child .box-icon {
      border: 1px solid var(--line);
      border-radius: 30px 0px 0px 30px; }
    .card-product.style-2 .list-product-btn li:last-child .box-icon {
      border-radius: 0px 30px 30px 0px; }
    .card-product.style-2 .list-product-btn li:not(:first-child) .box-icon {
      border: 1px solid var(--line);
      border-left-color: var(--white); }
  .card-product.style-2 .list-product-btn .box-icon {
    border-radius: unset; }
    .card-product.style-2 .list-product-btn .box-icon:hover {
      border-color: var(--dark) !important; }
    .card-product.style-2 .list-product-btn .box-icon .icon-cart2 {
      margin-left: 2px; }

.card-product.style-3 .list-product-btn {
  top: unset;
  right: unset;
  left: 50%;
  transform: translateX(-50%);
  bottom: 50px;
  flex-direction: row; }
  .card-product.style-3 .list-product-btn .box-icon:hover {
    border-color: var(--dark) !important; }

.card-product.out-of-stock .card-product-info {
  opacity: 0.6; }

.card-product.out-of-stock .card-product-wrapper::before {
  content: "Sold Out";
  position: absolute;
  width: 92px;
  height: 92px;
  border-radius: 50%;
  background-color: var(--dark);
  color: var(--white);
  font-size: 12px;
  font-weight: 500;
  line-height: 14px;
  opacity: 1;
  z-index: 5; }

.card-product.out-of-stock .card-product-wrapper > * {
  opacity: 0.6; }

.card-product:not(.style-list) .size-box {
  position: absolute;
  bottom: 0;
  z-index: 3;
  left: 0px;
  right: 0px;
  pointer-events: none;
  transition: 0.3s ease-out 0s;
  background: #929292b5;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 6px; }

.card-product .product-btn-main {
  position: absolute;
  z-index: 5;
  bottom: 8px;
  right: 8px;
  left: 8px;
  display: inline-flex;
  gap: 4px; }
  .card-product .product-btn-main .btn-main-product {
    background-color: var(--white);
    border-radius: 54px;
    gap: 10px;
    padding: 6px;
    width: 100%; }
    .card-product .product-btn-main .btn-main-product:hover {
      background-color: var(--dark);
      color: var(--white); }
    .card-product .product-btn-main .btn-main-product.add-to-cart {
      -webkit-line-clamp: 1;
      -webkit-box-orient: vertical;
      display: -webkit-box;
      overflow: hidden;
      white-space: nowrap;
      text-align: center; }
    .card-product .product-btn-main .btn-main-product.quickview {
      height: 36px;
      width: 36px;
      flex-shrink: 0;
      display: none; }
  .card-product .product-btn-main .icon {
    font-size: 17px; }

.card-product .list-product-btn {
  bottom: 10px; }

.card-product .on-sale-wrap {
  position: absolute;
  top: 10px;
  right: 10px;
  left: 10px;
  z-index: 5;
  display: flex;
  gap: 6px; }
  .card-product .on-sale-wrap.pos2 {
    top: 10px;
    right: 10px;
    left: 10px; }
  .card-product .on-sale-wrap.type-2 .on-sale-item {
    width: max-content; }

.card-product .on-sale-item {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  word-break: break-word;
  padding: 0px 10px;
  min-width: 50px;
  width: max-content;
  font-size: 13px;
  font-weight: 500;
  line-height: 26px;
  height: 26px;
  text-align: center;
  text-transform: capitalize;
  position: relative;
  background-color: var(--primary);
  color: var(--white);
  border-radius: 22px; }
  .card-product .on-sale-item.trending {
    background-color: #a474ff; }
  .card-product .on-sale-item.limited {
    background-color: #ff9c39; }
  .card-product .on-sale-item.new {
    background-color: #00bc29; }

.card-product .price-wrap {
  font-size: 16px;
  line-height: 19.2px;
  color: var(--dark); }
  .card-product .price-wrap .price-new {
    margin-right: 4px;
    color: var(--primary); }

.card-product .card-product-wrapper {
  aspect-ratio: calc(342 / 486);
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  z-index: 20; }
  .card-product .card-product-wrapper img {
    display: block;
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
    transition-duration: 700ms; }
  .card-product .card-product-wrapper:hover .product-img .img-product {
    opacity: 0; }
  .card-product .card-product-wrapper:hover .product-img .img-hover {
    display: block;
    z-index: 1;
    opacity: 1;
    -webkit-transform: scale(1.05);
    transform: scale(1.05); }

.card-product .product-img {
  display: flex;
  width: 100%;
  height: 100%;
  position: relative;
  align-items: stretch; }
  .card-product .product-img .img-hover {
    position: absolute;
    inset: 0;
    opacity: 0; }

.card-product .list-product-btn {
  position: absolute;
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 8px;
  top: 8px;
  right: 8px;
  z-index: 6; }

.card-product .box-icon {
  width: 35px;
  height: 35px;
  border-radius: 3px;
  background-color: var(--white);
  color: var(--dark);
  position: relative;
  border-radius: 50%; }
  .card-product .box-icon .icon {
    font-size: 14px; }
  .card-product .box-icon svg {
    width: 18px; }
  .card-product .box-icon:hover {
    background-color: var(--dark) !important;
    color: var(--white);
    border-color: var(--dark); }

.card-product .countdown-box {
  display: none;
  bottom: 24px;
  position: absolute;
  z-index: 3;
  left: 0px;
  right: 0px;
  pointer-events: none;
  transition: 0.3s ease-out 0s;
  text-align: center;
  overflow: hidden;
  margin: 0 auto;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  padding: 10px 20px;
  max-height: 40px;
  background-color: var(--white);
  width: max-content;
  border-radius: 22px;
  color: var(--primary); }
  .card-product .countdown-box .countdown__timer {
    display: flex;
    gap: 4px; }
  .card-product .countdown-box .countdown__item {
    font-size: 12px;
    font-weight: 500;
    line-height: 14px; }
  .card-product .countdown-box.style-2 {
    background-color: #ffeded; }
  .card-product .countdown-box.style-3 {
    padding: 10px 30px;
    background-color: var(--primary);
    color: var(--white);
    gap: 10px; }
    .card-product .countdown-box.style-3 .icon {
      font-size: 18px; }
  .card-product .countdown-box.pos1 {
    bottom: 16px; }

.card-product .card-product-info {
  padding-top: 15px;
  padding-bottom: 15px;
  gap: 6px;
  display: grid; }
  .card-product .card-product-info .inner-info-product {
    display: grid;
    gap: 6px; }
  .card-product .card-product-info .list-infor {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 11px;
    max-width: max-content;
    padding-top: 24px;
    margin-left: auto;
    margin-right: auto; }
    .card-product .card-product-info .list-infor .item {
      display: flex;
      gap: 10px;
      align-items: center;
      justify-content: center; }

.card-product .name-product {
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
  text-transform: capitalize; }

.card-product .list-color-product {
  margin-top: 2px; }

.card-product .marquee-product {
  position: absolute;
  left: 0;
  bottom: 0;
  overflow-x: hidden;
  display: flex;
  flex-direction: row;
  width: 100%;
  transform: none;
  z-index: 5;
  padding: 5px 0px;
  background-color: #957127;
  backdrop: blur(4px); }
  .card-product .marquee-product .infiniteslide {
    gap: 24px; }
    .card-product .marquee-product .infiniteslide .brand-item {
      height: unset;
      opacity: 1 !important; }

.card-product.style-list {
  display: flex;
  gap: 12px; }
  .card-product.style-list .product-img {
    max-width: 342px; }
  .card-product.style-list .card-product-info {
    gap: 12px;
    display: grid;
    align-content: flex-start;
    width: 60%;
    padding: 0;
    flex-shrink: 0; }
  .card-product.style-list .info-list {
    display: grid;
    gap: 8px;
    width: 100%; }
  .card-product.style-list .list-product-btn {
    display: flex;
    position: unset;
    flex-direction: unset;
    justify-content: flex-start;
    gap: 10px; }
  .card-product.style-list .btn-main-product.add-to-cart {
    max-width: 331px;
    width: 100%;
    text-transform: none; }
  .card-product.style-list .box-icon {
    border: 1px solid var(--line);
    flex-shrink: 0; }
    .card-product.style-list .box-icon:hover {
      border-color: var(--line); }
  .card-product.style-list .size-box {
    display: flex;
    gap: 8px; }

.card-product.style-center {
  border-radius: 16px;
  background-color: var(--white); }
  .card-product.style-center .card-product-wrapper {
    aspect-ratio: calc(342 / 360); }
  .card-product.style-center .card-product-info {
    padding: 20px 12px; }
  .card-product.style-center .list-color-product {
    margin-top: 5px; }
  .card-product.style-center .countdown-box {
    bottom: 0; }
  .card-product.style-center .swatch-value::before {
    content: "";
    position: absolute;
    border-radius: 50%;
    top: 1px;
    left: 1px;
    right: 1px;
    bottom: 1px;
    border: 1px solid #dcdcdc; }

.card-product .product-progress-sale {
  display: grid;
  gap: 6px;
  margin-top: 5px; }
  .card-product .product-progress-sale .box-quantity {
    gap: 4px; }
    .card-product .product-progress-sale .box-quantity .text-sold {
      text-align: left; }
    .card-product .product-progress-sale .box-quantity .text-avaiable {
      text-align: right; }

.card-product .progress-sold {
  width: 100%;
  background-color: var(--line);
  height: 6px;
  position: relative;
  border-radius: 6px; }

.card-product .progress-bar {
  position: relative;
  height: 100%;
  background-color: var(--primary);
  transition: width 2s ease;
  border-radius: 5px; }

.card-product.style-4 .card-product-info {
  padding: 20px 12px; }

.card-product.style-4 .list-color-product {
  gap: 4px;
  margin-top: 4px; }

.card-product.style-3 .product-btn-main .icon {
  margin-top: -3px; }

.card-product .stock {
  font-size: 16px;
  font-weight: 400;
  line-height: 26px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }
  .card-product .stock .dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    position: relative; }
    .card-product .stock .dot::after {
      content: "";
      position: absolute;
      top: 2px;
      right: 2px;
      left: 2px;
      bottom: 2px;
      border-radius: 50%;
      z-index: 2; }
  .card-product .stock.in-stock {
    color: #59a33b; }
    .card-product .stock.in-stock .dot {
      background-color: #78cb5757; }
      .card-product .stock.in-stock .dot::after {
        background-color: #78cb57; }
  .card-product .stock.out-stock {
    color: #ef5757; }
    .card-product .stock.out-stock .dot {
      background-color: #cb575757; }
      .card-product .stock.out-stock .dot::after {
        background-color: #ef5757; }

.card-product .list-capacity-product .list-color-item {
  width: unset;
  height: unset;
  border-radius: 35px;
  border: 1px solid #8e8e8e33; }
  .card-product .list-capacity-product .list-color-item .text-quantity {
    padding: 2px 12px; }
  .card-product .list-capacity-product .list-color-item.active {
    border-color: var(--dark); }

.card-product.style-5 {
  border-radius: 16px;
  background-color: var(--white); }
  .card-product.style-5 .card-product-info {
    padding: 20px 12px 22px; }
    .card-product.style-5 .card-product-info .tf-btn {
      width: 100%; }
  .card-product.style-5 .btn-addcart,
.card-product.style-5 .stock {
    margin-top: 10px; }

.card-product.style-border {
  border: 1px solid var(--line);
  border-radius: 16px;
  position: relative; }
  .card-product.style-border .card-product-wrapper {
    padding: 20px 12px; }
    .card-product.style-border .card-product-wrapper img {
      height: auto; }
    .card-product.style-border .card-product-wrapper .list-product-btn {
      bottom: 16px; }
  .card-product.style-border .countdown-box {
    bottom: 16px; }
  .card-product.style-border .card-product-info {
    padding: 0px 12px 20px; }
    .card-product.style-border .card-product-info .type {
      opacity: 0.6; }

.card-product.style-border-2 {
  border: 1px solid var(--line);
  border-radius: 16px; }
  .card-product.style-border-2 .card-product-wrapper {
    padding: 12px;
    padding-bottom: 20px; }
  .card-product.style-border-2 .product-img {
    border-radius: 16px;
    overflow: hidden; }
  .card-product.style-border-2 .card-product-info {
    padding: 0px 12px 20px; }
  .card-product.style-border-2 .product-progress-sale {
    margin: 6px 0px; }
  .card-product.style-border-2 .countdown-box {
    bottom: 12px; }
  .card-product.style-border-2.border-type-3 .tf-btn {
    margin-top: 8px; }
  .card-product.style-border-2.border-type-4 .card-product-wrapper {
    padding: 12px 11px 8px; }
  .card-product.style-border-2.border-type-4 .card-product-info {
    padding: 0px 12px 16px; }
  .card-product.style-border-2.border-type-4 .list-product-btn {
    bottom: 8px; }
    .card-product.style-border-2.border-type-4 .list-product-btn .box-icon:hover {
      background-color: var(--purple) !important;
      border-color: var(--purple) !important; }
  .card-product.style-border-2.border-type-4 .tooltip,
.card-product.style-border-2.border-type-4 .tooltip::before {
    background-color: var(--purple) !important; }
  .card-product.style-border-2.border-type-5 .product-progress-sale {
    margin: 0; }
  .card-product.style-border-2.border-type-5 .card-product-info {
    gap: 12px; }
  .card-product.style-border-2.style-box-bg .list-product-btn {
    bottom: 14px; }
    .card-product.style-border-2.style-box-bg .list-product-btn .box-icon:hover {
      background-color: var(--purple) !important;
      border-color: var(--purple) !important; }
  .card-product.style-border-2.style-box-bg .tooltip,
.card-product.style-border-2.style-box-bg .tooltip::before {
    background-color: var(--purple) !important; }

.card-product.line-purple .countdown-box {
  bottom: 14px; }

.card-product.style-space .card-product-wrapper {
  padding: 12px 10px 20px; }

.card-product.style-space .card-product-info {
  padding: 0px 10px 20px; }

.card-product.style-space-2 .card-product-wrapper {
  padding: 12px 10px 20px; }

.card-product.style-space-2 .card-product-info {
  padding: 0px 10px 20px; }

.list-color-product {
  display: flex;
  flex-wrap: wrap;
  gap: 3px;
  align-items: center; }
  .list-color-product .list-color-item {
    width: 20px;
    height: 20px;
    border: 1px solid transparent;
    background-color: transparent;
    border-radius: 50%;
    cursor: pointer;
    position: relative; }
    .list-color-product .list-color-item .swatch-value {
      width: 100%;
      height: 100%;
      border: 2px solid var(--white);
      display: inline-block;
      border-radius: 50%; }
    .list-color-product .list-color-item img {
      visibility: hidden;
      width: 18px;
      height: 18px;
      position: absolute; }
    .list-color-product .list-color-item.style-img {
      width: 40px;
      height: 40px; }
      .list-color-product .list-color-item.style-img .swatch-value {
        width: 32px;
        height: 32px;
        border: 0; }
        .list-color-product .list-color-item.style-img .swatch-value::before {
          display: none; }
        .list-color-product .list-color-item.style-img .swatch-value .swatch-img {
          position: unset;
          border-radius: 50%;
          width: 100%;
          height: 100%;
          object-fit: cover;
          visibility: visible; }
      .list-color-product .list-color-item.style-img.active, .list-color-product .list-color-item.style-img:hover {
        border-color: var(--white) !important; }
    .list-color-product .list-color-item.line {
      border: 1px solid transparent !important; }
      .list-color-product .list-color-item.line .swatch-value {
        position: relative; }
        .list-color-product .list-color-item.line .swatch-value::before {
          content: "";
          position: absolute;
          width: 100%;
          height: 100%;
          border: 1px solid var(--rgba-dark-3);
          top: 0;
          left: 0;
          z-index: 1;
          border-radius: 50%; }
    .list-color-product .list-color-item.active, .list-color-product .list-color-item:hover {
      border-color: var(--dark) !important; }
      .list-color-product .list-color-item.active .swatch-value, .list-color-product .list-color-item:hover .swatch-value {
        border-color: var(--white); }
        .list-color-product .list-color-item.active .swatch-value::before, .list-color-product .list-color-item:hover .swatch-value::before {
          border-color: var(--line); }
      .list-color-product .list-color-item.active.border-color-black, .list-color-product .list-color-item:hover.border-color-black {
        border-color: #252525 !important; }
  .list-color-product.style-2 .list-color-item.active .swatch-value, .list-color-product.style-2 .list-color-item:hover .swatch-value {
    border-color: #e7ecd2; }
  .list-color-product.style-2 .swatch-value {
    border: 2px solid #e7ecd2; }

.price-wrap .price-old {
  color: var(--dark);
  opacity: 0.6;
  position: relative; }
  .price-wrap .price-old::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 0.5px;
    background-color: var(--dark);
    opacity: 0.6;
    top: 50%;
    left: 0;
    transform: translateY(-50%); }
  .price-wrap .price-old.old-line {
    color: var(--line-3);
    opacity: 1; }
    .price-wrap .price-old.old-line::after {
      background-color: var(--line-3); }

.tf-sticky-btn-atc {
  position: fixed;
  width: 100%;
  bottom: 0;
  z-index: 70;
  /* box-shadow: 4px -4px 5px rgb(0 0 0 / 3%); */
  background-color: var(--white);
  transition: all 0.3s linear;
  transform: translateY(100%); }
  .tf-sticky-btn-atc .tf-height-observer {
    padding: 14px 0;
    column-gap: 5px; }
  .tf-sticky-btn-atc .tf-sticky-atc-product {
    flex: 1 0 0%;
    gap: 15px; }
  .tf-sticky-btn-atc .tf-sticky-atc-img {
    width: 72px;
    height: 72px;
    flex-shrink: 0; }
    .tf-sticky-btn-atc .tf-sticky-atc-img img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      border-radius: 50%; }
  .tf-sticky-btn-atc .tf-sticky-atc-variant-price {
    min-width: 249px; }
  .tf-sticky-btn-atc .tf-sticky-atc-title {
    font-size: 16px;
    line-height: 19px; }
  .tf-sticky-btn-atc .tf-sticky-atc-btns,
.tf-sticky-btn-atc .tf-sticky-atc-infos form {
    display: flex;
    gap: 12px;
    align-items: center; }
  .tf-sticky-btn-atc .tf-btn {
    min-width: 190px; }
  .tf-sticky-btn-atc.show {
    transform: translateY(0); }

.product-skincare .tf-product-media-thumbs-1 .swiper-slide {
  width: 109px !important;
  height: 109px !important; }

.product-skincare .tf-product-media-thumbs-1 img {
  width: 109px !important;
  height: 109px !important; }

.form-group-product .tf-product-total-quantity {
  display: grid;
  gap: 12px; }

.form-group-product .table-group-product {
  margin-bottom: 24px;
  overflow: auto; }

.form-group-product .item-product {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px; }
  .form-group-product .item-product:not(:last-child) {
    margin-bottom: 16px; }
  .form-group-product .item-product .img-product {
    width: 83px;
    height: 83px;
    border-radius: 4px; }
  .form-group-product .item-product .item-product-name {
    display: flex;
    align-items: center;
    gap: 16px;
    max-width: 265px;
    width: 100%;
    flex-shrink: 0; }
  .form-group-product .item-product .item-product-content {
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px; }
  .form-group-product .item-product .item-product-price {
    max-width: 150px;
    width: 100%;
    flex-shrink: 0; }
  .form-group-product .item-product .price-new {
    color: var(--primary); }
  .form-group-product .item-product .price-old {
    color: var(--rgba-dark);
    text-decoration: line-through; }
  .form-group-product .item-product .note {
    margin-top: 6px;
    font-size: 12px;
    line-height: 18px; }
  .form-group-product .item-product .available {
    color: var(--primary); }
  .form-group-product .item-product .in-stock {
    color: #34a853; }
  .form-group-product .item-product .tf-btn,
.form-group-product .item-product .wg-quantity {
    flex-shrink: 0; }
  .form-group-product .item-product .item-product-action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px; }

.tf-product-cate-sku {
  display: grid;
  gap: 12px; }
  .tf-product-cate-sku .item-cate-sku {
    display: flex;
    align-items: center;
    gap: 10px; }
  .tf-product-cate-sku .label {
    color: var(--text); }

.tf-product-heading .btn-out-stock {
  margin-top: 8px; }

.form-out-stock {
  border-radius: 10px;
  border: 1px solid var(--dark);
  padding: 30px 15px;
  display: grid;
  gap: 24px; }
  .form-out-stock .box-title-out-stock {
    display: grid;
    gap: 12px; }
  .form-out-stock .group-form-field {
    display: grid;
    gap: 15px; }

.tf-product-payment-shipping {
  display: grid;
  gap: 24px; }

.form-buyX-getY {
  border-radius: 16px;
  border: 1px solid #272727;
  padding: 30px 20px; }
  .form-buyX-getY .title-buyX-getY {
    text-align: center;
    margin-bottom: 32px; }
  .form-buyX-getY .tf-btn {
    width: 100%; }
  .form-buyX-getY .item-product {
    text-align: center;
    padding: 12px;
    border: 1px solid var(--line);
    border-radius: 10px;
    position: relative; }
    .form-buyX-getY .item-product:hover {
      box-shadow: 0px 4px 20px 0px #0000001a; }
    .form-buyX-getY .item-product img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
    .form-buyX-getY .item-product .img-product {
      border-radius: 8px;
      overflow: hidden; }
    .form-buyX-getY .item-product select {
      padding-top: 7px;
      padding-bottom: 7px;
      font-size: 14px;
      line-height: 20px;
      color: rgba(102, 112, 133, 0.8);
      border-radius: 6px; }
    .form-buyX-getY .item-product .info-product {
      padding-top: 20px; }
    .form-buyX-getY .item-product .name-product {
      margin-bottom: 10px;
      display: block; }
    .form-buyX-getY .item-product .price-product {
      display: inline-flex;
      gap: 6px; }
    .form-buyX-getY .item-product .variant-product {
      margin-top: 14px; }
    .form-buyX-getY .item-product .new-price {
      color: var(--primary); }
    .form-buyX-getY .item-product .old-price {
      text-decoration: line-through;
      color: rgba(0, 0, 0, 0.6); }
    .form-buyX-getY .item-product .ribbon {
      position: absolute;
      top: -7px;
      left: -7px;
      background-color: #a78bfa;
      color: var(--white);
      padding: 5px;
      padding-left: 14px;
      padding-right: 28px;
      text-transform: uppercase;
      font-weight: 500;
      clip-path: polygon(100% 0%, 86% 50%, 100% 100%, 0 100%, 0% 50%, 0 0);
      z-index: 2; }
    .form-buyX-getY .item-product::before {
      content: "";
      position: absolute;
      top: 26px;
      left: -7px;
      border-top: 7px solid #7154b4;
      border-right: 7px solid transparent;
      -webkit-transform: rotate(45deg);
      transform: rotate(90deg); }
  .form-buyX-getY .group-item-product {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-bottom: 32px; }
    .form-buyX-getY .group-item-product .arrow {
      width: 52px;
      height: 52px;
      margin-left: -12px; }

.tb-info-product {
  border-spacing: 0;
  border-collapse: collapse;
  width: 100%;
  border-radius: 5px;
  border-style: hidden;
  box-shadow: 0 0 0 1px var(--line);
  color: #1f1f1f; }
  .tb-info-product tr {
    border: 1px solid var(--line);
    vertical-align: middle; }
    .tb-info-product tr th {
      padding: 10px 20px;
      border-right: 1px solid var(--line);
      font-weight: 500;
      background-color: #f3f3f3; }
    .tb-info-product tr td {
      padding: 10px 20px; }

.wd-customer-review {
  display: flex;
  align-items: flex-start;
  gap: 32px; }
  .wd-customer-review .review-heading {
    max-width: 289px;
    width: 100%;
    display: grid;
    justify-items: flex-start;
    gap: 32px; }
    .wd-customer-review .review-heading .icon-star {
      font-size: 15px;
      color: #ff6f61; }
  .wd-customer-review .box-rate-review {
    display: grid;
    gap: 16px;
    width: 100%; }
  .wd-customer-review .rating-summary {
    display: flex;
    justify-content: space-between;
    align-items: center; }
    .wd-customer-review .rating-summary .list-star {
      display: flex;
      align-items: center;
      gap: 5px; }
  .wd-customer-review .rating-breakdown-item {
    display: flex;
    align-items: center;
    gap: 10px; }
    .wd-customer-review .rating-breakdown-item:not(:last-child) {
      margin-bottom: 6px; }
    .wd-customer-review .rating-breakdown-item .rating-score {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 5px;
      width: 34px;
      flex-shrink: 0; }
    .wd-customer-review .rating-breakdown-item .rating-bar {
      width: 100%;
      height: 4px;
      background-color: var(--line); }
    .wd-customer-review .rating-breakdown-item .value {
      background-color: var(--dark);
      height: 100%; }
  .wd-customer-review .review-section {
    flex-grow: 1; }
  .wd-customer-review .review-item {
    display: flex;
    gap: 15px; }
    .wd-customer-review .review-item:not(:last-child) {
      margin-bottom: 24px; }
    .wd-customer-review .review-item .review-avt {
      width: 48px;
      height: 48px;
      border-radius: 50%;
      overflow: hidden;
      flex-shrink: 0; }
      .wd-customer-review .review-item .review-avt img {
        width: 100%;
        height: 100%; }
    .wd-customer-review .review-item .review-content {
      display: grid;
      gap: 15px; }
    .wd-customer-review .review-item .review-meta {
      display: flex;
      align-items: center;
      gap: 10px; }
    .wd-customer-review .review-item .review-info {
      display: flex;
      align-items: center;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 10px; }
    .wd-customer-review .review-item .review-author {
      padding-right: 10px;
      position: relative; }
      .wd-customer-review .review-item .review-author::after {
        content: "";
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        height: 14px;
        width: 1px;
        background-color: var(--line); }
    .wd-customer-review .review-item .list-star {
      display: flex;
      gap: 5px;
      align-items: center; }
      .wd-customer-review .review-item .list-star .icon {
        font-size: 15px;
        color: var(--dark); }
    .wd-customer-review .review-item .star-4 .icon {
      color: #d2d2d2; }
      .wd-customer-review .review-item .star-4 .icon:nth-child(1), .wd-customer-review .review-item .star-4 .icon:nth-child(2), .wd-customer-review .review-item .star-4 .icon:nth-child(3), .wd-customer-review .review-item .star-4 .icon:nth-child(4) {
        color: var(--dark); }
    .wd-customer-review .review-item .star-3 .icon {
      color: #d2d2d2; }
      .wd-customer-review .review-item .star-3 .icon:nth-child(1), .wd-customer-review .review-item .star-3 .icon:nth-child(2), .wd-customer-review .review-item .star-3 .icon:nth-child(3) {
        color: var(--dark); }
    .wd-customer-review .review-item .star-2 .icon {
      color: #d2d2d2; }
      .wd-customer-review .review-item .star-2 .icon:nth-child(1), .wd-customer-review .review-item .star-2 .icon:nth-child(2) {
        color: var(--dark); }
    .wd-customer-review .review-item .star-1 .icon {
      color: #d2d2d2; }
      .wd-customer-review .review-item .star-1 .icon:nth-child(1) {
        color: var(--dark); }
  .wd-customer-review .review-list {
    padding-bottom: 32px;
    margin-bottom: 32px;
    border-bottom: 1px solid var(--line); }

.form-review .box-rating {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 24px; }

.form-review .note,
.form-review .title {
  margin-bottom: 24px; }

.form-review .group-2-ip {
  margin-bottom: 10px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px; }

.form-review .check-save {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 24px; }

.form-review .tf-btn {
  margin-top: 32px;
  max-width: 171px;
  width: 100%; }

/* custom rating */
.list-rating-check {
  display: flex;
  flex-direction: row-reverse;
  justify-content: left;
  gap: 5px; }

.list-rating-check:not(:checked) > input {
  position: absolute;
  opacity: 0; }

.list-rating-check:not(:checked) > label {
  font-size: 15px;
  cursor: pointer;
  white-space: nowrap;
  width: 15px;
  color: #D2D2D2;
  transition: all 0.2s ease-in-out; }

.list-rating-check:not(:checked) > label:before {
  content: "\e95b"; }

.list-rating-check > input:checked ~ label {
  color: var(--dark); }

.list-rating-check:not(:checked) > label:hover,
.list-rating-check:not(:checked) > label:hover ~ label {
  color: var(--dark); }

.list-rating-check > input:checked + label:hover,
.list-rating-check > input:checked + label:hover ~ label,
.list-rating-check > input:checked ~ label:hover,
.list-rating-check > input:checked ~ label:hover ~ label,
.list-rating-check > label:hover ~ input:checked ~ label {
  color: var(--dark); }
@media(max-width: 991px) {
  .wd-customer-review {
    flex-direction: column;
  }
}