.ap5-pack-product-content .ribbon {background:#2fb5d2!important;background: -webkit-gradient(linear, 0 0, 0 bottom, from(#2fb5d2), to(#2fb5d2))!important;background: -webkit-linear-gradient(#2fb5d2, #2fb5d2)!important;background: -moz-linear-gradient(#2fb5d2, #2fb5d2)!important;background: -ms-linear-gradient(#2fb5d2, #2fb5d2)!important;background: -o-linear-gradient(#2fb5d2, #2fb5d2)!important;background: linear-gradient(#2fb5d2, #2fb5d2)!important;-pie-background: linear-gradient(#2fb5d2, #2fb5d2)!important;color:#ffffff!important;}
@keyframes ap5loader { 0%, 80%, 100% { box-shadow: 0 2.5em 0 -1.3em #2fb5d2; } 40% { box-shadow: 0 2.5em 0 0 #2fb5d2; } }@-webkit-keyframes ap5loader { 0%, 80%, 100% { box-shadow: 0 2.5em 0 -1.3em #2fb5d2; } 40% { box-shadow: 0 2.5em 0 0 #2fb5d2; } } 
.ap5-pack-product .ap5-pack-product-icon-plus:before {color:#000000!important;}
.ap5-pack-product:hover .ap5-pack-product-icon-remove:after {color:#000000!important;}
.ap5-is-excluded-product .ap5-pack-product-icon-check:after {color:#000000!important;}

.pm-ap-owl-stage-outer{display:none;}
.ap5-view-pack-category{display:none;}




.col.col-12.col-sm-auto.col-add-qty { display: none !important; }




/* Pack : espace de 10px sous la barre grise (sous chaque composant) */
.custom-pack .ap5-pack-product-content {
  margin-bottom: 10px !important; /* sous le border-bottom gris */
}




/* Fiche produit : supprimer les lignes vertes autour des attributs */
#col-product-info .product-variants {
  border-top: none !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
}

#col-product-info .product-variants::after {
  content: none !important;
  display: none !important;
  border-top: 0 !important;
  margin: 0 !important;
}






/* --- Ligne 1 : Titre à gauche (peut wrap), Prix à droite (nowrap) --- */
.custom-pack .ap5-pack-product-content {
  display: grid;
  grid-template-columns: 1fr auto;  /* titre | prix */
  column-gap: 10px;
  row-gap: 8px;
  align-items: center;
}

.custom-pack .ap5-pack-product-title {
  grid-column: 1;
  margin: 0; /* nettoyage */
}

/* Le lien du titre peut revenir à la ligne */
.custom-pack .ap5-pack-product-title a {
  white-space: normal;
}

/* La QUANTITÉ ne doit pas se couper (x 1 / x 2...) */
.custom-pack .ap5-pack-product-title .custom-pack-qty {
  display: inline-block;
  white-space: nowrap;
}

/* Bloc prix aligné à droite et sur une seule ligne */
.custom-pack .ap5-pack-product-infos {
  grid-column: 2;
  justify-self: end;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap;              /* le prix reste sur une ligne */
}

/* (si pas déjà fait) masquer le libellé "Prix du produit :" */
.custom-pack .ap5-pack-product-price > .label {
  display: none !important;
}

/* --- Mobile : une seule colonne, mais prix toujours sur 1 ligne --- */
@media (max-width: 575.98px) {
  .custom-pack .ap5-pack-product-content {
    grid-template-columns: 1fr;     /* tout en une colonne */
  }
  .custom-pack .ap5-pack-product-infos {
    grid-column: 1;
    justify-self: end;               /* reste aligné à droite */
    white-space: nowrap;             /* toujours sur une ligne */
  }
}














/* Pack : espace entre le label d'attribut et la liste des valeurs */
.custom-pack .ap5-attributes .ap5-attribute-fieldset > .control-label {
  display: inline-block;
  margin-right: 10px;
}

/* Pack (AP5) : masquer le libellé "Prix du produit :" et garder le prix */
.custom-pack .ap5-pack-product-price > .label {
  display: none !important;
}




/* Row 1: title (left) + price (right). Row 2+: rest full width */
.custom-pack .ap5-pack-product-content {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  column-gap: 10px;
  row-gap: 8px;
}

/* Title on the left */
.custom-pack .ap5-pack-product-title {
  grid-column: 1;
  margin: 0; /* tidy */
}

/* Price block on the right (same line as title) */
.custom-pack .ap5-pack-product-infos {
  grid-column: 2;
  justify-self: end;
  float: none !important;    /* neutralize theme floats */
  margin: 0 !important;
  padding: 0 !important;
}

/* Hide "Prix du produit :" label (keep the number) */
.custom-pack .ap5-pack-product-price > .label {
  display: none !important;
}

/* Everything else (attributes, delivery info, etc.) goes full width below */
.custom-pack .ap5-attributes,
.custom-pack .ap5-delivery-information {
  grid-column: 1 / -1;
}

/* (From earlier) 10px gap between attribute label and its values */
.custom-pack .ap5-attributes .ap5-attribute-fieldset {
  display: flex;
  align-items: center;
}
.custom-pack .ap5-attributes .ap5-attribute-fieldset > .control-label {
  margin-right: 10px;
}









/* Pack : miniature en 50x50 */
.custom-pack .ap5-pack-product--img-container {
  width: 50px !important;
  height: 50px !important;
  max-width: 50px !important;
  overflow: hidden;
}

.custom-pack .ap5-pack-product--img-container img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover; /* remplit le carré sans déformer (recadrage si besoin) */
}