/* --- Bloc "Nous suivre" (footer réseaux sociaux) --- */
.block-social-inner {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

.block-social-inner ul {
    display: flex;
    margin: 0;
    padding: 0;
}

.block-social h4 {
    display: block !important;
    color: #b5a78d;
    font-size: 1.7rem;
    text-transform: uppercase;
    margin: 0;
    white-space: nowrap;
}

.block-social ul li {
    background-color: #b5a78d !important;
    border-radius: 50%;
}

.block-social ul li:hover {
    background-color: #1f1818 !important;
}

.block-social ul li.tiktok {
    background-image: url("../img/tiktok.svg") !important;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 1.6rem 1.6rem;
}



.social-sharing li.whatsapp {
    background-color: #ffffff !important;
    background-image: url("../img/whatsapp.svg") !important;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 1.6rem 1.6rem;
    border-radius: 50%;
}

.social-sharing li.whatsapp:hover {
    background-color: #24b9d7 !important;
}






/* --- Alignement de la case RGPD --- */
.psgdpr_consent_message {
    display: flex !important;
    align-items: flex-start !important;
}

.psgdpr_consent_message > span:first-of-type {
    flex: 0 0 1.125rem !important;
    margin-right: 0 !important;
}

.psgdpr_consent_message > span:last-of-type {
    flex: 1 1 auto !important;
    padding-left: 0.625rem;
}

/* --- Fix alignement RGPD newsletter footer (sélecteur renforcé) --- */
#blockEmailSubscription_displayFooterBefore .psgdpr_consent_message {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
}

#blockEmailSubscription_displayFooterBefore .psgdpr_consent_message > span:first-child {
    flex: 0 0 1.125rem !important;
}

#blockEmailSubscription_displayFooterBefore .psgdpr_consent_message > span:last-child {
    flex: 1 1 auto !important;
    padding-left: 0.625rem;
}

#blockEmailSubscription_displayFooterBefore .psgdpr_consent_message > span:last-child p {
    margin: 0 !important;
}

/* --- Empêche le numéro de téléphone du footer de se couper sur 2 lignes --- */
a[href*="tel:0494261039"] {
    white-space: nowrap;
}

.cellier-qty-discount {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.3;
  color: #b04445;
}

/* Arbre des catégories : branche ouverte visible */
.block-categories .collapse.show { display: block; }
.block-categories .collapse-icons[aria-expanded="true"] .add, .block-categories .arrows[aria-expanded="true"] .arrow-right { display: none; }
.block-categories .collapse-icons[aria-expanded="true"] .remove, .block-categories .arrows[aria-expanded="true"] .arrow-down { display: block; }
.block-categories a.current-category { font-weight: 700; }
.block-categories a.current-category { font-weight: 700 !important; color: #b04445 !important; }
.cellier-page-intro { margin: 0 0 1.5rem; }

/* Texte de présentation des pages : sans fond */
#category-description, #category-description p, #js-product-list-header, .cellier-page-intro { background: none !important; box-shadow: none !important; border: 0 !important; }

/* Texte d'accueil (ps_customtext) */
.cellier-accueil { margin: 0 0 1.5rem; background: none; }
.cellier-accueil p { font-size: 1.25rem; line-height: 1.6; background: none; }

/* Texte d'accueil : taille prioritaire sur les règles du thème */
body #content .cellier-accueil p,
body .cellier-accueil p { font-size: 1.25rem !important; line-height: 1.6 !important; }

/* Titre du texte d'accueil */
body #content .cellier-accueil h2,
body .cellier-accueil h2 { font-size: 2rem !important; font-weight: 700 !important; margin-bottom: 1rem; }

/* Titres complets sur les vignettes produits */
body .product-miniature .product-title,
body .product-miniature .product-title a {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  height: auto !important;
  max-height: none !important;
  line-height: 1.35;
}
body .product-miniature .product-description { height: auto !important; min-height: 0 !important; }

/* Titres complets : neutralise aussi la coupure sur plusieurs lignes */
body article.product-miniature h3.product-title,
body article.product-miniature h3.product-title a,
body .product-miniature .thumbnail-container .product-title a {
  display: block !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: initial !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  height: auto !important;
  max-height: none !important;
  width: auto !important;
}

/* Titres des vignettes : lignes équilibrées, pas de mot seul */
body .product-miniature .product-title,
body .product-miniature .product-title a {
  text-wrap: balance;
}

/* Vignettes : place réservée pour 2 lignes de titre, hauteurs alignées */
body .product-miniature .product-title {
  min-height: 2.9rem;
}

/* Panier : encart d'aperçu au survol (ordinateur seulement) */
.blockcart.cart-preview { position: relative; }
.cellier-cart-dropdown { display: none; }
@media (min-width: 768px) and (hover: hover) {
  .blockcart.cart-preview.active:hover .cellier-cart-dropdown { display: block; }
}
.cellier-cart-dropdown {
  position: absolute; right: 0; top: 100%; z-index: 1000;
  width: 360px; padding: 1rem; text-align: left;
  background: #faf8f4; color: #232323;
  border: 1px solid #dfd8ca; box-shadow: 0 8px 24px rgba(0,0,0,.25);
}
.cellier-cart-list { list-style: none; margin: 0 0 .75rem; padding: 0; max-height: 280px; overflow-y: auto; }
.cellier-cart-list li { display: flex; align-items: center; gap: .6rem; padding: .5rem 0; border-bottom: 1px solid #dfd8ca; }
.cellier-cart-img img { width: 48px; height: auto; display: block; }
.cellier-cart-name { flex: 1; font-size: .85rem; line-height: 1.3; }
.cellier-cart-name a { color: #232323; display: block; }
.cellier-cart-name small { color: #7a7a7a; }
.cellier-cart-linetotal { font-weight: 700; font-size: .85rem; white-space: nowrap; }
.cellier-cart-sum > div { display: flex; justify-content: space-between; font-size: .9rem; padding: .15rem 0; }
.cellier-cart-sum .cellier-cart-grand { font-weight: 700; font-size: 1rem; border-top: 1px solid #dfd8ca; margin-top: .3rem; padding-top: .4rem; }
.cellier-cart-note { margin: .5rem 0; font-size: .75rem; color: #7a7a7a; }
.cellier-cart-actions { display: flex; gap: .5rem; }
.cellier-cart-actions .btn { flex: 1; text-align: center; padding: .5rem .4rem; font-size: .85rem; }

/* Panier (encart) : colonnes alignées */
.cellier-cart-list li { display: grid; grid-template-columns: 48px minmax(0, 1fr) 6rem; align-items: center; gap: .6rem; }
.cellier-cart-linetotal { text-align: right; }
.cellier-cart-sum > div span:last-child { text-align: right; }

/* Encart panier : tout défile ensemble (colonnes toujours alignées), bouton "Voir le panier" bien visible */
.cellier-cart-dropdown { max-height: calc(100vh - 150px); overflow-y: auto; }
.cellier-cart-list { max-height: none; overflow: visible; }
.cellier-cart-actions .btn-secondary {
  background-color: #dfd8ca !important; color: #232323 !important;
  border: 1px solid #b5a78d !important; font-weight: 600;
}
.cellier-cart-actions .btn-secondary:hover { background-color: #cfc6b2 !important; }

/* Encart panier : le texte revient à la ligne, pas de défilement horizontal */
.cellier-cart-dropdown { white-space: normal; overflow-x: hidden; }
.cellier-cart-note, .cellier-cart-name, .cellier-cart-name a { white-space: normal; overflow-wrap: anywhere; }

/* Page magasin */
.page-stores .cellier-store-actions { margin: 14px 0 8px; }
.page-stores .cellier-store-contact { margin: 12px 0; }
.page-stores .cellier-store-contact li { margin: 6px 0; }
.page-stores .cellier-store-contact .material-icons { vertical-align: middle; margin-right: 8px; color: #b04445; }
.page-stores .cellier-store-note { margin-top: 10px; }
