/*
 * design-lot7.css — Broderies de la Cigogne, site PrestaShop 1.6 (lot 7 « design », oct. 2026)
 *
 * Checklist « Amélioration du design de l'ancien site (par page) », chantier #9rpy (23.x).
 * Chargé par header.tpl en dernier (après parcours-mobile.css), avec ?v=N pour le cache Cloudflare.
 *
 * Deux parties :
 *   A. TOUTES LARGEURS (bureau compris, décision de Mathieu du 19/10) : seulement couleurs,
 *      messages et boutons — la mise en page du bureau ne bouge pas.
 *   B. SOUS 1260 px (téléphone et tablette), comme les lots 1 à 6.
 *
 * Charte : brun #5e3f3b (titres, actions) · brun foncé #4a302d (texte fort) · taupe #625d52 (texte)
 *   taupe clair #908a7f (filets) · filet des boutons #807b71 · crème #f5f3ee · sauge #dde0d7
 *   olive #6b7a4f (succès) · brique #9a4a3a (erreurs, seule couleur d'alerte)
 *
 * Retour arrière : retirer la ligne <link … design-lot7.css> de header.tpl.
 */

/* ════════════════════════════════════════════════════════════════════════════════════════
   A. TOUTES LARGEURS
   ════════════════════════════════════════════════════════════════════════════════════════ */

/* ── A1. Messages (23.1.1, 23.1.2, 23.9.1) : le style du lot 6, sorti de sa media query ──
   Bandeaux pleins rouge / vert / orange, texte blanc centré → encadré crème, filet fin, épais
   filet coloré à gauche, texte brun aligné à gauche. Sélecteurs renforcés (div.alert…) : au
   lot 6, « div.alert » l'emportait sur « .alert-danger » et le filet des erreurs restait taupe. */
.alert, p.alert, div.alert, ul.alert {
  background: #f5f3ee; color: #4a302d; text-shadow: none;
  border: 1px solid rgba(94, 63, 59, .22); border-left: 4px solid #908a7f; border-radius: 0;
  padding: 12px 14px; margin: 0 0 18px;
  font-family: "Jost", "Segoe UI", Arial, sans-serif; font-size: 15px; line-height: 1.45;
  font-weight: 400; text-align: left;
}
.alert:before { display: none !important; }
.alert > p:first-child { font-weight: 600; }
.alert > p + p { margin-top: 6px; }
.alert ol, .alert ul { margin: 6px 0 0; padding: 0 0 0 20px; }
.alert ol li, .alert ul li { list-style-type: decimal; font-weight: 400; margin: 2px 0; padding: 0; }
.alert ol li:only-child, .alert ul li:only-child { list-style: none; }
.alert ol:has(> li:only-child), .alert ul:has(> li:only-child) { padding-left: 0; }
.alert a, .alert .alert-link { color: #5e3f3b; text-decoration: underline; font-weight: 500; }
.alert .lnk { margin: 10px 0 0; font-weight: 500; }
.alert .lnk a { display: inline-block; padding: 4px 0; text-decoration: none; border-bottom: 1px solid rgba(94, 63, 59, .4); }
.alert .lnk a:hover { border-bottom-color: #5e3f3b; }
.alert.alert-danger, div.alert.alert-danger, p.alert.alert-danger, ul.alert.alert-danger { border-left-color: #9a4a3a; }
.alert.alert-danger > p:first-child { color: #9a4a3a; }
.alert.alert-success, div.alert.alert-success, p.alert.alert-success { border-left-color: #6b7a4f; color: #4a302d; }
.alert.alert-warning, .alert.alert-info, p.alert.alert-warning, p.alert.alert-info { border-left-color: #908a7f; color: #5e3f3b; }
p.alert.alert-success, p.alert.alert-warning, p.alert.alert-info { font-weight: 500; }
.fancybox-error { white-space: normal; font-family: "Jost", "Segoe UI", Arial, sans-serif; font-size: 15px; color: #4a302d; padding: 6px 4px; }
/* lien ajouté par le lot 7 sous certains messages (panier vide, historique vide, 404…) */
.bro-suite { margin: 0 0 24px; }

/* ── A2. « Disponible » dans le panier et au paiement (23.1.3) : texte olive, plus de pastille ── */
#order-detail-content #cart_summary td.cart_avail .label {
  background: none; border: 0; padding: 0; color: #6b7a4f; text-shadow: none;
  font-family: "Jost", "Segoe UI", Arial, sans-serif; font-size: 13px; font-weight: 500; white-space: nowrap;
}
#order-detail-content #cart_summary td.cart_avail .label-available_later { color: #9a4a3a; }

/* ── A3. Champs contrôlés en direct (23.1.4, 23.11.3) : filet olive / brique, fond clair,
   plus de fond vert ou rose ni d'icône. Même marquage pour tous les champs. */
.form-group.form-error input, .form-group.form-error textarea, .form-group.form-error select {
  border: 1px solid #9a4a3a; border-left-width: 3px; color: #4a302d;
  background: #f5f3ee none; box-shadow: none;
}
.form-group.form-ok input, .form-group.form-ok textarea {
  border: 1px solid #6b7a4f; color: #4a302d; background: #fff none; box-shadow: none;
}
.form-group.form-error .form-control, .form-group.form-ok .form-control { padding-right: 12px; }

/* ── A4. Petits boutons gris foncé (« Retour à votre compte », « Accueil »…) (23.1.5) :
   au style des boutons de la charte (dégradé clair, filet brun-gris, texte brun). */
.button.button-small {
  font: 500 14px/18px "Jost", "Segoe UI", Arial, sans-serif; color: #553f3b; text-shadow: none;
  background: #fff; background: linear-gradient(to bottom, #ffffff, #e4e7e0);
  border: 1px solid #807b71; border-radius: 0;
}
.button.button-small span { padding: 6px 12px; border: 0; }
.button.button-small span:hover, .button.button-small:hover span { background: #eef0eb; border: 0; color: #4a302d; }
.button.button-small:hover { border-color: #5e3f3b; color: #4a302d; }
.button.button-small span i { color: #908a7f; }

/* ── A5. Mon compte (23.10.1) : liste sobre, une ligne par rubrique, au lieu des gros pavés
   dégradés gris à icônes orange. */
#my-account ul.myaccount-link-list { margin: 0 0 6px; border-top: 1px solid rgba(94, 63, 59, .18); }
#my-account ul.myaccount-link-list li { padding: 0; border-bottom: 1px solid rgba(94, 63, 59, .18); }
#my-account ul.myaccount-link-list li a {
  display: block; position: relative; min-height: 50px; padding: 0;
  font: 500 16px/20px "Jost", "Segoe UI", Arial, sans-serif; color: #4a302d; text-shadow: none;
  text-transform: none; letter-spacing: .01em; text-align: left;
  background: none; filter: none; border: 0; border-radius: 0; box-shadow: none;
}
#my-account ul.myaccount-link-list li a i {
  position: absolute; left: 4px; top: 0; width: 28px; height: 100%; padding: 0;
  display: flex; align-items: center; justify-content: center;
  font-size: 18px; color: #908a7f; border: 0; border-radius: 0; background: none;
}
#my-account ul.myaccount-link-list li a span {
  display: block; margin: 0 0 0 40px; padding: 15px 30px 15px 0; border: 0; border-radius: 0; background: none;
}
#my-account ul.myaccount-link-list li a:after {
  content: "\203A"; position: absolute; right: 8px; top: 50%; margin-top: -14px;
  font-size: 26px; line-height: 26px; color: #908a7f;
}
#my-account ul.myaccount-link-list li a:hover { background: rgba(255, 255, 255, .5); color: #5e3f3b; }
#my-account ul.myaccount-link-list li a:hover i, #my-account ul.myaccount-link-list li a:hover:after { color: #5e3f3b; }
/* les deux listes sont l'une sous l'autre (bureau compris) : un seul filet entre elles */
#my-account .addresses-lists > div + div ul.myaccount-link-list { border-top: 0; }
/* « Se déconnecter » (23.10.2), ajouté par my-account.tpl */
#my-account .footer_links .bro-deconnexion { float: right; }
#my-account .footer_links .bro-deconnexion a {
  display: inline-block; padding: 7px 2px; font: 500 15px/20px "Jost", "Segoe UI", Arial, sans-serif;
  color: #5e3f3b; text-decoration: none; border-bottom: 1px solid rgba(94, 63, 59, .4);
}
#my-account .footer_links .bro-deconnexion a:hover { border-bottom-color: #5e3f3b; }
#my-account .footer_links .bro-deconnexion i { color: #908a7f; margin-right: 6px; }

/* ── A6. État d'une commande (23.13.1) : texte brun au lieu de la pastille à la couleur du BO ── */
#order-list .history_state .label, #order-list td .label, #order-detail .label,
#block-order-detail .label, .detail_step_by_step .label {
  background: none !important; border: 0 !important; color: #5e3f3b !important; text-shadow: none;
  padding: 0; font-size: 14px; font-weight: 500; white-space: normal; border-radius: 0;
}

/* ── A7. « La boutique » : horaires en vert vif (23.16.1) → brun ── */
#cms .rte [style*="419615"] { color: #5e3f3b !important; }

/* ── A8. Comparateur de produits inutile (23.17.3) : boutons masqués ── */
.compare-form, .add_to_compare, .product-compare-form { display: none !important; }

/* ── A9. Plan du site (23.18.4) : rubrique « Nos offres » vide (nouveautés, promotions…) masquée ── */
#sitemap #sitemap_content > div:has(> .sitemap_block a[href*="nouveaux-produits"]) { display: none; } /* toute la colonne : pas de trou au bureau */

/* ── A10. Page introuvable (23.18.1) et produit introuvable (23.18.2), gabarits du lot 7 ── */
#pagenotfound .pagenotfound.bro-404 { max-width: 640px; margin: 10px auto 30px; text-align: center; color: #4a302d; }
#pagenotfound .pagenotfound.bro-404 .bro-404__blason { width: 96px; height: auto; margin: 0 auto 10px; display: block; }
#pagenotfound .pagenotfound.bro-404 h1 {
  font: 500 24px/1.3 "Jost", "Segoe UI", Arial, sans-serif; color: #5e3f3b !important; text-transform: uppercase;
  letter-spacing: .06em; margin: 0 0 10px; padding: 0; border: 0;
}
#pagenotfound .pagenotfound.bro-404 p { font: 400 16px/1.5 "Jost", "Segoe UI", Arial, sans-serif; color: #625d52; margin: 0 0 16px; padding: 0; border: 0; text-transform: none; }
.bro-liens-categories { list-style: none; margin: 0 0 20px; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.bro-liens-categories li { margin: 0; padding: 0; }
.bro-liens-categories a {
  display: inline-block; padding: 8px 14px; font: 500 14px/18px "Jost", "Segoe UI", Arial, sans-serif;
  color: #553f3b; text-decoration: none; text-transform: uppercase; letter-spacing: .05em;
  background: #fff; background: linear-gradient(to bottom, #ffffff, #e4e7e0); border: 1px solid #807b71;
}
.bro-liens-categories a:hover { border-color: #5e3f3b; color: #4a302d; }
.alert .bro-liens-categories, .bro-suite .bro-liens-categories { justify-content: flex-start; margin: 10px 0 0; }

/* ── A11. Recherche (23.17.2) : un seul titre, une couleur ── */
#search h1.page-heading .lighter { color: inherit; }
#search h1.page-heading .heading-counter { display: block; float: none; margin: 4px 0 0; font-size: 14px; text-transform: none; letter-spacing: 0; color: #625d52; }

/* ── A12. Mise à jour du panier (+ / −) (23.7.6) : bref surlignage de la ligne et du total ── */
@keyframes bro-maj { from { background-color: #e7e9d9; } to { background-color: transparent; } }
#cart_summary tr.bro-maj > td, #cart_summary tr.bro-maj, #cart_summary .bro-maj-total { animation: bro-maj 1.2s ease-out; }

/* ── A13. Message « déconnexion » (23.10.4), affiché par js/design-lot7.js ── */
.bro-message-deconnexion { max-width: 1170px; margin: 12px auto 18px; }

/* ════════════════════════════════════════════════════════════════════════════════════════
   B. SOUS 1260 px (téléphone et tablette)
   ════════════════════════════════════════════════════════════════════════════════════════ */
@media (max-width: 1259px) {

  /* ── B1. Menu burger (23.2.1, 23.2.2, 23.17.1) : recherche en tête, « › » sur chaque entrée,
     « Mon compte » / « Se connecter » et « Panier (N) » sous un filet. ── */
  .bro-header .mobile-nav li a { position: relative; padding-right: 36px; }
  .bro-header .mobile-nav li a:after {
    content: "\203A"; position: absolute; right: 10px; top: 50%; margin-top: -14px;
    font-size: 24px; line-height: 26px; font-weight: 400; color: #908a7f; letter-spacing: 0;
  }
  .bro-header .mobile-nav li.bro-nav-compte { border-top: 2px solid rgba(94, 63, 59, .25); }
  .bro-header .mobile-nav .bro-recherche { display: flex; margin: 0; padding: 12px 16px; border-bottom: 1px solid rgba(94, 63, 59, .15); }
  .bro-header .mobile-nav .bro-recherche label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .bro-header .mobile-nav .bro-recherche input[type=search] {
    flex: 1 1 auto; min-width: 0; height: 44px; margin: 0; padding: 0 12px; border: 1px solid #807b71; border-right: 0;
    border-radius: 0; background: #fff; font: 400 16px "Jost", "Segoe UI", Arial, sans-serif; color: #4a302d;
    -webkit-appearance: none; appearance: none; box-shadow: none;
  }
  .bro-header .mobile-nav .bro-recherche button {
    flex: 0 0 auto; height: 44px; margin: 0; padding: 0 14px; border: 1px solid #807b71; border-radius: 0;
    background: #fff; background: linear-gradient(to bottom, #ffffff, #e4e7e0); color: #553f3b;
    font: 500 15px "Jost", "Segoe UI", Arial, sans-serif; cursor: pointer;
  }

  /* ── B2. Nombre d'articles sur l'icône panier (23.6.2) ── */
  .bro-header .bro-panier { position: relative; }
  .bro-header .bro-panier__pastille {
    position: absolute; left: 50%; top: -4px; margin-left: 6px; min-width: 20px; height: 20px; padding: 0 5px;
    border-radius: 10px; background: #5e3f3b; color: #fff; box-sizing: border-box;
    font: 600 12px/20px "Jost", "Segoe UI", Arial, sans-serif; text-align: center; letter-spacing: 0;
  }
  .bro-header .bro-panier__pastille[hidden] { display: none; }
  .bro-header .bro-panier img + .bro-panier__pastille { left: 0; margin-left: 24px; }

  /* ── B4. Catégories (23.4.3, 23.4.4) : sous-catégories sans image → simples liens ; Jost ── */
  #subcategories .subcategory-name, #subcategories .subcategory-heading { font-family: "Jost", "Segoe UI", Arial, sans-serif; }
  #subcategories ul:has(img[src*="/fr-default-"]) { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 10px; }
  #subcategories ul li:has(img[src*="/fr-default-"]) {
    float: none; width: auto; min-height: 0; height: auto; margin: 0; padding: 0; text-align: left; border: 0;
  }
  #subcategories ul li:has(img[src*="/fr-default-"]) .subcategory-image { display: none; }
  #subcategories ul li:has(img[src*="/fr-default-"]) h5 { margin: 0; padding: 0; min-height: 0; }
  #subcategories ul li:has(img[src*="/fr-default-"]) .subcategory-name {
    display: inline-block; padding: 9px 14px; font-size: 14px; line-height: 18px; font-weight: 500; letter-spacing: .05em;
    color: #553f3b; text-decoration: none; background: #fff; background: linear-gradient(to bottom, #ffffff, #e4e7e0);
    border: 1px solid #807b71;
  }
  #subcategories ul li:has(img[src*="/fr-default-"]) .cat_desc { display: none; }

  /* ── B5. Fiche produit (23.5.6) : quantité [−] [1] [+] compacte, 44 px ── */
  #product #quantity_wanted_p { display: flex; flex-wrap: wrap; align-items: center; }
  #product #quantity_wanted_p label { flex: 0 0 100%; }
  #product #quantity_wanted_p .clearfix { display: none; }
  #product #quantity_wanted_p input#quantity_wanted {
    order: 2; width: 56px; height: 44px; margin: 0; padding: 0 4px; float: none;
    border: 1px solid #807b71; border-left: 0; border-right: 0; border-radius: 0; box-shadow: none;
    background: #fff; text-align: center; font-size: 17px; color: #4a302d;
  }
  #product #quantity_wanted_p .btn.button-minus { order: 1; }
  #product #quantity_wanted_p .btn.button-plus { order: 3; }
  #product #quantity_wanted_p .btn.button-minus, #product #quantity_wanted_p .btn.button-plus {
    display: flex; align-items: center; justify-content: center; float: none;
    width: 44px; height: 44px; margin: 0; padding: 0; line-height: 1;
    background: #fff; background: linear-gradient(to bottom, #ffffff, #e4e7e0); border: 1px solid #807b71; border-radius: 0;
    color: #553f3b; box-shadow: none;
  }
  #product #quantity_wanted_p .btn span { display: block; width: auto; height: auto; padding: 0; border: 0; background: none; line-height: 1; }
  #product #quantity_wanted_p .btn i { font-size: 14px; color: #553f3b; }

  /* ── B6. Formulaires (23.8.9, 23.8.10) : listes au style des champs du site ; légende
     « *Champ requis » en taupe, au-dessus du bouton. ── */
  #center_column div.selector {
    position: relative; height: 44px; padding: 0; background: #e6e8e2; border: 1px solid #d6d4d4; box-sizing: border-box;
  }
  #center_column div.selector span {
    display: block; width: auto !important; height: 42px; line-height: 42px; padding: 0 34px 0 10px;
    background: none; font-size: 16px; color: #333; text-shadow: none; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;
  }
  #center_column div.selector:after {
    content: ""; position: absolute; right: 12px; top: 18px; pointer-events: none;
    border-left: 6px solid transparent; border-right: 6px solid transparent; border-top: 7px solid #807b71;
  }
  #center_column div.selector select { top: 0; left: 0; width: 100% !important; height: 42px; min-height: 0; }
  /* Date de naissance : trois listes côte à côte, à parts égales, sur toute la largeur */
  .form-group:has(> .row #days) > .row { display: flex; gap: 8px; margin: 0; max-width: 460px; }
  .form-group:has(> .row #days) > .row:before, .form-group:has(> .row #days) > .row:after { display: none; }
  .form-group:has(> .row #days) > .row > div { flex: 1 1 0; width: auto; float: none; padding: 0; min-width: 0; }
  .form-group:has(> .row #days) div.selector { width: 100% !important; max-width: none; }
  /* « *Champ requis » */
  #account-creation_form .submit, #identity .std .form-group:has(> button) { display: flex; flex-direction: column; }
  #account-creation_form .submit .required, #identity p.required, #add_address p.required, #address p.required, p.required {
    float: none !important; order: -1; align-self: flex-start; margin: 0 0 10px; text-align: left; color: #625d52; font-size: 13px;
  }
  p.required sup, .required sup, p.required font { color: #908a7f !important; }

  /* ── B7. Mes adresses (23.11.4) : introduction à gauche, sans gras ── */
  #addresses #center_column > p, #addresses #mf_contact > p, #addresses .addresses-lists ~ p,
  #addresses p.p-indent, #addresses p strong.dark { text-align: left; font-weight: 400; }

  /* ── B8. Tunnel (23.14.2, 23.14.3, 23.14.5, 23.14.8) ── */
  /* Case CGV : 24 px, lien distinct */
  #order .order_carrier_content .checkbox { position: relative; display: block; padding-left: 36px; min-height: 26px; }
  #order .order_carrier_content .checkbox div.checker { position: absolute; left: 0; top: 0; float: none; width: 24px; height: 24px; margin: 0; }
  #order .order_carrier_content .checkbox div.checker span {
    width: 24px; height: 24px; background: #fff; border: 1px solid #807b71; box-sizing: border-box; position: relative;
  }
  #order .order_carrier_content .checkbox div.checker span.checked { background: #fff; }
  #order .order_carrier_content .checkbox div.checker span.checked:after {
    content: ""; position: absolute; left: 7px; top: 2px; width: 7px; height: 13px;
    border: solid #5e3f3b; border-width: 0 3px 3px 0; transform: rotate(45deg);
  }
  #order .order_carrier_content .checkbox div.checker input { width: 24px; height: 24px; }
  #order .order_carrier_content .checkbox label { font-size: 15px; line-height: 1.4; color: #4a302d; font-weight: 400; padding: 0; }
  #order .order_carrier_content .checkbox a.iframe { display: inline-block; margin-top: 4px; color: #5e3f3b; font-weight: 500; }
  /* Transporteur : nom sur une ligne */
  #order .delivery_option table.resume td { vertical-align: middle; }
  #order .delivery_option table.resume td { padding-left: 6px; padding-right: 6px; }
  #order .delivery_option table.resume td.delivery_option_logo { width: 52px; }
  #order .delivery_option table.resume td.delivery_option_logo img { max-width: 44px; height: auto; }
  #order .delivery_option table.resume td.delivery_option_price, #order .delivery_option table.resume td:last-child { white-space: nowrap; text-align: right; }
  /* Paiement : logo à gauche, texte à droite, la carte entière cliquable */
  #order p.payment_module { margin: 0 0 12px; }
  #order p.payment_module > a {
    display: block; position: relative; min-height: 76px; padding: 14px 34px 14px 104px !important;
    text-align: left; font: 500 16px/1.35 "Jost", "Segoe UI", Arial, sans-serif; color: #4a302d;
    background: #fff; border: 1px solid rgba(94, 63, 59, .25); border-radius: 0; text-decoration: none;
  }
  #order p.payment_module > a:hover { border-color: #5e3f3b; background: #fbfaf7; }
  #order p.payment_module > a > img:first-child {
    position: absolute; left: 14px; top: 50%; transform: translateY(-50%); width: 76px; height: auto; max-height: 56px; object-fit: contain; margin: 0;
  }
  #order p.payment_module > a > img:not(:first-child) { height: 22px; width: auto; margin: 6px 4px 0 0; vertical-align: middle; }
  #order p.payment_module > a font { display: block; font-size: 13px; color: #625d52; margin-top: 2px; }
  #order p.payment_module > a:after {
    content: "\203A"; position: absolute; right: 12px; top: 50%; margin-top: -15px; font-size: 28px; line-height: 28px; color: #908a7f;
  }
  #order p.payment_module .mf_cic_logo1, #order p.payment_module .mf_cic_logo2, #order p.payment_module .mf_cic_logo3 { display: none; }
  /* Message de commande : libellé simple, pas en gras */
  #order #ordermsg p.txt, #order #ordermsg label, #order .order_carrier_content #ordermsg p { font-weight: 400; color: #625d52; }

  /* ── B9. Fiche produit (23.5.7) — sous 768 seulement : voir plus bas ── */

  /* ── B10. Recherche (23.17.2) : un seul « Trier par », pas de « Montrer » ── */
  #search .sortPagiBar .nbrItemPage, #search .sortPagiBar form.showall, #search .top-pagination-content .product-count { display: none; }
  #search .sortPagiBar #productsSortForm { float: none; width: 100%; margin: 0 0 12px; }
  #search .sortPagiBar #productsSortForm .select { display: flex; flex-direction: column; }
  #search .sortPagiBar #productsSortForm label { float: none; margin: 0 0 6px; font-size: 14px; color: #553f3b; }
  #search .sortPagiBar #productsSortForm div.selector { width: 100% !important; }

  /* ── B11. « Mes alertes » (23.10.3) et autres pages hors catalogue : pas de sélecteur
     « Catégorie » (seulement sur les pages catégorie et produit) ── */
  body:not(#category):not(#product) #left_column #categories_block_left { display: none; }
}

@media (max-width: 767px) {
  /* ── B3. Pied de page collé en bas sur les pages courtes (23.2.3), au téléphone : le pied
     (.mf_bordure, .mf_divfooter) est dans la dernière .row de #columns, déjà en colonne flex
     sous 768 (mobile.css) ; on étire la chaîne #page → .columns-container → #columns → .row
     jusqu'au bas de l'écran et le pied prend la marge restante au-dessus de lui. ── */
  #page { display: flex; flex-direction: column; min-height: 100vh; }
  #page > .columns-container { flex: 1 0 auto; display: flex; flex-direction: column; }
  #page > .columns-container > #columns { flex: 1 0 auto; display: flex; flex-direction: column; width: 100%; }
  #columns > .row:not(#slider_row):last-child { flex: 1 0 auto; }
  #columns > .row:not(#slider_row) > .mf_bordure { margin-top: auto; }

  /* ── B9. Fiche produit (23.5.7) : « Imprimer » masqué, moins de vide sous le bouton ── */
  #product #usefull_link_block .print { display: none; }
  #product #usefull_link_block { margin-bottom: 0; padding-bottom: 0; }
  #product #usefull_link_block:not(:has(li:not(.print))) { display: none; }
}
