/* ============================================================
   GRAVANO — « Le coin des confessions » (page d'atterrissage avis).
   Pousser les avis au max, en beauté. Fond chaud « soirée qui avance »,
   tout le contenu dans des CADRES crème liseré or (règle globale).
   Deux modes : CIBLÉ (?p=ID → carte produit + formulaire) / GÉNÉRAL
   (étapes + mur des confessions + issues). Le formulaire réutilise le
   markup de inc/avis.php : ses styles sont redonnés ici (avis.css est
   scopé body.single-product, non chargé sur cette page).
   ============================================================ */

/* Fond chaud, jusqu'au footer nuit. Footer Blocksy natif masqué. */
body.gv-confessions-page #main{
  background:linear-gradient(180deg,var(--gv-ivoire) 0%,var(--gv-nude) 46%,var(--gv-terracotta) 100%);
}
body.gv-confessions-page .ct-footer{ display:none !important; }
body.gv-confessions-page .entry-header,
body.gv-confessions-page .page-title{ display:none !important; }

body.gv-confessions-page .entry-content{
  max-width:940px;margin:0 auto;padding:.4rem 1.2rem 3rem;
  font-family:'Figtree',system-ui,sans-serif;color:var(--gv-encre);
}
body.gv-confessions-page .gv-cf-retour{ padding:.4rem 0 .3rem; }
body.gv-confessions-page .gv-cf-retour .gv-retour-fil{
  font-family:'Figtree',sans-serif;font-size:.92rem;font-weight:600;letter-spacing:.04em;
  color:var(--gv-grenat);text-decoration:none;transition:color .16s ease;
}
body.gv-confessions-page .gv-cf-retour .gv-retour-fil:hover{ color:var(--gv-terracotta-fonce); }
@media (max-width:820px){ body.gv-confessions-page .gv-cf-retour{ text-align:center; } }

/* ————— En-tête (cadre crème centré) ————— */
body.gv-confessions-page .gv-cf-tete{
  text-align:center;margin:1rem 0 1.8rem;
  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:20px;
  padding:2.4rem 1.6rem 2rem;
  box-shadow:0 2px 4px rgba(37,16,36,.05),0 26px 56px -34px rgba(117,35,79,.3);
}
body.gv-confessions-page .gv-cf-eyebrow{
  display:inline-block;font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;font-weight:600;
  color:var(--gv-or);margin-bottom:.6rem;
}
body.gv-confessions-page .gv-cf-titre{
  font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(2.2rem,6vw,3.4rem);
  color:var(--gv-grenat);margin:0 0 .7rem;line-height:1.04;
}
body.gv-confessions-page .gv-cf-chapo{
  font-size:1.02rem;line-height:1.65;color:#4a3640;max-width:600px;margin:0 auto;
}
/* Chip récompense (partagé). */
body.gv-confessions-page .gv-cf-bon{
  display:inline-block;margin:1.2rem auto 0;
  font-family:'Figtree',sans-serif;font-size:.95rem;line-height:1.4;color:#5a3b12;
  background:linear-gradient(160deg,#fbeec2,#f3dd9a);border:1px solid var(--gv-or);border-radius:999px;
  padding:.55rem 1.2rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.5);
}
body.gv-confessions-page .gv-cf-bon strong{ color:var(--gv-grenat); }

/* Titres de section. */
body.gv-confessions-page .gv-cf-h2{
  font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(1.6rem,3.6vw,2.1rem);
  color:var(--gv-grenat);text-align:center;margin:0 0 1.4rem;
}

/* ————— Mode CIBLÉ : carte produit + formulaire ————— */
body.gv-confessions-page .gv-cf-focus{
  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:20px;
  padding:1.8rem 1.6rem 2rem;margin-bottom:1.8rem;
  box-shadow:0 2px 4px rgba(37,16,36,.05),0 24px 54px -34px rgba(117,35,79,.28);
}
body.gv-confessions-page .gv-cf-prod{
  display:flex;align-items:center;gap:1.2rem;margin-bottom:1.6rem;
  padding-bottom:1.4rem;border-bottom:1px solid var(--gv-nude-fonce);
}
body.gv-confessions-page .gv-cf-prod-img{ flex:0 0 auto;width:96px;height:96px;border-radius:14px;overflow:hidden;box-shadow:0 10px 24px -14px rgba(117,35,79,.4); }
body.gv-confessions-page .gv-cf-prod-img img{ width:100%;height:100%;object-fit:cover;display:block; }
body.gv-confessions-page .gv-cf-prod-eyebrow{ display:block;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--gv-or);margin-bottom:.25rem; }
body.gv-confessions-page .gv-cf-prod-nom{ font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(1.4rem,3.4vw,1.9rem);color:var(--gv-grenat);margin:0 0 .3rem;line-height:1.1; }
body.gv-confessions-page .gv-cf-prod-stars{ display:flex;gap:.15em;font-size:1.1rem;color:var(--gv-or);text-shadow:0 1px 0 rgba(166,128,29,.35); }

/* ————— Étapes (mode général) ————— */
body.gv-confessions-page .gv-cf-etapes{
  background:var(--gv-blanc);border:1px solid var(--gv-nude-fonce);border-top:3px solid var(--gv-or);border-radius:20px;
  padding:1.9rem 1.6rem;margin-bottom:1.8rem;
  box-shadow:0 2px 4px rgba(37,16,36,.05),0 22px 50px -34px rgba(117,35,79,.26);
}
body.gv-confessions-page .gv-cf-steps{
  list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem;
}
body.gv-confessions-page .gv-cf-steps li{ text-align:center;display:flex;flex-direction:column;align-items:center;gap:.35rem; }
body.gv-confessions-page .gv-cf-step-n{
  width:40px;height:40px;border-radius:50%;display:grid;place-items:center;margin-bottom:.2rem;
  font-family:'Cormorant Garamond',serif;font-weight:700;font-size:1.3rem;color:#2a1e06;
  background:linear-gradient(160deg,#F0D77E,var(--gv-or) 55%,#A6801D);
  box-shadow:0 8px 18px -8px rgba(166,128,29,.55),inset 0 1px 0 rgba(255,255,255,.5);
}
body.gv-confessions-page .gv-cf-step-t{ font-family:'Cormorant Garamond',serif;font-weight:600;font-size:1.2rem;color:var(--gv-grenat);line-height:1.15; }
body.gv-confessions-page .gv-cf-step-d{ font-size:.9rem;line-height:1.5;color:#5a4148;max-width:220px; }

/* ————— Mur des confessions ————— */
body.gv-confessions-page .gv-cf-mur{ margin-bottom:1.8rem; }
body.gv-confessions-page .gv-cf-mur-grid{ display:grid;grid-template-columns:repeat(2,1fr);gap:1rem; }
body.gv-confessions-page .gv-cf-mur-sec{ margin-bottom:1.8rem; }
body.gv-confessions-page .gv-cf-carte{
  margin:0;background:var(--gv-blanc);border:1px solid var(--gv-nude-fonce);border-radius:16px;
  padding:1.2rem 1.3rem;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.gv-confessions-page .gv-cf-carte-stars{ font-size:1rem;color:var(--gv-or);line-height:1; }
body.gv-confessions-page .gv-cf-carte-stars .gv-star{ color:#e2d3c4; }
body.gv-confessions-page .gv-cf-carte-stars .gv-star.on{ color:var(--gv-or); }
body.gv-confessions-page .gv-cf-carte-txt{ margin:0;padding:0;border:0;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.18rem;line-height:1.45;color:#4a3640; }
body.gv-confessions-page .gv-cf-carte-nom{ font-family:'Figtree',sans-serif;font-weight:600;font-size:.9rem;color:var(--gv-terracotta-fonce); }

/* ————— Issues (portes-boutons à relief) ————— */
body.gv-confessions-page .gv-cf-issues-grid{ display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.1rem;max-width:720px;margin:0 auto; }
body.gv-confessions-page .gv-cf-porte{
  display:flex;flex-direction:column;gap:.3rem;text-decoration:none;border-radius:18px;padding:1.5rem 1.4rem 1.3rem;
  color:#fff;position:relative;transition:transform .16s ease,box-shadow .2s ease;
}
body.gv-confessions-page .gv-cf-porte--boutique{
  background:linear-gradient(160deg,var(--gv-terracotta),var(--gv-terracotta-fonce) 60%,#8F3168);
  box-shadow:0 9px 0 #6d2340,0 26px 40px -22px rgba(117,35,79,.6),inset 0 1px 0 rgba(255,255,255,.25);
}
body.gv-confessions-page .gv-cf-porte--commandes{
  background:linear-gradient(160deg,#8F3168,var(--gv-grenat) 60%,#4a1638);
  box-shadow:0 9px 0 #3a1230,0 26px 40px -22px rgba(37,16,36,.6),inset 0 1px 0 rgba(255,255,255,.22);
}
body.gv-confessions-page .gv-cf-porte:hover{ transform:translateY(-3px); }
body.gv-confessions-page .gv-cf-porte:active{ transform:translateY(4px); }
body.gv-confessions-page .gv-cf-porte-eyebrow{ font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--gv-or-clair); }
body.gv-confessions-page .gv-cf-porte-t{ font-family:'Cormorant Garamond',serif;font-weight:600;font-size:1.4rem;line-height:1.1; }
body.gv-confessions-page .gv-cf-porte-cta{ font-weight:700;font-size:.92rem;color:var(--gv-or-clair);margin-top:.3rem; }

/* ============================================================
   LE DÉPÔT — formulaire général (le cœur de la page).
   ============================================================ */
body.gv-confessions-page .gv-cf-depot{ margin-bottom:1.8rem; }
body.gv-confessions-page .gv-cf-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:18px;
  padding:1.8rem;max-width:640px;margin:0 auto;
  box-shadow:0 2px 4px rgba(37,16,36,.05),0 24px 54px -34px rgba(117,35,79,.28);
}
body.gv-confessions-page .gv-avis-rating{ display:flex;align-items:center;gap:.8rem;margin-bottom:1rem;flex-wrap:wrap; }
body.gv-confessions-page .gv-avis-rating-lab{ font-size:.98rem;color:var(--gv-terracotta-fonce);font-weight:600;transition:color .15s ease,transform .15s ease; }
body.gv-confessions-page .gv-avis-rating-lab.gv-avis-lab-on{ color:var(--gv-grenat);transform:scale(1.04); }
body.gv-confessions-page .gv-stars-input{ display:inline-flex;flex-direction:row-reverse;gap:.1rem; }
body.gv-confessions-page .gv-stars-input input{ position:absolute;opacity:0;width:0;height:0; }
body.gv-confessions-page .gv-stars-input label{ font-size:2.1rem;line-height:1;color:#e2d3c4;cursor:pointer;transition:color .12s ease; }
body.gv-confessions-page .gv-stars-input label:hover,
body.gv-confessions-page .gv-stars-input label:hover ~ label,
body.gv-confessions-page .gv-stars-input input:checked ~ label{ color:var(--gv-or); }
body.gv-confessions-page .gv-stars-input input:focus-visible + label{ outline:2px solid var(--gv-grenat);outline-offset:2px;border-radius:3px; }
body.gv-confessions-page .gv-avis-champs{ display:flex;gap:.8rem;flex-wrap:wrap;margin-bottom:.8rem; }
body.gv-confessions-page .gv-cf-form input[type=text],
body.gv-confessions-page .gv-cf-form input[type=email],
body.gv-confessions-page .gv-cf-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.gv-confessions-page .gv-cf-form textarea{ width:100%;resize:vertical;margin-bottom:1rem; }
body.gv-confessions-page .gv-cf-form input:focus,
body.gv-confessions-page .gv-cf-form textarea:focus{ outline:none;border-color:var(--gv-or);box-shadow:0 0 0 3px rgba(201,162,39,.14); }
body.gv-confessions-page .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:.9rem 1.8rem;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.gv-confessions-page .gv-avis-submit:hover{ transform:translateY(-2px); }
body.gv-confessions-page .gv-avis-submit:disabled{ opacity:.6;cursor:wait; }
body.gv-confessions-page .gv-avis-note-mod{ font-size:.8rem;color:#9a8189;margin:.9rem 0 0; }
/* Message d'état (succès / erreur). */
body.gv-confessions-page .gv-cf-msg{ min-height:1.2em;margin:.9rem 0 0;font-family:'Figtree',sans-serif;font-size:.95rem;line-height:1.5; }
body.gv-confessions-page .gv-cf-msg.gv-cf-ok{ color:var(--gv-grenat);font-weight:600; }
body.gv-confessions-page .gv-cf-msg.gv-cf-ko{ color:#b23a5b;font-weight:600; }

/* ————— Mobile ————— */
@media (max-width:760px){
  body.gv-confessions-page .gv-cf-tete{ padding:1.9rem 1.2rem 1.6rem; }
  body.gv-confessions-page .gv-cf-mur-grid{ grid-template-columns:1fr; }
  body.gv-confessions-page .gv-cf-form{ padding:1.4rem 1.2rem; }
  body.gv-confessions-page .gv-cf-bon{ display:block; }
}
