/* ================================================
   Baudilaine - Custom CSS
   Hummingbird 2.0.0 / PrestaShop 9
   Palette : #2B363D (anthracite logo)
   v0.4.8 : ajout de la typographie Source Serif 4 + Source Sans 3
   ================================================ */

/* ================================================
   TYPOGRAPHIE BAUDILAINE
   Source Serif 4 : titres, noms de produits, marques, accents editoriaux
   Source Sans 3  : corps de texte, menus, boutons, prix, descriptions

   Fichiers hebergees dans themes/hummingbird/assets/fonts/ (a plat, au
   meme niveau que les fichiers Inter natifs de Hummingbird).
   Convention adoptee pour rester coherent avec le theme.

   font-display: swap = le texte reste visible pendant le chargement
   des fontes (pas de FOIT - Flash Of Invisible Text), evite la sensation
   de page blanche sur connexion lente.
   ================================================ */

@font-face {
  font-family: 'Source Sans 3';
  src: url('../fonts/source-sans-3-400.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Source Sans 3';
  src: url('../fonts/source-sans-3-500.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Source Sans 3';
  src: url('../fonts/source-sans-3-600.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Source Serif 4';
  src: url('../fonts/source-serif-4-400.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Source Serif 4';
  src: url('../fonts/source-serif-4-500.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Source Serif 4';
  src: url('../fonts/source-serif-4-600.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

/* Application globale au site */
html,
body {
  font-family: 'Source Sans 3', -apple-system, BlinkMacSystemFont,
               'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Titres principaux en Source Serif (chaleur + caractere editorial) */
h1, h2, h3,
.h1, .h2, .h3,
.product__name,
.page-title,
.featured-products__title,
.category__name,
.cms__title,
#footer .footer__title,
#footer .block-title,
#footer h3,
#footer h4 {
  font-family: 'Source Serif 4', Georgia, 'Times New Roman', serif !important;
}

/* Sous-titres et h4-h6 restent en sans-serif (continuite avec le corps) */
h4, h5, h6,
.h4, .h5, .h6 {
  font-family: 'Source Sans 3', -apple-system, BlinkMacSystemFont,
               'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
}

/* Le logo (image SVG/PNG) n'est pas affecte - typo dessinee dans l'image. */

/* === HEADER TOP === */
.header-top {
  background-color: #2B363D !important;
  padding: 0 !important;
  border-bottom: none !important;
}
.header-top .container-md {
  position: relative !important;
  min-height: 48px !important;
}
.header-top .row {
  width: 100% !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  min-height: 48px !important;
}
.header-top__left {
  display: flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  padding: 0 !important;
}

/* === TEXTE LIVRAISON desktop === */
.ps-contactinfo {
  display: none !important;
}
@media (min-width: 992px) {
  .header-top .container-md::after {
    content: 'Livraison en Europe - BE / LU / FR / DE / NL / ES / IT / PL / PT' !important;
    color: rgba(255,255,255,0.85) !important;
    font-size: 0.78rem !important;
    letter-spacing: 0.03em !important;
    white-space: nowrap !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    pointer-events: none !important;
  }
  html[lang^="de"] .header-top .container-md::after {
    content: 'Versand in Europa - BE / LU / FR / DE / NL / ES / IT / AT / PT' !important;
  }
  html[lang^="nl"] .header-top .container-md::after {
    content: 'Levering in Europa - BE / LU / FR / DE / NL / ES / IT / AT / PT' !important;
  }
  html[lang^="en"] .header-top .container-md::after {
    content: 'Delivery within Europe - BE / LU / FR / DE / NL / ES / IT / AT / PT' !important;
  }
  html[lang^="es"] .header-top .container-md::after {
    content: 'Envío en Europa - BE / LU / FR / DE / NL / ES / IT / AT / PT' !important;
  }
  html[lang^="it"] .header-top .container-md::after {
    content: 'Spedizione in Europa - BE / LU / FR / DE / NL / ES / IT / AT / PT' !important;
  }
  html[lang^="pt"] .header-top .container-md::after {
    content: 'Entrega na Europa - BE / LU / FR / DE / NL / ES / IT / AT / PT' !important;
  }
}

/* === MOBILE : barre top réduite à une fine ligne colorée === */
@media (max-width: 991px) {
  .header-top {
    min-height: 6px !important;
  }
  .header-top .container-md {
    min-height: 6px !important;
    padding: 0 !important;
  }
  .header-top .row {
    min-height: 6px !important;
    height: 6px !important;
    overflow: hidden !important;
  }
  .header-top__left,
  .header-top__right,
  .header-top .container-md::after {
    display: none !important;
  }
}

/* === CONNEXION + PANIER (topbar desktop) === */
.header-top__right {
  display: flex !important;
  align-items: center !important;
  margin-left: auto !important;
}
.header-top__right .header-block__action-btn,
.header-top__right .header-block__action-btn span,
.header-top__right .header-block__title {
  color: rgba(255,255,255,0.9) !important;
  font-size: 0.82rem !important;
}
.header-top__right .header-block__icon {
  color: rgba(255,255,255,0.9) !important;
  font-size: 1.1rem !important;
}
.header-top__right .header-block__badge {
  background: rgba(255,255,255,0.2) !important;
  color: #fff !important;
}

/* === HEADER STICKY === */
#header {
  position: sticky !important;
  top: 0 !important;
  z-index: 1021 !important;
}

/* === LOGO DESKTOP === */
@media (min-width: 1200px) {
  .header-bottom__logo {
    position: absolute !important;
    top: 8px !important;
    left: 24px !important;
    height: 40px !important;
    display: flex !important;
    align-items: center !important;
    z-index: 200 !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .header-bottom__logo .navbar-brand {
    display: flex !important;
    align-items: center !important;
    height: 40px !important;
    padding: 0 !important;
  }
  .header-bottom__logo .navbar-brand img.logo {
    height: 36px !important;
    width: auto !important;
    max-width: 220px !important;
    display: block !important;
    object-fit: contain !important;
  }
}

/* === LOGO MOBILE === */
@media (max-width: 1199px) {
  .header-bottom__logo {
    position: static !important;
    margin: 0 !important;
    padding-left: 48px !important;
    height: auto !important;
  }
  .header-bottom__logo .navbar-brand img.logo {
    height: 32px !important;
    width: auto !important;
    max-width: 160px !important;
    display: block !important;
    object-fit: contain !important;
  }
}

/* === HEADER BOTTOM === */
.header-bottom {
  border-bottom: 1px solid #E8ECEE !important;
  padding: 0.25rem 0 !important;
  position: static !important;
}
.header-bottom__row {
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  min-height: 52px !important;
}
.header-bottom__row > .order-2 {
  position: static !important;
  display: flex !important;
  align-items: center !important;
  margin-left: auto !important;
  flex: 0 0 auto !important;
}

/* === MENU DESKTOP — centré, sur une seule ligne === */
@media (min-width: 1200px) {
  .header-nav-full-width {
    width: 100% !important;
  }
  .ps-mainmenu--desktop {
    flex: 1 1 auto !important;
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 0 !important;
    overflow: visible !important;
  }
  .ps-mainmenu__desktop {
    width: 100% !important;
  }
  .ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree {
    justify-content: center !important;
    width: 100% !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
  }
}

/* === NAVBAR desktop === */
.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree > li .ps-mainmenu__tree-link,
.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree > li .ps-mainmenu__tree-dropdown-toggle {
  color: #2B363D !important;
  font-weight: 500;
  transition: color 0.15s, opacity 0.15s;
}
.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree > li .ps-mainmenu__tree-link:hover,
.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree > li .ps-mainmenu__tree-dropdown-toggle:hover {
  color: #2B363D !important;
  opacity: 0.6;
}
.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree > li.current .ps-mainmenu__tree-link {
  color: #2B363D !important;
  font-weight: 600;
}

/* === DROPDOWN desktop === */
.ps-mainmenu:is(.ps-mainmenu--desktop) .ps-mainmenu__tree > li .submenu {
  border-radius: 0 0 6px 6px !important;
  border: 1px solid #D0D8DC !important;
  border-top: 2px solid #2B363D !important;
  box-shadow: 0 8px 24px rgba(43, 54, 61, 0.10) !important;
}
.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu a {
  color: #2B363D !important;
  font-size: 14px;
  transition: background 0.12s, color 0.12s;
}
.ps-mainmenu:is(.ps-mainmenu--desktop) .submenu a:hover {
  background: #E8ECEE !important;
  color: #2B363D !important;
}

/* === MENU MOBILE offcanvas === */
.ps-mainmenu--mobile {
  position: fixed !important;
  z-index: 1055 !important;
}
.ps-mainmenu--mobile .offcanvas-header {
  background: #2B363D !important;
}
.ps-mainmenu--mobile .offcanvas-header .btn-close {
  filter: invert(1) !important;
}
.ps-mainmenu--mobile .menu__link {
  color: #2B363D !important;
  font-size: 1rem !important;
  padding: 0.75rem 1.25rem !important;
  display: block !important;
  border-bottom: 1px solid #F0F0F0 !important;
}
.ps-mainmenu--mobile .menu__link:hover {
  background: #F7F9FA !important;
  color: #2B363D !important;
  text-decoration: none !important;
}
.ps-mainmenu--mobile .menu__title {
  font-weight: 700 !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #2B363D !important;
  padding: 1rem 1.25rem 0.5rem !important;
}
.ps-mainmenu__back-button .btn {
  color: #2B363D !important;
}
.ps-mainmenu--mobile .menu__toggle-child {
  color: #2B363D !important;
}

/* === SIDEBAR === */
.category-tree__item-link {
  color: #2B363D;
  padding: 6px 10px;
  border-radius: 4px;
  display: block;
  font-size: 14px;
  border-left: 2px solid transparent;
  transition: all 0.12s;
}
.category-tree__item-link:hover {
  background: #E8ECEE;
  color: #2B363D !important;
  border-left-color: #2B363D;
  text-decoration: none;
}
.category-tree__item.current > .category-tree__item-header > .category-tree__item-link {
  background: #E8ECEE;
  color: #2B363D !important;
  border-left-color: #2B363D;
  font-weight: 600;
}

/* === SIDEBAR STICKY — desktop uniquement === */
@media (min-width: 992px) {
  #left-column {
    position: sticky;
    top: 100px;
    align-self: flex-start;
  }
}

/* === SIDEBAR MOBILE — scroll normal, pas de superposition === */
@media (max-width: 991px) {
  #left-column {
    position: static !important;
    top: auto !important;
    align-self: auto !important;
  }
}

/* === MASQUER TUILES SOUS-CATEGORIES === */
.subcategory {
  display: none !important;
}

/* === MASQUER PASTILLES COULEURS SOUS LES PRODUITS === */
.product-miniature .product-variants,
.product-miniature .variants-color-list,
.product-miniature .product-miniature__variants,
.card-product .product-variants,
.card-product .variants-color-list {
  display: none !important;
}

/* ================================================
   MINIATURES — Masquer le bouton Quick View (œil)
   ================================================ */
.product-miniature__quickview-button,
.product-miniature__quickview-touch,
.js-quickview {
  display: none !important;
}

/* ================================================
   FICHE PRODUIT - Pastilles couleur grandes et rondes
   ================================================ */
.product-variant__colors .color,
.product-miniature__variants .color {
  width: 2.4rem !important;
  height: 2.4rem !important;
  border-radius: 50% !important;
  outline-offset: 2px !important;
}
.product-variant__colors .color.selected,
.product-variant__colors input:checked + label .color {
  outline: 2px solid #2B363D !important;
  outline-offset: 2px !important;
}

/* ================================================
   FICHE PRODUIT - Masquer miniatures galerie
   ================================================ */
.product-images-thumbs,
.product__images-thumbs,
.product-thumbs,
.product__thumbs,
.product-images-thumbnails,
.js-product-images-thumbs,
.slick-slider.js-product-images-thumbs,
.slick-slider.product-images-thumbs,
.thumb-container,
.product-image-thumb,
.js-thumb,
.product__image-thumb,
.product-images__thumbs-wrapper,
.product-cover__thumbs,
.images-container .product-thumbs {
  display: none !important;
}

/* ================================================
   FICHE PRODUIT — Image non coupée sur mobile
   ================================================ */
@media (max-width: 767px) {
  .product-cover img,
  .product-cover .js-qv-product-cover,
  #product .product-cover img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
  }
  .product-cover {
    overflow: visible !important;
    height: auto !important;
    max-height: none !important;
  }
}

/* ================================================
   CARROUSEL — Masquer la caption (texte intégré dans les images)
   ================================================ */
.ps-imageslider__figcaption {
  display: none !important;
  visibility: hidden !important;
}

/* ================================================
   CARROUSEL — Correction débordement mobile
   ================================================ */
.ps-imageslider,
#ps_imageslider,
.ps-imageslider .carousel,
.ps-imageslider .carousel-inner {
  overflow: hidden !important;
  max-width: 100% !important;
  width: 100% !important;
}
.ps-imageslider__figure,
.ps-imageslider .carousel-item {
  overflow: hidden !important;
  max-width: 100% !important;
  width: 100% !important;
}
.ps-imageslider img,
.ps-imageslider__figure img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
  object-fit: cover !important;
}

/* ================================================
   FOOTER - Général
   ================================================ */
#footer {
  background-color: #2B363D !important;
  color: rgba(255,255,255,0.75) !important;
}
#footer .footer__title,
#footer .block-title,
#footer h3,
#footer h4 {
  color: #ffffff !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  margin-bottom: 1rem !important;
}
#footer a,
#footer ul li a {
  color: rgba(255,255,255,0.70) !important;
  font-size: 0.875rem !important;
  text-decoration: none !important;
  transition: color 0.15s !important;
  line-height: 1.9 !important;
}
#footer a:hover,
#footer ul li a:hover {
  color: #ffffff !important;
  text-decoration: none !important;
}
#footer p,
#footer address {
  color: rgba(255,255,255,0.65) !important;
  font-size: 0.875rem !important;
  line-height: 1.7 !important;
}
.footer__main {
  background-color: #2B363D !important;
}
.footer__bottom,
#footer .footer__bottom {
  border-top: 1px solid rgba(255,255,255,0.12) !important;
  margin-top: 1rem !important;
  padding: 1.25rem 0 !important;
  background-color: #2B363D !important;
  text-align: center !important;
}
#footer .footer__copyright,
.footer__bottom .footer__copyright {
  font-size: 0 !important;
  color: transparent !important;
}
#footer .footer__copyright::after,
.footer__bottom .footer__copyright::after {
  content: '\00A9 2026 Baudilaine - Tous droits reserves' !important;
  font-size: 0.78rem !important;
  color: rgba(255,255,255,0.40) !important;
  display: block !important;
  text-align: center !important;
}

/* ================================================
   FOOTER - Colonnes
   ================================================ */
.footer__main .container,
.footer__main .row {
  justify-content: center !important;
  text-align: left !important;
}
.footer-baudilaine-col .footer__title {
  font-family: inherit !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
  margin-bottom: 1rem !important;
}
.footer-baudilaine-col .footer__links {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 0.5rem !important;
}
.footer-baudilaine-col .footer__links li {
  font-family: inherit !important;
  font-size: 0.875rem !important;
  color: rgba(255,255,255,0.70) !important;
  line-height: 1.9 !important;
}

/* ================================================
   FOOTER - Bandeau réseaux sociaux + Newsletter
   ================================================ */
.footer__before,
.bg-body-tertiary,
section.ps-emailsubscription,
section[id*="emailsubscription"],
#emailsubscription_anchor_displayFooterBefore {
  background-color: #222e34 !important;
  background: #222e34 !important;
  --bs-tertiary-bg: #222e34 !important;
  --bs-tertiary-bg-rgb: 34, 46, 52 !important;
  --bs-body-tertiary-bg: #222e34 !important;
  --bs-bg-opacity: 1 !important;
}
.footer__before {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 1.5rem !important;
  padding: 1.25rem 1rem !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}
.footer__before *:not(input):not(button):not(a):not(i):not(svg) {
  background-color: transparent !important;
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}
.ps-socialfollow,
#ps_socialfollow,
[id*="ps_socialfollow"],
.block-social {
  background-color: transparent !important;
  padding: 0 !important;
  border-bottom: none !important;
  text-align: center !important;
  flex: 0 0 auto !important;
}
.block-social ul,
.ps-socialfollow ul {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.75rem !important;
  flex-wrap: nowrap !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.block-social ul::before,
.ps-socialfollow ul::before {
  content: 'Suivez-nous sur' !important;
  color: rgba(255,255,255,0.70) !important;
  font-size: 0.85rem !important;
  margin-right: 0.25rem !important;
  white-space: nowrap !important;
}
html[lang^="de"] .block-social ul::before,
html[lang^="de"] .ps-socialfollow ul::before {
  content: 'Folgen Sie uns' !important;
}
html[lang^="nl"] .block-social ul::before,
html[lang^="nl"] .ps-socialfollow ul::before {
  content: 'Volg ons' !important;
}
html[lang^="en"] .block-social ul::before,
html[lang^="en"] .ps-socialfollow ul::before {
  content: 'Follow us' !important;
}
html[lang^="es"] .block-social ul::before,
html[lang^="es"] .ps-socialfollow ul::before {
  content: 'Síguenos' !important;
}
html[lang^="it"] .block-social ul::before,
html[lang^="it"] .ps-socialfollow ul::before {
  content: 'Seguici' !important;
}
html[lang^="pt"] .block-social ul::before,
html[lang^="pt"] .ps-socialfollow ul::before {
  content: 'Siga-nos' !important;
}
.ps-socialfollow__link,
.block-social a,
.ps-socialfollow a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,0.10) !important;
  color: rgba(255,255,255,0.80) !important;
  margin: 0 !important;
  font-size: 1.25rem !important;
  text-decoration: none !important;
  transition: background 0.18s, color 0.18s !important;
}
.ps-socialfollow__link:hover,
.block-social a:hover,
.ps-socialfollow a:hover {
  background: rgba(255,255,255,0.22) !important;
  color: #ffffff !important;
}
.ps-emailsubscription-block {
  background-color: transparent !important;
  border-bottom: none !important;
  padding: 0 !important;
  flex: 1 1 320px !important;
  max-width: 520px !important;
}
.ps-emailsubscription-block .h3,
.ps-emailsubscription-block h3,
.ps-emailsubscription-block .h4,
.ps-emailsubscription-block h4,
.ps-emailsubscription-block p,
.ps-emailsubscription-block small,
.ps-emailsubscription-block .gdpr_consent,
.ps-emailsubscription-block .alert,
.ps-emailsubscription-block .col-lg-4 p,
#emailsubscription_anchor_displayFooterBefore p,
#emailsubscription_anchor_displayFooterBefore h3,
#emailsubscription_anchor_displayFooterBefore .h3 {
  display: none !important;
}
.ps-emailsubscription-block .container,
.ps-emailsubscription-block .row,
.ps-emailsubscription-block .card,
.ps-emailsubscription-block .card-body,
.ps-emailsubscription-block > div,
.ps-emailsubscription-block .col,
.ps-emailsubscription-block [class*="col-"] {
  background-color: transparent !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 0 !important;
  margin: 0 !important;
}
.ps-emailsubscription-block form {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 0 !important;
  justify-content: center !important;
  align-items: center !important;
}
.ps-emailsubscription-block input[type="email"],
.ps-emailsubscription-block input[type="text"] {
  background: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.20) !important;
  color: #ffffff !important;
  border-radius: 4px 0 0 4px !important;
  height: 44px !important;
  min-width: 220px !important;
}
.ps-emailsubscription-block input::placeholder {
  color: rgba(255,255,255,0.40) !important;
}
.ps-emailsubscription-block .btn-primary,
.ps-emailsubscription-block button[type="submit"] {
  background-color: #3d5260 !important;
  border-color: #3d5260 !important;
  color: #ffffff !important;
  border-radius: 0 4px 4px 0 !important;
  height: 44px !important;
  white-space: nowrap !important;
}
.ps-emailsubscription-block .btn-primary:hover,
.ps-emailsubscription-block button[type="submit"]:hover {
  background-color: #4a6170 !important;
  border-color: #4a6170 !important;
}
#emailsubscription_anchor_displayFooterBefore .container {
  max-width: 100% !important;
  padding: 0 1.5rem !important;
}
#emailsubscription_anchor_displayFooterBefore .row {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
}
#emailsubscription_anchor_displayFooterBefore .col-lg-4 {
  flex: 0 0 auto !important;
  width: auto !important;
}
#emailsubscription_anchor_displayFooterBefore .col-lg-6 {
  flex: 1 !important;
  max-width: 480px !important;
}

/* === MASQUER OPTIONS DE TRI INDÉSIRABLES === */
#js-product-list-top .select-list option[value="sales_desc"],
#js-product-list-top .select-list option[value="reference_asc"],
#js-product-list-top .select-list option[value="reference_desc"],
select[name="orderby"] option[value="sales"],
select[name="orderby"] option[value="reference"] {
  display: none !important;
}

/* ================================================
   MEGA MENU desktop
   ================================================ */
.ps-mainmenu--desktop .submenu {
  height: auto !important;
  bottom: auto !important;
}
.ps-mainmenu--desktop .submenu .container,
.ps-mainmenu--desktop .submenu .row {
  height: auto !important;
  align-items: stretch !important;
}
.ps-mainmenu--desktop .submenu__right {
  background: #F7F9FA !important;
  border-left: 1px solid #E8ECEE !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 1.5rem 2rem !important;
  height: auto !important;
}
.baudilaine-desc-text {
  font-size: 0.92rem !important;
  color: #4A5C66 !important;
  line-height: 1.7 !important;
  font-style: italic !important;
  text-align: center !important;
  margin: 0 !important;
}
.ps-mainmenu--desktop .submenu__left {
  max-height: 340px !important;
  overflow-y: auto !important;
}
.ps-mainmenu--desktop .submenu__right {
  max-height: 340px !important;
}

/* ================================================
   PAGE CATÉGORIE — Bandeau description
   ================================================ */
.category__description {
  background: #F7F9FA !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0.75rem 1.5rem !important;
  margin: 1rem 0 2rem 0 !important;
  width: 100% !important;
  font-size: 0.92rem !important;
  font-style: italic !important;
  color: #4A5C66 !important;
  text-align: left !important;
  line-height: 1.75 !important;
  max-width: 100% !important;
  position: static !important;
  transform: none !important;
  left: auto !important;
}

/* ================================================
   FICHE PRODUIT — Couleurs et boutons
   ================================================ */
.product-description,
.product-description p,
.product-description strong,
.page-content .product-description {
  color: #2B363D !important;
}
.product-manufacturer a,
.manufacturer-link {
  color: #2B363D !important;
}
.btn-primary,
#add-to-cart-or-refresh .btn-primary {
  background-color: #2B363D !important;
  border-color: #2B363D !important;
  color: #ffffff !important;
}
.btn-primary:hover {
  background-color: #4A5C66 !important;
  border-color: #4A5C66 !important;
}

/* === MINIATURE PRODUIT — Aiguilles n° === */
.product-miniature__needles {
  font-size: 0.82rem;
  color: #2B363D;
  margin: 0.2rem 0 0.4rem;
  opacity: 0.75;
}
.product-miniature__needles .needle-label {
  font-weight: 600;
}

/* ================================================
   Correction grid homepage mobile
   ================================================ */
@media (max-width: 575px) {
  .page-content--home {
    display: block !important;
  }
}
/* ================================================
   FICHE PRODUIT — Masquer la section "Détails du produit"
   (ne contient que le logo fabricant — inutile)
   id technique, fonctionne dans toutes les langues
   ================================================ */
#product_details {
  display: none !important;
}

/* ================================================
   PAGE CATÉGORIE — Masquer le bouton "Voir détails"
   sous les miniatures, uniquement dans "Nos Modèles"
   et ses sous-catégories.
   53 = Nos Modèles | 64 = Tricots | 65 = Crochets | 66 = Tricotin
   (l'image du produit reste cliquable et mène à la fiche)
   ================================================ */
body.category-id-53 .product-miniature__add-link,
body.category-id-64 .product-miniature__add-link,
body.category-id-65 .product-miniature__add-link,
body.category-id-66 .product-miniature__add-link,
body.category-id-53 .product-miniature__actions .btn,
body.category-id-64 .product-miniature__actions .btn,
body.category-id-65 .product-miniature__actions .btn,
body.category-id-66 .product-miniature__actions .btn {
  display: none !important;
}
/* Masquer le logo PayPal affiche sous l'option de paiement */
[paypal-mark-container] {
    display: none !important;
}
/* Petit logo PayPal a gauche du texte "Payer avec PayPal" */
.payment-option:has([paypal-mark-container]) .payment-option__form-check label::before {
    content: "";
    display: inline-block;
    width: 68px;
    height: 20px;
    margin-right: 8px;
    vertical-align: middle;
    background-image: url("https://www.paypalobjects.com/js-sdk-logos/2.3.7/paypal-default.svg");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left center;
}
/* Petite icone "banque" a gauche du texte "Payer par virement bancaire" */
.payment-options__list > .payment-option:first-child .payment-option__form-check label::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 8px;
    vertical-align: middle;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232B363D' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><line x1='3' x2='21' y1='22' y2='22'/><line x1='6' x2='6' y1='18' y2='11'/><line x1='10' x2='10' y1='18' y2='11'/><line x1='14' x2='14' y1='18' y2='11'/><line x1='18' x2='18' y1='18' y2='11'/><polygon points='12 2 20 7 4 7'/></svg>");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left center;
}