/** Shopify CDN: Minification failed

Line 348:0 Unexpected "}"
Line 527:0 Unexpected "}"

**/
/* mini cart
-----------------------------------------------------------------*/
.bls-minicart-content {
  display: flex;
  flex-direction: column;
  height: 100%;
}

#form-mini-cart {
  display: flex;
  flex-direction: column;
  flex: 1;
  height: 100%;
}

.bls-minicart-body {
  flex-grow: 1;
  overflow: hidden;
  position: relative;
}

.bls-minicart-body .bls-items {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow-y: overlay;
  overflow-x: hidden;
  padding: 0 3rem 3rem;
  display: flex;
  flex-direction: column;
}

.bls-minicart-body .bls-items:has(.cart-recomment) {
  padding-bottom: 2rem;
}

.bls-cart-body .cart-empty {
  padding: 5rem 3rem 3rem;
}

.bls-cart-body .cart-empty .empty {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.bls-cart-body .cart-empty .empty svg {
  margin-bottom: 1.6rem;
}

.header_minicart.active .bls-minicart-wrapper {
  padding: 0;
}

.bls-minicart-content .bls-minicart-header {
  padding: 1.7rem 3rem;
  position: relative;
  border-bottom: 19px solid var(--border-color-base);
}

.bls-minicart-content .bls-minicart-header~.cart-countdown-time {
  margin-top: -2rem;
}

.bls__header_minicart .bls-minicart-content free-ship-progress-bar~.cart-countdown-time {
  margin-top: 0;
}


.bls-minicart-content .bls-minicart-header~.checkout-form {
  margin-top: 2rem;
}

.bls-minicart-heading {
  font-size: 1.5rem;
  font-weight: 800;
}

.bls-minicart-header .cart-count {
  font-family: var(--heading-font-family);
  line-height: 1;
  font-size: 1.8rem;
  background-color: #000000;
  color: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  border-radius: 50%;
  font-size: 1.2rem;
  font-weight: 800;
  padding: 0 4px;
  margin-left: 6px;
}


.bls-minicart-header .button-close {
  line-height: 1;
  top: 50%;
  transform: translateY(-50%);
}

.bls-minicart-header .button-close {
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translateY(-50%);
  
  /* Transformation en cercle */
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: #f5f5f5;/* Couleur de fond du cercle */
  color: #000000; /* Couleur de la croix */
  
  
  /* Centrage parfait de la croix */
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: none;
  cursor: pointer;
  transition: background-color 0.2s ease, transform 0.2s ease;
}

/* Effet au survol */
.bls-minicart-header .button-close:hover {
  background-color: #e5e5e5;
  transform: translateY(-50%) scale(1.05);
}

@media (max-width: 767px) {
  .bls-minicart-header .button-close {
    right: 1.5rem;
  }
}

@media (max-width: 767px) {
  .bls-minicart-header .button-close {
    right: 1.5rem;
  }
}

@media (max-width: 767px) {
  .bls-minicart-header .button-close {
    right: 15px;
  }
}

/* 1. Si la croix est une icône SVG (cas le plus fréquent sur BLS / Minimog) */
.bls-minicart-header .button-close svg {
  width: 12px;  /* Ajustez cette valeur (ex: 10px, 12px, 14px) */
  height: 12px;
}

/* 2. Si la croix est un caractère texte ou symbole font-icon */
.bls-minicart-header .button-close {
  font-size: 1.2rem; /* Réduit la taille si c'est du texte */
}

.bls-minicart-product-info {
display: flex;
flex-direction: column;
padding-right: 10px;
max-width: calc(100% - 87px);

}

.bls-minicart-product__image {
width: 87px;
min-width: 87px;

}

.product-images-style-radius .bls-minicart-product__image .bls__responsive-image {
border-radius: 5px;

}

.bls-minicart-product__image a {
display: block;
width: 100%;

}

.bls-items .cart-item {
border-bottom: 1px solid var(--border-color-base);

}

.bls-items .cart-item:last-child {
border: 0;
margin: 0;
padding: 0;

}

.bls-minicart-product-name {
font-size: var(--base-font-size);
font-weight: var(--base-font-weight);
margin: 0;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
padding-right: 1rem;

}

.bls-minicart-item-variant {
display: flex;
align-items: center;
font-size: 1.4rem;
color: var(--grey-color);
line-height: 1;
flex-wrap: wrap;
margin-bottom: 4px;

}

.bls-minicart-item-regular-price {
color: #18863f;

}

.bls-minicart-item-original-price {
font-size: calc(var(--base-font-size) - 2px);

}

.bls-minicart-item-variant>div {
margin-top: 5px;

} 

.bls-minicart-actions {
  margin-top: 9px;
}

.bls-minicart-wrapper .product-option .label {
  display: none;
}

.product-option-property {
  max-width: 100%;
}

.product-option-property .product-option {
  white-space: nowrap;
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-top: 5px;
}

.cart-item__details .product-option-property .product-option dt {
  display: inline-block;
  padding-right: 3px;
  color: var(--grey-color);
}

.cart-item__details .product-option-property .product-option a {
  font-size: 1.4rem;
}

.product-option-property .product-option:first-of-type {
  margin-top: 0;
}

.product-option-property .product-option::before {
  display: none;
}

.bls-minicart-item-variant .product-option:not(:first-child):before {
  content: "/";
  padding-left: 5px;
}

.bls-minicart-bottom a {
  font-size: 0;
  color: #999999;
  margin: 0 0 10px;
}

.bls-minicart-bottom a svg path {
  stroke: currentColor;
}

.bls-minicart-bottom a:hover {
  color: var(--btn-link-color);
}

.bls-minicart-bottom a span {
  font-size: 1.4rem;
}

.bls-minicart-bottom {
  position: absolute;
  display: flex;
  flex-direction: column-reverse;
  right: 0;
  top: -3px;
}

.bls-minicart-bottom svg [fill]:not([fill="none"]) {
  fill: currentColor;
}

.bls-minicart-bottom svg:hover {
  color: var(--btn-link-color);
}

.bls-minicart-actions .bls-quantity-input {
  height: 30px;
  width: 25px;
  --input-padding: 1rem 0.5rem;
}

.bls-item-quantity {
  padding: 0 1rem;
}

.bls-minicart-item-prices {
  font-weight: var(--bls__product-price-weight);
  color: var(--heading-color);
}

.bls-minicart-item-prices quantity-input {
  border: 1px solid #e0e0e0;
  border-radius: 3px;
}

.cart-item__price-quantity {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
}

.bls-minicart-item-prices quantity-input .quantity__button {
  width: 30px;
}

.bls-cart-summary {
  padding: 2rem 3rem 1.5rem 3rem;
  display: flex;
  flex-direction: column;
  background-color: #ffffffff;
}

.bls-drawer-bottom {
  padding: 0 3rem 3rem 3rem;
}

.bls-cart-summary .bls-subtotal {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 1.8rem;
  font-weight: var(--heading-font-weight);
  order: -1;
}

.bls-drawer-bottom {
  display: flex;
  flex-direction: column;
  --btn-font-weight: var(--heading-font-weight);
  background-color: #ffffffff;
}

.bls-drawer-bottom .viewcart {
  text-align: center;
  margin-bottom: 1rem;
}

.bls-drawer-bottom .checkbox-group {
  --border-color-base: #dbdbdb;
}

.bls-drawer-bottom .checkbox-group .checkmark:before {
  background-color: var(--color-white);
}

.cart_threshold {
  padding: 3.5rem 3rem 2rem;
  color: var(--btn-link-color);
  border-bottom: 1px solid var(--border-color-base);
  font-size: 1.5rem;
  font-weight: normal;
}

.header_minicart .cart_threshold {
  background: #f0f0f0;
}

.cart_shipping .cart_thres_2 .bold {
  color: var(--primary-color);
  font-weight: var(--heading-font-weight);
}

.cart_bar_w {
  height: 5px;
  border-radius: 5px;
  background-color: #dbdbdb;
  margin-bottom: 2rem;
  position: relative;
}

.cart_bar_w span {
  display: block;
  height: 100%;
  position: relative;
  border-radius: 5px;
  transition: var(--bls-transition);
  animation: 5s linear infinite progress;
  background-color: #cb4535;
  -webkit-background-image: linear-gradient(135deg,
      rgba(255, 255, 255, 0.15) 0,
      rgba(255, 255, 255, 0.15) 25%,
      rgba(255, 255, 255, 0) 25%,
      rgba(255, 255, 255, 0) 50%,
      rgba(255, 255, 255, 0.15) 50%,
      rgba(255, 255, 255, 0.15) 75%,
      rgba(255, 255, 255, 0) 75%,
      rgba(255, 255, 255, 0) 100%);
  -moz-background-image: linear-gradient(135deg,
      rgba(255, 255, 255, 0.15) 0,
      rgba(255, 255, 255, 0.15) 25%,
      rgba(255, 255, 255, 0) 25%,
      rgba(255, 255, 255, 0) 50%,
      rgba(255, 255, 255, 0.15) 50%,
      rgba(255, 255, 255, 0.15) 75%,
      rgba(255, 255, 255, 0) 75%,
      rgba(255, 255, 255, 0) 100%);
  -ms-background-image: linear-gradient(135deg,
      rgba(255, 255, 255, 0.15) 0,
      rgba(255, 255, 255, 0.15) 25%,
      rgba(255, 255, 255, 0) 25%,
      rgba(255, 255, 255, 0) 50%,
      rgba(255, 255, 255, 0.15) 50%,
      rgba(255, 255, 255, 0.15) 75%,
      rgba(255, 255, 255, 0) 75%,
      rgba(255, 255, 255, 0) 100%);
  background-image: linear-gradient(135deg,
      rgba(255, 255, 255, 0.15) 0,
      rgba(255, 255, 255, 0.15) 25%,
      rgba(255, 255, 255, 0) 25%,
      rgba(255, 255, 255, 0) 50%,
      rgba(255, 255, 255, 0.15) 50%,
      rgba(255, 255, 255, 0.15) 75%,
      rgba(255, 255, 255, 0) 75%,
      rgba(255, 255, 255, 0) 100%);
  background-size: 40px 40px;
}

.bls__cart-thres .bold {
  color: var(--primary-color);
  font-weight: var(--heading-font-weight);
}

.cart_bar_w span .bls__freeshipping-icon {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 2px solid #cb4535;
  color: #cb4535;
  transition: var(--bls-transition);
  background: var(--color-white);
  position: absolute;
  right: -13px;
  top: 50%;
  transform: translate(50%, -50%);
  margin-top: -1px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.bls__freeshipping-icon svg path {
  fill: var(--primary-color);
  stroke: var(--primary-color);
}

.cart_shipping_free .cart_bar_w span .bls__freeshipping-icon {
  right: 15px;
}


.cart_shipping_free.cart_shipping .bls__freeshipping-icon {
  border-color: #428445;
  color: #428445;
}

.cart_shipping_free .cart_bar_w .percent_shipping_bar {
  background-color: #428445;
}


.cart-countdown-time {
  font-size: 1.4rem;
  margin: 0 3rem 2rem;
  margin-bottom: 0;
  position: relative;
}
.cart-countdown-time {
  background-color: #000000ff; /* Remplacez par votre couleur */
  
  /* Forcer la largeur à 100% sans marges sur les côtés */
  width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
  
  /* Ajuster l'espacement intérieur pour que le texte ne colle pas aux bords */
  padding: 4px 10px;
}

}

.cart-countdown-time .countdown-message {
  padding: 0 0 0.5rem 0;
  padding-left: 10px;
  border-bottom: 1px solid var(--border-color-base);
  color: #f9f9f9ff;
  font-weight: normal;
  font-size: 1.4rem;
}

.countdown-message strong {
  color: #FFFFFF;
  padding-left: 0;           /* Supprime l'espace à gauche */
  display: inline;            /* Remplace inline-block par inline pour coller les éléments */
  letter-spacing: -1px;    /* Resserre légèrement les chiffres et lettres si besoin */
  margin: 0 0.5px;
  font-weight: 800;

}

.countdown-message {
  position: relative;
  padding-left: 40px;
  font-weight: 500;
  font-size: 12.5px;
  color: #FFFFFF;

}

.cart-wrapper .cart-countdown-time {
  --countdown-time-color: #e8f5ff;
  text-align: center;
  background-color: var(--countdown-time-color);
  margin: 0 0 clamp(3rem, 3.5vw, 5rem);
  color: var(--color-link);
  padding: 1.3rem;
}

.cart-wrapper .countdown-message {
  display: inline-block;
  padding: 0 0 0 20px;
  border: 0;
}

.countdown-message::before {
  content: "";
  width: 12px;
  height: 15px;
  position: absolute;
  left: 0;
  top: 3px;
}

.bls__add-giftwrap.loading .loader-icon {
  opacity: 1;
}

.bls__add-giftwrap.loading>span:not(.loader-icon) {
  opacity: 0;
}

.bls-cart-footer .bls__cart-addons {
  --btn-text-transform: capitalize;
  display: flex;
  align-items: center;
  padding-top: 0px;
  padding-bottom: 0px;
  justify-content: center;
}

@media (min-width: 480px) {
  .bls-cart-footer .bls__cart-addons {
    padding-left: 9%;
    padding-right: 9%;
  }
}

.bls__cart-addons>div {
  position: relative;
  display: flex;
  justify-content: center;
}

.bls__cart-addons>div:not(:last-of-type)::after {
  content: "";
  height: 20px;
  border-right: 1px dashed var(--border-color-base);
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

.bls__cart-addons>div:last-of-type {
  border: 0;
}

.bls__cart-addons button {
  background: none;
  border: 0;
  padding: 0;
  font-weight: normal;
  line-height: 1;
  width: 100%;
  padding: 0 40px;
}

.bls__cart-addons button:hover svg path {
  fill: var(--color-link);
}

.bls-cart-footer .bls__addon {
  bottom: 0;
  box-shadow: 0px 5px 30px rgba(0, 0, 0, 0.1);
  border-top: 1px solid var(--border-color-base);
  background-color: var(--color-white);
  left: 0;
  padding: 3rem 3rem;
  pointer-events: none;
  position: absolute;
  transform: translate3d(0, 100%, 0);
  transition: all 0.3s cubic-bezier(0.43, 0.27, 0.36, 0.83);
  width: 100%;
  z-index: 12;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.bls-minicart-content::after {
  content: "";
  background: rgb(255 255 255 / 90%);
  opacity: 0;
  position: absolute;
  transition: var(--bls-transition);
  visibility: hidden;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  z-index: 10;
}

.addons-open .bls-minicart-content::after {
  opacity: 1;
  visibility: visible;
}

.bls-cart-footer .bls__addon.is-open {
  pointer-events: auto;
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
}

.bls__addon-content input,
.bls__addon-content textarea {
  width: 100%;
}

.bls__addon-content textarea {
  min-height: 128px;
}

.bls__addon-actions {
  display: flex;
  flex-direction: column;
}

.bls__addon-message p {
  margin-bottom: 0.5rem;
}

.bls__addon-message p:last-child {
  margin-bottom: 0;
}

.bls__addon-message.warning,
.bls__addon-message.success,
.bls__addon-message.error {
  margin-top: 1rem;
}

.bls__addon-actions .btn-cancel {
  --btn-primary-bg: var(--border-color-base);
  margin-top: 1rem;
}

.bls__mini_cart-tool {
  text-align: center;
  font-size: calc(var(--base-font-size) - 2px);
}

.t4s-field span {
  font-weight: 500;
}

.t4s-field span .cd {
  font-weight: normal;
}

.bls__addon-title {
  font-weight: 500;
  display: flex;
  align-items: center;
  color: var(--color-link);
  text-transform: capitalize;
}

.bls__addon-title svg {
  margin-right: 1rem;
}

.cart__blocks .discounts,
.bls-cart-discounts {
  list-style: none;
  padding: 0;
  margin: 5px 0;
  text-align: right;
  font-size: 12px;
  font-weight: 600;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  text-transform: capitalize;
  color: #137333;
}

.bls-cart-discounts li,
.cart__blocks .discounts li {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
}

.bls-cart-discounts li::before,
.cart__blocks .discounts li::before {
  content: "";
  background:
  width: 21px;
  height: 21px;
  display: inline-flex;
  align-items: center;
  margin-right: 0.5rem;
}

#coupon-messages input {
  width: 100%;
}

@media (min-width: 1025px) {
  .hidden-desktop {
    display: none;
  }
}

@media (max-width: 1024px) {
  .hidden-mobile {
    display: none;
  }
}

@media (max-width: 767px) {
  .cart_threshold {
    padding: 2.5rem 2rem 1.5rem;
  }

  .cart-countdown-time {
    margin-left: 2rem;
    margin-right: 2rem;
  }

  .bls-minicart-body .bls-items {
    padding: 0 2rem 1rem;
  }

  .bls-cart-summary {
    padding: 0 2rem;
  }

  .bls-minicart-wrapper .bls-cart-summary {
    padding: 1rem 1rem 1rem;
    margin-bottom: 0;
    background-color: #f9f9f9ff;
  }

  .bls-drawer-bottom {
    --btn-padding: 1.1rem 2.5rem;
    padding: 0 2rem;
  }

  .bls-minicart-wrapper .bls-drawer-bottom {
    padding-bottom: 2rem;
    background-color: #f9f9f9ff;
  }

  .bls-minicart-content .bls-minicart-header {
    padding: 1.2rem 2rem;
  }

  .bls-cart-summary {
    margin-bottom: 1rem;
  }

  .bls-minicart-body .bls-items .cart-item {
    padding-bottom: 1rem;
    margin-bottom: 1rem;
  }
}

/* Page Shopping Cart
-----------------------------------------------------------------*/
.title-wrapper-with-link {
  margin: var(--spacing-title);
}

/* .cart__warnings,
.cart__contents {
    margin-bottom: calc(var(--space_between_section) - var(--bls-gutter-x, 0px));
} */
.cart-wrapper .page-title {
  --page-title-size: 4.5rem;
}

table.cart-items {
  text-align: left;
  margin: 0;
}

table.cart-items thead th {
  padding: 1.3rem 2rem;
  font-weight: 500;
  color: var(--color-link);
  border: 1px solid var(--border-color-base);
  border-bottom: 0;
}

table.cart-items tbody td {
  vertical-align: middle;
  padding: 2rem 2rem;
  border: 1px solid var(--border-color-base);
}

table.cart-items tbody td.cart-item__media {
  border-right: 0;
}

table.cart-items tbody td.cart-item__details {
  border-left: 0;
  padding-left: 0;
  max-width: 100%;
}

table.cart-items tbody td.cart-item__details dl {
  max-width: 100%;
}

table.cart-items tbody td:last-child {
  text-align: center;
  padding-left: 1rem;
  padding-right: 1rem;
}

table.cart-items tbody .cart-item__totals,
table.cart-items tbody .cart-item__details {
  font-size: 1.4rem;
}

table.cart-items tbody .cart-item__totals {
  font-size: 1.4rem;
  color: var(--color-link);
}

.cart-item__details .cart-item__price-wrapper {
  margin-top: 5px;
}

.cart-item__details a {
  font-size: var(--base-font-size);
  font-weight: var(--bls__product-name-weight);
  margin: 0;
}

.cart-item__details .product-option {
  font-weight: var(--bls__product-price-weight);
}

.cart-item__totals {
  font-weight: 500;
}

.cart-item__quantity-wrapper quantity-input:hover {
  border-color: var(--btn-link-color);
}

.cart-item__quantity-wrapper input {
  --input-padding: 1rem 0.5rem;
  --input-height: 40px;
  width: 40px;
}

.cart-item__media {
  line-height: 0;
  width: 120px;
  min-width: 12rem;
  max-width: 100%;
}

.cart-item__details dl .product-option {
  display: inline-flex;
  align-items: center;
  font-size: 1.4rem;
  color: var(--grey-color);
  margin-top: 0.2rem;
}

.cart-item__details .product-option dt {
  display: none;
}

.cart-item__details dl .product-option:not(:first-child)::before {
  content: "/";

  padding: 0 5px;
}

.cart-remove {
  font-size: 0;
  color: var(--grey-color);
}

.cart-remove:hover,
.cart-close-wishlist:hover {
  color: var(--color-link);
}

.cart-remove span {
  font-size: 1.6rem;
}

.cart__footer {
  margin-top: 5rem;
}

.cart__footer-right-content {
  padding: 4rem 3rem 3rem;
  background-color: var(--light-grey-color);
  --border-color-base: #DEDEDE;
}

.bls__cart-security-image {
  background-color: transparent;
}

.cart__footer-right .cart_threshold {
  padding: 0 0 1.5rem 0;
  background: none;
  display: block;
}

.cart__footer-left .bls__mini_cart-tool {
  text-align: left;
  color: var(--grey-color);
  font-size: var(--base-font-size);
}

.cart__footer-left .bls__addon .field .cd {
  font-weight: 500;
  color: var(--color-link);
}

.cart__note label {
  margin-bottom: 1.5rem;
  display: block;
  text-transform: capitalize;
}

.cart__footer-left .cart__note textarea {
  min-height: 128px;
}

.tax-note {
  font-size: var(--base-font-size);
}

.cart__checkout-button {
  width: 100%;
}

.cart__dynamic-checkout-buttons [role="button"],
.paypal-button.paypal-button-shape-rect {
  border-radius: var(--btn-border-radius) !important;
}

.cart__dynamic-checkout-buttons [role="list"] {
  justify-content: center !important;
  margin-top: 1rem !important;
}

.cart__blocks .totals {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 2rem;
  color: var(--color-link);
  font-weight: var(--heading-font-weight);
}

.cart__ctas {
  margin-top: 2rem;
}

.cart__dynamic-checkout-buttons {
  margin-top: 0.7rem;
}

.cart__ctas .checkmark:before {
  background-color: var(--color-white);
}

.bls__terms-conditions {
  color: var(--color-link);
}

.bls__terms-conditions a {
  text-decoration: underline;
  font-weight: normal;
}

#cart-errors {
  margin-top: 1.25rem;
}

.cart__blocks .totals p {
  margin-bottom: 0.5rem;
  line-height: 1;
}

.bls__cart-security-image>.label {
  color: var(--color-link);
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
}

.bls__cart-security-image>.label svg {
  margin-right: 1rem;
}

.security-image {
  border-radius: 5px;
  overflow: hidden;
}

.cart__footer-left .js-contents {
  margin-bottom: 3rem;
}

cart-note.cart__note {
  display: block;
}

@media (min-width: 992px) {
  .cart__footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
  }

  .cart__footer-left {
    flex: 0 0 70%;
    width: 70%;
  }

  .cart__footer-right {
    flex: 0 0 30%;
    width: 30%;
  }

  .cart__footer-right-content,
  .bls__cart-security-image {
    max-width: 37rem;
    margin-left: 3rem;
  }

  cart-note.cart__note,
  .cart-recommended-products {
    max-width: 515px;
    display: block;
  }

  table.cart-items tbody td.cart-item__quantity {
    max-width: 255px;
  }
}

@media (max-width: 767px) {
  .cart__footer {
    margin-top: 3rem;
  }

  .cart-item__quantity-wrapper input {
    --input-height: 30px;
  }

  table.cart-items tbody .cart-item {
    display: block;
    border: 0;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--border-color-base);
    padding-left: 120px;
    position: relative;
    min-height: 140px;
  }

  /* table.cart-items tbody td:before {
        content: attr(data-title) "";
        margin-right: auto;
        padding-right: 1rem;
    } */
  table.cart-items tbody {
    display: block;
  }

  table.cart-items tbody td:not(.cart-item__media) {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    align-items: center;
    border: 0;
    padding: 0 0 1rem;
  }

  table.cart-items tbody td.cart-item__quantity {
    flex-direction: column;
    align-items: flex-start;
    padding-bottom: 0;
  }

  table.cart-items tbody td.cart-item__details {
    padding-right: 2rem;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
  }

  table.cart-items tbody td:last-child {
    border: 0;
    padding: 0;
    margin: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: auto;
  }

  table.cart-items tbody td.cart-item__media {
    position: absolute;
    left: 0;
    top: 0;
    border: 0;
    padding: 0;
    width: 100px;
    min-width: 100px;
  }

  table.cart-items {
    display: block;
    border: 0;
  }

  table.cart-items thead {
    display: none;
  }

  .bls-minicart-actions .width-35 {
    width: 2.5rem;
  }

  .bls-minicart-actions .bls-quantity-input {
    width: 2rem;
  }

  .cart__footer-right-content {
    padding: 4rem 2rem 2rem;
  }
}

@media (max-width: 576px) {

  .cart__blocks,
  .cart__note {
    padding: 0 0 2rem 0;
    margin: 0 !important;
    width: 100%;
  }
}

.cart__login-title {
  margin-top: 50px;
}

.cart__login-title,
.cart__login-paragraph {
  text-align: center;
}

.bls-minicart-action {
  margin: auto;
  display: inline-flex;
  align-items: center;
}

/* UPSSELL PRODUIT — COMPACT & MINIMAL */

.cart-recomment .list-view-item {
  padding: 8px 10px;
  margin: 0;

  /* Bordure très discrète */
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 6px;

  background: #fff;

  align-items: center;

  /* Typographie plus compacte */
  --bls__product-name-size: 12px;
  --bls__product-price-size: 12px;
  --btn-font-size: 11px;
}


/* Image produit plus petite */
.cart-recomment .list-view-item .product-image,
.cart-recomment .list-view-item img {
  max-width: 90px;
  height: 90px;         /* Hauteur fixe pour créer un carré homogène */
  object-fit: cover;
  border-radius: 4px;
}


/* Nom produit */
.cart-recomment .list-view-item .product-name,
.cart-recomment .list-view-item .product-title {
  font-size: 12px;
  line-height: 1.25;
  font-weight: 500;
}


/* Prix */
.cart-recomment .list-view-item .price {
  font-size: 12px;
  line-height: 1.2;
}


/* Bouton d'ajout plus discret */
.cart-recomment .list-view-item button,
.cart-recomment .list-view-item .btn {
  min-height: 30px;
  padding: 5px 10px;

  font-size: 11px;
  line-height: 1;

  border-radius: 4px;
}


/* Moins d'espace entre plusieurs recommandations */
.cart-recomment .list-view-item + .list-view-item {
  margin-top: 6px;
}


/* Mobile encore plus compact */
@media screen and (max-width: 749px) {

  .cart-recomment .list-view-item {
    padding: 7px 8px;
    border-radius: 5px;

    --bls__product-name-size: 11.5px;
    --bls__product-price-size: 11.5px;
    --btn-font-size: 10.5px;
  }

  .cart-recomment .list-view-item .product-image,
  .cart-recomment .list-view-item img {
    max-width: 90px;
    height: 90px;         /* Hauteur fixe pour créer un carré homogène */
    object-fit: cover;
  }

  .cart-recomment .list-view-item button,
  .cart-recomment .list-view-item .btn {
    min-height: 28px;
    padding: 4px 8px;
  }
}
.product-images-style-radius .cart-recomment .list-view-item {
  border-radius: 1rem;
}

.cart-recomment .list-view-item .btn-primary {
  padding: 0;
  background: transparent;
  color: var(--heading-color);
  border: 0;
  border-radius: 0;
  position: relative;
}

.cart-recomment .swiper:not(.bls__product-gallery) .swiper-pagination {
  margin-top: 1rem;
}

@media (min-width: 1025px) {
  .bls-recommendations-beside {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    transform: translate(-100%);
    width: 22rem;
    background-color: var(--color-white);
    border-left: 1px solid var(--border-color-base);
    border-right: 1px solid var(--border-color-base);
    transition: transform .5s cubic-bezier(.25, .46, .4, 1), all .5s, opacity .5s .2s;
    visibility: hidden;
    z-index: -1;
    opacity: 0;
  }

  .bls__opend-popup-header .bls-recommendations-beside.is-opend {
    transform: translate(-45rem);
    visibility: visible;
    opacity: 1;
  }

  .bls-recommendations-beside .list-view-item {
    flex-direction: column;
    text-align: center;
    padding: 0 0 1rem 0;
    border: 0;
    margin-bottom: 1.5rem;
  }

  .bls-recommendations-beside .bls-cart-upsell {
    padding: 2rem;
    overflow-y: overlay;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    height: calc(100vh - 20px);
    position: relative;
  }
}

.bls-recommendations-beside .cart-recomment {
  padding-top: 0;
}

.bls-recommendations-beside .bls-minicart-heading {
  padding: 1.4rem 1.5rem;
  position: relative;
  margin-bottom: 0;
  border-bottom: 1px solid var(--border-color-base);
}

.bls-recommendations-beside .bls__product-img {
  max-width: 100%;
  margin: 0 0 1.5rem;
  width: 100%;
}

.bls-recommendations-beside .list-view-item .bls__product-price {
  justify-content: center;
  margin-bottom: 1px;
  margin-top: 1px;
}

/* Cart upsell in cart page */
.cart-wrapper .bls__product-img {
  max-width: 8.5rem;
}

.cart-wrapper .cart-recomment .list-view-item {
  border-color: var(--border-color-base);
  --bls__product-name-size: calc(var(--base-font-size) + 2px);
}

.cart-wrapper .list-view-item .bls__product-price {
  font-size: var(--bls__product-price-size);
  color: var(--bls__product-price-color);
  font-weight: var(--bls__product-price-weight);
}

.cart-wrapper .list-view-item .bls__product-name {
  color: var(--bls__product-name-color);
  font-size: var(--bls__product-name-size);
  font-weight: var(--bls__product-name-weight);
}

.cart-wrapper .list-view-item .bls__product-vendor {
  text-transform: uppercase;
  font-size: calc(var(--base-font-size) - 3px);
}

label[for="gift_form_minicart"] span {
  font-weight: var(--heading-font-weight);
  color: var(--heading-color);
}

.cart__contents .cart-recomment {
  padding-top: 3.5rem;
}
/* =========================
   PREMIUM MULTI TIER BAR
========================= */

.multi-tier-shipping-bar {
  padding: 10px 14px 14px;
  background: #ffffffff;
  border-radius: 10px;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.05);
}


/* =========================
   MESSAGE
========================= */

.tier-message {
  margin: 0;
  padding: 0;

  font-size: 13px;
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -0.01em;

  color: #374151;
  text-align: center;
}

.tier-message strong {
  color: #111827;
  font-weight: 700;
}


/* Montant restant dans le texte */
.highlight-amount {
  font-weight: 750;
  white-space: nowrap;
}


/* Nom du cadeau dans le texte */
.highlight-gift {
  font-weight: 750;
  white-space: nowrap;
}


/* =========================
   PROGRESS AREA
========================= */

.tier-progress-container {
  position: relative;

  height: 8px;

  margin: 12px 16px 27px;

}


/* =========================
   BACKGROUND BAR
========================= */

.tier-progress-bg {
  position: relative;

  width: 100%;
  height: 8px;

  background: #e5e7eb;

  border-radius: 999px;

  overflow: hidden;

  /* aucun reflet */
  box-shadow: none;
}


/* =========================
   PROGRESS FILL
========================= */

.tier-progress-fill {
  height: 100%;

  border-radius: 999px;

  background: linear-gradient(
    90deg,
    #34d399 0%,
    #10b981 55%,
    #059669 100%
  );

  transition:
    width 0.45s cubic-bezier(0.22, 1, 0.36, 1);

  /* aucun glow */
  box-shadow: none;
}


/* =========================
   STEPS
========================= */

.tier-step {
  position: absolute;
  top: 50%;

  transform: translate(-50%, -50%);

  display: flex;
  flex-direction: column;
  align-items: center;

  z-index: 3;
}


/* =========================
   STEP CIRCLE
========================= */

.tier-icon {
  width: 28px;
  height: 28px;

  border-radius: 50%;

  background: #ffffff;

  border: 2px solid #cfd4da;

  display: flex;
  align-items: center;
  justify-content: center;

  color: #6b7280;

  /* rendu plat et propre */
  box-shadow: none;

  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    background-color 0.2s ease;
}


/* =========================
   CUSTOM UPLOADED ICON
========================= */

.tier-icon img,
.tier-icon-image {
  width: 30px;
  height: 30px;
  max-width: 30px;

  object-fit: contain;
  display: block;

  opacity: 1;

  transition:
    transform 0.2s ease;
}


/* =========================
   REACHED STEP
========================= */

.tier-step.reached .tier-icon {
  background: #059669;

  border-color: #059669;

  color: #ffffff;

  transform: scale(1);

  /* aucun halo */
  box-shadow: none;
}


.tier-step.reached .tier-icon img,
.tier-step.reached .tier-icon-image {
  transform: scale(1);
}


/* =========================
   NON REACHED STEP
========================= */

.tier-step:not(.reached) .tier-icon {
  background: #ffffff;

  border-color: #cfd4da;

  color: #6b7280;
}


/* =========================
   LABEL BASE
========================= */

.tier-label {
  position: absolute;

  top: 32px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  box-sizing: border-box;

  width: max-content;
  max-width: 92px;

  text-align: center;

  letter-spacing: -0.01em;

  transition:
    background-color 0.2s ease,
    color 0.2s ease,
    padding 0.2s ease,
    border-radius 0.2s ease;
}


/* =========================
   AMOUNT BADGE
   PALIER NON ATTEINT
========================= */

.tier-label-amount {
  padding: 4px 7px;

  background: #f3f4f6;

  border-radius: 4px;

  color: #8f96a3;

  font-size: 11px;
  font-weight: 800;

  line-height: 1;

  white-space: nowrap;

  box-shadow: none;
}


/* =========================
   REWARD BADGE
   PALIER ATTEINT
========================= */

.tier-label-reward {
  padding: 5px 7px;

  background: #171717;

  border-radius: 6px;

  color: #ffffff !important;

  font-size: 8.5px;
  font-weight: 700;

  line-height: 1.12;

  letter-spacing: -0.01em;

  text-transform: uppercase;

  white-space: normal;

  word-break: normal;

  box-shadow: none;
}


/* =========================
   PALIER 1
========================= */

.tier-step.step-1 .tier-label {
  left: 50%;
  transform: translateX(-50%);
}


/* =========================
   PALIER 2
========================= */

.tier-step.step-2 .tier-label {
  left: 50%;
  transform: translateX(-50%);
}


/* =========================
   PALIER 3
========================= */

.tier-step.step-3 .tier-label {
  left: auto;
  right: -10px;

  transform: none;

  max-width: 100px;
}


/* =========================
   BADGES DÉBLOQUÉS
========================= */

.tier-step.reached .tier-label {
  top: 33px;
}


/* Badge palier 1 */
.tier-step.step-1 .tier-label-reward {
  max-width: 82px;
}


/* Badge palier 2 */
.tier-step.step-2 .tier-label-reward {
  max-width: 82px;
}


/* Badge palier 3 */
.tier-step.step-3 .tier-label-reward {
  max-width: 92px;
}


/* =========================
   MOBILE OPTIMIZATION
========================= */

@media screen and (max-width: 749px) {

  .multi-tier-shipping-bar {
    padding: 9px 12px 13px;
    border-radius: 9px;
  }


  .tier-message {
    font-size: 12.5px;
    line-height: 1.25;
  }


  .tier-progress-container {
    height: 7px;

    margin: 11px 15px 26px;
  }


  .tier-progress-bg {
    height: 7px;
  }


  .tier-progress-fill {
    height: 7px;
  }


  .tier-icon {
    width: 25px;
    height: 25px;

    border-width: 2px;
  }


.tier-icon-image {
width: 35px;
height: 35px;
max-width: 35px; 
 }



  /* LABEL BASE */

  .tier-label {
    top: 30px;

    max-width: 78px;
  }


  /* MONTANT */

  .tier-label-amount {
    padding: 4px 6px;

    border-radius: 6px;

    font-size: 10px;
  }


  /* BADGE NOIR */

  .tier-label-reward {
    padding: 3px 6px;

    border-radius: 4px;

    font-size: 7.8px;
    font-weight: 700;

    line-height: 1.05;

    max-width: 74px;
  }


  .tier-step.reached .tier-label {
    top: 31px;
  }


  /* PALIER 1 MOBILE */

  .tier-step.step-1 .tier-label {
    left: 50%;
    right: auto;

    transform: translateX(-50%);
  }


  .tier-step.step-1 .tier-label-reward {
    max-width: 72px;
  }


  /* PALIER 2 MOBILE */

  .tier-step.step-2 .tier-label {
    left: 50%;
    right: auto;

    transform: translateX(-50%);
  }


  .tier-step.step-2 .tier-label-reward {
    max-width: 72px;
  }


  /* PALIER 3 MOBILE */

  .tier-step.step-3 .tier-label {
    left: auto;
    right: -8px;

    transform: none;

    max-width: 82px;
  }


  .tier-step.step-3 .tier-label-reward {
    max-width: 82px;
  }

}
