.b-entoure {
  display: inline-block;
  border: 2px solid rgba(240, 96, 7, 0.901);
  border-radius: 25px;
  padding: 2px 6px;
  margin: 0 4px;
}


.b-icon { 
    vertical-align: middle;
    fill: #333;
    cursor: pointer;
    /*transition: fill 0.2s ease;*/
    transition: transform 0.2s ease, fill 0.3s ease;
    border: 2px solid rgba(69,54,37,0.2);
    border-radius: 5px;
    padding:1px;
    
}
.b-icon:hover {
    fill: #ff5722;
    transform: scale(1.2) rotate(-5deg);
}


  /* Afficher uniquement sur desktop */
.b-desktop-only {
    display: block;
}

.b-mobile-only {
    display: none;
}

/* Afficher uniquement sur mobile */
@media (max-width: 768px) {
    .b-desktop-only {
        display: none;
    }
    .b-mobile-only {
        display: block;
    } 
}



table.b-tablecaddie {
    width: 100%;
    border-collapse: collapse;
    font-family: Arial, sans-serif;
    border: none;
}

table.b-tablecaddie thead th {
  background-color: #FFF;
    font-weight: bold;
    color: #000;
    padding: 12px 0 2px 0;
    /*text-align: left;*/
    /*border-bottom: 2px solid #2e50cc;*/
    border: none;
}

table.b-tablecaddie tbody tr:nth-child(odd) {
    background-color: #f9f9f9;
}

table.b-tablecaddie tbody tr:nth-child(even) {
    background-color: #ffffff;
}

table.b-tablecaddie tbody td {  
    padding: 10px;
    border: none;
    vertical-align:top;
/*    border-bottom: 1px solid #ddd;*/
}
.tablevide, .tablevide tr, .tablevide td
{ 
  padding: 0;
  margin:0;
  border:none;
}

.b-text-left {
  text-align: left;
}
.b-text-right {
  text-align: right;
}
.b-text-center {
  text-align: center;
}


/* boutique */

.b-form {
  max-width: 500px;
  margin: auto;
  padding: 1em;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.b-form-group {
  margin-bottom: 0.8em;
  display: flex;
  flex-direction: column;
}

.b-label {
  margin-bottom: 0.5em;
  font-weight: bold;
}
 
.b-input {
  width: 100%;
  padding: 0.75em;
  font-size: 1em;
  border: 1px solid #ccc;
  border-radius: 5px;
  box-sizing: border-box;
}


/* Sert à occuper la place du label à gauche */
.b-label-placeholder {
  width: 30%;
}

/* Le titre de section dans la colonne des champs */
.b-section-title {
  font-size: 1.2em;
  font-weight: bold;
  margin: 0;
  align-self: center;
}

/* alignement mobile / desktop */
.b-form-group {
  display: flex;
  flex-direction: column;
  margin-bottom: 0.8em;
}

 

.b-fieldset {
  border: none;
  padding: 0;
  margin: 0 0 1.5em 0;
}

.b-textarea,
.b-select {
  width: 100%;
  padding: 0.75em;
  font-size: 1em;
  border: 1px solid #ccc;
  border-radius: 5px;
  box-sizing: border-box;
  height: auto;
  min-height: 45px;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='10'%3E%3Cpolygon points='0,0 14,0 7,10' fill='%23333'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1em top 50%;
  background-size: 0.65em auto;
}

.b-radio-group {
  display: flex;
  flex-direction: column;
  gap: 0.75em;
  flex: 1;
  padding: 0;
  margin: 0;
  border: none;
}

.b-radio-option {
  display: flex;
  align-items: center;
  font-size: 1em;
  gap: 0.5em;
  cursor: pointer;
}

.b-radio-option input[type="radio"] {
  accent-color: #007BFF;
  transform: scale(1.2);
}






.b-button {
  display: inline-block;
    font-weight: 400;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    background-color: transparent;
    padding: .375rem .75rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: .25rem;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    font-family: inherit;
    box-sizing: border-box; 
}

.b-button-green
{
      color: #28a745;
    border: 2px solid #28a745;
}
.b-button-green:hover
{
  background-color: #28a745;
  color: #FFF;
}
.b-button-red
{
      color: #dc3545;
    border: 2px solid #dc3545;
}
.b-button-red:hover
{
  background-color: #dc3545;
  color: #FFF;
}

.b-button-grey
{
      color: #999;
    
}
.b-button-grey:hover
{
  background-color: #999;
  color: #000;
}




/* responsive desktop : label à gauche, champ à droite */
@media (min-width: 768px) {
  .b-form-group {
    flex-direction: row;
    align-items: center;
  }

  .b-label {
    width: 30%;
    margin-bottom: 0;
    margin-right: 1em;
    text-align: right;
  }




  .b-label-top {
    align-self: flex-start;
    margin-top: 0; /* léger décalage visuel agréable */
  }
  .b-input,
  .b-select,
  .b-textarea {
    flex: 1;
  }
}

.b-field-wrapper {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.b-field-hint {
  font-size: 0.9em;
  color: #666;
  margin-top: 0.25em;
}


/* adresse livraison + facturation  */

.b-address-container {
  display: flex;
  flex-direction: column;
  gap: 2em;
  margin-top: 2em;
}

.b-address-block {
  background-color: #f8f8f8;
  padding: 1em;
  border-radius: 8px;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.05);
}

/* Titre de chaque bloc */
.b-address-title {
  font-weight: bold;
  margin-bottom: 0.5em;
}

/* Texte de l’adresse */
.b-pay-address {
  line-height: 1.6;
  white-space: pre-line;
  font-style: normal;
} 



.cherchegls {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: flex-end;
}

.cherchegls > div, 
.cherchegls button {
  flex: 1;
  min-width: 150px;
}

@media (max-width: 900px) {
  .cherchegls {
    flex-direction: column;
    align-items: stretch;
  }

  .cherchegls > div,
  .cherchegls button {
    width: 100%;
    margin-bottom: 10px;
  }
}

/* Version desktop : aligner les blocs côte à côte */
@media (min-width: 768px) {
  .b-address-container {
    flex-direction: row;
    justify-content: space-between;
  } 

  .b-address-block {
    width: 48%;
  }
}


/* Responsive mobile */
@media (max-width: 480px) {
  .b-form {
    padding: 0.5em;
  }

  .b-input, .b-button {
    font-size: 1em;
  }
}




  /* RESPONSIVE TABLETTE & DESKTOP */
  @media (min-width: 768px) {
    .b-form-container {
    display: flex;
    gap: 20px; /* Espacement entre colonnes */
}

  .b-form-colonne {
      flex: 1; /* Chaque colonne prend la même largeur */
  }
  }



/* ========= SCOPES & RESET LÉGER POUR LE CADDIE ========= */
.page-cart main{ padding: 1rem 0; }                    /* moins d'air que le global */
.page-cart main > * + *{ margin-top: 1rem; }           /* neutralise le gros rythme vertical global */
.page-cart h1{ margin:.25rem 0 .75rem; font-size:1.75rem; }
.page-cart p{ margin:.5rem 0; }

/* Aliases: certains templates utilisent .tablecaddie, d'autres .b-tablecaddie */
.page-cart table.tablecaddie,
.page-cart table.b-tablecaddie{
  width:100%; border-collapse:collapse; border:none; font-family:inherit;
}
.page-cart table.tablecaddie thead th,
.page-cart table.b-tablecaddie thead th{
  background:#fff; font-weight:700; color:#000; padding:12px 0 6px; border:none; text-align:left;
}
.page-cart table.tablecaddie tbody td,
.page-cart table.b-tablecaddie tbody td{
  padding:10px; border:none; vertical-align:top;
}
.page-cart .tablevide, .page-cart .tablevide tr, .page-cart .tablevide td{ padding:0; margin:0; border:none; }

/* Icônes caddie (un poil moins "massives") */
.page-cart .b-icon{ border-width:1px; padding:0; }
.page-cart .b-icon:hover{ transform: scale(1.08) rotate(-3deg); }

/* Boutons */
.page-cart .b-button{ padding:.45rem .9rem; font-size:1rem; line-height:1.25; border-radius:.35rem; }
.page-cart .b-button-green{ color:#28a745; border:2px solid #28a745; }
.page-cart .b-button-red{   color:#dc3545; border:2px solid #dc3545; }

/* Formulaires: compacter */
.page-cart .b-form{ max-width:720px; margin:1rem auto; padding:.75rem; box-shadow:0 0 10px rgba(0,0,0,.06); }
.page-cart .b-form-group{ margin-bottom:.6rem; }
.page-cart .b-label{ margin-bottom:.35rem; font-weight:600; }
.page-cart .b-input, 
.page-cart .b-select, 
.page-cart .b-textarea{ padding:.6rem .7rem; font-size:1rem; }
.page-cart .b-field-hint{ font-size:.85rem; color:#666; }

/* Desktop: 2 colonnes confort mais plus serré */
@media (min-width:768px){
  .page-cart .b-form-group{ flex-direction:row; align-items:center; }
  .page-cart .b-label{ width:28%; margin:0 1rem 0 0; text-align:right; }
  .page-cart .b-input, .page-cart .b-select, .page-cart .b-textarea{ flex:1; }
  .page-cart .b-address-container{ gap:1.25rem; }
  .page-cart .b-address-block{ padding:.85rem; }
}

/* Mobile: lisible, sans "trous" */
@media (max-width:768px){
  .page-cart .b-form{ padding:.6rem; }
  .page-cart .b-mobile-only{ display:block; }
  .page-cart .b-desktop-only{ display:none; }
}

/* Tableau “articles enregistrés pour plus tard” */
.page-cart .b-text-left{ text-align:left; }
.page-cart .b-text-right{ text-align:right; }
.page-cart .b-text-center{ text-align:center; }

/* Prix TTC / badges (harmonisé avec le reste du site si absent) */
.page-cart .price-old{ opacity:.65; text-decoration:line-through; margin-right:.35rem; }
.page-cart .price-new{ font-weight:700; color:#222; }
.page-cart .badge-remise{
  display:inline-block; margin-left:.35rem; padding:.1rem .45rem; border-radius:999px;
  font-size:.8rem; line-height:1; background:#0288d1; color:#fff;
}

/* Petits ajustements de lisibilité */
.page-cart .b-address-title{ font-weight:700; margin-bottom:.35rem; }
.page-cart .b-pay-address{ line-height:1.5; }




/* ===================== CADDIE — COMPACT OVERLAY ===================== */
/* Resserre le rythme vertical global sur la page du caddie uniquement */
:root{
  /* si le caddie réutilise <main> du thème, on réduit les espacements */
  --es-gap-sec: 1rem;
  --es-gap-sec-lg: 1.5rem;
}

/* Moins d’air autour du contenu principal */
main{ padding: 1rem 0; }
main > * + *{ margin-top: 1rem; }

/* Titres & textes (évite l’impression de <br> partout) */
h1{ margin: .25rem 0 .75rem; font-size: 1.75rem; }
h2{ margin: .35rem 0 .7rem;  font-size: 1.35rem; }
h3{ margin: .35rem 0 .6rem;  font-size: 1.15rem; }
p, ul, ol{ margin: .5rem 0; }

/* Blocs génériques éventuellement présents */
.home-hero,
.brand-section,
.quick-links{ margin-top: .75rem; margin-bottom: .75rem; }

/* Tableaux caddie */
table.b-tablecaddie,
table.tablecaddie{
  width:100%; border-collapse:collapse; border:none;
}
.b-tablecaddie thead th,
.tablecaddie thead th{
  background:#fff; color:#000; padding:10px 0 6px; border:none; text-align:left;
}
.b-tablecaddie tbody td,
.tablecaddie  tbody td{
  padding:10px; border:none; vertical-align:top;
}
.tablevide, .tablevide tr, .tablevide td{ padding:0; margin:0; border:none; }
.b-text-left{ text-align:left; }
.b-text-right{ text-align:right; }
.b-text-center{ text-align:center; }

/* Icônes un peu moins imposantes */
.b-icon{ border-width:1px; padding:0; }
.b-icon:hover{ transform: scale(1.08) rotate(-3deg); }

/* Boutons */
.b-button{ padding:.45rem .9rem; line-height:1.25; border-radius:.35rem; }
.b-button-green{ color:#28a745; border:2px solid #28a745; }
.b-button-red{   color:#dc3545; border:2px solid #dc3545; }

/* Formulaires: compactage soft */
.b-form{ max-width:720px; margin:1rem auto; padding:.75rem; box-shadow:0 0 10px rgba(0,0,0,.06); }
.b-form-group{ margin-bottom:.6rem; }
.b-label{ margin-bottom:.35rem; font-weight:600; }
.b-input, .b-select, .b-textarea{ padding:.6rem .7rem; font-size:1rem; }
.b-field-hint{ font-size:.85rem; color:#666; }
.b-address-container{ gap:1rem; }
.b-address-block{ padding:.85rem; }

/* Desktop: 2 colonnes resserrées */
@media (min-width:768px){
  .b-form-group{ flex-direction:row; align-items:center; }
  .b-label{ width:28%; margin:0 1rem 0 0; text-align:right; }
  .b-input, .b-select, .b-textarea{ flex:1; }
  .b-address-container{ display:flex; flex-direction:row; justify-content:space-between; }
  .b-address-block{ width:48%; }
}

/* Mobile: lisible sans “trous” */
@media (max-width:768px){
  .b-form{ padding:.6rem; }
  .b-mobile-only{ display:block; }
  .b-desktop-only{ display:none; }
}

/* Prix & promo (harmonisé avec le reste du site si utilisé dans le caddie) */
.price-old{ opacity:.65; text-decoration:line-through; margin-right:.35rem; }
.price-new{ font-weight:700; color:#222; }
.badge-remise{
  display:inline-block; margin-left:.35rem; padding:.1rem .45rem; border-radius:999px;
  font-size:.8rem; line-height:1; background:#0288d1; color:#fff;
}


.page-cart .cb-logos{display:flex;align-items:center;gap:.5rem}
.page-cart .cb-logos img,
.page-cart .cb-logos input[type=image]{height:28px;width:auto}
/* Logos CB/Visa/MC en ligne dans le bloc paiement */
.page-cart .cb-logos{ margin:.25rem 0; }

/* Le vrai conteneur des logos est le blockquote → on le met en flex */
.page-cart .cb-logos blockquote{
  display:flex;
  align-items:center;
  gap:.5rem;            /* espace entre logos */
  flex-wrap:wrap;       /* retour à la ligne si écran étroit */
  margin:0;             /* supprime la marge par défaut du blockquote */
}

/* Override du global img{display:block;} uniquement ici */
.page-cart .cb-logos img,
.page-cart .cb-logos input[type="image"]{
  display:inline-block; /* ← redevient “inline” visuellement */
  height:28px;
  width:auto;
  border:0;
  padding:0;
  background:transparent;
}

/* On masque les GIF d'espacement (INTERVAL.gif) et on laisse gap gérer l’écart */
.page-cart .cb-logos img[src*="INTERVAL"]{ display:none; }


/* =========================================================
   CADDIE — Correctifs visuels (scopés .page-cart uniquement)
   ========================================================= */

/* 1) Kill les bordures héritées du thème sur cette page */
.page-cart table,
.page-cart th,
.page-cart td {
  border: 0 !important;
}

/* 2) Fieldset/legend : aucun cadre “UA” */
.page-cart fieldset { 
  border: 0 !important; 
  margin: 0 0 12px; 
  padding: 0; 
}
.page-cart .b-fieldset {      /* au cas où tu utilises la classe */
  border: 0 !important; 
  background: transparent; 
  box-shadow: none; 
  padding: 0;
}
.page-cart legend {
  display: block;
  width: 100%;
  margin: 0 0 .5rem;
  padding: 0;
  font-weight: 700;
}

/* 3) Alignements d'en-tête et de cellules (y compris <td> dans <thead>) */
.page-cart thead th.b-text-right,
.page-cart thead td.b-text-right,
.page-cart .b-text-right { text-align: right !important; }
.page-cart .b-text-left  { text-align: left  !important; }
.page-cart .b-text-center{ text-align: center!important; }

/* 4) Espacements propres des tableaux caddie */
.page-cart table.b-tablecaddie,
.page-cart table.tablecaddie {
  width: 100%;
  border-collapse: collapse;
  font-family: inherit;
}
.page-cart table.b-tablecaddie thead th,
.page-cart table.b-tablecaddie thead td,
.page-cart table.tablecaddie thead th,
.page-cart table.tablecaddie thead td {
  background: #fff;
  font-weight: 700;
  color: #000;
  padding: 10px 0 6px !important;
}
.page-cart table.b-tablecaddie tbody td,
.page-cart table.tablecaddie  tbody td {
  padding: 10px !important;
  vertical-align: top;
}

/* 5) Radios : une option par ligne, toujours */
.page-cart .b-radio-group{
  display: flex;
  flex-direction: column !important;
  gap: .6rem;
}
.page-cart .b-radio-option{
  display: flex;
  align-items: center;
  gap: .5rem;
}

/* 6) Spacing compact sous les titres (évite l'effet <br><br>) */
.page-cart main{ padding: 1rem 0; }
.page-cart main > * + *{ margin-top: 1rem; }
.page-cart h1{ margin: .25rem 0 .8rem; font-size: 1.8rem; }
.page-cart h2{ margin: .35rem 0 .7rem; font-size: 1.35rem; }
.page-cart p { margin: .5rem 0; }

/* 7) Boutons (valider/annuler) cohérents avec le thème */
.page-cart .b-button{
  padding: .55rem 1rem;
  line-height: 1.2;
  border-radius: .4rem;
}
.page-cart .b-button-green{
  color:#fff;
  background:#28a745;
  border:2px solid #28a745;
}
.page-cart .b-button-green:hover{ filter:brightness(.95); }
.page-cart .b-button-grey{
  color:#333;
  background:#f6f6f6;
  border:1px solid #bbb;
}
.page-cart .b-button-grey:hover{ background:#e9e9e9; }

/* 8) Logos CB en ligne (garde ce que tu avais commencé) */
.page-cart .cb-logos{ margin: .25rem 0; }
.page-cart .cb-logos blockquote{
  display:flex; align-items:center; gap:.5rem; margin:0; flex-wrap:wrap;
}
.page-cart .cb-logos img[src*="INTERVAL"]{ display:none; }
.page-cart .cb-logos img,
.page-cart .cb-logos input[type="image"]{
  display:inline-block; height:28px; width:auto; border:0; padding:0; background:transparent;
}
/* Espace entre les deux boutons (Valider / Annuler) */
.page-cart .b-form-group .b-button + .b-button{
  margin-left: .6rem;    /* espace horizontal */
}




/* ====== Cart – Bloc "Articles enregistrés pour plus tard" ====== */
.page-cart .articlesplustard{
  margin-top: 4rem;
  padding: 12px 14px;
  background: linear-gradient(180deg,#f7fbff 0%, #ffffff 100%);
  border: 1px solid #e5f1f8;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,.04);
}

/* Titre du bloc (si h2/h3) */
.page-cart .articlesplustard h2,
.page-cart .articlesplustard h3{
  margin: .25rem 0 .5rem;
  font-size: 1.35rem;
  color: #0288d1;
  line-height: 1.2;
}

/* Table plus légère (pas de zébrage) */
.page-cart .articlesplustard .b-tablecaddie{
  background: transparent;
}
.page-cart .articlesplustard .b-tablecaddie thead th{
  padding: 8px 0 4px;
  border: none;
  color: #075985;
}
.page-cart .articlesplustard .b-tablecaddie tbody tr:nth-child(odd),
.page-cart .articlesplustard .b-tablecaddie tbody tr:nth-child(even){
  background: transparent;
}
.page-cart .articlesplustard .b-tablecaddie tbody tr+tr td{
  border-top: 1px dashed #e9eff5;   /* séparateur discret */
}

/* Liens et micro-actions */
.page-cart .articlesplustard a{
  color: #0288d1;
  text-decoration: none;
}
.page-cart .articlesplustard a:hover{
  color: #075985;
  text-decoration: underline;
}
/* Les liens dans <small> deviennent des mini-pilules discrètes */
.page-cart .articlesplustard small a{
  display: inline-block;
  padding: .1rem .45rem;
  border: 1px solid #e0f0f8;
  border-radius: 999px;
  text-decoration: none;
}
.page-cart .articlesplustard small a:hover{
  background: #f2f9ff;
}

/* Texte secondaire adouci */
.page-cart .articlesplustard small{ color:#6b7280; }

/* Un peu plus d’air sur mobile */
@media (max-width: 768px){
  .page-cart .articlesplustard{ padding: 12px; }
}




/* ====== Cart — Bloc récapitulatif principal ====== */
.page-cart .cart-summary{
  margin: .75rem 0 1rem;
  padding: 14px 16px;
  background: linear-gradient(180deg,#f7fbff 0%, #ffffff 100%);
  border: 1px solid #e5f1f8;
  border-radius: 12px;
  box-shadow: 0 6px 16px rgba(0,0,0,.05);
}

/* Titre + petite phrase d’intro */
.page-cart .cart-summary > h1{
  margin: .2rem 0 .5rem;
  font-size: 1.6rem;
  color: #0288d1;
  line-height: 1.2;
}
.page-cart .cart-summary > p{
  margin: .15rem 0 .8rem;
  color: #075985;
}

/* Table plus légère et nette */
.page-cart .cart-summary .b-tablecaddie thead th{
  padding: 8px 0 6px;
  color: #075985;
  border: none;
}
.page-cart .cart-summary .b-tablecaddie tbody tr:nth-child(odd),
.page-cart .cart-summary .b-tablecaddie tbody tr:nth-child(even){
  background: transparent;              /* on désactive le zébrage */
}
.page-cart .cart-summary .b-tablecaddie tbody tr + tr td{
  border-top: 1px dashed #e9eff5;       /* séparateur discret */
}

/* Total mis en valeur (dernière ligne du tbody) */
.page-cart .cart-summary .b-tablecaddie tbody tr:last-child td{
  border-top: 2px solid #dfeff8;
  font-weight: 700;
}
.page-cart .cart-summary .b-tablecaddie tbody tr:last-child td.b-text-right:last-child{
  color: #0288d1;
  font-size: 1.1rem;
}

/* Pastille quantité (bleu du site) */
.page-cart .cart-summary .b-entoure{
  border-color: #0288d1;
  background: #eef9ff;
  color: #075985;
  border-radius: 999px;
  padding: 2px 8px;
}

/* Icônes +/- dans la pastille : look bleu, sans gros cadre */
.page-cart .cart-summary .b-entoure .b-icon{
  border: 0;
  padding: 0;
  fill: #0288d1;
}
.page-cart .cart-summary .b-entoure .b-icon:hover{
  transform: scale(1.06);
}

/* Petites actions (Supprimer / Mettre de côté) en “pilules” */
.page-cart .cart-summary small a{
  display: inline-block;
  padding: .1rem .45rem;
  border: 1px solid #e0f0f8;
  border-radius: 999px;
  color: #0288d1;
  text-decoration: none;
}
.page-cart .cart-summary small a:hover{
  background: #f2f9ff;
  color: #075985;
}

/* Un peu d’air sur mobile */
@media (max-width: 768px){
  .page-cart .cart-summary{
    padding: 12px;
  }
}


/* ====== Choix du paiement (encart) ====== */
.page-cart .pay-choice{
  margin: .75rem 0 1rem;
  padding: 14px 16px;
  background: linear-gradient(180deg,#f7fbff 0%, #ffffff 100%);
  border: 1px solid #e5f1f8;
  border-radius: 12px;
  box-shadow: 0 6px 16px rgba(0,0,0,.05);
}
.page-cart .pay-choice > h2{
  margin: .1rem 0 .5rem;
  color: #0288d1;
}
.page-cart .pay-choice > p{
  margin: .2rem 0 .8rem;
  color: #075985;
}

/* Logos CB/Visa/MC déjà alignés en ligne, on fignole */
.page-cart .cb-logos{ margin:.3rem 0 .6rem; }
.page-cart .cb-logos blockquote{
  display:flex; align-items:center; gap:.5rem; flex-wrap:wrap; margin:0;
}
.page-cart .cb-logos img[src*="INTERVAL"]{ display:none; }
.page-cart .cb-logos img,
.page-cart .cb-logos input[type="image"]{
  display:inline-block; height:28px; width:auto; border:0; background:transparent; padding:0;
}

/* Liens “Autres moyens de paiement” en pilules */
.page-cart .alt-pay{ margin:.4rem 0 0; color:#555; }
.page-cart .alt-pay .chip{
  display:inline-block; margin-left:.35rem; padding:.15rem .5rem;
  border:1px solid #e5f1f8; border-radius:999px; text-decoration:none;
  color:#0288d1;
}
.page-cart .alt-pay .chip:hover{ background:#f2f9ff; color:#075985; }

/* ====== Mini récap commande (look cohérent) ====== */
.page-cart .order-mini{
  margin: .75rem 0 1rem;
  padding: 12px 14px;
  background:#fff;
  border:1px solid #e9eff5;
  border-radius:12px;
  box-shadow: 0 6px 16px rgba(0,0,0,.05);
}
.page-cart .order-mini > h2{
  margin:.1rem 0 .5rem; color:#0288d1;
}

/* Table récap (garde tes classes b-text-right/left) */
.page-cart .order-mini .tablecaddie thead th{
  color:#075985; border:none; padding:8px 0 6px;
}
.page-cart .order-mini .tablecaddie tbody tr + tr td{
  border-top:1px dashed #e9eff5;
}
.page-cart .order-mini .tablecaddie tbody tr:last-child td{
  border-top:2px solid #dfeff8; font-weight:700;
}
.page-cart .order-mini .tablecaddie tbody tr:last-child td.b-text-right:last-child{
  color:#0288d1; font-size:1.05rem;
}

/* ====== Boîtes info (chèque / virement) ====== */
/* Remplace tes inline-style="border:dashed..." par class="box-soft" */
.page-cart .box-soft{
  margin:.6rem 0;
  padding:12px 14px;
  background:linear-gradient(180deg,#fbfdff 0%, #ffffff 100%);
  border:1px solid #e5f1f8;
  border-radius:10px;
}
.page-cart .box-soft p{ margin:.4rem 0; }
.page-cart .box-soft ul{ margin:.4rem 0; padding-left:1.1rem; }
.page-cart .box-soft a{ color:#0288d1; text-decoration:none; }
.page-cart .box-soft a:hover{ text-decoration:underline; }

/* ====== Petites harmonisations globales sur cette page ====== */
/* Conserve l’alignement explicitement demandé dans tes colonnes */
.page-cart .b-text-right{ text-align:right !important; }
.page-cart .b-text-left{  text-align:left  !important; }

/* Lignes d’action (boutons) espacées horizontalement */
.page-cart .b-button + .b-button{ margin-left:.5rem; }


/* ======================= CHOIX POINT RELAIS (look ES) ======================= */

/* 1) Bloc de recherche adresse → carte douce bleutée */
.page-cart .relay-search .b-fieldset,
.page-cart .cherchegls{
  background: linear-gradient(180deg,#f7fbff 0%, #ffffff 100%);
  border: 1px solid #e5f1f8;
  border-radius: 12px;
  padding: 12px;
  box-shadow: 0 6px 16px rgba(0,0,0,.05);
}
.page-cart .cherchegls{ display:flex; flex-wrap:wrap; gap:12px; align-items:flex-end; }
.page-cart .cherchegls .b-input{ border-color:#d7e9f6; }
.page-cart .cherchegls .b-label{ color:#075985; }
.page-cart .cherchegls .b-button-grey{ margin-left: 4px; } /* petit décalage du bouton */

/* 2) Liste des relais : carte par relais (fonctionne avec wrapper .relay-list
      OU en mettant class="relay-item" sur chaque <table>) */
.page-cart .relay-list{
  display: grid; grid-template-columns:1fr; gap:.6rem;
  margin: .6rem 0 0;
}

/* style commun des items */
.page-cart .relay-list table,
.page-cart table.relay-item{
  width:100%;
  background:#fff;
  border:1px solid #e9eff5;
  border-radius:12px;
  box-shadow:0 6px 16px rgba(0,0,0,.05);
  border-collapse:separate;     /* pour garder le radius */
  border-spacing:0;
  overflow:hidden;              /* radius propre */
}
.page-cart .relay-list table th,
.page-cart table.relay-item th{
  width:140px;
  text-align:center;
  vertical-align:middle;
  padding:12px;
  background: linear-gradient(#f7fbff,#ffffff);
  border-right:1px dashed #e9eff5;
}
.page-cart .relay-list table td,
.page-cart table.relay-item td{
  padding:12px;
  border:none;
  color:#0f172a;
}
.page-cart .relay-list table td strong,
.page-cart table.relay-item td strong{ color:#0288d1; }
.page-cart .relay-list table td small,
.page-cart table.relay-item td small{ color:#6b7280; }

/* bouton “Choisir” un peu plus présent */
.page-cart .relay-list .b-button-green,
.page-cart table.relay-item .b-button-green{
  min-width: 118px;
  padding: .5rem .9rem;
}

/* 3) Titre “X relais trouvés…” plus lisible */
.page-cart h2{
  color:#0288d1;
  margin:.4rem 0 .5rem;
}

/* 4) Si tu gardes des <br> entre les tables, on les atténue quand wrapper présent */
.page-cart .relay-list + br { display:none; }

/* 5) Mini séparateurs doux si pas de wrapper et tables enchaînées */
.page-cart table + br + table.relay-item td,
.page-cart table.relay-item + table.relay-item td{
  border-top: 0;
}

/* 6) Harmonise la colonne action (th) verticalement sur anciens templates */
.page-cart table.relay-item th.b-text-center,
.page-cart .relay-list table th.b-text-center{
  vertical-align: middle;
}

/* 7) Micro-ajustements responsive */
@media (max-width: 640px){
  .page-cart .relay-list table th,
  .page-cart table.relay-item th{ width:120px; padding:10px; }
  .page-cart .relay-list table td,
  .page-cart table.relay-item td{ padding:10px; }
}
