/* Section « Avis Google » de l'accueil (partials/google-reviews.php). Noir, blanc, gris. */
.reviews{--rv-ink:#111;--rv-muted:#6f6f6f;--rv-line:#e6e6e6;--rv-soft:#f4f4f4;--rv-star-off:#d2d2d2}
.reviews .eyebrow{color:var(--rv-muted)}

.reviews-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px 56px;flex-wrap:wrap;margin-bottom:clamp(26px,3.4vw,40px)}
.reviews-head h2{margin:0;color:var(--rv-ink)}
.reviews-summary{display:flex;align-items:center;gap:14px 22px;flex-wrap:wrap}

.reviews-score{display:flex;align-items:center;gap:12px;padding:10px 18px 10px 14px;border:1px solid var(--rv-line);border-radius:14px;background:#fff}
.reviews-g{width:22px;height:22px;flex:none}
.reviews-score-value{font-family:"Outfit",Arial,sans-serif;font-weight:500;font-size:30px;line-height:1;letter-spacing:-.04em;color:var(--rv-ink)}
.reviews-score-meta{display:flex;flex-direction:column;gap:4px;font-size:11.5px;color:var(--rv-muted);line-height:1.2}

.reviews-stars{display:inline-flex;gap:2px;color:var(--rv-ink)}
.reviews-stars svg{width:13px;height:13px;fill:currentColor}
.reviews-stars svg.is-empty{fill:var(--rv-star-off)}

/* 29/10 : le lien vers Google utilise le bouton partagé .pi-link (site.css) */
.reviews-link{white-space:nowrap}

.reviews-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);gap:clamp(16px,2vw,24px);align-items:stretch}
.reviews-layout.is-strip-only{grid-template-columns:minmax(0,1fr)}

.review{margin:0;display:flex;flex-direction:column;height:100%;box-sizing:border-box;padding:clamp(22px,2.4vw,30px);border-radius:18px;background:#fff;border:1px solid var(--rv-line)}
.review blockquote{margin:16px 0 0;flex:1}
.review blockquote p{margin:0;font-size:14px;line-height:1.7;color:#2a2a2a;white-space:pre-line;text-wrap:pretty}
.review blockquote[dir="rtl"] p{font-size:15px;line-height:1.85}
.review figcaption{display:flex;align-items:center;gap:12px;margin-top:22px;padding-top:18px;border-top:1px solid var(--rv-line);font-size:11.5px;color:var(--rv-muted);line-height:1.35}
.review figcaption>span:last-child{display:flex;flex-direction:column;gap:2px}
.review figcaption b{font-family:"Outfit",Arial,sans-serif;font-weight:500;font-size:14.5px;color:var(--rv-ink);letter-spacing:-.01em}
.review-initial{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--rv-soft);color:var(--rv-ink);font-family:"Outfit",Arial,sans-serif;font-size:15px;font-weight:500}

.review-featured{background:var(--rv-ink);border-color:var(--rv-ink);color:#fff;padding:clamp(28px,3.2vw,44px)}
.review-featured .reviews-stars{color:#fff}
.review-featured .reviews-stars svg.is-empty{fill:#555}
.review-featured blockquote{margin-top:22px}
.review-featured blockquote p{font-family:"Outfit",Arial,sans-serif;font-size:clamp(17px,1.45vw,20px);line-height:1.5;letter-spacing:-.015em;color:#f2f2f2}
.review-featured figcaption{border-top-color:rgba(255,255,255,.16);color:#a9a9a9}
.review-featured figcaption b{color:#fff}
.review-featured .review-initial{background:#2a2a2a;color:#fff}

.reviews-strip{min-width:0;display:flex;flex-direction:column}
.reviews-track{list-style:none;margin:0;padding:0 0 4px;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 16px) / 2);gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;flex:1}
.reviews-track::-webkit-scrollbar{display:none}
.reviews-track>li{scroll-snap-align:start;min-width:0}
.reviews-track:focus-visible{outline:2px solid var(--rv-ink);outline-offset:4px;border-radius:18px}
.is-strip-only .reviews-track{grid-auto-columns:calc((100% - 32px) / 3)}

.reviews-controls{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
.reviews-controls[hidden]{display:none}
/* 29/10 : flèches = boutons ronds partagés (.round / .round.light, site.css), comme les autres rails */
.reviews-arrow{width:44px;height:44px;cursor:pointer;display:grid;place-items:center;line-height:1;transition:opacity .25s ease}
.reviews-arrow:disabled{opacity:.35;cursor:default}

@media (max-width:980px){
  .reviews-layout{grid-template-columns:minmax(0,1fr)}
  .reviews-track,.is-strip-only .reviews-track{grid-auto-columns:calc((100% - 16px) / 2)}
}
@media (max-width:640px){
  .reviews-head{display:block}
  .reviews-head h2{margin-bottom:22px}
  .reviews-summary{gap:12px}
  .reviews-score{padding:9px 14px 9px 12px}
  .reviews-score-value{font-size:26px}
  .reviews-track,.is-strip-only .reviews-track{grid-auto-columns:84%;gap:12px}
  .review blockquote p{font-size:13.5px}
}

@media (prefers-reduced-motion:reduce){
  .reviews-track{scroll-behavior:auto}
  .reviews-arrow{transition:none}
}

/* 28/10 : avis plus vivants. Étoiles et « G » aux couleurs de Google (demande d'Aymane), bande grise, guillemet. */
body:not(#_) .reviews{position:relative;isolation:isolate}
body:not(#_) .reviews::before{content:'';position:absolute;z-index:-1;inset:0 calc(50% - 50vw);background:#f4f4f4}
body:not(#_) .reviews .reviews-stars{color:#fbbc04}
body:not(#_) .reviews .reviews-stars svg{width:15px;height:15px}
body:not(#_) .reviews .reviews-stars svg.is-empty{fill:#d9d9d9}
body:not(#_) .reviews .review{position:relative;border-color:#ebebeb;box-shadow:var(--card-shadow);transition:transform .22s ease,box-shadow .22s ease}
body:not(#_) .reviews .review:hover{transform:translateY(-4px);box-shadow:var(--card-shadow-hover)}
/* La bande d'avis laisse respirer l'ombre des cartes (sinon coupée par overflow) */
body:not(#_) .reviews .reviews-track{padding:8px 6px 26px;margin:-8px -6px -18px}
body:not(#_) .reviews .review-g{position:absolute;top:clamp(20px,2.3vw,28px);right:clamp(20px,2.3vw,28px);width:20px;height:20px}
body:not(#_) .reviews .review-featured{overflow:hidden}
body:not(#_) .reviews .review-featured::after{content:'“';position:absolute;right:22px;bottom:-56px;font:600 220px/1 'Outfit',Arial,sans-serif;color:rgba(255,255,255,.07);pointer-events:none}
body:not(#_) .reviews .review-featured .reviews-stars svg.is-empty{fill:#555}
body:not(#_) .reviews .review-featured .review-g{background:#fff;border-radius:50%;padding:5px;width:30px;height:30px;box-sizing:border-box}
body:not(#_) .reviews .review-initial{background:#111;color:#fff}
body:not(#_) .reviews .review-featured .review-initial{background:#fff;color:#111}
body:not(#_) .reviews .reviews-score{background:#fff}
@media(prefers-reduced-motion:reduce){body:not(#_) .reviews .review{transition:none}body:not(#_) .reviews .review:hover{transform:none}}

.reviews-subtitle{margin:12px 0 0;color:var(--rv-muted);font-size:clamp(.875rem,.82rem + .2vw,1rem);line-height:1.5}
a.reviews-score{text-decoration:none;transition:border-color .2s,box-shadow .2s}
a.reviews-score:hover{border-color:#aaa;box-shadow:0 4px 14px #0000000d}
a.reviews-score:focus-visible{outline:2px solid #111;outline-offset:4px}
