/* fiche-produit.css — mise en page de la fiche produit (2026-09-25, direction). Portée : body.cg-fiche (posé par fiche-produit.js). */

/* Textes : alignés à gauche (le justifié créait de grands blancs), largeur de lecture confortable */
body.cg-fiche .justified-text { text-align: left !important; }
body.cg-fiche .justified-text p { max-width: 78ch; }

/* Prix + TTC */
body.cg-fiche .fiche h1.fw-bold { gap: 10px; align-items: baseline !important; }
body.cg-fiche .cg-fiche-ttc { font-size: .9rem; font-weight: 600; opacity: .7; letter-spacing: .04em; }

/* Description longue repliée */
body.cg-fiche .cg-description-repliee { max-height: 280px; overflow: hidden; position: relative;
  -webkit-mask-image: linear-gradient(180deg, #000 60%, transparent); mask-image: linear-gradient(180deg, #000 60%, transparent); }
body.cg-fiche .cg-description-repliee.cg-description-ouverte { max-height: none; -webkit-mask-image: none; mask-image: none; }
body.cg-fiche .cg-lire-suite { margin-top: 6px; background: none; border: 1px solid var(--cg-bord, rgba(255,255,255,.2)); color: inherit;
  border-radius: 999px; padding: 6px 16px; font-weight: 600; cursor: pointer; }
body.cg-fiche .cg-lire-suite:hover, body.cg-fiche .cg-lire-suite:focus-visible { border-color: var(--cg-accent, #e0a63e); color: var(--cg-accent, #e0a63e); }

/* Caractéristiques : groupes sur deux colonnes, colonnes de tableau alignées */
body.cg-fiche .specifications { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 32px; }
body.cg-fiche .specifications > div { break-inside: avoid; min-width: 0; }
body.cg-fiche .specifications h5 { margin-top: 1.4rem !important; margin-bottom: .5rem; font-size: 1.02rem; }
body.cg-fiche .spec-table { width: 100% !important; table-layout: fixed; }
body.cg-fiche .spec-table td { padding: 7px 10px !important; vertical-align: top; overflow-wrap: anywhere; font-size: .9rem; }
body.cg-fiche .spec-table td.label { width: 42%; font-weight: 600; }
body.cg-fiche .mx-auto.bg-white { max-width: 100% !important; }

/* Produits similaires (rangée maison, 7 visibles) */
body.cg-fiche .cg-similaires { margin: 8px 0 28px; }
body.cg-fiche .cg-similaires .cg-rangee-titre { font-size: 1.6rem; }

/* Avis : bloc compact quand il n'y en a aucun */
body.cg-fiche .cg-avis-vide .review-summary { display: none !important; }
body.cg-fiche .cg-avis-vide .row > .col-md-4 { display: none !important; }
body.cg-fiche .cg-avis-vide .row > [class*="col-md-8"] { flex: 0 0 100%; max-width: 100%; }
body.cg-fiche .cg-avis-vide h4.sous-titre { font-size: 1.3rem; }

/* Mobile */
@media (max-width: 767.98px) {
  body.cg-fiche .fiche .row > .col-md-5.col-6 { flex: 0 0 100% !important; max-width: 100% !important; }
  body.cg-fiche .fiche .image-container img.main-image { width: 100% !important; max-height: 70vw; object-fit: contain; }
  body.cg-fiche .fiche nav.breadcrumb { flex-wrap: nowrap !important; overflow-x: auto; white-space: nowrap; scrollbar-width: none; padding-bottom: 4px; }
  body.cg-fiche .fiche nav.breadcrumb::-webkit-scrollbar { display: none; }
  body.cg-fiche .fiche nav.breadcrumb .breadcrumb-item.active { max-width: 60vw; overflow: hidden; text-overflow: ellipsis; display: inline-block; }
  body.cg-fiche .specifications { grid-template-columns: 1fr; }
  body.cg-fiche .spec-table td.label { width: 45%; }
  body.cg-fiche .cg-similaires .cg-rangee-titre { font-size: 1.3rem; }
}
