/* ============================================================
   GRAVANO — AVIS produits (levier conversion). Feutré, doré, crème.
   Notation par étoiles en CSS pur (astuce row-reverse + ~ label).
   ============================================================ */
body.single-product .gv-avis{
  max-width:820px;margin:3rem auto 0;padding:0 1.4rem;
  font-family:'Figtree',system-ui,sans-serif;color:var(--gv-encre);
}
body.single-product .gv-avis-tete{ text-align:center;margin-bottom:1.7rem; }
body.single-product .gv-avis-kicker{
  display:inline-block;font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;font-weight:600;
  color:var(--gv-or);margin-bottom:.5rem;
}
body.single-product .gv-avis-titre{
  font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(1.8rem,3.6vw,2.4rem);
  color:var(--gv-grenat);margin:0;line-height:1.1;
}
body.single-product .gv-avis-note{ margin-top:.6rem;display:flex;gap:.5rem;align-items:center;justify-content:center;flex-wrap:wrap; }
body.single-product .gv-avis-moy{ font-weight:700;color:var(--gv-grenat); }
body.single-product .gv-avis-nb{ color:var(--gv-terracotta-fonce);font-size:.92rem; }

/* Étoiles d'affichage */
body.single-product .gv-stars{ display:inline-flex;gap:.05em;font-size:1.05rem;line-height:1; }
body.single-product .gv-star{ color:#e2d3c4; }
body.single-product .gv-star.on{ color:var(--gv-or); }

/* Liste des avis */
body.single-product .gv-avis-liste{ list-style:none;margin:0 0 2rem;padding:0;display:flex;flex-direction:column;gap:1rem; }
body.single-product .gv-avis-item{
  display:flex;gap:1rem;background:var(--gv-blanc);border:1px solid var(--gv-nude-fonce);border-radius:14px;
  padding:1.2rem 1.3rem;box-shadow:0 2px 4px rgba(37,16,36,.04),0 16px 34px -26px rgba(117,35,79,.22);
}
body.single-product .gv-avis-av{
  flex:0 0 auto;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;
  background:linear-gradient(160deg,#F0D77E,var(--gv-or) 55%,#A6801D);color:#2a1e06;
  font-family:'Cormorant Garamond',serif;font-weight:700;font-size:1.3rem;
}
body.single-product .gv-avis-meta{ display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;margin-bottom:.3rem; }
body.single-product .gv-avis-nom{ font-weight:600;color:var(--gv-encre); }
body.single-product .gv-avis-texte{ line-height:1.6;color:#4a3640; }
body.single-product .gv-avis-texte p{ margin:0 0 .4rem; }
body.single-product .gv-avis-date{ font-size:.8rem;color:#9a8189;margin-top:.4rem; }

/* État VIDE — invitation (jamais de faux avis) */
body.single-product .gv-avis-vide{
  text-align:center;font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:1.4rem;
  line-height:1.5;color:var(--gv-terracotta-fonce);max-width:560px;margin:0 auto 2rem;
}
body.single-product .gv-avis-vide strong{ color:var(--gv-grenat);font-style:normal; }

/* Formulaire */
body.single-product .gv-avis-form{
  background:linear-gradient(160deg,var(--gv-blanc),var(--gv-ivoire));border:1px solid var(--gv-nude-fonce);
  border-top:3px solid var(--gv-or);border-radius:16px;padding:1.8rem;
  box-shadow:0 2px 4px rgba(37,16,36,.05),0 20px 46px -30px rgba(117,35,79,.24);
}
body.single-product .gv-avis-form-titre{
  font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:1.5rem;color:var(--gv-grenat);margin:0 0 1rem;
}
body.single-product .gv-avis-rating{ display:flex;align-items:center;gap:.8rem;margin-bottom:1rem;flex-wrap:wrap; }
body.single-product .gv-avis-rating-lab{ font-size:.9rem;color:var(--gv-terracotta-fonce);font-weight:600; }
/* Étoiles cliquables (CSS pur : DOM 5→1 + row-reverse + ~ label) */
body.single-product .gv-stars-input{ display:inline-flex;flex-direction:row-reverse;gap:.1rem; }
body.single-product .gv-stars-input input{ position:absolute;opacity:0;width:0;height:0; }
body.single-product .gv-stars-input label{ font-size:1.9rem;line-height:1;color:#e2d3c4;cursor:pointer;transition:color .12s ease; }
body.single-product .gv-stars-input label:hover,
body.single-product .gv-stars-input label:hover ~ label,
body.single-product .gv-stars-input input:checked ~ label{ color:var(--gv-or); }
body.single-product .gv-stars-input input:focus-visible + label{ outline:2px solid var(--gv-grenat);outline-offset:2px;border-radius:3px; }
body.single-product .gv-avis-champs{ display:flex;gap:.8rem;flex-wrap:wrap;margin-bottom:.8rem; }
body.single-product .gv-avis-form input[type=text],
body.single-product .gv-avis-form input[type=email],
body.single-product .gv-avis-form textarea{
  flex:1 1 200px;font-family:'Figtree',sans-serif;font-size:.98rem;padding:.7rem .9rem;
  border:1px solid var(--gv-nude-fonce);border-radius:10px;background:#fffdfd;color:var(--gv-encre);
}
body.single-product .gv-avis-form textarea{ width:100%;resize:vertical;margin-bottom:1rem; }
body.single-product .gv-avis-form input:focus,
body.single-product .gv-avis-form textarea:focus{ outline:none;border-color:var(--gv-or);box-shadow:0 0 0 3px rgba(201,162,39,.14); }
body.single-product .gv-avis-submit{
  font-family:'Figtree',sans-serif;font-weight:700;font-size:1rem;color:#2a1e06;border:none;cursor:pointer;
  background:linear-gradient(160deg,#E9CE6B,var(--gv-or) 48%,#A6801D);padding:.85rem 1.6rem;border-radius:12px;
  box-shadow:0 12px 24px -12px rgba(166,128,29,.55),inset 0 1px 0 rgba(255,255,255,.4);
  transition:transform .16s ease,box-shadow .2s ease;
}
body.single-product .gv-avis-submit:hover{ transform:translateY(-2px); }
body.single-product .gv-avis-note-mod{ font-size:.8rem;color:#9a8189;margin:.9rem 0 0; }

/* ————— BLOC AVIS — CADRE COMPACT (réduit au max) ————— */
body.single-product .gv-avis--mini{ margin-top:2.6rem; }

/* Preuve sociale COSY : confessions « à la une », mixées au hasard. */
body.single-product .gv-avis-mur{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:900px;margin:0 auto 1.6rem;
}
body.single-product .gv-avis-carte{
  margin:0;background:var(--gv-blanc);border:1px solid var(--gv-nude-fonce);border-radius:16px;
  padding:1.2rem 1.25rem;box-shadow:0 2px 4px rgba(37,16,36,.04),0 16px 34px -26px rgba(117,35,79,.22);
  display:flex;flex-direction:column;gap:.55rem;
}
body.single-product .gv-avis-carte-stars{ font-size:1rem;color:var(--gv-or);line-height:1; }
body.single-product .gv-avis-carte-stars .gv-star{ color:#e2d3c4; }
body.single-product .gv-avis-carte-stars .gv-star.on{ color:var(--gv-or); }
body.single-product .gv-avis-carte-txt{
  margin:0;padding:0;border:0;font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:1.16rem;line-height:1.45;color:#4a3640;
}
body.single-product .gv-avis-carte-nom{ font-family:'Figtree',sans-serif;font-weight:600;font-size:.9rem;color:var(--gv-terracotta-fonce); }
@media (max-width:760px){
  body.single-product .gv-avis-mur{ grid-template-columns:1fr;gap:.9rem; }
}

/* ⭐ CADRE d'invitation : resserré, chaleureux. Toute com' vit dans un cadre. */
body.single-product .gv-avis-invite{
  max-width:560px;margin:1.4rem auto 0;text-align:center;
  background:linear-gradient(165deg,var(--gv-blanc),var(--gv-ivoire));
  border:1px solid var(--gv-nude-fonce);border-top:3px solid var(--gv-or);border-radius:16px;
  padding:1.35rem 1.5rem 1.5rem;
  box-shadow:0 2px 4px rgba(37,16,36,.05),0 18px 44px -30px rgba(117,35,79,.28);
}
/* Nom du bloc — « Le coin des confessions » (Cormorant grenat, compact). */
body.single-product .gv-avis-invite-nom{
  font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(1.4rem,3vw,1.75rem);
  color:var(--gv-grenat);margin:0 0 .55rem;line-height:1.1;
}
/* Les étoiles parlent à l'œil : rangée dorée compacte sous le nom. */
body.single-product .gv-avis-invite-stars{
  display:flex;justify-content:center;gap:.18em;font-size:1.25rem;line-height:1;margin-bottom:.5rem;
  color:var(--gv-or);text-shadow:0 1px 0 rgba(166,128,29,.35);
}
body.single-product .gv-avis-invite-txt{
  font-family:'Figtree',sans-serif;font-size:.98rem;line-height:1.55;color:#4a3640;
  max-width:440px;margin:0 auto;
}
/* Récompense = chip doré compact (incitation, sans crier). */
body.single-product .gv-avis-invite-bon{
  display:inline-block;margin:.85rem auto 0;
  font-family:'Figtree',sans-serif;font-size:.88rem;line-height:1.4;color:#5a3b12;
  background:linear-gradient(160deg,#fbeec2,#f3dd9a);border:1px solid var(--gv-or);border-radius:999px;
  padding:.42rem 1rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.5);
}
body.single-product .gv-avis-invite-bon strong{ color:var(--gv-grenat); }
body.single-product .gv-avis-invite-bon-ico{ margin-right:.15rem; }

/* ⭐ VRAI BOUTON « Laisse ton avis ici » (le summary du details, style CTA or). */
body.single-product .gv-avis-toggle{ margin-top:1.1rem; }
body.single-product .gv-avis-btn{
  list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;
  font-family:'Figtree',sans-serif;font-weight:700;font-size:1rem;color:#2a1e06;
  background:linear-gradient(160deg,#E9CE6B,var(--gv-or) 48%,#A6801D);
  padding:.8rem 1.7rem;border-radius:999px;border:1px solid rgba(166,128,29,.5);
  box-shadow:0 12px 24px -12px rgba(166,128,29,.6),inset 0 1px 0 rgba(255,255,255,.45);
  transition:transform .16s ease,box-shadow .2s ease;
}
body.single-product .gv-avis-btn::-webkit-details-marker{ display:none; }
body.single-product .gv-avis-btn::marker{ content:''; }
body.single-product .gv-avis-btn:hover{ transform:translateY(-2px);box-shadow:0 16px 30px -12px rgba(166,128,29,.7),inset 0 1px 0 rgba(255,255,255,.45); }
body.single-product .gv-avis-btn:focus-visible{ outline:2px solid var(--gv-grenat);outline-offset:3px; }
body.single-product .gv-avis-btn-fleche{ transition:transform .18s ease; }
body.single-product .gv-avis-toggle[open] .gv-avis-btn{ margin-bottom:1.2rem; }
body.single-product .gv-avis-toggle[open] .gv-avis-btn-fleche{ transform:rotate(90deg); }
body.single-product .gv-avis-toggle .gv-avis-form{ text-align:left; }

/* Note vivante : le mot de la note apparaît/s'anime au survol & au choix. */
body.single-product .gv-avis-rating-lab{ transition:color .15s ease,transform .15s ease; }
body.single-product .gv-avis-rating-lab.gv-avis-lab-on{ color:var(--gv-grenat);transform:scale(1.04); }

/* Mise en évidence quand on arrive depuis un lien e-mail (halo doré bref). */
body.single-product .gv-avis-hi{ animation:gv-avis-glow 1.6s ease; border-radius:16px; }
@keyframes gv-avis-glow{
  0%{ box-shadow:0 0 0 0 rgba(201,162,39,0); }
  30%{ box-shadow:0 0 0 5px rgba(201,162,39,.35); }
  100%{ box-shadow:0 0 0 0 rgba(201,162,39,0); }
}
@media (prefers-reduced-motion:reduce){
  body.single-product .gv-avis-hi{ animation:none; }
}

/* Mobile : cadre resserré, chip en bloc (l'inline découpait le texte en colonnes). */
@media (max-width:760px){
  body.single-product .gv-avis-invite{ padding:1.25rem 1.1rem 1.3rem; }
  body.single-product .gv-avis-invite-bon{ display:block;border-radius:14px;padding:.6rem .95rem;line-height:1.5; }
}
