/* LUXEMONDIALE PRESTIGE 3.0 – FICHES PRODUITS : CONTRASTES PAR SURFACE.
   Priorité : panneaux bordeaux + texte clair, description ivoire + encre foncée,
   boutons or + texte sombre, cartes produits blanc + encre foncée.
   Ne touche ni au catalogue, ni aux montants, ni aux JS WooCommerce, ni au paiement.
   Ne jamais remettre un sélecteur universel '.summary *' en blanc. */
:root{
  --lm30-wine:#351423;
  --lm30-dark:#260e18;
  --lm30-cream:#fffaf4;
  --lm30-paper:#ffffff;
  --lm30-ink:#241b19;
  --lm30-ink-subtle:#584a43;
  --lm30-white:#fff8f0;
  --lm30-gold:#f2d396;
  --lm30-border:#c5a6a3;
}
/* Fond général du produit, plein écran derrière photo, résumé et blocs. */
html body.single-product main#lm-main.lm-commerce-main,
html body.lm-product-page main#lm-main.lm-product-page{
  background:var(--lm30-dark)!important;
  color:var(--lm30-white)!important;
}
html body.single-product main#lm-main .lm-woocommerce-wrap{
  color:var(--lm30-white)!important;
}
/* Fil d'Ariane. */
html body.single-product main#lm-main :is(.woocommerce-breadcrumb,.woocommerce-breadcrumb a,.woocommerce-breadcrumb span){
  color:#fff2dc!important;-webkit-text-fill-color:#fff2dc!important;opacity:1!important;
}
/* Sommaire : une surface clairement bordeaux. Inclut de nouveaux blocs WooCommerce. */
html body.single-product main#lm-main div.product div.summary{
  background:var(--lm30-wine)!important;
  color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;
  border:1px solid #946e76!important;
  box-shadow:0 6px 22px rgba(0,0,0,.14)!important;
  opacity:1!important;
}
html body.single-product main#lm-main div.product div.summary :is(
  h1,h2,h3,h4,h5,h6,.product_title,p,li,span,small,strong,em,dt,dd,
  .woocommerce-product-details__short-description,
  .woocommerce-product-details__short-description p,
  .woocommerce-product-details__short-description li,
  .woocommerce-product-rating,.stock,.stock.in-stock,
  .product_meta,.product_meta span,.product_meta .sku,.product_meta .posted_in,
  form.cart label,form.cart th.label,form.cart th.label label,
  .woocommerce-variation-description,.woocommerce-variation-description p,
  .woocommerce-variation-availability,.woocommerce-variation-availability p
){color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;opacity:1!important;}
html body.single-product main#lm-main div.product div.summary h1.product_title{
  font-size:clamp(29px,3.1vw,43px)!important;
  line-height:1.2!important;
}
/* Prix actuel blanc bien visible. Prix ancien clair barré. */
html body.single-product main#lm-main div.product div.summary :is(
  p.price,span.price,.price ins,.price ins *,.woocommerce-variation-price,
  .woocommerce-variation-price .price,.woocommerce-variation-price .price ins,
  .woocommerce-variation-price .price ins *,
  .price > .woocommerce-Price-amount,.price > .woocommerce-Price-amount *,
  .price .woocommerce-Price-amount.amount,.price ins .woocommerce-Price-amount.amount
){color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;opacity:1!important;}
html body.single-product main#lm-main div.product div.summary :is(
  .price del,.price del *
){color:#ead7ce!important;-webkit-text-fill-color:#ead7ce!important;opacity:1!important;}
/* Liens métadonnées : or lumineux sur bordeaux. */
html body.single-product main#lm-main div.product div.summary :is(
  a:not(.button),a:not(.button):visited,.reset_variations,.woocommerce-review-link
){color:var(--lm30-gold)!important;-webkit-text-fill-color:var(--lm30-gold)!important;opacity:1!important;}
/* Choix taille/couleur, quantité, textes insérés par sélecteurs externes. */
html body.single-product main#lm-main div.product div.summary :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
  select,select option,textarea,.select2-selection,.select2-selection__rendered,
  .quantity .qty,.variable-items-wrapper .variable-item:not(.selected),
  .woo-variation-swatches .variable-item:not(.selected)
){
  background:#ffffff!important;color:#251c18!important;
  -webkit-text-fill-color:#251c18!important;
  border-color:#b8a69a!important;opacity:1!important;
}
html body.single-product main#lm-main div.product div.summary :is(input,textarea)::placeholder{
  color:#61534d!important;-webkit-text-fill-color:#61534d!important;opacity:1!important;
}
/* Pastilles de variations sélectionnées et états focus restent discernables. */
html body.single-product main#lm-main div.product div.summary :is(.variable-item.selected,.woo-variation-swatches .variable-item.selected){
  border:2px solid var(--lm30-gold)!important;
  outline:1px solid #fff!important;outline-offset:2px!important;
}
/* CTA : fond or + lettres foncées (y compris descendants). */
html body.single-product main#lm-main div.product div.summary :is(
  button.single_add_to_cart_button,button.button,button.button.alt,a.button,
  .single_add_to_cart_button
){
  background:var(--lm30-gold)!important;color:#251810!important;
  -webkit-text-fill-color:#251810!important;
  border:1px solid #e8c37b!important;opacity:1!important;
}
html body.single-product main#lm-main div.product div.summary :is(
  button.single_add_to_cart_button,button.button,button.button.alt,a.button,
  .single_add_to_cart_button
) :is(span,strong,small,svg){
  color:#251810!important;-webkit-text-fill-color:#251810!important;
}
html body.single-product main#lm-main div.product div.summary :is(
  button.single_add_to_cart_button,button.button.alt,a.button
):hover{background:#ffe7b1!important;color:#251810!important;-webkit-text-fill-color:#251810!important;}
html body.single-product main#lm-main div.product div.summary :is(button:disabled,button.disabled){opacity:.65!important;}
/* La section « Description » est volontairement BLANC/IVOIRE : caractères foncés.
   Cela corrige les anciens textes blancs sur les panneaux clairs générés par WC. */
html body.single-product main#lm-main div.product .woocommerce-tabs,
html body.single-product main#lm-main div.product .woocommerce-tabs .panel,
html body.single-product main#lm-main div.product .woocommerce-Tabs-panel{
  background:var(--lm30-cream)!important;
  color:var(--lm30-ink)!important;-webkit-text-fill-color:var(--lm30-ink)!important;
}
html body.single-product main#lm-main div.product .woocommerce-tabs{
  clear:both!important;
  padding:clamp(17px,2.5vw,30px)!important;
  margin:30px 0!important;
  border:1px solid #e1cfc5!important;
  border-radius:5px!important;
}
html body.single-product main#lm-main div.product .woocommerce-tabs :is(
  h1,h2,h3,h4,h5,h6,p,li,span,strong,small,em,th,td,label,blockquote,
  .woocommerce-Tabs-panel,.woocommerce-Tabs-panel p,.woocommerce-Tabs-panel li,
  .woocommerce-Tabs-panel h2,.woocommerce-Tabs-panel h3
){color:var(--lm30-ink)!important;-webkit-text-fill-color:var(--lm30-ink)!important;opacity:1!important;}
html body.single-product main#lm-main div.product .woocommerce-tabs :is(a,a:visited){
  color:#673347!important;-webkit-text-fill-color:#673347!important;
}
html body.single-product main#lm-main div.product .woocommerce-tabs ul.tabs{
  border-bottom:1px solid #cdb9aa!important;margin:0 0 17px!important;padding:0 0 9px!important;
}
html body.single-product main#lm-main div.product .woocommerce-tabs ul.tabs :is(li,li a,li.active a){
  background:transparent!important;color:#472434!important;
  -webkit-text-fill-color:#472434!important;opacity:1!important;
}
html body.single-product main#lm-main div.product .woocommerce-tabs ul.tabs li.active{
  border-color:#9c6975!important;border-bottom:3px solid #7a354c!important;
}
html body.single-product main#lm-main div.product .woocommerce-tabs table :is(th,td),
html body.single-product main#lm-main div.product .woocommerce-tabs .shop_attributes :is(th,td){
  background:#f4ece4!important;color:#241b19!important;
  -webkit-text-fill-color:#241b19!important;border-color:#cbbcb3!important;
}
html body.single-product main#lm-main div.product .woocommerce-tabs :is(input,textarea,select){
  background:#fff!important;color:#241b19!important;-webkit-text-fill-color:#241b19!important;
}
/* Forte spécificité nécessaire : les styles WooCommerce V2.6 utilisent
   des sélecteurs groupés :is() dont la spécificité vient du plus long membre. */
html body.single-product main#lm-main.lm-product-page.lm-commerce-main .lm-woocommerce-wrap div.product div.woocommerce-tabs,
html body.single-product main#lm-main.lm-product-page.lm-commerce-main .lm-woocommerce-wrap div.product div.woocommerce-tabs ul.tabs,
html body.single-product main#lm-main.lm-product-page.lm-commerce-main .lm-woocommerce-wrap div.product div.woocommerce-tabs .panel,
html body.single-product main#lm-main.lm-product-page.lm-commerce-main .lm-woocommerce-wrap div.product div.woocommerce-tabs .woocommerce-Tabs-panel{
  background:var(--lm30-cream)!important;
  color:var(--lm30-ink)!important;
  -webkit-text-fill-color:var(--lm30-ink)!important;
}
html body.single-product main#lm-main.lm-product-page.lm-commerce-main .lm-woocommerce-wrap div.product div.woocommerce-tabs ul.tabs li,
html body.single-product main#lm-main.lm-product-page.lm-commerce-main .lm-woocommerce-wrap div.product div.woocommerce-tabs ul.tabs li a{
  background:transparent!important;
  color:#472434!important;
  -webkit-text-fill-color:#472434!important;
}

/* Avis/notes WooCommerce, lorsqu'ils sont présents. */
html body.single-product main#lm-main div.product .woocommerce-tabs #reviews :is(p,span,strong,li,label,small){
  color:var(--lm30-ink)!important;-webkit-text-fill-color:var(--lm30-ink)!important;
}
/* Recommandations « Achetez le look » et produits similaires : séparées des fonds sombres.
   Titres des sections sur bordeaux = ivoire. Cartes blanches = encre foncée. */
html body.single-product main#lm-main :is(.related,.upsells,.cross-sells) > :is(h2,h3),
html body.single-product main#lm-main :is(#bpc-complete-look,.bpc-complete-look,.bpc-discovery-section) > :is(h1,h2,h3,p),
html body.single-product main#lm-main :is(#bpc-complete-look,.bpc-complete-look,.bpc-discovery-section) .bpc-look-heading :is(h2,h3,p),
html body.single-product main#lm-main :is(.bpc-look-heading,.bpc-look-eyebrow){
  color:#fff8ef!important;-webkit-text-fill-color:#fff8ef!important;opacity:1!important;
}
html body.single-product main#lm-main :is(.related,.upsells,.cross-sells,#bpc-complete-look,.bpc-complete-look,.bpc-discovery-section) ul.products li.product,
html body.single-product main#lm-main :is(.related,.upsells,.cross-sells,#bpc-complete-look,.bpc-complete-look,.bpc-discovery-section) .product-card{
  background:#ffffff!important;color:var(--lm30-ink)!important;-webkit-text-fill-color:var(--lm30-ink)!important;
}
html body.single-product main#lm-main :is(.related,.upsells,.cross-sells,#bpc-complete-look,.bpc-complete-look,.bpc-discovery-section) ul.products li.product :is(
  h1,h2,h3,h4,p,small,span,strong,a:not(.button),
  .woocommerce-loop-product__title,.price,.price *,del,ins,bdi
){
  color:var(--lm30-ink)!important;-webkit-text-fill-color:var(--lm30-ink)!important;opacity:1!important;
}
html body.single-product main#lm-main :is(.related,.upsells,.cross-sells,#bpc-complete-look,.bpc-complete-look,.bpc-discovery-section) ul.products li.product :is(
  a.button,button.button,.added_to_cart
){
  background:#4c1d31!important;color:#fff!important;-webkit-text-fill-color:#fff!important;
  border-color:#4c1d31!important;
}
html body.single-product main#lm-main :is(.related,.upsells,.cross-sells,#bpc-complete-look,.bpc-complete-look,.bpc-discovery-section) ul.products li.product :is(a.button,button.button,.added_to_cart) :is(span,strong,small){
  color:#fff!important;-webkit-text-fill-color:#fff!important;
}
/* Galerie : fond blanc uniquement derrière l'image, sans changer les photos. */
html body.single-product main#lm-main div.product .woocommerce-product-gallery,
html body.single-product main#lm-main div.product div.images{
  color:var(--lm30-ink)!important;
}
html body.single-product main#lm-main div.product div.images img,
html body.single-product main#lm-main div.product .woocommerce-product-gallery img{
  background:#ffffff!important;
}
/* Messages Woo sur fiche : fond ivoire + texte noir. */
html body.single-product main#lm-main :is(.woocommerce-message,.woocommerce-info,.woocommerce-error){
  background:#fffaf2!important;color:#241b19!important;-webkit-text-fill-color:#241b19!important;
}
html body.single-product main#lm-main :is(.woocommerce-message,.woocommerce-info,.woocommerce-error) :is(p,span,strong,li){
  color:#241b19!important;-webkit-text-fill-color:#241b19!important;
}
html body.single-product main#lm-main :is(.woocommerce-message,.woocommerce-info,.woocommerce-error) a{
  color:#653042!important;-webkit-text-fill-color:#653042!important;
}
/* Maintenir le masque du badge promotion (le prix remisé reste affiché). */
html body.single-product main#lm-main :is(span.onsale,.onsale){display:none!important;}
/* Mobilité : aucune colonne écrasée, texte lisible sans zoom. */
@media(max-width:900px){
  html body.single-product main#lm-main div.product div.images,
  html body.single-product main#lm-main div.product div.summary{
    width:100%!important;float:none!important;clear:both!important;
  }
  html body.single-product main#lm-main div.product .woocommerce-tabs{padding:20px!important;}
}
@media(max-width:650px){
  html body.single-product main#lm-main div.product div.summary{padding:20px 17px!important;}
  html body.single-product main#lm-main div.product div.summary h1.product_title{font-size:clamp(27px,7.2vw,36px)!important;}
  html body.single-product main#lm-main div.product .woocommerce-tabs{padding:16px!important;}
  html body.single-product main#lm-main div.product .woocommerce-tabs ul.tabs li a{font-size:13px!important;}
}
