/* =============================================================
   SINGLE PRODUCT - Overrides chromatiques pour la charte LVMO
   "Maison de tradition contemporaine"
   ============================================================= */

/* ===== FOND DE PAGE ===== */
body.single-product,
body.product-template-default {
    background-color: #F4F0E6 !important;
}

body.single-product .site-content,
body.product-template-default .site-content {
    background-color: #F4F0E6 !important;
}

/* ===== MASQUER LE PRIX VIDE ===== */
body.single-product .price,
body.single-product .summary .price {
    display: none !important;
}

/* ===== CATEGORIE AU-DESSUS DU TITRE (eyebrow dore) ===== */
body.single-product .single-product-category {
    display: block !important;
    font-family: 'Lora', Georgia, serif !important;
    font-size: 11px !important;
    letter-spacing: 4px !important;
    text-transform: uppercase !important;
    color: #A88B5C !important;
    margin-bottom: 14px !important;
}
body.single-product .single-product-category a {
    color: #A88B5C !important;
    text-decoration: none !important;
    border-bottom: 1px solid transparent !important;
    transition: border-color 0.3s ease !important;
}
body.single-product .single-product-category a:hover {
    border-bottom-color: #A88B5C !important;
}

/* ===== TITRE PRODUIT H1 (Playfair bronze profond) ===== */
body.single-product .product_title,
body.single-product h1.product_title {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-weight: 600 !important;
    font-size: 36px !important;
    line-height: 1.15 !important;
    color: #5C4F36 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    margin: 0 0 18px 0 !important;
    padding-bottom: 18px !important;
    border-bottom: 1px solid rgba(168, 139, 92, 0.35) !important;
    position: relative !important;
}
body.single-product .product_title::after {
    content: "";
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 60px;
    height: 2px;
    background: #A88B5C;
}

/* ===== DESCRIPTION COURTE ===== */
body.single-product .woocommerce-product-details__short-description {
    font-family: 'Lora', Georgia, serif !important;
    font-size: 15px !important;
    line-height: 1.7 !important;
    color: #1C1C1C !important;
    margin: 20px 0 24px 0 !important;
}
body.single-product .woocommerce-product-details__short-description p {
    margin: 0 0 12px 0 !important;
}

/* ===== BOUTON "DEMANDER UN DEVIS" (CTA principal) ===== */
.lvmo-product-devis-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background-color: #3A3D2E !important;
    background: #3A3D2E !important;
    color: #F0EBE0 !important;
    border: 1px solid #A88B5C !important;
    font-family: 'Playfair Display', Georgia, serif !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    padding: 14px 32px !important;
    border-radius: 40px !important;
    text-decoration: none !important;
    transition: background 0.4s ease, color 0.4s ease, box-shadow 0.4s ease !important;
    box-shadow: 0 4px 14px -6px rgba(26, 26, 26, 0.35) !important;
    margin: 14px 0 26px 0 !important;
    cursor: pointer !important;
}
.lvmo-product-devis-btn::after {
    content: "\2192"; /* fleche droite */
    font-family: inherit;
    font-size: 16px;
}
.lvmo-product-devis-btn:hover,
.lvmo-product-devis-btn:focus {
    background-color: #A88B5C !important;
    background: #A88B5C !important;
    color: #1A1A1A !important;
    box-shadow: 0 6px 18px -6px rgba(168, 139, 92, 0.5) !important;
}

/* ===== META PRODUIT (categorie en bas) ===== */
body.single-product .product_meta {
    font-family: 'Lora', Georgia, serif !important;
    font-size: 12px !important;
    color: #5A5A55 !important;
    border-top: 1px solid rgba(168, 139, 92, 0.25) !important;
    padding-top: 14px !important;
    margin-top: 20px !important;
}
body.single-product .product_meta .posted_in {
    display: block !important;
    letter-spacing: 0.5px !important;
}
body.single-product .product_meta a {
    color: #A88B5C !important;
    text-decoration: none !important;
    border-bottom: 1px solid transparent !important;
    transition: border-color 0.3s ease !important;
}
body.single-product .product_meta a:hover {
    border-bottom-color: #A88B5C !important;
}

/* ===== GALERIE IMAGE PRODUIT ===== */
body.single-product .woocommerce-product-gallery {
    border: 1px solid rgba(168, 139, 92, 0.25) !important;
    border-radius: 4px !important;
    background: #FFFFFF !important;
    padding: 18px !important;
    box-shadow: 0 12px 36px -18px rgba(26, 26, 26, 0.18) !important;
}
body.single-product .woocommerce-product-gallery__image img {
    border-radius: 2px !important;
}

/* ===== ONGLETS WOOCOMMERCE ===== */
body.single-product .woocommerce-tabs {
    margin-top: 50px !important;
}
body.single-product .woocommerce-tabs ul.tabs {
    border-bottom: 1px solid rgba(168, 139, 92, 0.35) !important;
    padding: 0 !important;
    margin: 0 0 0 0 !important;
}
body.single-product .woocommerce-tabs ul.tabs::before {
    display: none !important;
}
body.single-product .woocommerce-tabs ul.tabs li {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
}
body.single-product .woocommerce-tabs ul.tabs li::before,
body.single-product .woocommerce-tabs ul.tabs li::after {
    display: none !important;
}
body.single-product .woocommerce-tabs ul.tabs li a {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: #5A5A55 !important;
    padding: 14px 24px !important;
    text-decoration: none !important;
    transition: color 0.3s ease !important;
    display: block !important;
}
body.single-product .woocommerce-tabs ul.tabs li:hover a {
    color: #5C4F36 !important;
}
body.single-product .woocommerce-tabs ul.tabs li.active a {
    color: #5C4F36 !important;
    background: transparent !important;
}
body.single-product .woocommerce-tabs ul.tabs li.active::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    bottom: -1px !important;
    left: 24px !important;
    right: 24px !important;
    height: 2px !important;
    background: #A88B5C !important;
}

/* ===== CONTENU DES ONGLETS ===== */
body.single-product .wc-tab {
    padding: 30px 5px 10px 5px !important;
}
body.single-product .wc-tab h2 {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-weight: 500 !important;
    color: #5C4F36 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    font-size: 18px !important;
    margin-bottom: 18px !important;
    padding-bottom: 12px !important;
    border-bottom: 1px solid rgba(168, 139, 92, 0.25) !important;
}
body.single-product .wc-tab p,
body.single-product .wc-tab li {
    font-family: 'Lora', Georgia, serif !important;
    font-size: 14.5px !important;
    line-height: 1.75 !important;
    color: #1C1C1C !important;
}
body.single-product .wc-tab strong,
body.single-product .wc-tab b {
    color: #3A3D2E !important;
    font-weight: 600 !important;
}
body.single-product .wc-tab a {
    color: #A88B5C !important;
    text-decoration: none !important;
    border-bottom: 1px solid rgba(168, 139, 92, 0.4) !important;
    transition: border-color 0.3s ease !important;
}
body.single-product .wc-tab a:hover {
    border-bottom-color: #A88B5C !important;
}

/* Tableau d'informations complementaires (poids, dimensions, etc.) */
body.single-product .woocommerce-product-attributes,
body.single-product .shop_attributes {
    border-collapse: collapse !important;
    width: 100% !important;
}
body.single-product .shop_attributes th,
body.single-product .woocommerce-product-attributes-item__label {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-weight: 500 !important;
    color: #5C4F36 !important;
    padding: 12px 16px !important;
    background: rgba(168, 139, 92, 0.08) !important;
    border: 1px solid rgba(168, 139, 92, 0.2) !important;
    text-align: left !important;
    width: 35% !important;
}
body.single-product .shop_attributes td,
body.single-product .woocommerce-product-attributes-item__value {
    font-family: 'Lora', Georgia, serif !important;
    color: #1C1C1C !important;
    padding: 12px 16px !important;
    background: #FFFFFF !important;
    border: 1px solid rgba(168, 139, 92, 0.2) !important;
}

/* ===== PRODUITS LIES / RELATED ===== */
body.single-product .related.products,
body.single-product .upsells.products {
    margin-top: 60px !important;
    padding-top: 40px !important;
    border-top: 1px solid rgba(168, 139, 92, 0.25) !important;
}
body.single-product .related.products > h2,
body.single-product .upsells.products > h2 {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-weight: 500 !important;
    color: #5C4F36 !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    font-size: 20px !important;
    margin-bottom: 26px !important;
    text-align: center !important;
    position: relative !important;
}
body.single-product .related.products > h2::after,
body.single-product .upsells.products > h2::after {
    content: "" !important;
    display: block !important;
    width: 60px !important;
    height: 2px !important;
    background: #A88B5C !important;
    margin: 12px auto 0 auto !important;
}

/* Cartes produits lies : alignement charte (fond fonce comme Catalogue) */
body.single-product ul.products li.product {
    background: linear-gradient(160deg, #1A1A1A, #2E3024) !important;
    border: 1px solid rgba(168, 139, 92, 0.3) !important;
    border-radius: 4px !important;
    padding: 16px !important;
    transition: transform 0.4s ease, box-shadow 0.4s ease !important;
    box-shadow: 0 8px 24px -12px rgba(0,0,0,0.5) !important;
    position: relative !important;
    overflow: hidden !important;
}
body.single-product ul.products li.product::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 2px !important;
    background: #A88B5C !important;
    transform: scaleX(0) !important;
    transform-origin: left !important;
    transition: transform 0.4s ease !important;
}
body.single-product ul.products li.product:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 16px 36px -16px rgba(0,0,0,0.6) !important;
}
body.single-product ul.products li.product:hover::before {
    transform: scaleX(1) !important;
}
body.single-product ul.products li.product .woocommerce-loop-product__title {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: 14px !important;
    color: #F0EBE0 !important;
    margin-top: 10px !important;
    text-align: center !important;
}
body.single-product ul.products li.product:hover .woocommerce-loop-product__title {
    color: #A88B5C !important;
}
body.single-product ul.products li.product .price {
    display: none !important;
}
body.single-product ul.products li.product .button {
    display: none !important; /* on masque les boutons "ajouter au panier" residuels */
}

/* ===== FIL D'ARIANE WOOCOMMERCE ===== */
body.single-product .woocommerce-breadcrumb {
    font-family: 'Lora', Georgia, serif !important;
    font-size: 11px !important;
    letter-spacing: 1px !important;
    color: #5A5A55 !important;
    margin-bottom: 24px !important;
}
body.single-product .woocommerce-breadcrumb a {
    color: #A88B5C !important;
    text-decoration: none !important;
}
body.single-product .woocommerce-breadcrumb a:hover {
    text-decoration: underline !important;
}

/* ===== BOUTON SCROLL-TO-TOP coherent avec le reste du site ===== */
body.single-product #ast-scroll-top,
body.single-product .ast-scroll-top-icon,
body.single-product .astra-scrolltotop {
    background-color: #1A1A1A !important;
    color: #A88B5C !important;
    border: 1px solid #A88B5C !important;
    box-shadow: 0 4px 14px -6px rgba(0,0,0,0.4) !important;
    transition: background 0.4s ease, color 0.4s ease !important;
}
body.single-product #ast-scroll-top:hover,
body.single-product .ast-scroll-top-icon:hover,
body.single-product .astra-scrolltotop:hover {
    background-color: #A88B5C !important;
    color: #1A1A1A !important;
}
body.single-product #ast-scroll-top svg,
body.single-product .ast-scroll-top-icon svg,
body.single-product .astra-scrolltotop svg {
    fill: #A88B5C !important;
    transition: fill 0.4s ease !important;
}
body.single-product #ast-scroll-top:hover svg,
body.single-product .ast-scroll-top-icon:hover svg,
body.single-product .astra-scrolltotop:hover svg {
    fill: #1A1A1A !important;
}
/* =============================================================
   MASQUE LA CATEGORIE EYEBROW au-dessus du titre (faisait doublon
   avec celle deja affichee + product_meta en bas)
   ============================================================= */
body.single-product .single-product-category {
    display: none !important;
}


/* =============================================================
   REORDONNER les elements du summary pour que le bouton
   "Demander un devis" apparaisse JUSTE APRES la description courte
   (Astra rend tout en bloc, donc le DOM met le bouton apres le meta ;
    on corrige visuellement avec flexbox order)
   ============================================================= */
body.single-product .summary.entry-summary {
    display: flex !important;
    flex-direction: column !important;
}
body.single-product .summary.entry-summary > * {
    order: 5;
}
body.single-product .summary.entry-summary > .product_title {
    order: 1;
}
body.single-product .summary.entry-summary > .woocommerce-product-details__short-description {
    order: 2;
}
body.single-product .summary.entry-summary > .lvmo-product-devis-btn {
    order: 3;
    align-self: flex-start;
}
body.single-product .summary.entry-summary > .product_meta {
    order: 4;
}


/* =============================================================
   MASQUER l'icone panier "sur carte" (ast-on-card-button) qui
   apparait au survol des cartes produits similaires.
   B2B sur devis : pas de panier.
   ============================================================= */
body.single-product .related.products ul.products li.product .ast-on-card-button,
body.single-product .related.products ul.products li.product .ast-select-options-trigger,
body.single-product .related.products ul.products li.product .ast-card-action-tooltip,
body.single-product .upsells.products ul.products li.product .ast-on-card-button {
    display: none !important;
}