/* 30/10/2026 — Actions de contact communes à toutes les pages
   Jaune = appeler · Bleu = écrire ou être rappelé. */

.cs-actions-haut{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin:18px 0 14px}
.cs-act{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:9px;font-size:15px;font-weight:800;line-height:1.2;text-decoration:none!important;transition:transform .15s ease,background .15s ease,box-shadow .15s ease;white-space:nowrap}
.cs-act:hover{transform:translateY(-1px)}
.cs-act:focus-visible{outline:3px solid #ffd400;outline-offset:3px}
.cs-act-appel,.cs-act-appel:visited{background:#ffd400;color:#171813!important;border:1px solid #ffd400}
.cs-act-appel:hover{background:#ffe03b}
.cs-act-rappel,.cs-act-rappel:visited{background:#3B82F6;color:#fff!important;border:1px solid rgba(147,197,253,.82)}
.cs-act-rappel:hover{background:#2563EB}
.cs-act-preuve,.cs-act-preuve:visited{flex-basis:100%;font-size:13.5px;font-weight:600;color:inherit!important;opacity:.88;text-decoration:none!important}
.cs-act-preuve:hover{opacity:1;text-decoration:underline!important}
.cs-act-preuve .etoiles{color:#f2c744;letter-spacing:1px;margin-right:4px}

.cs-milieu{margin:2.2rem 0;padding:1.3rem 1.4rem;background:#fffdf6;border:1px solid rgba(201,162,39,.45);border-left:4px solid #c9a227;border-radius:12px;color:#1c1b17}
.cs-milieu p{margin:0 0 .9rem}
.cs-milieu-actions{display:flex;flex-wrap:wrap;gap:10px}
.cs-milieu-preuve{margin:.9rem 0 0!important;font-size:14.5px}
.cs-milieu-preuve a{color:#7a5d0e;font-weight:700}

/* Encadrés « midcta » existants : même présentation à deux boutons. */
.midcta .cs-milieu-actions{justify-content:center}

@media (max-width:600px){
  .cs-actions-haut{flex-direction:column;align-items:stretch}
  .cs-act{width:100%;white-space:normal;text-align:center}
  .cs-milieu-actions{flex-direction:column}
}

/* Le bouton flottant « Contacter le cabinet » n'apparaît qu'une fois le haut de page dépassé. */
.cs-desktop-contact{transition:opacity .25s,transform .25s}
.cs-desktop-contact.cs-attente-hero{opacity:0;transform:translateY(12px);pointer-events:none}

/* Priorité sur les couleurs de liens des en-têtes de page (thèmes sombre et clair). */
html body a.cs-act.cs-act-appel,html body a.cs-act.cs-act-appel:visited,html body a.cs-act.cs-act-appel:hover{color:#171813!important;-webkit-text-fill-color:#171813!important;background:#ffd400!important;text-decoration:none!important}
html body a.cs-act.cs-act-appel:hover{background:#ffe03b!important}
html body a.cs-act.cs-act-rappel,html body a.cs-act.cs-act-rappel:visited,html body a.cs-act.cs-act-rappel:hover{color:#fff!important;-webkit-text-fill-color:#fff!important;background:#3B82F6!important;text-decoration:none!important}
html body a.cs-act.cs-act-rappel:hover{background:#2563EB!important}
html body .cs-milieu a.cs-act{border-bottom:0!important}

/* 30/10/2026 — Bloc d'identité : photo, nom et avis Google (pages intérieures) ;
   badge Google seul sur les pages qui affichent déjà le grand portrait. */
.cs-id{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin:20px 0 4px}
.cs-id-qui{display:inline-flex;align-items:center;gap:12px;text-decoration:none!important;color:inherit!important}
.cs-id-photo{width:56px;height:56px;border-radius:50%;object-fit:cover;border:2px solid rgba(242,199,68,.85);box-shadow:0 4px 14px rgba(0,0,0,.25);flex:0 0 auto}
.cs-id-txt{display:flex;flex-direction:column;line-height:1.3}
html body .cs-id-txt strong{font-size:15.5px;color:#fff!important;-webkit-text-fill-color:#fff}
.cs-id-txt span{font-size:13px;opacity:.82}
html body a.cs-id-avis,html body a.cs-id-avis:visited{display:inline-flex;align-items:center;gap:8px;padding:7px 13px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.22);color:#fff!important;-webkit-text-fill-color:#fff;text-decoration:none!important;font-size:13.5px}
html body a.cs-id-avis:hover{background:rgba(255,255,255,.13);border-color:rgba(242,199,68,.7)}
.cs-id-g{width:18px;height:18px;flex:0 0 auto}
html body .cs-id-etoiles{color:#f2c744!important;-webkit-text-fill-color:#f2c744!important;letter-spacing:1px;font-size:13px}
.cs-id-avis strong{font-weight:800}
.cs-id-nb{opacity:.85}
.cs-id + .cs-actions-haut{margin-top:14px}
@media(max-width:600px){
  .cs-id{gap:6px;margin-top:16px}
  .cs-id-photo{width:50px;height:50px}
  html body a.cs-id-avis{padding:0;border:0;background:transparent;margin-left:62px;font-size:13px;gap:6px}
  html body .cs-id-seul a.cs-id-avis{margin-left:0}
  .cs-id-g{width:15px;height:15px}
}
/* Mobile : bloc d'identité compact sur une seule rangée (photo à gauche, nom et avis à droite). */
@media(max-width:600px){
  .cs-id:not(.cs-id-seul){display:grid;grid-template-columns:46px 1fr;column-gap:12px;row-gap:3px;align-items:center;margin:14px 0 0}
  .cs-id:not(.cs-id-seul) .cs-id-qui{display:contents}
  .cs-id:not(.cs-id-seul) .cs-id-photo{grid-column:1;grid-row:1 / span 2;width:46px;height:46px}
  .cs-id:not(.cs-id-seul) .cs-id-txt{grid-column:2;grid-row:1}
  .cs-id-txt strong{font-size:14.5px}
  .cs-id-txt span{font-size:12.5px}
  html body .cs-id:not(.cs-id-seul) a.cs-id-avis{grid-column:2;grid-row:2;margin:0;font-size:12.5px}
  .cs-id + .cs-actions-haut{margin-top:12px}
  .cs-actions-haut{gap:8px}
  .cs-act{min-height:46px}
}

/* 30/10/2026 — Encadré « Appeler » sur ordinateur */
.cs-appel-fond{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(15,15,13,.55);backdrop-filter:blur(2px)}
.cs-appel-fond[hidden]{display:none}
.cs-appel{position:relative;width:min(100%,420px);background:#fff;color:#1c1b17;border-radius:16px;padding:26px 28px 22px;box-shadow:0 24px 60px rgba(0,0,0,.35);text-align:center;font-family:inherit}
.cs-appel-fermer{position:absolute;top:8px;right:10px;width:36px;height:36px;border:0;background:transparent;font-size:26px;line-height:1;color:#6b675c;cursor:pointer;border-radius:8px}
.cs-appel-fermer:hover{background:#f2efe6}
.cs-appel-sur{margin:0;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#8a6a12}
.cs-appel-numero{margin:6px 0 12px;font-size:34px;font-weight:800;letter-spacing:.02em;color:#1c1b17}
.cs-appel-copier{min-height:42px;padding:0 18px;border-radius:9px;border:2px solid #1c1b17;background:#ffd400;color:#171813;font-weight:800;font-size:14.5px;cursor:pointer}
.cs-appel-copier:hover{background:#ffe03b}
.cs-appel-qr{display:flex;align-items:center;gap:14px;margin:18px 0 6px;padding:12px;border:1px solid #ece7d8;border-radius:12px;background:#fbfaf6;text-align:left}
.cs-appel-qr img{width:112px;height:112px;flex:0 0 auto;background:#fff}
.cs-appel-qr p{margin:0;font-size:13.5px;line-height:1.45;color:#4a4840}
.cs-appel-qr strong{display:block;margin-bottom:3px;color:#1c1b17;font-size:14.5px}
.cs-appel-ou{display:flex;align-items:center;gap:10px;margin:12px 0;color:#8a8577;font-size:13px}
.cs-appel-ou:before,.cs-appel-ou:after{content:"";flex:1;height:1px;background:#e5e1d5}
html body a.cs-appel-rappel,html body a.cs-appel-rappel:visited{display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:9px;background:#3B82F6;color:#fff!important;-webkit-text-fill-color:#fff;font-weight:800;font-size:15px;text-decoration:none!important}
html body a.cs-appel-rappel:hover{background:#2563EB}
.cs-appel-horaires{margin:12px 0 0;font-size:12.5px;color:#6b675c}

/* 30/10/2026 — Numéro de l'en-tête (ordinateur) cliquable : ouvre l'encadré « Appeler ». */
html body .cs-header-nav .mn-tel{cursor:pointer!important;border-radius:6px;padding:4px 6px;transition:background .15s}
html body .cs-header-nav .mn-tel:hover{background:rgba(255,212,0,.12)}
html body .cs-header-nav .mn-tel:hover .mn-tel-label + *, html body .cs-header-nav .mn-tel:hover{text-decoration:underline;text-underline-offset:4px}
html body .cs-header-nav .mn-tel:focus-visible{outline:2px solid #ffd400;outline-offset:3px}

/* 30/10/2026 — Page Contact : encadré de la carte lisible (thème clair du site). */
html body .carte-au-clic p{color:#fff!important;-webkit-text-fill-color:#fff!important}
html body .carte-au-clic p + p{color:rgba(255,255,255,.78)!important;-webkit-text-fill-color:rgba(255,255,255,.78)!important}
html body .carte-au-clic a,html body .carte-au-clic a:visited{color:#fff!important;-webkit-text-fill-color:#fff!important;text-decoration:none!important;border:1px solid rgba(255,255,255,.6)!important}
html body .carte-au-clic a:hover{background:rgba(255,255,255,.1)!important}
html body .carte-au-clic .carte-afficher{color:#171813!important;-webkit-text-fill-color:#171813!important}
