/*
 * Custom code goes here.
 * A template should always ship with an empty product.css
 */

/* *************** product general settings ***************** */

/* ********************************************************** */
/* *************** product thumbnails ***************** */
.thumbnails__container .thumbnail.active img {
  border-color: var(--green-5);
}
/* **************************************************** */
/* *************** product-availability ***************** */
.product-availability-delivery-info-container:has(
    #product-availability:only-child
  ),
.js-product-availability:has(.product-availability-content.d-none) {
  display: none;
}
/* ****************************************************** */
/* *************** shipping info ***************** */
.shipping-info-container {
  --bs-card-bg: #fff7f7;
  --bs-border-style: dashed;
  --bs-card-box-shadow: 0 0.3rem 0.5rem rgba(0, 0, 0, 0.15);
}
/* *********************************************** */
/* *************** product description ***************** */
.product__description :is(ol, ul) {
  list-style: none;
  padding-left: 0;
}

.product__description.product__description-short.description-container.rich-text.description-new :is(ol, ul) {
  list-style: disc !important;
  padding-left: 20px !important;
}

.detail__manufacturer-logo {
    max-height: 150px;
    max-width: 150px;
    width: auto;
}

.product__description :is(img, p, ul, ol, h3) {
  margin: 0;
}
.product__description img {
  display: inline;
}
.product__description :is(h3, .h3) {
  font-size: 1.25em;
}
/* ***************************************************** */
/* *************** product discounts ***************** */
.product__discounts .table-wrapper {
  --bs-border-color: #ccc;
  box-shadow: 0 0.3rem 0.5rem rgba(0, 0, 0, 0.15);
}
.product__tax-label,
.product__discounts .buy-info {
  --bs-alert-bg: #ffeded;
  --bs-alert-border-color: #ffeded;
}
.product__discounts__table thead {
  --bs-danger-rgb: 255, 5, 5;
}
.product__discounts__table th {
  padding: 0.75rem 0.825rem;
  background: #e10505;
}
.product__discounts__table td {
  padding: 0.5rem 0.825rem;
  border-color: #ccc;
}
.product__discounts__table td span {
  --bs-alert-bg: #ffeded;
}
/* *************************************************** */
/* ******************** product variants ******************** */
.product__variants ul {
  gap: 0.5rem 0.625rem;
}
.variant__type-color .color:is(.active, :hover) {
  border-color: var(--main-text-color);
  border-width: 1px;
  box-shadow: inset 0px 0px 0px 1px white;
}
.variant__type-radio .input-container {
  min-width: 75px;
  --bs-success-rgb: 6, 117, 25;
  --bs-border-color: #64d375;
}
.variant__type-radio .input-container label {
  box-shadow: 2px 2px 4px #25252538;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,
    border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.variant__type-radio .input-container label:has(input:checked) {
  --bs-border-color: rgb(var(--bs-success-rgb));
  background-color: var(--green-5);
  color: white;
}
.variant__type-radio
  .input-container
  label:not(.bg-green-5, :has(input:checked)) {
  background-color: #ccebd3;
}
.variant__type-radio
  .input-container
  label:not(.bg-green-5, :has(input:checked)):hover {
  color: white;
  background-color: #49bb56;
  --bs-border-color: rgb(var(--bs-success-rgb));
}

/* ********************************************************** */
/* ****************** product prices ******************* */
.product__discount-value {
  font-size: 0.875rem;
  padding: 0.625rem;
}
.product__price-regular {
  color: #757575;
}
/* ***************************************************** */
/* ***************** product cart and qtty ************************ */
#quantity_wanted {
  min-height: 2.625rem;
}
.quantity-button button:focus,
.quantity-button button:hover {
  border-color: #ced4da;
  opacity: 1;
  color: var(--green-4);
}
.product__discount-value__container:empty {
  display: none;
}
.product-actions__button .btn.add-to-cart {
  min-height: calc(2.5rem + 25px + 0px);
}
.product-actions__button .btn.add-to-cart .btn-cart__label {
  margin-right: 35px;
}
/* **************************************************************** */
/* *************** product actions ***************** */
.product__actions .btn-outline-primary {
  min-height: 42px;
  --bs-btn-color: inherit;
  --bs-btn-hover-color: var(--green-10);
  --bs-btn-active-color: var(--green-10);
}
.call-us-container .fa__phone_icon {
  transform: rotate(17deg) translateY(4px);
  color: #d6323a;
}
/* ************************************************* */
/* *************** custom action modals ***************** */
#product-rate-modal .payment-cards-container {
  --preferred-item-width: clamp(120px, 20%, 200px);
  grid-template-columns: repeat(
    auto-fit,
    minmax(var(--preferred-item-width), 1fr)
  );
  max-width: min(calc(var(--item-count) * var(--preferred-item-width)), 100%);
}
/* ****************************************************** */
/* ******************** card outlet ******************** */
.section-outlet .card-outlet {
        background: rgb(2, 0, 36);
    background: linear-gradient(170deg, rgba(2, 0, 36, 1) 0%, rgba(1, 125, 25, 1) 63%, rgb(0 29 2) 100%);
  --bs-card-box-shadow: 0 5px 19px rgb(0 0 0 / 30%);
}
.card-outlet .s-o-t-main {
  font-size: 3.375rem;
  -webkit-text-stroke: 0.4px #fff;
}
@media (max-width: 767px) {
  .card-outlet .s-o-t-main {
    font-size: 2.5rem;
  }
}
.card-outlet .btn {
  --bs-btn-border-width: 2px;
  --bs-btn-border-color: white;
  --bs-btn-hover-border-color: white;
  --bs-btn-bg: #e42b11;
  --bs-btn-hover-bg: #f66049;
  --bs-btn-padding-x: 4rem;
  --bs-btn-padding-y: 0.5rem;
  animation: pulse 2s infinite;
}

.card-outlet .img-placeholder {
  width: 180px;
}

@keyframes pulse {
  0% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7);
  }

  70% {
    transform: scale(1);
    box-shadow: 0 0 0 10px rgba(255, 255, 255, 0);
  }

  100% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
  }
}

/* ***************************************************** */
/* *************** product tabs ***************** */
.product__infos.accordion {
  --bs-accordion-body-padding-y: 1rem;
  --bs-accordion-body-padding-x: 1rem;
}
.product__infos.accordion .accordion-button {
  padding: 1rem;
  will-change: border-radius;
}
.product__infos.accordion .accordion-body {
  padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);
}
#product-details-accordion:has(.product__details:empty) {
  display: none;
}
#product-details-accordion:has(#product-details:only-child) {
  display: none;
}
@media (max-width: 767px) {
  .product__infos.accordion .accordion-button {
    font-size: 1rem;
  }
}
/* ********************************************** */
/* *************** product features ***************** */
.product__details,
.product__features {
  line-height: 1.5;
}
.product__features .detail:nth-child(odd) {
  background: #fdfdfd;
}
.product__features .detail:nth-child(even) {
  background: #edf7eb;
}
.product__infos .detail {
  gap: 1rem;
}
@media (max-width: 767px) {
  .product__details,
  .product__features {
    font-size: 0.875rem;
  }
}
@media (max-width: 375px) {
  .product__infos .detail {
    flex-direction: column;
    align-items: flex-start;
  }
  .product__infos .detail .detail__left {
    width: 100%;
  }
}
/* ************************************************** */

.quantity-button button:hover svg path {
  fill: var(--green-4) !important;
}

sup.suptrans{font-size: 0.8rem;top: -0.29rem;margin-left: 0.1rem;}

#pack-products li.product-flag.badge.m-0.discount,
#pack-products .quantity-discount-label-container {
    display:none!important;
}


/* *************** smart mix scroll button ***************** */
.btn-smart-mix {
    color: black; 
    border-radius: var(--bs-btn-border-radius, 3px);
    transition: 0.2s ease-out;
    display: none;
    padding: 0.4rem 0.6rem;
    gap: .75rem;
    font-weight: 700;
    letter-spacing: .02em;
    background: #e3f5db;
    border: 3px solid #339a19;
}
body:has(.product-included-packs) .btn-smart-mix,
body.has-included-packs .btn-smart-mix {
    display: flex;
    align-items: center;
    justify-content: center;
}
.btn-smart-mix:hover,
.btn-smart-mix:focus {
    color: var(--green-24);
    filter: brightness(1.07);
    transform: translateY(-1px);
    box-shadow: 0 0.25rem 0.5rem rgba(100, 179, 0, 0.35);
}
.btn-smart-mix:active {
    transform: translateY(0);
    box-shadow: none;
}
.btn-smart-mix .material-icons {
    font-size: 25px;
    line-height: 1;
    flex-shrink: 0;
    color: #206b0d;
}
.btn-smart-mix__label {
    flex-grow: 1;
}
.btn-smart-mix__chevron {
    display: inline-flex;
    animation: smartMixBounce 1.6s ease-in-out infinite;
}
@keyframes smartMixBounce {
    0%, 20%, 50%, 80%, 100% { transform: translateY(0); }
    40% { transform: translateY(3px); }
    60% { transform: translateY(1px); }
}
@media (prefers-reduced-motion: reduce) {
    .btn-smart-mix { transition: none; }
    .btn-smart-mix__chevron { animation: none; }
}
/* ********************************************************* */
/* *************** included packs scroll target ***************** */
.product-included-packs {
    scroll-margin-top: 100px;
}
/* ************************************************************** */

/* *************** wishlist moved onto the cover ***************** */
.wishlist-button-product {
    display: none !important;
}
.wishlist-cover-host {
    position: relative;
}
.wishlist-cover-btn {
    position: absolute;
    top: 0.635rem;
    right: 0.635rem;
    z-index: 30;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 2.5rem;
    width: 2.5rem;
    min-width: 2.5rem;
    padding: 0;
    background-color: #fff;
    border: none;
    border-radius: 50%;
    box-shadow: 0.125rem -0.125rem 0.25rem 0 rgba(0, 0, 0, 0.15);
    cursor: pointer;
    transition: 0.2s ease-out;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;

}
.wishlist-cover-btn i {
    color: var(--red-4);
    font-size: 22px;
    line-height: 1;
}
.wishlist-cover-btn:hover {
    opacity: 0.7;
}
.wishlist-cover-btn:focus {
    outline: 0;
}
.wishlist-cover-btn:active {
    transform: scale(1.15);
}
/* *************************************************************** */
