/* Avis Google Éternelis : pastille de note, bandeau compact, liste complète (/avis).
   Produit par outils/avis_google.py (HTML) ; cette feuille est chargée avec ?v=<empreinte>. */
.av-pastille,.av-bandeau,.av-accueil,.av-page{--av-encre:#183d30;--av-texte:#24372f;--av-doux:#5b665f;--av-ligne:#e2ddd0;--av-fond:#f4f1e8;--av-or:#b07a22}
.av-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.av-etoiles{color:var(--av-or,#b07a22);letter-spacing:.06em;white-space:nowrap}

/* Pastille de note (accueil, sous l’accroche) */
.av-pastille{display:inline-flex;align-items:center;gap:10px;margin:0 0 18px;padding:9px 16px 9px 13px;border:1px solid #d6cfbd;border-radius:999px;background:#fff;color:var(--av-encre);font-size:1rem;line-height:1.2;text-decoration:none;box-shadow:0 3px 14px rgba(24,61,48,.09)}
.av-pastille .av-etoiles{font-size:1.1rem}
.av-pastille strong{font-weight:800}
.av-pastille:hover,.av-pastille:focus-visible{border-color:var(--av-encre);text-decoration:underline;text-underline-offset:3px}
.ep-trustline .av-etoiles,.hero-trust .av-etoiles,.stat .av-etoiles{margin-right:.4em}

/* Bandeau compact (pages services, villes, départements, devis) */
.av-bandeau{padding:56px 0;background:var(--av-fond);color:var(--av-texte)}
.av-wrap{width:min(1160px,calc(100% - 36px));margin-inline:auto}
.av-entete{max-width:760px;margin:0 auto 26px;text-align:center}
.av-entete p.av-note{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 10px;margin:0 0 8px;font-size:1.05rem;color:var(--av-encre)}
.av-note .av-etoiles{font-size:1.25rem}
.av-note strong{font-size:1.15rem;font-weight:800}
.av-bandeau h2{margin:.2em 0 .35em;font-size:clamp(1.55rem,2.6vw,2.15rem);line-height:1.2;text-align:center;color:var(--av-encre)}
.av-entete p.av-source,p.av-source{margin:0 auto;max-width:68ch;font-size:.92rem;line-height:1.55;color:var(--av-doux)}

/* Cartes d’avis */
.av-cartes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:18px}
.av-cartes>li{margin:0;padding:0}
.av-cartes>li::before{content:none}
.av-carte figure{margin:0;height:100%;display:flex;flex-direction:column;gap:10px;padding:20px 22px;border:1px solid var(--av-ligne);border-radius:14px;background:#fff;box-shadow:0 2px 10px rgba(24,61,48,.05);text-align:left}
.av-carte p.av-carte-note{margin:0;font-size:1.05rem;line-height:1}
.av-carte blockquote{margin:0;padding:0;border:0;background:none;font-style:normal;font-size:1rem;line-height:1.6;color:var(--av-texte);quotes:none;overflow-wrap:anywhere}
.av-carte blockquote p{margin:0 0 .65em;font-size:inherit;line-height:inherit;color:inherit}
.av-carte blockquote p:last-child{margin-bottom:0}
.av-carte figcaption{margin-top:auto;padding-top:6px;font-size:.88rem;line-height:1.4;color:var(--av-doux)}
.av-carte figcaption strong{color:var(--av-encre);font-weight:700}

/* Liens et boutons */
p.av-liens{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 24px;margin:26px 0 0}
.av-bouton{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border:2px solid var(--av-encre);border-radius:999px;background:var(--av-encre);color:#fff;font-weight:700;line-height:1.2;text-decoration:none}
.av-bouton:hover,.av-bouton:focus-visible{background:#0f2b21;border-color:#0f2b21;color:#fff}
.av-bouton-contour{background:transparent;color:var(--av-encre)}
.av-bouton-contour:hover,.av-bouton-contour:focus-visible{background:var(--av-encre);color:#fff}
/* Renfort : les pages services, contrat et devis colorent tous leurs liens (.ef-page a, .is-page a,
   .ep-page a : spécificité 0,1,1) ; sans lui, le texte du bouton prenait la couleur de son fond. */
p.av-liens a.av-bouton,p.av-liens a.av-bouton:visited{background:var(--av-encre);border-color:var(--av-encre);color:#fff}
p.av-liens a.av-bouton:is(:hover,:focus,:focus-visible){background:#0f2b21;border-color:#0f2b21;color:#fff}
p.av-liens a.av-bouton-contour,p.av-liens a.av-bouton-contour:visited{background:transparent;border-color:var(--av-encre);color:var(--av-encre)}
p.av-liens a.av-bouton-contour:is(:hover,:focus,:focus-visible){background:var(--av-encre);border-color:var(--av-encre);color:#fff}
.av-lien{color:var(--av-encre);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.av-bandeau :focus-visible,.av-accueil :focus-visible,.av-page :focus-visible,.av-pastille:focus-visible{outline:3px solid #ac783b;outline-offset:4px}

/* Accueil : six avis dans la section de l’accueil */
.av-accueil .av-cartes{grid-template-columns:repeat(3,minmax(0,1fr))}
.av-accueil p.av-liens{justify-content:flex-start}
.av-accueil .av-note-entete{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:14px;font-size:1.05rem}
.av-accueil .av-note-entete .av-etoiles{font-size:1.3rem}

/* Page /avis : liste complète */
.av-page{max-width:1300px;margin:0 auto;padding:56px 20px}
.av-page h2{margin:0 0 12px;font-family:"Lora",Georgia,serif;font-size:clamp(1.6rem,2.8vw,2.1rem);line-height:1.25;color:#2c3e37;text-align:center}
.av-page p.av-source{margin:0 auto 30px;text-align:center}
.av-hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:26px 0 0}
.av-hero-actions .av-bouton{background:#fff;border-color:#fff;color:#2c3e37}
.av-hero-actions .av-bouton:hover,.av-hero-actions .av-bouton:focus-visible{background:#f2efe6;border-color:#f2efe6;color:#183d30}
.av-hero-actions .av-bouton-contour{background:transparent;color:#fff}
.av-hero-actions .av-bouton-contour:hover,.av-hero-actions .av-bouton-contour:focus-visible{background:#fff;color:#2c3e37}
p.av-hero-actions a.av-bouton,p.av-hero-actions a.av-bouton:visited{background:#fff;border-color:#fff;color:#2c3e37}
p.av-hero-actions a.av-bouton:is(:hover,:focus,:focus-visible){background:#f2efe6;border-color:#f2efe6;color:#183d30}
p.av-hero-actions a.av-bouton-contour,p.av-hero-actions a.av-bouton-contour:visited{background:transparent;border-color:#fff;color:#fff}
p.av-hero-actions a.av-bouton-contour:is(:hover,:focus,:focus-visible){background:#fff;border-color:#fff;color:#2c3e37}

@media (max-width:1000px){.av-accueil .av-cartes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){
  .av-bandeau{padding:40px 0}
  .av-accueil .av-cartes{grid-template-columns:1fr}
  .av-carte figure{padding:18px}
  p.av-liens,.av-accueil p.av-liens{flex-direction:column;align-items:stretch;text-align:center}
  .av-pastille{font-size:.95rem}
}
