#product-product {
   --section-spacing: 25px;
}

.model-availability-wrapper {
   display: grid;
   grid-template-columns: 1fr 1fr;
   gap: 20px;
   margin-bottom: 25px;
}

.model-availability-wrapper span.font-bold {
   font-size: 22px;
}

.model-availability-wrapper>div {
   border: 1px solid var(--primary-color);
   background-color: var(--light-blue-bg);
   border-radius: 10px;
   height: 50px;
   padding: 5px 10px;
   display: flex;
   align-items: center;
   justify-content: center;
   ;
}

.model-availability-wrapper svg {
   width: 32px;
   height: auto;
   margin-right: 10px;
   fill: var(--primary-color);
}

.option-image-toggle {
   position: absolute;
   height: 100%;
   width: 100%;
   z-index: 100;
 }

 .option-image-toggle img {
   width: 100% !important;
   height: 100% !important;
   background-color: #FFFFFF;
 }

.product-options .form-group>.control-label {
   font-family: 'asty-medium';
}

.product-options .form-group:not(.color-option) .radio.outofstock,
.product-options .form-group:not(.color-option) .checkbox.outofstock {
   opacity: 0.6;
   cursor: not-allowed;
}

.product-options .form-group.color-option .outofstock-sign {
   position: absolute;
   display: flex;
}

.product-options .form-group.color-option .outofstock-sign svg {
   width: 36px;
   height: auto;
}

.variation-group {
   padding: 25px;
   padding-right: 20px;
   padding-left: 20px;
   margin-bottom: 25px;
   border-width: 1px;
   border-style: solid;
   border-color: var(--primary-color);
   border-radius: 10px;
}

.variation-group .form-group .control-label {
   font-size: 16px;
}

.price-cart--wrapper {
   padding: 25px 20px;
   border: 1px solid var(--primary-color);
   border-radius: 10px;
   margin-bottom: var(--section-spacing);
}

.price-cart--wrapper .product-price-new,
.price-cart--wrapper .product-price-old,
.price-cart--wrapper .product-price,
.discounts--wrapper>p {
   font-family: 'asty-medium', sans-serif;
}

.price-cart--wrapper .price-wrapper>p {
   margin-bottom: 0px;
   font-family: 'asty-medium', sans-serif;
}

.price-cart--wrapper .stepper-group .stepper-wrapper label,
.price-cart--wrapper .stepper-group .stepper-wrapper input {
   font-family: 'asty-medium', sans-serif;
}

.price-cart--wrapper .product-price-group {
   position: relative;
}

.price-cart--wrapper .product-price-group .special--label {
   position: absolute;
   right: 0;
   font-size: 16px;
   background-color: #FFEA4D;
   padding: 4px 10px;
   color: #000;
}

.product-info .product-details .price-cart--wrapper .stepper-group {
   align-items: flex-end;
}

.atcw-wrapper {
   flex: 1;
   align-items: center;
   display: flex;
}

.atcw-wrapper #button-cart {
   width: 100%;
}

#product .atcw-wrapper .wishlist-compare .btn-wishlist {
   margin: 0 !important;
   min-height: 50px !important;
   border-radius: 0 !important;
}

.minimum-order--wrapper {
   background-color: var(--primary-color);
   padding: 7px 15px;
   border-radius: 10px;
   position: relative;
   margin-bottom: var(--section-spacing);
}

.minimum-order--wrapper .bg-bar {
   position: absolute;
   height: 100%;
   width: 0%;
   background-color: var(--secondary-color);
   animation: glowing 1s ease-in-out infinite;
   top: 0px;
   left: 0px;
   border-radius: 10px;
   transition: 0.35s ease all;
}

.minimum-order--wrapper .bg-bar.is-complete {
   background-color: green;
   animation: glowing_success 1s ease-in-out infinite;
}

.minimum-order--wrapper span {
   color: #fff;
   position: relative;
}

.discounts--wrapper {
   padding: 25px 20px;
   border: 1px solid var(--primary-color);
   border-radius: 10px;
}

.discounts--wrapper>p {
   text-align: center;
}

.discounts--wrapper .discounts-header {
   padding: 5px 20px;
   border: 1px solid #707070;
   border-radius: 10px;
   margin-bottom: 15px;
}

.discounts--wrapper .discounts-header .discounts-note p {
   text-align: center;
   margin-bottom: 10px;
   padding-bottom: 5px;
   border-bottom: 1px solid var(--secondary-color);
}

.discounts--wrapper .discounts-titles {
   display: flex;
   align-items: center;
   justify-content: space-between;
}

.discounts--wrapper .discounts-titles>div {
   flex: 1;
   text-align: center;
}

.discounts--wrapper .discount-row {
   display: flex;
   align-items: center;
   margin-bottom: 7px;
   padding: 7px;
   border-radius: 10px;
}

.discounts--wrapper .discount-row:hover,
.discounts--wrapper .discount-row.active-discount {
   background-color: #D1E8EB;
}

.discounts--wrapper .discount-row>div {
   flex: 1;
   text-align: center;
}

.discounts--wrapper .discounts-footer {
   margin-top: 5px;
   font-size: 12px;
}

.discounts--wrapper .discounts--show-more {
   display: flex;
   justify-content: center;
}

.discounts--wrapper .discounts--show-more span {
   cursor: pointer;
}

.discounts--wrapper.has-many ul li:nth-child(n+5) {
   display: none;
}

.discounts--wrapper.has-not-many .discounts--show-more {
   display: none;
}

.discounts--wrapper.has-many ul li.discounts-footer {
   font-size: 14px;
   text-align: center;
   display: block;
}

.discounts--wrapper.open .discounts--show-more span {
   transform: rotate(180deg);
}

.discounts--wrapper.has-many.open ul li:nth-child(n+5) {
   display: flex;
}

.product-left .product-blocks .nav-tabs {
   border-bottom: 1px solid #2E2E2E;
}

.product-left .product-blocks .nav-tabs li {
   position: relative;
}

.product-left .product-blocks .nav-tabs li.active::after {
   content: "";
   width: 100%;
   position: absolute;
   bottom: 0px;
   background-color: var(--secondary-color);
   height: 2px;
}

.product-left .product-blocks .nav-tabs li.active::before {
   content: "";
   position: absolute;
   bottom: 0px;
   left: calc(50% - 5px);
   width: 0;
   height: 0;
   border-left: 5px solid transparent;
   border-right: 5px solid transparent;
   border-bottom: 10px solid var(--secondary-color);
   min-width: auto;
   min-height: auto;
}

.video-icon svg polygon,
.video-icon svg circle {
   stroke: #fff;
}

.image360-icon,
.video-icon {
   position: absolute;
   top: calc(50% - 18px);
   left: calc(50% - 18px);
   max-width: 36px;
   border: none !important;
}

.unit-price-normal-wrapper {
  display: flex;
  flex-direction: column;
  color: var(--secondary-color)
}

.unit-price-normal-wrapper .unit-price {
  font-family: asty-medium;
  font-size: 40px;
}

#product-product #button-cart {
  flex-direction: row-reverse;
  gap: 5px;
}

#product-product #button-cart::before {
  font-size: 30px;
}

.price-wrapper {
  flex-direction: row;
  display: flex;
  align-items: center;
  gap: 20px;
}

.price-wrapper span {
  font-family: asty-medium;
}

.price-wrapper .price-group {
  gap: 20px;
}

.price-wrapper .product-price,
.price-wrapper .product-tax {
  color: #000 !important;
}

.product-right-wrapper #product .model-availability-wrapper .title.page-title {
  display: none;
}

.cart-estimates-wrapper {
  margin-top: 25px;
}

.product-blocks.blocks-image {
  margin-top: 25px;
}

.extra-group {
  align-items: end;
}

.extra-group .btn-extra {
  height: 50px;
}

.availability-after {
  background: #394871 !important;
  color: white;
}

.availability-after .availability-after-date {
  color: #44B756;
}

.price-cart--wrapper .stepper-group.cart-group .data-container {
  display: flex;
  flex-grow: 1;
}

.price-cart--wrapper .stepper-group.cart-group .stepper-wrapper .stepper {
  border-radius: 0;
}

.mobile .unit-price--title.qty {
  display: flex;
  margin: 0 !important;
  height: 83%;
  max-width: 95px;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.mobile .stepper-group.cart-group .data-container {
  margin-left: 0 !important;
}

.desktop .stepper-group.cart-group {
  flex-wrap: wrap;
}

.unit-price--title.qty {
  display: block;
  flex-basis: 100%;
}

.product-package-quantity-wrapper {
  width: calc(100% + 40px);
  margin-bottom: 15px;
  margin-left: -15px!important;
  margin-right: -15px!important;
  padding-bottom: 15px;
}

.product-package-quantity-container {
  background-color: #D1E8EB;
}

.product-package-quantity {
  margin: auto;
  display: flex;
  font-weight: bold;
  padding-top: 10px;
  padding-bottom: 10px;
  width: calc(100% - 40px);
}

.product-package-quantity > div:nth-of-type(2) {
  min-width: 180px;
  max-width: 180px;
  margin-left: 5px;
}

.box-attribute-container {
  margin-top: var(--section-spacing);
  background-color: #D1E8EB;
  text-align: center;
  width: 100%;
  padding: 25px 20px;
  border: 1px solid var(--primary-color);
  border-radius: 10px;
}

@keyframes glowing {
   0% {
      box-shadow: 0 0 5px var(--secondary-color);
   }

   50% {
      box-shadow: 0 0 20px var(--secondary-color);
   }

   100% {
      box-shadow: 0 0 5px var(--secondary-color);
   }
}

@keyframes glowing_success {
   0% {
      box-shadow: 0 0 5px green;
   }

   50% {
      box-shadow: 0 0 20px green;
   }

   100% {
      box-shadow: 0 0 5px green;
   }
}

@media only screen and (max-width: 500px) {
    .price-cart--wrapper .stepper-group.cart-group .stepper-wrapper .stepper {
        max-width: 150px !important;
    }
}

@media only screen and (max-width: 400px) {
    .price-cart--wrapper .stepper-group.cart-group .stepper-wrapper .stepper {
        max-width: 100px !important;
    }
}

@media only screen and (max-width: 1024px) {
  .price-cart--wrapper {
    position: fixed;
    bottom: var(--mobile-menubar-height);
    margin-bottom: 0 !important;
    background: white;
    padding: 0;
    z-index: 999;
    border-radius: 0;
    border-color: #B0B0B0;
    left: 0;
    width: 100%;
  }

  .unit-price-wrapper {
    width: 100%;
  }

  .unit-price {
    display: flex;
    align-items: center;
    font-size: 14px !important;
    gap: 20px;
  }

  .unit-price-wrapper:first-child {
    border-bottom: solid;
    border-width: 1px;
    border-color: #B0B0B0;
  }

  .unit-price--title {
    background: #ECECEC;
    margin-bottom: 0 !important;
    border-right: solid;
    border-width: 1px;
    border-color: #BCBCBC;
    max-width: 90px;
    text-align: center;
  }

  .unit-price-normal-wrapper {
    align-items: center;
  }

  .price-wrapper {
    background: var(--secondary-color);
    color: white !important;
    justify-content: center;
    gap: 5px;
  }

  .price-wrapper .price-group {
    gap: 5px;
  }

  .price-wrapper .product-price,
  .price-wrapper .product-tax {
    color: white !important;
  }

  .price-wrapper .product-price {
    font-size: 24px !important;
  }

  .stepper-wrapper {
    display: flex;
    gap: 5px;
  }

  .control-label {
    background: #ECECEC !important;
    margin-bottom: 0 !important;
    padding: 20px;
    padding-right: 23px;
    padding-left: 23px;
    font-family: asty-book !important;
    border-right: solid;
    border-width: 1px;
    border-color: #BCBCBC;
  }

  #button-cart .btn-text {
    display: none;
  }

  .stepper-group.cart-group, .stepper-wrapper {
    align-items: center !important;
  }

  .stepper-wrapper {
    margin: 0 !important;
  }

  .product-blocks.blocks-image .tab-content {
    position: fixed;
    top: var(--mobile-header-height);
    background: #fff;
    z-index: 99;
    left: 100%;
    height: 100%;
    width: 100%;
    padding: 0px;
    transition: 0.25s ease all;
    opacity: 0;
    visibility: hidden;
    margin-top: 0 !important;
    z-index: 999;
  }

  .product-blocks.blocks-image .tab-content.active-tab {
    left: 0%;
    opacity: 1;
    visibility: visible;
    padding: 0;
  }

  #product .nav.nav-tabs li {
    background: #F7F8FA;
    padding: 20px;
    border-radius: 50px;
    border: solid;
    border-width: 1px;
    border-color: #707070;
    min-width: 155px;
    cursor: pointer;
  }

  #product .nav.nav-tabs li a {
    color: black;
    display: flex;
    justify-content: center;
    cursor: pointer;
    font-size: 12px;
  }

  .nav.nav-tabs {
    padding-bottom: 1px !important;
    justify-content: center;
  }

  .block-content p {
    padding: 10px;
    margin-bottom: 0 !important;
  }

  .block--back {
    background: #DCDCDC;
    justify-content: center;
    display: flex;
    align-items: center;
  }

  .bb-title {
    font-size: 20px;
    font-family: asty-medium;
    margin-left: 10px;
  }

  .bb-icon {
    cursor: pointer;
    padding-top: 5px;
  }

  .product-right {
    padding-top: 0 !important;
  }

  .product-left {
    padding-bottom: 0 !important;
  }

  .product-right-wrapper #product .title.page-title {
    display: none;
  }

  .product-right-wrapper #product .model-availability-wrapper .title.page-title {
    display: block;
    order: 0;
    border: none;
    background: none;
    margin: 0 !important;
    font-size: 14px;
    padding: 0 !important;
    height: unset;
    margin-left: 16px !important;
  }

  .model-availability-wrapper {
    display: flex;
    flex-direction: column;
    margin-top: 20px;
    margin-bottom: 20px;
    gap: 10px;
    width: calc(100% + 32px);
    margin-left: -16px;
  }

  .model-availability-wrapper div {
    border-radius: 0;
  }
}
