/* Scoped FPMS reviews: no global overrides. Space is reserved before the API responds. */
.google-reviews{border-top:1px solid var(--line-light);padding-block:64px;color:var(--text-dark);--review-stage:26em}
.google-reviews h2{margin-bottom:24px}.google-reviews .eyebrow{margin-bottom:8px}
.fpms-google-reputation{margin:0 0 24px;font-family:inherit}
.fpms-google-reputation-card{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#fff;border:1px solid var(--line-light);border-radius:var(--radius,18px);padding:20px 24px}
.fpms-google-reputation-content{display:flex;align-items:center;gap:16px;min-width:0}.fpms-google-reputation-logo{width:38px;height:38px;flex-shrink:0}.fpms-google-reputation-text{line-height:1.7;color:var(--text-dark)}.fpms-google-reputation-text strong{font-size:1rem}.fpms-google-reputation-rating{font-weight:750;margin-right:6px}.fpms-google-reputation-count{color:var(--muted-dark);font-size:.9rem;margin-left:8px}
.fpms-google-reputation-stars{position:relative;display:inline-block;line-height:1.2;color:#fbbc04;white-space:nowrap}.fpms-google-reputation-stars-fill{position:absolute;inset:0 auto auto 0;white-space:nowrap;overflow:hidden}
.fpms-google-reputation-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border-radius:10px;background:#1a73e8;color:#fff;text-decoration:none;font-size:.875rem;font-weight:650;flex-shrink:0}.fpms-google-reputation-button:hover{background:#1669c1;color:#fff}
.fpms-google-reputation-verification{font-size:.75rem;color:var(--muted-dark);line-height:1.5;margin:8px 0 0;min-height:3em}
/* em-based track grows with text size; full reviews scroll inside focusable regions. */
.google-reviews-dynamic{height:var(--review-stage);position:relative}.google-reviews-dynamic[hidden]{display:block!important;visibility:hidden}
.google-reviews-content{height:100%;display:grid;grid-template-rows:minmax(0,1fr) 44px 3.5em;gap:16px}
.google-reviews-grid,.google-reviews-placeholder{min-height:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.google-review{min-width:0;min-height:0;box-sizing:border-box;display:grid;grid-template-rows:40px auto minmax(0,1fr) auto auto;gap:10px;padding:22px;border:1px solid var(--line-light);border-radius:var(--radius,18px);background:#fff;box-shadow:0 5px 18px rgba(20,39,59,.035);overflow:hidden;overflow-wrap:anywhere}
.google-review[hidden],.google-reviews-controls[hidden]{display:none!important}
.google-review-author{display:flex;align-items:center;gap:10px;min-width:0;font-size:.9rem;font-weight:700}.google-review-author>a,.google-review-author>strong{max-height:40px;overflow:auto;line-height:1.3;color:var(--text-dark)}.google-review-author img{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0;font-size:0}
.google-review>p{margin:0;font-size:.8rem;color:var(--muted-dark)}.google-reviews-stars{color:#fbbc04;font-size:1rem;letter-spacing:1px;margin-right:6px}
.google-review blockquote{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-gutter:stable;margin:0;padding-right:8px;font-size:.9rem;line-height:1.65}.google-review blockquote p{margin:0;white-space:pre-wrap}.google-review blockquote small{font-size:.75rem;color:var(--muted-dark)}.google-review>.text-link{font-size:.75rem;line-height:1.5}
.google-reviews-controls{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0}.google-reviews-controls button{font:inherit;font-size:1.2rem;cursor:pointer;width:44px;height:44px;flex-shrink:0;border:1px solid var(--line-light);border-radius:50%;color:var(--text-dark);background:#fff;box-shadow:none;padding:0}.google-reviews-controls button:hover{border-color:#287df2;color:#176cc2;background:#edf4ff}.google-reviews-controls [data-reviews-play]{font-size:1rem;margin-left:8px}
.google-reviews-dots{display:flex;gap:6px}.google-reviews-dots i{width:5px;height:5px;border-radius:50%;background:#c2ceda}.google-reviews-dots .is-active{background:#176cc2}.google-reviews-position{font-size:.75rem;color:var(--muted-dark);min-width:3em;text-align:center}
.google-reviews-footer{font-size:.7rem;color:var(--muted-dark);line-height:1.5;overflow:auto;display:flex;justify-content:space-between;gap:8px 20px;flex-wrap:wrap;align-content:start}.google-reviews-footer p{margin:0}.google-reviews-attribution{font-family:Arial,sans-serif;font-size:12px;letter-spacing:normal;color:#1f1f1f}.google-reviews-footer a{color:inherit}.google-reviews-legal{margin:0}.google-reviews-all{margin:12px 0 0;font-size:.85rem}
.google-reviews-status{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;pointer-events:none;margin:0;font-size:.85rem;color:var(--muted-dark)}.google-reviews-placeholder span{background:rgba(255,255,255,.55);border:1px solid var(--line-light);border-radius:var(--radius,18px)}
.google-reviews button:focus-visible,.google-reviews a:focus-visible,.google-reviews blockquote:focus-visible{outline:3px solid #176cc2;outline-offset:3px}
@media(max-width:1050px){.google-reviews-grid,.google-reviews-placeholder{grid-template-columns:repeat(2,minmax(0,1fr))}.google-reviews-placeholder span:last-child{display:none}}
@media(max-width:700px){.google-reviews{padding-block:44px;--review-stage:28em}.google-reviews-grid,.google-reviews-placeholder{grid-template-columns:minmax(0,1fr)}.google-reviews-placeholder span:not(:first-child){display:none}.fpms-google-reputation-card{flex-direction:column;align-items:stretch;padding:18px;gap:14px}.fpms-google-reputation-content{gap:12px;justify-content:center}.fpms-google-reputation-count{display:inline-block;margin-left:4px}.fpms-google-reputation-button{box-sizing:border-box;width:100%}.fpms-google-reputation-verification{min-height:4.5em}.google-review{padding:20px}.google-reviews-footer{font-size:.7rem}.google-reviews-content{grid-template-rows:minmax(0,1fr) 44px 4.5em}}

/* Correctif : natural full-text measurement, common height, no internal scroll areas. */
.google-reviews[data-reviews-measured="true"] .google-reviews-dynamic{height:auto}
.google-reviews[data-reviews-measured="true"] .google-reviews-content{height:auto;grid-template-rows:auto 44px auto}
.google-reviews-grid{align-items:stretch}
.google-reviews-grid .google-review{height:var(--review-card-height,auto);grid-template-rows:minmax(40px,auto) auto minmax(0,1fr) auto auto;overflow:visible}
.google-review blockquote{overflow:visible;max-height:none;scrollbar-gutter:auto;padding-right:0}
.google-review-author>a,.google-review-author>strong{max-height:none;overflow:visible}
.google-reviews-measure{position:absolute;left:0;top:0;width:0;height:0;overflow:visible;visibility:hidden;pointer-events:none;contain:layout style;z-index:-1}
.google-reviews-measure .google-review{height:auto;grid-template-rows:minmax(40px,auto) auto auto auto auto;overflow:visible;align-self:start;flex-shrink:0}
