/* 2026-09-24 — Lyon / Paris / Nice: Google reviews, real intervention photos,
   cleaning steps and local linking blocks. Self-contained (sx- prefix) so the
   blocks render the same in every historical template. */
.sx-block{--sx-green:#173d30;--sx-ink:#1f2a25;--sx-muted:#55635c;--sx-line:#dfe6e1;--sx-soft:#f4f7f4;--sx-gold:#b78700;
  padding:clamp(44px,6vw,80px) 0;background:#fff;color:var(--sx-ink);font-family:inherit}
.sx-block.sx-soft{background:var(--sx-soft)}
.sx-wrap{width:min(1120px,calc(100% - 36px));margin:0 auto}
.sx-kicker{margin:0 0 8px;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--sx-muted);font-weight:600}
.sx-block h2{margin:0 0 14px;font-size:clamp(1.55rem,3.2vw,2.2rem);line-height:1.2;color:var(--sx-green)}
.sx-block h3{margin:0 0 8px;font-size:1.08rem;color:var(--sx-green)}
.sx-block p{line-height:1.65;margin:0 0 12px}
.sx-lead{max-width:760px;color:var(--sx-muted)}
.sx-grid{display:grid;gap:18px;margin-top:22px}
.sx-grid-2{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.sx-grid-4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
/* Google reviews */
.sx-rating{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:6px 0 4px}
.sx-stars{color:var(--sx-gold);font-size:1.15rem;letter-spacing:2px}
.sx-review{margin:0;padding:20px;border:1px solid var(--sx-line);border-radius:14px;background:#fff;display:flex;flex-direction:column;gap:10px}
.sx-review blockquote{margin:0;font-size:.98rem;line-height:1.6}
.sx-review figcaption{font-size:.86rem;color:var(--sx-muted)}
.sx-links{margin-top:18px;display:flex;flex-wrap:wrap;gap:10px 18px}
.sx-links a{color:var(--sx-green);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.sx-button{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border-radius:999px;background:var(--sx-green);color:#fff!important;text-decoration:none!important;font-weight:600}
.sx-button.sx-outline{background:transparent;color:var(--sx-green)!important;border:1.5px solid var(--sx-green)}
/* Real before / after */
.sx-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:760px}
.sx-pair figure,.sx-steps figure{margin:0;position:relative}
.sx-pair img{display:block;width:100%;height:auto;border-radius:12px;aspect-ratio:747/1024;object-fit:cover;background:#e8eee9}
.sx-pair figcaption{position:absolute;left:10px;top:10px;padding:4px 10px;border-radius:999px;background:rgba(23,61,48,.88);color:#fff;font-size:.8rem;font-weight:600}
.sx-real{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(20px,4vw,48px);align-items:center}
/* Steps illustration */
.sx-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:22px;counter-reset:sx}
.sx-steps img{display:block;width:100%;height:auto;border-radius:12px;aspect-ratio:3/2;object-fit:cover;background:#eef3ee}
.sx-steps figcaption{margin-top:10px;font-size:.93rem;line-height:1.5}
.sx-steps figcaption strong{display:block;color:var(--sx-green)}
.sx-note{font-size:.84rem;color:var(--sx-muted);margin-top:12px}
/* Local links */
.sx-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-top:18px}
.sx-card{display:block;padding:16px 18px;border:1px solid var(--sx-line);border-radius:12px;background:#fff;color:var(--sx-ink)!important;text-decoration:none!important}
.sx-card strong{display:block;color:var(--sx-green);margin-bottom:4px}
.sx-card span{font-size:.88rem;color:var(--sx-muted)}
.sx-card:hover{border-color:var(--sx-green)}
.sx-deadline{display:inline-block;margin:6px 0 14px;padding:8px 14px;border-radius:10px;background:#fff7e0;border:1px solid #f0d98a;font-weight:600}
@media (max-width:760px){.sx-real{grid-template-columns:1fr}}
